2. Dinâmica de População de Malthus (1798):

Considere N_{0} \equiv N(t=0), a populaçāo inicial; e r a taxa de crescimento da populaçāo.
(a) Faça um programa computacional para implementar a atualizaçāo populacional dada pela regra:
N(t+\Delta t)=N(t)+r N(t) \Delta t
Rode seu programa e plote em um mesmo gráfico o resultado para os seguintes parâmetros: N_{0}=1, \Delta t=1 e r=1,2,3. Plote em um único gráfico N em funçāo de t para estas configuraçóes de parâmetros. O que acontece se t é muito grande? Discuta.
(b) Mostre que, no limite \Delta t \rightarrow 0, a regra (1) conduz à e.d.o.:
\frac{d N}{d t}=r N
A equaçāo (2) é conhecida por modelo de Malthus.
(c) Resolva analiticamente a e.d.o. (2) e mostre que a soluçāo do modelo de Malthus é
N(t)=N_{0} e^{r t} ;
(d) Escreva a soluçāo (3) em termos das grandezas y=N / N_{0} e \tau=r t. Qual a vantagem de utilizar estas novas variáveis? Obs.: Veja referencia [4, 3].
(e) Discuta o comportamento para r>0 e r<0 em funçāo da condiçāo inicial.
(f) Considere uma populaçāo de ratos descrita pela soluçāo do modelo Malthusiano (3). Considere uma populaçāo inicial de N_{0}=2 indivíduos e uma taxa de crescimento de r=3 indivíduos/mês. Cada rato possui uma massa de 0.2 Kg . Determine:
i. O tempo que a massa total da populaçāo de ratos seria suficiente para se transformar em uma estrela. Obs.: A massa mínima de uma estrela é de 50 vezes a massa de Júpiter ( 50 \times 1,9 \times 10^{27} \mathrm{Kg} );
ii. O tempo que a massa promove um colapso gravitacional, i.e. se transforme num buraco negro. Obs.: Massa mínima para gerar um buraco negro é de aproximadamente 10^{30} \mathrm{Kg}.’

Passo 1

O enunciado pede várias coisas (vou listar claramente cada item e os dados fornecidos):
  • Parte (a): Implementar por programa a atualização
N(t+\Delta t)=N(t)+r\,N(t)\,\Delta t
com N_0\equiv N(t=0). Rodar para N_0=1, \Delta t=1 e três valores de r: r=1,\,2,\,3. Plotar em um único gráfico N versus t. Pergunta: o que acontece se t fica muito grande? Discutir.
  • Parte (b): Mostrar que, no limite \Delta t\to0, a regra discreta conduz à equação diferencial
\frac{dN}{dt}=rN.
  • Parte (c): Resolver analiticamente a e.d.o. \dfrac{dN}{dt}=rN e mostrar que
N(t)=N_0 e^{r t}.
  • Parte (d): Reescrever a solução em termos de y=N/N_0 e \tau=r t e comentar a vantagem.
  • Parte (e): Discutir comportamento para r>0 e r<0 em função da condição inicial.
  • Parte (f): Com N_0=2 indivíduos, r=3 (unidade: indivíduos por mês), massa por rato 0{,}2\\ \mathrm{kg}. Usando a solução de Malthus:
    i. Calcular o tempo até a massa total atingir a massa mínima de uma estrela: M_{\text{estrela}}=50\times1{,}9\times10^{27}\\ \mathrm{kg}.
    ii. Calcular o tempo até a massa total atingir a massa mínima para colapso em buraco negro: M_{\text{bn}}\approx10^{30}\\ \mathrm{kg}.
Dados úteis extraídos do enunciado:
  • N_0 (varia conforme item; para (a) N_0=1; para (f) N_0=2).
  • \Delta t=1 (item (a)).
  • r assume valores 1,2,3 na parte (a) e r=3 na parte (f).
  • massa por rato: m_{\text{rato}}=0{,}2\\ \mathrm{kg}.
  • massas alvo dadas explicitamente em (f).
A resolução começa no próximo passo.

Passo 2

(a) Implementação computacional e forma fechada discreta. Vou explicar passo a passo o que o programa faz e por que é equivalente a uma fórmula simples.
  • Regra de atualização (dada):
N(t+\Delta t)=N(t)+r\,N(t)\,\Delta t.
  • Isto é uma regra explícita passo a passo (método de Euler explícito) que calcula N no tempo seguinte a partir do valor atual.
  • Se repetirmos essa atualização n vezes com passo \Delta t, para tempos discretos t_n=n\Delta t, temos a solução exata da iteração:
N_n \equiv N(t_n)=N_0(1+r\Delta t)^n.
Explicação do que esse resultado significa: em cada passo multiplicamos por (1+r\Delta t). Após n passos aplicamos essa multiplicação n vezes, dando a potência.
  • Caso específico pedido: \Delta t=1. Então para t inteiro
N(t)=N_0(1+r)^t.
Logo, para N_0=1 e \Delta t=1 obtemos
N(t)=(1+r)^t.
  • Programa (exemplo em Python) que implementa a iteração e plota: (basta copiar e executar em Python com matplotlib; o código gera o gráfico pedido)
import numpy as np
import matplotlib.pyplot as plt

N0 = 1.0
dt = 1.0
r_list = [1.0, 2.0, 3.0]
t_max = 10        # tempo máximo (escolha, por exemplo, 0..10 meses)
t_values = np.arange(0, t_max+dt, dt)

plt.figure(figsize=(8,5))
for r in r_list:
    N = N0 * (1 + r*dt) ** (t_values/dt)   # fórmula discreta exata da iteração
    plt.plot(t_values, N, marker='o', label=f"r={r}")
plt.yscale('log')   # opcional: escala log para visualizar crescimento rápido
plt.xlabel("t (meses)")
plt.ylabel("N(t)")
plt.legend()
plt.grid(True)
plt.title("Atualização Malthusiana discreta: N(t+dt)=N(t)+r N(t) dt")
plt.show()
  • Observações didáticas sobre o gráfico e comportamento quando t cresce:
    • Para \Delta t=1 e r=1,2,3 as curvas são 2^t,\;3^t,\;4^t respectivamente (porque 1+r vale 2,3,4).
    • Todas essas funções crescem exponencialmente com t. Para t grande o número N(t) torna-se enorme muito rapidamente (explosão exponencial).
    • Em física/biologia isso é claramente irrealista a longo prazo — não há recursos infinitos; o modelo de Malthus ignora fatores como competição e capacidade de suporte.
    • Comparação com a solução contínua (ver passos seguintes): a iteração com \Delta t=1 produz (1+r)^t enquanto a solução contínua é e^{r t}. Para pequenos r ou \Delta t\ll1 ambas se aproximam; para r grande e \Delta t grande as diferenças podem ser grandes.

Passo 3

(b) Passo limite \Delta t\to0 que conduz à e.d.o. Vou mostrar de forma formal e didática.
  • Começo com a regra discreta:
N(t+\Delta t)-N(t)=r\,N(t)\,\Delta t.
  • Divida ambos os lados por \Delta t:
\frac{N(t+\Delta t)-N(t)}{\Delta t}=r\,N(t).
  • Agora reconheça que o membro da esquerda é o quociente diferencial (a diferença por passo). No limite \Delta t\to0 esse quociente tende à derivada de N em t:
\lim_{\Delta t\to0}\frac{N(t+\Delta t)-N(t)}{\Delta t}=\frac{dN}{dt}.
  • Portanto, no limite:
\frac{dN}{dt}=r\,N(t).
  • Comentário didático: a passagem do formato discreto para o contínuo é justamente substituir a diferença finita pela derivada. Esse é o procedimento padrão para derivar uma equação diferencial a partir de uma regra de atualização.

Passo 4

(c) Resolução analítica da e.d.o. \dfrac{dN}{dt}=rN com condição inicial N(0)=N_0.
  • Técnica: separação de variáveis. Escrevemos:
\frac{dN}{N}=r\,dt.
Aqui a ideia é colocar todos os termos em N de um lado e os termos em t do outro, para integrar.
  • Integramos ambos os lados:
\int \frac{dN}{N}=\int r\,dt.
  • As integrais conhecidas são \int \frac{dN}{N}=\ln|N|+C_1 e \int r\,dt=r t + C_2. Reunindo constantes:
\ln|N| = r t + C.
  • Exponenciando ambos os lados:
|N| = e^{C} e^{r t}.
Chame e^C de constante positiva A. Como N(t) representa população (presumivelmente não negativa), podemos escrever:
N(t)=A e^{r t}.
  • Aplicando condição inicial N(0)=N_0:
N_0 = A e^{0}=A \quad\Rightarrow\quad A=N_0.
  • Logo a solução é
N(t)=N_0 e^{r t}.
  • Observação didática: essa forma mostra crescimento/decrescimento exponencial contínuo. Para pequenas \Delta t, a expressão discreta (1+r\Delta t)^{t/\Delta t} tende a e^{r t} (essa é a definição limite da exponencial).

Passo 5

(d) Reescrever em variáveis adimensionais e vantagem.
  • Definimos
y=\frac{N}{N_0},\qquad \tau = r t.
  • Substituindo na solução N(t)=N_0 e^{r t} obtemos
y(\tau)=\frac{N}{N_0}=e^{\tau}.
  • Vantagens de usar y e \tau:
    • Não há parâmetros numéricos na equação final: y(\tau)=e^{\tau} é “universal”. Qualquer caso com diferentes N_0 e r colapsa para a mesma curva quando usamos estas variáveis.
    • Facilita comparação entre sistemas com taxas ou tamanhos diferentes (escala e unidade são eliminadas).
    • Em análises e simulações numericamente isto reduz o número de parâmetros e torna o problema mais simples e generalizável.

Passo 6

(e) Comportamento para r>0 e r<0, considerando a condição inicial N_0.
  • Caso r>0:
    • \;N(t)=N_0 e^{r t} cresce exponencialmente sem limite superior quando t\to\infty.
    • Se N_0>0, então N(t)>0 para todo t e tende a +\infty quando t\to\infty.
    • Se N_0=0, permanece N(t)=0 (estado trivial).
    • Interpretação: população explode (crescimento descontrolado), o que é irreal a longo prazo, pois recursos limitados não foram considerados.
  • Caso r<0:
    • \;N(t)=N_0 e^{r t} decai exponencialmente para zero quando t\to\infty.
    • Se N_0>0, então N(t)\to0^+ (extinção assintótica).
    • Se N_0=0, permanece zero.
    • Interpretação: taxa negativa representa mortalidade ou perda líquida; população tende a desaparecer.
  • Comentário sobre N_0<0: matematicamente a solução aceita N_0<0 mas populações não são negativas; em modelos reais N_0\ge0 é obrigatório.

Passo 7

(f) Cálculos numéricos — tempos para atingir massas-alvo. Vou fazer passo a passo para o caso pedido.
  • Dados:
    • N_0=2 (indivíduos).
    • r=3 (unidade: indivíduos por mês).
    • Massa por rato: m_{\text{rato}}=0{,}2\\ \mathrm{kg}.
    • Massa total em tempo t:
    M(t)=m_{\text{rato}}\;N(t)=m_{\text{rato}}\,N_0 e^{r t}.
  • Objetivo: encontrar t tal que M(t)=M_{\text{alvo}}. Portanto:
m_{\text{rato}}\,N_0 e^{r t}=M_{\text{alvo}}
\Rightarrow e^{r t}=\frac{M_{\text{alvo}}}{m_{\text{rato}}\,N_0}
\Rightarrow r t=\ln\!\left(\frac{M_{\text{alvo}}}{m_{\text{rato}}\,N_0}\right)
\Rightarrow t=\frac{1}{r}\ln\!\left(\frac{M_{\text{alvo}}}{m_{\text{rato}}\,N_0}\right).
  • Agora aplicamos aos dois alvos:
(i) Massa mínima de estrela:
M_{\text{estrela}}=50\times1{,}9\times10^{27}\\ \mathrm{kg}=9{,}5\times10^{28}\\ \mathrm{kg}.
Cálculo do tempo:
t_1=\frac{1}{r}\ln\!\left(\frac{9{,}5\times10^{28}}{0{,}2\times2}\right) =\frac{1}{3}\ln\!\left(\frac{9{,}5\times10^{28}}{0{,}4}\right).
Calcule a razão:
\frac{9{,}5\times10^{28}}{0{,}4}=2{,}375\times10^{29}.
Logaritmo natural:
\ln(2{,}375\times10^{29})=\ln(2{,}375)+29\ln(10).
Usando \ln(2{,}375)\approx0{,}864997 e \ln(10)\approx2{,}302585093:
\ln(2{,}375\times10^{29})\approx0{,}864997+29\times2{,}302585093 \approx67{,}6390.
Portanto
t_1\approx\frac{67{,}6390}{3}\approx22{,}5463\\ \text{(meses)}.
Convertendo para anos:
t_1\approx\frac{22{,}5463}{12}\approx1{,}879\\ \text{anos}.
(ii) Massa para colapso em buraco negro:
M_{\text{bn}}=10^{30}\\ \mathrm{kg}.
Cálculo do tempo:
t_2=\frac{1}{3}\ln\!\left(\frac{10^{30}}{0{,}4}\right) =\frac{1}{3}\ln(2{,}5\times10^{30}).
\ln(2{,}5\times10^{30})=\ln(2{,}5)+30\ln(10) \approx0{,}916291+30\times2{,}302585093\approx69{,}9938.
Assim
t_2\approx\frac{69{,}9938}{3}\approx23{,}3313\\ \text{(meses)}.
Em anos:
t_2\approx\frac{23{,}3313}{12}\approx1{,}944\\ \text{anos}.
  • Observações finais sobre essas respostas:
    • Esses tempos são muito curtos (menos de 2 anos) exatamente por causa da taxa de crescimento enorme r=3 por mês — crescimento exponencial com uma taxa tão alta leva a números astronômicos rapidamente.
    • Na prática esse cenário é absurdo biologicamente (recursos, espaço, doença impediriam tal crescimento). Aqui é um exercício de extrapolação matemática do modelo de Malthus.

Resposta

(a) Código fornecido; a iteração discreta com \Delta t=1 N(t)=N_0(1+r)^t. Para N_0=1 e r=1,2,3 as curvas são 2^t,\;3^t,\;4^t; todas crescem exponencialmente e, se t é muito grande, N(t)\to\infty (explosão exponencial), o que é fisicamente irrealista a longo prazo.
(b) \dfrac{dN}{dt}=rN.
(c) N(t)=N_0 e^{r t}.
(d) Com y=N/N_0 e \tau=r t obtém-se y(\tau)=e^{\tau}. Vantagem: equação adimensional universal sem parâmetros.
(e) Para r>0: crescimento exponencial ( N\to\infty se N_0>0). Para r<0: decaimento exponencial ( N\to0). Se N_0=0 permanece zero.
(f.i) Tempo até massa mínima de estrela: t_1\approx22{,}55 meses \approx1{,}879 anos.
(f.ii) Tempo até massa para colapso em buraco negro: t_2\approx23{,}33 meses \approx1{,}944 anos.

Exercícios relacionados