Enrique Ortega. TP004 Modelagem e simulação de Ecossistemas (11/03/03).

Baseado na apostila de H.T. Odum, Univ. of Florida, e E. Odum, Santa Fe Community College. 
Minimodelos para simular o comportamento de ecossistemas em computador. Gainesville, Fl., EUA, 1994.
http://www.unicamp.br/fea/ortega/eco/simul/indice-p.htm 

MINI-MODELOS DE ECOSSISTEMAS E  SIMULAÇÕES EM COMPUTADOR

Parte 1. Modelos básicos (segundo conjunto)

Apresentamos agora os seguintes modelos básicos:
(a) Crescimento a partir de uma fonte renovável de reposição lenta.
(b) Fatores limitantes externos
(c) Fatores limitantes internos (reciclagem de nutrientes)
(d) Sistema com produção e consumo (respiração) diários

Principais tipos de Fontes e formas de Captura e Consumo de Energia
 
7. Crescimento a partir de uma fonte renovável de reposição lenta
Programa slowren
Este sistema no início aproveita um estoque grande (E) resultante de um acúmulo prévio de J sem uso até o momento. O consumidor Q cresce exponencialmente aumentando seu estoque de energia. Quando o estoque E mingua o crescimento de Q para e depois decresce, ele  aproveita durante o declínio seu próprio estoque acumulado (Q). Depois surto ou pico de crescimento o sistema se ajusta a um "modelo sustentável" de menor energia que corresponderia a taxa de acumulo em E do fluxo externo (J).

tank2.gif
Temos um fluxo constante de energia J que gera um estoque interno  E o qual permite o desenvolvimento de um outro estoque interno Q. Neste caso estudaremos o desempenho de dois estoques (E,Q) em função do tempo (T)

Não ha interações que afetem o fluxo de energia que entra, por tanto, o estoque E muda  diretamente com o fluxo  J. Assim sendo a entrada de energia no intervalo DT fica como:
DE (in) = J * DT

O estoque E tem um dreno (perda simples, por exemplo: mortalidade) que varia em  proporção direta com esse estoque e também tem a saída que alimenta Q cujo fluxo varia em  proporção dos dois estoques (Q*E) envolvidos nessa interação..
DE (out) = K4*Q*DT + KO*E*Q*DT

A variação do acumulo de E seria:
DE  =  DE(in) - DE(out) = J*DT  - K4*Q*DT - KO*E*Q*DT

No caso da mudança do estoque Q teríamos, no intervalo DT: 
DQ  =  DQ(in) - DQ(out) = K1*Q*E*DT - K3*Q*DT 

Se o intervalo de tempo fosse unitário teríamos DT = 1.
Para simular a variação de Ee Q no decorrer do tempo T teríamos o redigir em qualquer linguagem de programação o pseudo-código:

Inicio do programa
Definir o tipo o os nomes das variáveis:.
Atribuir valores iniciais as variáveis: 

 Q = 3
 E0 = 1.2
 J = 2
 E = 159
 K0 = .001
 K1 = .001 
K3 = .03
 K4 = .01
Criar um laço de programação que faça o seguinte:
    Imprimir ou plotar os valores dos estoques e o tempo respectivo 
    Calcular o incremento dos estoques no intervalo DT:
    DE = J*DT  - K4*Q*DT - KO*E*Q*DT
    DQ  =  K1*Q*E*DT - K3*Q*DT 
    Calcular os novos valores dos estoques, somando ao valor anterior o incremento:
    E = E + DE
    Q = Q + DQ
    Incrementar o valor de T:
    T = T + DT
    Testar o valor de T para saber se estamos no do intervalo de tempo permitido
    T<TMAX? 
    Em caso positivo fique dentro do laço senão saia dele
Fim do programa

Um exemplo deste modelo seria o crescimento de peixes em uma represa construída em um local onde havia uma floresta  No início a pesca é abundante devido ao uso do estoque de matéria orgânica residual depois diminui e se ajusta em um patamar que corresponde ao regime sustentável em recursos naturais renováveis.
Veja a tabela: slowren1.xls

Exemplo de programação em Basic: slowren.bas

10 REM PC: SLOWREN (Slowly renewable)
20 SCREEN 1, 0: COLOR 0, 0
35 LINE (0, 0)-(319, 180), 3, B
40 Q = 3
50 J = 2
60 E = 159
70 K0 = .001
80 K1 = .001
90 K3 = .03
100 K4 = .01
110 Q0 = 1
120 E0 = 1.2
130 DT = 1
140 T0 = 1
200 PSET (T * T0, 180 - Q * Q0), 1
210 PSET (T * T0, 180 - E * E0), 2
220 DQ = K1 * E * Q - K3 * Q
230 DE = J - K0 * E * Q - K4 * E
240 E = E + DE * DT
250 Q = Q + DQ * DT
260 T = T + DT
270 IF T * T0 < 319 GOTO 200

 

8. Fatores limitantes externos
Programa factors

exponencial

O símbolo de interação indica que é necessário a presença de pelo menos duas forças diferentes para se conseguir a produção. A esse símbolo associamos geralmente o conceito de multiplicação (*). O aumento de um dos insumos pode permitir um aumento de produção porém esse aumento tende a decrescer devido a que o outro componente pode ficar em falta e não atender a demanda estequiométrica desse insumo. Trata-se de um caso comum nos sistemas que encontramos no dia a dia. Este fenômeno costuma denominar-se "lei dos rendimentos decrescentes"

Neste caso o gráfico do sistema deve mostrar a produção P variando com o a concentração do insumo auxiliar I, que se constitui no fator limitante da produção do sistema.
Equações:
J = N + K3*I*N
P  = K1*I*N
I = I + DI
T = T + DT

J = 5
I = 1
Z = 2
DI = 2
K1 = .08
K2 = .05
K3 = .01
Fora isso, as demais partes deste modelo são semelhantes as dos exemplos anteriores.
Veja a tabela: factors1.xls

Exemplo de programação em Basic: factors.bas

10 REM PC: FACTORS (External limiting factors)
20 SCREEN 1, 0: COLOR 7, 0
40 LINE (0, 0)-(240, 180), 3, B
50 J = 5
60 E = 1
80 K1 = .08
90 K2 = .01
110 DE = 2
115 E0 = 2: REM fator de escala
118 P0 = 1: REM fator de escala
120 M = J / (1 + K2 * E)
130 P = K1 * E * M
140 E = E + DE
150 PSET (E / E0, 180 - P / P0), 1
160 IF (E / E0) < 240 GOTO 120
170 J = J + 5
180 E = 0
190 IF J < 25 GOTO 120

 

9. Fatores limitantes internos
Programa recycle

recyclmt

Se a reciclagem no sistema for demorada ela pode vir a limitar a produtividade do sistema e se constituir em um um fator limitante do desenvolvimento do sistema. O total de nutrientes do sistema (NT) se encontra dividido em dois grupos: nutrientes imobilizados no estoque interno (F*Q) e nutrientes em circulação (N):   TN = N + F*Q
Outra equações:
Produção
P = K1*I*N
Saída = K2*Q
Acúmulo
DQ = P - K2*Q
No estado estacionário quando a taxa de acumulo se reduz totalmente temos DQ=0, nesse caso:
K1*I*N = K2*Q
K1*I(TN-F*Q) = K2*Q
K1*I*TN-K1*I*F*Q = K2*Q
K1(I*TN) = K2*Q+K1*I*F*Q
K1(I*TN) = Q(K2+K1*F)
Q = (K1*I*TN)/(K2+K1*F)
Conjunto de valores iniciais:
TN = .5
I = 0
Q = 5
Z = .05
P0 = .1
K1 = 2
K2 = .5
F = .05
DI = .05
Um aumento da quantidade total de nutrientes (TN) pode aumentar a produção do sistema (P), a resposta varia muito, no início é grande depois decai muito até ser nula (DQ=0).
Veja a a tabela: recycle1.xls

Exemplo de programação em Basic: recyclmt.bas

3  REM RECYCLMT (Recycle Limiting Factor)
4  SCREEN 1, 0: COLOR 0, 0
6  LINE (0, 0)-(319, 180), 1, B
10 TN = .5
15 I = 0
17 Q = 5
20 Z = .05
22 P0 = .1
30 K1 = 2
40 K2 = .5
45 F = .05
47 DI = .05
50 Q = (K1 * TN * I) / (K2 + K1 * F * I)
55 N = TN - F * Q
57 P = K1 * I * N
60 I = I + DI
70  PSET (I / Z, 180 - P / P0), 2
80  IF (I / Z) < 319 GOTO 50
81 BEEP: SLEEP: END
82 REM type CONT for more material to recycle
85 Q = 1
90 TN = TN + .5
95 I = 0
100 Q = 1
110 IF TN < 40 GOTO 50

 

10. Produção e Consumo. Programa daypr

renew2.gif
Nos processos ecossistêmicos onde ocorre fotossíntese temos uma oscilação diária de energia externa,  o que origina um ciclo de produção e consumo (ou respiração). A energia solar é uma fonte renovável limitada cujo potencial é estabelecido pela energia não utilizada JR  e varia como uma senoide truncada. Um pico que cresce e decresce durante o dia e de noite é nula. As equações seriam as seguintes:
J = 40*SIN(T/15.9)
IF (J<)) THEN J=0
J = JR + K1*JR*N
A biomassa e o oxigênio são produzidos de dia e consumidos de noite. As plantas geram um excedente que é  pela cadeia trófica. No caso de um ecossistema florestal teríamos:
TN = quantidade total de nutrientes
N   = nutrientes no solo disponíveis para uso pela plantas
K3  = proporção da biomassa Q composta por nutrientes
Equação do balanço de nutrientes: TN = N + K3*N
Acumulo em Q: DQ = K1*JR*N - K2*Q
Q = 50
Q = 5
TN = 1
K = .9
K1 = .2
K2 = .04
K3 = .01
Pode-se plotar J,Q e N versus T. O exemplo mostra um sistema fechado que depende de seus próprios recursos e mantém um comportamento cíclico determinado pela velocidade na qual os consumidores e decompositores devolvem os nutrientes à circulação do sistema. Veja a tabela: daypr1.xls
Exemplo de programação em Basic: daypc.bas
10 REM DAYPC (Daily production and consumption)
20 SCREEN 1, 0: COLOR 0, 0
35 LINE (0, 0)-(319, 60), 3, B
40 LINE (0, 70)-(319, 130), 3, B
50 LINE (0, 140)-(319, 190), 3, B
60 Q = 5
80 NT = 1
90 K = .9
100 K1 = .2
110 K2 = .04
120 K3 = .01
130 Q0 = .5
140 N0 = 50:  REM .02
150 T0 = 1
160 DT = 1
170 J = 40 * SIN(T / 15.9)
180 IF J < 0 THEN J = 0
190 R = J / (1 + K * N)
200 N = NT - K3 * Q
210 DQ = K1 * R * N - K2 * Q
220 Q = Q + DQ * DT
230 PSET (T * T0, 130 - Q * Q0), 2
240 PSET (T * T0, 190 - N * N0), 1
250 LINE (T, 60)-(T, (60 - J)), 2
260 T = T + DT
300 IF T * T0 < 319 GOTO 170
Index Java  | Index Livro | Odum | LEIA | Top