quinta-feira, 22 de março de 2018

Cálculo numérico em R da pressão atmosférica na região da troposfera - método das diferenças finitas

Este artigo destina-se ao estudo numérico do comportamento da pressão na camada troposférica até seu limite superior, a tropopausa. Essa aproximação é válida apenas neste limite, uma vez que tanto na estratosfera quanto na termosfera a temperatura atmosférica não segue o mesmo comportamento aproximadamente linear como na troposfera e na mesosfera. O estudo aqui discutido levará em consideração um decrescimento que é aproximadamente linear na troposfera, o que está de acordo com o que é observado. Eu escolhi este tema para este tópico por ele estar alinhado com uma simulação computacional simples proposta por um professor do Departamento de Física Aplicada, da USP de São Paulo.

A equação termodinâmica de estado para a atmosfera, que é derivada considerando-se apenas ar seco ($\textit{dry air}$) e vapor, uma vez que eles representam 99,96% da concentração de gases da atmosfera. Assim: $P_a = P_d + P_v$, onde $P_d$ é a pressão para o ar seco e $P_v$ é a pressão de vapor. Para gases ideais (uma suposição bastante razoável é a de que os gases na atmosfera comportam-se como ideais), a equação é $Pv = nRT$, que pode ser reescrita em termos da densidade $\rho$ do gás:

$$ P = \frac{m_a}{V}n \frac{R}{m_a}T = \rho R' T $$

onde $n~m_a$ é a massa total, $R^{'} = R/m_a$ é a constante do gás.

Com isso,

$$ P_a = P_d + P_v = \rho_d R^{'}_d T + \rho_v R^{'}_v T = T (\rho_v R^{'}_v + \rho_d R^{'}_d)$$

Considere a constante $\epsilon = R_d/R_v = m_v/m_d = 0.622$, então:

$$P_a = R_d T\left( \rho_d + \frac{\rho_v}{\epsilon} \right),$$

que ainda pode ser reescrita em termos da densidade do ar ($\rho_a = \rho_d + \rho_v$) como:

$$P_a = \rho_a R_d T \left( \frac{\rho_d + \frac{\rho_v}{\epsilon}}{\rho_a} \right) = \rho_a R_d T \left( \frac{(\rho_a - \rho_v)}{\rho_a} + \frac{\rho_v}{\rho_a\epsilon}\right).$$

Neste ponto, define-se a umidade específica, $q_v = \frac{\rho_v}{\rho_a}$, de tal forma que:

$$P_a = \rho_a R_d T \left(1 - q_v + \frac{q_v}{\epsilon}\right) =  \rho_a R_d T \left( 1 + \frac{1-\epsilon}{\epsilon}q_v \right),$$

com $(1-\epsilon)/\epsilon = 0.608$. Considera-se, neste momento, uma nova temperatura, a temperatura virtual $T_v$,

$$T_v = T \left( 1 + \frac{1-\epsilon}{\epsilon}q_v \right),$$

que, conceitualmente, é a temeratura que o ar seco teria caso fosse aquecido pelo calor latente armazenado em $q_v$. Algo que é necessário deixar claro é que as grandezas $\rho$, P e $T$ variam verticalmente na atmosfera, independente da equação de estado. Como o ar não está acelerado na direção vertical, isso significa que sua força peso está em equilíbrio com o gradiente de pressão:

$$PA - (P+dP)A = \rho A g dz \\ A dP = \rho A g dz, \\ \frac{dP}{dz} = \rho g,$$

que é a equação hidrostática. Através do método de diferenças finitas, a equação diferencial anterior pode ser resolvida:

$$ \frac{P_k - P_{k+1}}{z_k - z_k+1} \approx \frac{\rho_k+\rho_{k+1}}{2} \frac{g_k +g_{k+1}}{2}, \\ \Rightarrow P_k \approx P_{k+1} - \rho_k g (\Delta z_k) $$

em que foi considerado que a densidade varia pouco com a altitude, bem como a constante gravitacional g. Esta última equação pode ser facilmente resolvida em R:

 p2 = c(); p2[1] = 101325; #vetor para a pressao;
rho = 1.3; g = 9.8; 
for (z in 1: 1000){
  
  p2[z+1] = p2[1]-rho*g*z
}

atm2 = p2*9.87e-6

par(mar = c(5, 6, 3, 5))
plot(seq(1:length(atm2)),atm2,type='l', xlab='Altitude above sea level (m)',ylab = 'Air pressure (atm)')
par(new=TRUE)

hbar = p2/100;

plot(hbar,type='l',ylab="",xlab = "",xaxt = "n", yaxt = "n");
axis(side=4);
mtext("Air pressure (hPa)", side = 4, line = 3)


Outra consideração para o cálculo da pressão atmosférica, desta vez com maior acurácia, é através da junção entre a equação de estado e a equação hidrostática. Considerando uma atmosféra isoterma, então:

$$ dP = -\rho g dz,\\ P = \rho R_d T_v, \\ \Rightarrow \frac{dP}{P} = - \frac{g}{R_d T_v}dz = -\frac{dz}{H}, $$

onde o fator de escala $H = R_d T_v/g$. Resolvendo a equação anterior:

$$ P(z) = P_0 e^{-(z-z_0)/H}. $$

 p = c(); p[1] = 101325; #vetor para a pressao;
rho = 1.3; g = 9.8; R = 287.04;
Temp = c(); Temp[1] = 300;
for (z in 1: 15000){
  
  p[z+1] = p[1]*exp(-g*z/(R*Temp[1]));
}

atm = p*9.87e-6
dist2 = seq(1:length(atm))/1000;
par(mar = c(5, 6, 3, 5))
plot(dist2,atm,type='l', xlab='Altitude above sea level (Km)',ylab = 'Air pressure (atm)')
par(new=TRUE)

hbar2 = p/100;

plot(hbar2,type='l',ylab="",xlab = "",xaxt = "n", yaxt = "n");
axis(side=4);
mtext("Air pressure (hPa)", side = 4, line = 3)



Apenas a título de curiosidade, mostro abaixo uma comparação entre a solução da equação hidrostática e a solução da nova equação diferencial, considerando atmosféra isotérmica e equação de estado para até 1000 metros acima do nível do mar:

 plot(hbar2[1:1001],type='l', xlab = "Altitude above sea level (m)", ylab = "Air pressure (hPa)" )   
  points(hbar[1:1001],type='l',col='blue')   
  legend(400,1000,c("State and hidrostatic eq.","Hidrostatic equation"), text.col = c('black','blue'))   



Nota-se que a partir de 200 m de altitute, as soluções de ambas as equações começam a divergir entre si. Agora, considero que há variação da temperatura conforme a altitude aumenta. Especificamente, na troposfera a temperatura diminui com o aumento da temperatura de forma aproximadamente linear, ou seja:

$$ T(z) = T_0 - \Gamma z, $$

em que $\Gamma \approx 6.5 K/Km$. Ou seja, a temperatura diminui 6.5 K a cada quilômetro atingido acima do nível do mar. Com essa consideração, a equação diferencial para a pressão fica escrita como:

$$ \frac{dP}{P} = -\frac{g}{R_m T}dz = -\frac{g dz}{R_m(T_0 - \Gamma z)} $$

Ao tomar:

$$ R_m = R (1 - (1-\epsilon)q_v/\epsilon) $$

como uma grandeza constante, então, integrando os termos correspondentes (0 < z' < z  e Po < P' < P ),:

$$ \ln{\left( \frac{P}{P_0} \right)} = \frac{\Gamma g}{R_m T_0 \Gamma}\ln{\left(\left[ \frac{T_0}{\Gamma }\right] - z\right)} \Biggr|_{0}^{z},\\ \Rightarrow \frac{g}{\Gamma R_m} \left[ \ln{\left( \frac{T_0}{\Gamma} - z \right) - \left(\frac{T_0}{\Gamma}  \right)} \right] = \frac{g}{\Gamma R_m} \left[ \ln{\left(\frac{\frac{T_0}{\Gamma}-z}{\frac{T_0}{\Gamma}}\right)} \right], \\ \Rightarrow \ln{\left( \frac{P}{P_0} \right)} = \ln{\left( \frac{T_0 - \Gamma z}{T_0} \right)}\frac{g}{\Gamma R_m} $$

Neste ponto, uso a seguinte propriedade do logaritmo:

$$ \ln{A} = B \ln{C} \Rightarrow A = C^B, $$

ou seja,

$$ P = P_0 \left( 1 - \frac{\Gamma z}{T_0} \right)^{\frac{g}{\Gamma R_m}}. $$

Esta equação pode ser facilmente resolvida numericamente assim como o caso anterior, com a diferença de que incluiremos a variação da temperatura com a altitude:

p3 = c(); p3[1] = 101325; #vetor para a pressao;
g = 9.8; R = 287.04; gamma = 6.5/1000;
Temp = c(); Temp[1] = 300;

for (z in 1: 15000){
  
  p3[z+1] = p3[1]*(1-gamma*z/Temp[1])^(g/(R*gamma));
}

atm3 = p3*9.87e-6
dist = seq(1:length(atm3))/1000;

plot(dist,atm3, type='l', xlab='Altitude above sea level (Km)',ylab = 'Air pressure (atm)')



Uma comparação desta solução com a do caso anterior, para temperatura constante, é:

 plot(atm, type='l',xlab = "Altitude above sea level (Km)", ylab = 'Air pressure (atm)')   
  lines(atm3,col='green')   
  legend(9500,1,c("Constant Temperature","Variable Temperature"), text.col = c('black','green'))   



mostrando que a solução com temperatura variável tende a ser diferente daquela para temperatura constante a partir de, aproximadamente, 5 Km. 

quarta-feira, 28 de fevereiro de 2018

A poderosa universalidade da terceira lei de Kepler


Como esta é a primeira postagem de 2018, eu decidi falar sobre uma aplicação de uma das leis físicas que mais gosto, amplamente discutida até mesmo no ensino médio, e que foi derivada por Johannes Kepler, no século XVII, em Praga (falo um pouco de Kepler aqui). Kepler é, para mim, um herói, no sentido de que nunca abandonou sua ciência, apesar das infinitas adversidades que surgiram em sua vida. Vale a pena mencionar: dois casamentos infelizes, a morte de muitos de seus filhos, mãe acusada de bruxaria, perseguição da Igreja Católica por ele ser protestante e, claro, a pouca amizade entre ele e seu principal mentor, Tycho Brahe. Nada disso foi suficiente para que Kepler desistisse de sua busca pela harmonia do mundo, e todos nós sabemos no que resultou sua persistência: confirmação e ampliação do modelo heliocêntrico de Copérnico, mostrando que a órbita de Marte é elíptica (e, consequentemente, a dos outros planetas), a lei das áreas (planetas em suas órbitas "varrem" áreas iguais em tempos iguais) e a poderosa lei dos períodos. Esta última, em termos matemáticos, diz que:

\begin{equation}
\frac{T^2}{R_{medio}^3} = C,
\label{terceira_lei}
\end{equation}

onde $T$ e $R_{medio}$ são o período e o raio médio de uma dada órbita, e $C$ é uma constante que depende do corpo de maior massa no sistema em questão. Matematicamente, a constante C é derivada através de considerações mecânicas (que podem ser vistas aqui), cujo resultado é $\frac{4\pi^2}{GM_{sol}}$, com $G = 6,6708\times10^{-11}m^3Kg^{-1}s^{-2}$ e $M_{sol} \approx 1,98\times 10^{30} Kg$. A Tabela 1 abaixo calcula a razão entre o quadrado do período e o cubo do raio médio para os planetas do sistema solar. É impressionante a precisão da Terceira Lei de Kepler. Deve-se ressaltar que Kepler fundou as bases da astrofísica, uma vez que derivou leis universais, aplicáveis em qualquer lugar do universo para descrever qualquer tipo de sistema estelar com planetas dançando ao seu redor!

Tabela 1: cálculo da Lei dos Períodos para os planetas do sistema solar. Fonte: mundoeducação.

Em novembro de 2017 uma descoberta bastante intrigante foi anunciada por cientistas da agência espacial européia (ESO), a respeito de um planeta cujas características físico-químicas o colocam como um dos mais prováveis a abrigar vida. Talvez seja importante dizer que "abrigar vida" significa que sua localização está dentro da "zona habitável" de uma estrela. Esta região é, a grosso modo, aquela em que a quantidade de radiação que chega ao planeta é suficiente para manter água em estado líquido e atmosferas com características similares às da Terra.

O planeta descoberto, nomeado Ross 128b, orbita a estrela Ross 128 do tipo anã-vermelha, na constelação de Virgo (Virgem), e juntos localizam-se a "apenas" 11 anos-luz (um ano-luz é o caminho percorrido pela luz a 300 000 Km/s em um ano e corresponde a, aproximadamente, 9 trilhões de quilômetros) da Terra. Esta é uma distância relativamente pequena, uma vez que outros planetas similares à Terra encontrados em estudos anteriores localizam-se a pelo menos 39 anos-luz (mais info aqui). Vale a pena mencionar o planeta Proxima B, o qual orbita a estrela Proxima Centauri, que é a mais próxima da Terra (4 anos-luz). Este planeta localiza-se também na zona habitável de sua estrela, no entanto, ele está tão próximo dela que erupções naturais estelares inundam sua superfície de radiação absolutamente nociva à vida, o que torna Ross 128b ainda mais especial. 

Com isso em mente, eu me propús a pensar em formas de obter alguns parâmetros tanto de Ross 128b a partir das leis de  Kepler. O mínimo de informação a respeito de um sistema planetário que é sabido através de técnicas espectroscópicas de interferência (mais info aqui) são as massas da estrela e do planeta, e seu período de translação. Dessa forma, o raio orbital médio é extraído da equação \ref{terceira_lei} escrevendo-a na seguinte forma:

\begin{equation}
\frac{T_R^2}{R_R^3} = \frac{4\pi^2}{GM_{Ross128}},
\label{kep_ross}
\end{equation}

onde $T_R$ e $R_R$ são o período e o raio orbitais de Ross 128b. Se isolarmos o termo relativo ao raio médio, $R_R$, obtemos:

\begin{equation}
R_R = \left( \frac{T_R^2 G M_{Ross128}}{4\pi^2} \right)^{1/3}.
\label{kepler_ross}
\end{equation}

Eu gostaria de ir um pouco além na equação \ref{kepler_ross} ao expressá-la não em termos da massa de Ross 128, mas do período orbital da Terra e do seu raio orbital médio. Para isso, suponha um parâmetro $\beta$ de proporcionalidade entre a massa de Ross 128 e a massa solar, tal que $M_{Ross128} = \beta M_{sol}$. A terceira lei de Kepler para o planeta Terra é similar à equação \ref{kep_ross}, apenas trocando a massa pela massa solar. Note que, a equação \ref{kepler_ross} pode ser reescrita na seguinte forma:

\begin{equation}
R_R = \left( \frac{T_R^2 G M_{sol}\beta}{4\pi^2} \right)^{1/3},
\end{equation}

Mas,

\begin{equation}
\frac{GM_{sol}}{4\pi^2} = \frac{R_T^3}{T_T^2},
\end{equation}

logo,

\begin{equation}
R_R = \left( \frac{T_R^2\beta}{T_T^2} \right)^{1/3}R_T.
\label{kepler_parametros_ross}
\end{equation}

Repare no quanto a equação \ref{kepler_parametros_ross} é bonita e intrigante. Ela mostra uma relação direta entre o raio orbital de um planeta em conjunto com uma estrela qualquer a 11 anos-luz de distância e dois parâmetros muito bem conhecidos de nosso planeta Terra aqui no sistema solar! Conhecendo o valor de $\beta$ e $T_R$ experimentalmente fica extremamente simples obter um parâmetro orbital absolutamente impressindível para dizer se o planeta encontra-se ou não em uma zona habitável. Em outras palavras, a equação \ref{kepler_parametros_ross} é capaz de apontar se um planeta extraterrestre é ou não possível candidato a abrigar a vida na forma em que nós a conhecemos aqui na Terra! Para o caso do sistema planetário de Ross 128, $\beta = 0,168$ e $T_R \approx 9,86$ dias, o que resulta em um raio orbital médio de, aproximadamente, 7,4 milhões de quilômetros (equivalente a 0,05 UA, onde 1 UA $\approx$ 150 milhões de quilômetros, que é a distância média da Terra ao Sol). Apesar deste raio orbital médio ser extremamente pequeno, anãs-vermelhas têm temperaturas de superfície muito menores que a do Sol ($\approx$3500 K) e irradiam muito menos energia ($\approx$ 10% da luminosidade do sol), o que faz com que sua zona habitável  esteja localizada a curtas distâncias (se comparadas com as do sistema solar em que nós vivemos).

Será que Kepler um dia imaginou que seria possível relacionar grandezas do "nosso" sistema solar, que no final do século XVI era ainda acreditado ser geocêntrico, com parâmetros de outros planetas em outros sistemas solares em pontos inconcebivelmente distantes de nós? Giordano Bruno, pouco antes de ser queimado na fogueira pela inquisição da Igreja Católica, afirmava haver outros planetas orbitando cada uma das estrelas do firmamento, as quais seriam cada uma similares ao nosso sol. Inclusive, esta sua heresia o condenou ao perecimento, Como será que Kepler veria sua lei mais sutil ser empregada para buscar vida no universo? Será que sua harmonia do mundo, na verdade, não seria encontrar um pouco de nós mesmos nos confins do cosmos?

Concepção artística de Ross 128b. Fonte: ESO.

Fontes: