Um poluente é liberado em uma determinada seção 
a) considerando o poluente conservativo
b) considerando o poluente não-conservativo com 
Usar 
a) considerando o poluente conservativo
b) considerando o poluente não-conservativo com
Usar
Passo 1
Beleza, olha só o que o exercício pede: a gente tem um rio que transporta e dispersa um poluente (esse é o tal “reator advectivo–difusivo”), em x=0 a concentração sobe de 0 para 100 mg/L num pulinho em t=0 e fica lá até t=2 h. Queremos saber como essa concentração varia no tempo em dois pontos rio abaixo: x=100 m e x=2000 m.
Conteúdo: equação de advecção–difusão (com e sem decaimento de primeira ordem). Vamos precisar da solução analítica para um “step input” e da técnica de superposição para o pulso de 2 h. Também usamos funções de erro (erfc).
Conteúdo: equação de advecção–difusão (com e sem decaimento de primeira ordem). Vamos precisar da solução analítica para um “step input” e da técnica de superposição para o pulso de 2 h. Também usamos funções de erro (erfc).
Passo 2
A base teórica é esta equação diferencial:
onde
- U=0,1 m/s é a velocidade (advecção),
- D=5 m²/s é a dispersão,
- k=0 (conservativo) ou k=0,0005 s⁻¹ (não-conservativo).
A solução para um degrau de concentração 
Passo 3
Conservativo (k=0):
Para t≤t₀ (antes de desligar) a concentração em x, t é
Para t≤t₀ (antes de desligar) a concentração em x, t é
Para t>t₀, a gente subtrai o mesmo pulso atrasado em t–t₀:
Passo 4
Não-conservativo (k=0,0005 s⁻¹):
Mesma ideia, mas cada termo leva um fator de decaimento exponencial. Para t≤t₀:
Mesma ideia, mas cada termo leva um fator de decaimento exponencial. Para t≤t₀:
E para t>t₀:
Passo 5
Agora é só pôr os números:
- 
mg/L, 
- 
m/s, 
- 
m²/s, 
- 
s, 
- 
ou s⁻¹, 
- 
m e m. 
Aí a gente varre 
Passo 6
Vamos visualizar em gráfico 
– Em x=100 m o degrau chega rapidinho (em
– Em x=2000 m chega só em
– Com decaimento, a curva fica mais “baixinha” e um pouco mais estreita.
– Em x=100 m o degrau chega rapidinho (em
– Em x=2000 m chega só em
– Com decaimento, a curva fica mais “baixinha” e um pouco mais estreita.
Para plotar, em Python por exemplo:
import numpy as np, matplotlib.pyplot as plt
from scipy.special import erfc
def C_step(x, t, C0, U, D):
    return 0.5*C0*(erfc((x-U*t)/(2*np.sqrt(D*t)))+np.exp(U*x/D)*erfc((x+U*t)/(2*np.sqrt(D*t))))
def C_pulso(x,t, C0,U,D,t0,k):
    if t<=t0:
        return np.exp(-k*t)*C_step(x,t,C0,U,D)
    else:
        return np.exp(-k*t)*C_step(x,t,C0,U,D) - np.exp(-k*(t-t0))*C_step(x,t-t0,C0,U,D)
t = np.linspace(1,3e4,500)
for x in [100,2000]:
    plt.figure()
    for k,label in [(0,'conserv.'),(5e-4,'decai')]:
        C = [C_pulso(x,ti,100,0.1,5,7200,k) for ti in t]
        plt.plot(t/3600,C,label=label)
    plt.title(f"x={x} m")
    plt.xlabel("t (h)"); plt.ylabel("C (mg/L)")
    plt.legend(); plt.grid()
plt.show()
Resposta
Fórmulas finais:
Conservativo (k=0):
Não-conservativo (k=0,0005 s⁻¹):
com 
Gráficos de 
- Chegada rápida em 0,3 h no ponto 100 m, pico em 100 mg/L, queda após 2 h.
- Em 2000 m o pico chega só em ≃5,6 h e atinge bem menos (difusão + decaimento).
- A curva não-conservativa fica sempre abaixo da conservativa.
