☀ Equações Solares

Referência matemática para cálculos de posição, horários e sombras do sol

1 Equação do Tempo

Expressa a diferença, em minutos, entre o tempo solar verdadeiro (medido pelo sol real) e o tempo solar médio (relógio uniforme). Essa diferença existe porque a órbita da Terra é elíptica e o eixo terrestre está inclinado. O valor oscila entre aproximadamente −14 min e +16 min ao longo do ano.

\[ E = 9{,}87 \sin(2B) - 7{,}53 \cos(B) - 1{,}5 \sin(B) \quad [\text{minutos}] \] onde \[ B = \frac{360}{365}(N - 81) \quad [\text{graus}] \]
Parâmetros
SímboloUnidadeDescrição
EminutosEquação do tempo (positivo = sol adiantado)
NadimensionalNúmero do dia do ano (1 = 1º de janeiro, 365 = 31 de dezembro)
BgrausÂngulo auxiliar proporcional ao dia do ano

Formulação de Spencer (1971), adequada para uso prático. Para maior precisão, utiliza-se a série de Fourier completa com os termos da anomalia média e da longitude eclíptica.

2 Hora do Nascer e do Pôr do Sol

Determina os instantes em que o centro do disco solar cruza o horizonte astronômico. O ângulo horário do nascer/pôr (\(\omega_s\)) é calculado a partir da latitude do observador e da declinação solar do dia.

\[ \cos(\omega_s) = -\tan(\phi)\,\tan(\delta) \] \[ T_{\text{nasc}} = 12 - \frac{\omega_s}{15} - \frac{E}{60} + \frac{\lambda_{\text{ref}} - \lambda}{15} \quad [\text{h}] \] \[ T_{\text{pôr}} = 12 + \frac{\omega_s}{15} - \frac{E}{60} + \frac{\lambda_{\text{ref}} - \lambda}{15} \quad [\text{h}] \]
Parâmetros
SímboloUnidadeDescrição
\(\omega_s\)grausÂngulo horário do nascer/pôr do sol (sempre positivo)
\(\phi\)grausLatitude do observador (sul = negativo)
\(\delta\)grausDeclinação solar do dia (varia entre −23,45° e +23,45°)
\(E\)minutosEquação do tempo (ver equação 1)
\(\lambda\)grausLongitude do observador (oeste = negativo)
\(\lambda_{\text{ref}}\)grausLongitude do meridiano de referência do fuso horário local

Quando \(|\tan\phi \cdot \tan\delta| > 1\), o sol não nasce (polar noturno) ou não se põe (sol da meia-noite). A correção de refração atmosférica padrão é de −34′ no horizonte, o que adianta o nascer e atrasa o pôr em aproximadamente 2 a 3 minutos.

3 Altitude Solar

A altitude solar (ou elevação solar) é o ângulo vertical entre o raio solar e o plano horizontal do observador. Varia de 0° (sol no horizonte) até 90° (sol a pino, no zênite). É o parâmetro fundamental para calcular o azimute solar e o comprimento da sombra, e depende da latitude, da declinação solar e da hora solar local.

\[ \sin(\alpha) = \sin(\phi)\,\sin(\delta) + \cos(\phi)\,\cos(\delta)\,\cos(\omega) \]
Parâmetros
SímboloUnidadeDescrição
\(\alpha\)grausAltitude solar (ângulo acima do horizonte; negativo = sol abaixo do horizonte)
\(\phi\)grausLatitude do observador (sul = negativo)
\(\delta\)grausDeclinação solar do dia (varia entre −23,45° e +23,45°)
\(\omega\)grausÂngulo horário solar: \(\omega = 15 \times (\text{HSL} - 12)\)
(negativo de manhã, zero na culminação, positivo à tarde)

A altitude máxima do dia ocorre na culminação (\(\omega = 0°\)) e vale \(\alpha_{\max} = 90° - |\phi - \delta|\). Quando \(\alpha = 0°\), o sol está exatamente no horizonte — esse é o instante do nascer ou do pôr do sol. A altitude solar é necessária tanto para o cálculo do azimute (equação 4) quanto para o comprimento da sombra (equação 6).

4 Azimute do Sol

O azimute solar é o ângulo horizontal medido a partir do Norte geográfico, no sentido horário, que indica a direção do sol no céu. Junto com a altitude solar, define completamente a posição do sol para um observador em um dado instante.

\[ \cos(A_s) = \frac{\sin(\delta) - \sin(\phi)\,\sin(\alpha)}{\cos(\phi)\,\cos(\alpha)} \]
\[ A_s = \begin{cases} A_s & \text{se } \sin(\omega) \leq 0 \quad (\text{manhã}) \\ 360° - A_s & \text{se } \sin(\omega) > 0 \quad (\text{tarde}) \end{cases} \]
Parâmetros
SímboloUnidadeDescrição
\(A_s\)grausAzimute solar (0° = Norte, 90° = Leste, 180° = Sul, 270° = Oeste)
\(\alpha\)grausAltitude solar (ângulo acima do horizonte)
\(\delta\)grausDeclinação solar do dia
\(\phi\)grausLatitude do observador
\(\omega\)grausÂngulo horário solar (negativo de manhã, positivo à tarde)

A altitude solar \(\alpha\) é calculada pela equação 3. O ângulo horário \(\omega = 15 \times (T_{\text{solar}} - 12)\), onde \(T_{\text{solar}}\) é a hora solar local em horas decimais.

5 Azimute da Sombra de uma Haste Vertical

A sombra projetada por uma haste vertical aponta sempre na direção oposta ao sol. O azimute da sombra é, portanto, o azimute solar acrescido de 180°, reduzido ao intervalo [0°, 360°). Essa relação é exata para qualquer superfície horizontal plana.

\[ A_{\text{sombra}} = (A_s + 180°) \mod 360° \]
Parâmetros
SímboloUnidadeDescrição
\(A_{\text{sombra}}\)grausAzimute da sombra (0° = Norte, 90° = Leste…)
\(A_s\)grausAzimute solar no instante considerado (ver equação 4)

No hemisfério sul, ao meio-dia solar (culminação), o sol está ao Norte e a sombra aponta para o Sul (\(A_{\text{sombra}} \approx 180°\)). No hemisfério norte ocorre o inverso. Nas regiões tropicais, o sol pode estar ao Sul no verão, invertendo a direção da sombra ao meio-dia.

6 Comprimento da Sombra de uma Haste Vertical

O comprimento da sombra projetada por uma haste vertical de altura \(h\) sobre uma superfície horizontal plana depende exclusivamente da altitude solar no instante considerado. Quanto menor a altitude solar (sol baixo no horizonte), maior a sombra.

\[ L = \frac{h}{\tan(\alpha)} \]
Parâmetros
SímboloUnidadeDescrição
\(L\)metrosComprimento da sombra na superfície horizontal
\(h\)metrosAltura da haste vertical
\(\alpha\)grausAltitude solar no instante considerado (ver equação 3)

A equação é indefinida quando \(\alpha = 0°\) (sol no horizonte) e não tem solução real para \(\alpha < 0°\) (sol abaixo do horizonte, sem sombra visível). Para \(\alpha = 45°\), a sombra tem exatamente o mesmo comprimento da haste (\(L = h\)).

7 Hora da Culminação (Trânsito Solar)

A culminação (ou trânsito solar) é o instante em que o sol atinge sua altitude máxima no céu, cruzando o meridiano local. Nesse momento, o ângulo horário solar é zero e a sombra de uma haste vertical aponta exatamente para o Norte ou para o Sul geográfico.

\[ T_{\text{culm}} = 12 - \frac{E}{60} + \frac{\lambda_{\text{ref}} - \lambda}{15} \quad [\text{h}] \]
Parâmetros
SímboloUnidadeDescrição
\(T_{\text{culm}}\)horasHora local da culminação (relógio)
\(E\)minutosEquação do tempo para o dia (ver equação 1)
\(\lambda\)grausLongitude do observador (oeste = negativo)
\(\lambda_{\text{ref}}\)grausLongitude do meridiano central do fuso horário local
(ex: −45° para UTC−3; −60° para UTC−4)

A culminação coincide com o "meio-dia solar" mas raramente ocorre às 12:00 do relógio, pois depende da equação do tempo e da diferença de longitude em relação ao meridiano do fuso. Para Bom Despacho-MG (lon = −45,25°, fuso UTC−3, \(\lambda_{\text{ref}}\) = −45°), a culminação em 30/05/2026 ocorre às 11:58 (relógio).

8 Hora Solar Local (HSL)

A hora solar local é o tempo medido pelo sol real para um meridiano específico. Difere da hora do relógio (hora civil) por dois fatores: a diferença de longitude em relação ao meridiano do fuso e a equação do tempo. É a hora usada em todos os cálculos de posição solar.

\[ \text{HSL} = T_{\text{civil}} + \frac{E}{60} + \frac{\lambda - \lambda_{\text{ref}}}{15} \quad [\text{h}] \] ou equivalentemente, em minutos: \[ \text{HSL} = T_{\text{civil}} + E + 4(\lambda - \lambda_{\text{ref}}) \quad [\text{min a partir de meia-noite}] \]
Parâmetros
SímboloUnidadeDescrição
HSLhorasHora solar local (12:00 = sol no meridiano)
\(T_{\text{civil}}\)horasHora civil local (leitura do relógio)
\(E\)minutosEquação do tempo para o dia (ver equação 1)
\(\lambda\)grausLongitude do observador (oeste = negativo)
\(\lambda_{\text{ref}}\)grausLongitude do meridiano central do fuso horário local

O ângulo horário solar \(\omega\) usado nas equações 2, 3 e 4 é obtido diretamente da HSL: \(\omega = 15 \times (\text{HSL} - 12)\), em graus. Quando HSL = 12:00, \(\omega = 0°\) e o sol está na culminação.

9 Declinação Solar

A declinação solar é o ângulo entre o plano do equador terrestre e a linha que une a Terra ao Sol. Varia entre −23,45° (solstício de dezembro) e +23,45° (solstício de junho) ao longo do ano. É parâmetro fundamental para os cálculos de altitude solar (equação 3), azimute (equação 4) e horários de nascer/pôr (equação 2).

\[ \delta = 23{,}45 \sin\!\left(\frac{360}{365}(N - 81)\right) \quad [\text{graus}] \]
Forma alternativa de maior precisão (Cooper, 1969): \[ \delta = 23{,}45 \sin\!\left(\frac{360}{365}(N + 284)\right) \quad [\text{graus}] \]
Parâmetros
SímboloUnidadeDescrição
\(\delta\)grausDeclinação solar do dia
\(N\)adimensionalNúmero do dia do ano (ver equação 10)

A declinação é zero nos equinócios (aprox. 20/03 e 23/09) e atinge os valores extremos nos solstícios (aprox. 21/06 e 21/12). No equinócio, o dia e a noite têm duração igual em qualquer latitude. O erro da fórmula acima é inferior a 0,3°, suficiente para aplicações práticas.

10 Número do Dia do Ano

O número do dia do ano (\(N\)) é um índice inteiro que identifica cada dia dentro do ano civil, de 1 (1º de janeiro) a 365 (ou 366 em anos bissextos). É o argumento de entrada das equações da equação do tempo (equação 1) e da declinação solar (equação 9).

\[ N = \left\lfloor \frac{275 \cdot M}{9} \right\rfloor - k \cdot \left\lfloor \frac{M + 9}{12} \right\rfloor + D - 30 \] onde \[ k = \begin{cases} 1 & \text{se ano bissexto} \\ 2 & \text{caso contrário} \end{cases} \]
Parâmetros
SímboloUnidadeDescrição
\(N\)adimensionalNúmero do dia do ano (1–365 ou 1–366)
\(M\)adimensionalMês (1 = janeiro, 12 = dezembro)
\(D\)adimensionalDia do mês (1–31)
\(k\)adimensionalFator de correção para ano bissexto (1 se bissexto, 2 se não)

Exemplos: 1º/jan = 1; 1º/fev = 32; 21/jun = 172 (ano comum) ou 173 (bissexto); 31/dez = 365 (ano comum) ou 366 (bissexto). Em Python: import datetime; datetime.date(ano, mes, dia).timetuple().tm_yday.

11 Estação do Ano

A estação do ano é determinada pela posição da Terra em sua órbita, definida pelos solstícios e equinócios. Não existe uma única fórmula fechada: a estação é obtida por comparação da data com os quatro eventos do ano (ver equação 12). As estações são invertidas entre os hemisférios Norte e Sul.

\[ \text{Estação} = \begin{cases} \text{Verão (N) / Inv. (S)} & \text{se }\; t_{\text{solst.jun}} \le t < t_{\text{equin.set}} \\ \text{Outono (N) / Prim. (S)} & \text{se }\; t_{\text{equin.set}} \le t < t_{\text{solst.dez}} \\ \text{Inv. (N) / Verão (S)} & \text{se }\; t_{\text{solst.dez}} \le t \;\text{ ou }\; t < t_{\text{equin.mar}} \\ \text{Prim. (N) / Outono (S)} & \text{se }\; t_{\text{equin.mar}} \le t < t_{\text{solst.jun}} \end{cases} \]
Parâmetros
SímboloUnidadeDescrição
\(t\)data/horaInstante a ser classificado
\(t_{\text{equin.mar}}\)data/horaEquinócio de março do ano (ver equação 12)
\(t_{\text{solst.jun}}\)data/horaSolstício de junho do ano (ver equação 12)
\(t_{\text{equin.set}}\)data/horaEquinócio de setembro do ano (ver equação 12)
\(t_{\text{solst.dez}}\)data/horaSolstício de dezembro do ano (ver equação 12)

No hemisfério Sul: verão = dez/jan/fev, outono = mar/abr/mai, inverno = jun/jul/ago, primavera = set/out/nov. As datas exatas variam alguns dias a cada ano por causa dos anos bissextos e das perturbações orbitais.

12 Datas e Horas dos Solstícios e Equinócios

Os solstícios e equinócios são os quatro instantes do ano em que a declinação solar atinge seus valores extremos (±23,45°) ou zero. Podem ser calculados com precisão de minutos por séries polinomiais baseadas no Tempo Dinâmico Terrestre (TDT), conforme Meeus (1998), capítulo 27.

\[ \text{JDE}_0 = J_0 + \sum_{k} F_k \cos(A_k + B_k \cdot T) \] onde \[ T = \frac{Y - 2000}{1000}, \qquad J_0 = a_0 + a_1 T + a_2 T^2 + a_3 T^3 + a_4 T^4 \]
Coeficientes \(a_0\) e \(a_1\) de \(J_0\) (data juliana aproximada)
Evento\(a_0\)\(a_1\) (dias/ano)
Equinócio de março2 451 623,80984365 242,37404
Solstício de junho2 451 716,56767365 241,62603
Equinócio de setembro2 451 810,21715365 242,01767
Solstício de dezembro2 451 900,05952365 242,74049
Parâmetros
SímboloUnidadeDescrição
JDE\(_0\)dias julianosData Juliana Efémeride do evento (TDT)
\(Y\)adimensionalAno com fração decimal (ex: 2026,0 = 1º/jan/2026)
\(T\)séculosSéculos julianos desde J2000.0
\(F_k, A_k, B_k\)variadosCoeficientes de correção periódica (24 termos por evento — tabela em Meeus, cap. 27)

Para uso prático sem implementar a série completa, os números de dia aproximados são: \[ N_{\text{equin.mar}} \approx 80, \quad N_{\text{solst.jun}} \approx 172, \quad N_{\text{equin.set}} \approx 266, \quad N_{\text{solst.dez}} \approx 355 \] Para precisão de minutos, use a biblioteca ephem (Python). Exemplo para 2026: equinócio de março = 20/03 às 14:45 UTC; solstício de junho = 21/06 às 08:24 UTC; equinócio de setembro = 23/09 às 00:05 UTC; solstício de dezembro = 21/12 às 20:49 UTC.

13 Ano Bissexto

Um ano é bissexto quando tem 366 dias em vez de 365, com a inserção do dia 29 de fevereiro. Essa correção compensa o fato de o ano tropical (tempo que a Terra leva para completar uma volta ao redor do Sol) ter aproximadamente 365,2422 dias. O resultado da equação é 1 para ano bissexto e 0 para ano normal, sendo utilizado como fator \(k\) na equação do número do dia do ano (equação 10).

Um ano \(A\) é bissexto se e somente se satisfizer a seguinte condição composta:

\[ B(A) = \begin{cases} 1 & \text{se }\; (A \bmod 400 = 0) \\ 1 & \text{se }\; (A \bmod 4 = 0) \;\text{ e }\; (A \bmod 100 \ne 0) \\ 0 & \text{caso contrário} \end{cases} \]

Equivalentemente, usando operações lógicas:

\[ B(A) = \mathbf{1}\!\left[(A \bmod 4 = 0) \;\wedge\; \bigl((A \bmod 100 \ne 0) \;\vee\; (A \bmod 400 = 0)\bigr)\right] \]
Parâmetros
SímboloUnidadeDescrição
\(B(A)\)adimensionalIndicador de ano bissexto: 1 = bissexto, 0 = normal
\(A\)adimensionalAno a ser verificado (ex: 2024, 2100, 2000)
\(\bmod\)Operação de resto da divisão inteira (módulo)

Regra em três passos:
1. Se o ano é divisível por 400 → bissexto (ex: 1600, 2000, 2400).
2. Senão, se é divisível por 100 → não bissexto (ex: 1700, 1800, 1900, 2100).
3. Senão, se é divisível por 4 → bissexto (ex: 2024, 2028).
4. Caso contrário → não bissexto (ex: 2025, 2026, 2027).

Exemplos: \(B(2024) = 1\), \(B(2025) = 0\), \(B(2100) = 0\), \(B(2000) = 1\).
Em Python: import calendar; calendar.isleap(ano) ou (ano % 4 == 0) and (ano % 100 != 0 or ano % 400 == 0).