solposx.refraction.bennett

Contents

solposx.refraction.bennett#

solposx.refraction.bennett(apparent_elevation, pressure=101325.0, temperature=12.0)#

Atmospheric refraction correction based on the Bennett algorithm.

Calculation of atmospheric refraction correction based on the apparent solar elevation angle using the method developed by Bennett [1].

Parameters:
  • apparent_elevation (array-like) – Apparent solar elevation angle (accounting for refraction). [degrees]

  • pressure (numeric, default 101325) – Annual average atmospheric pressure. [Pascal]

  • temperature (numeric, default 12) – Annual average air temperature. [C]

Returns:

Atmospheric refraction angle. [degrees]

Return type:

np.array or pd.Series

Warning

The Bennet refraction algorithm calculates refraction from the apparent solar elevation angle, in contrast to most refraction algorithms, which calculate refraction from the unrefracted true solar elevation angle.

Notes

The equation to calculate the refraction correction is given by:

\[ref = \frac{0.28*P}{T+273} \cdot \frac{0.016667}{\text{tan}(el_a + 7.31 / (el_a+4.4))}\]

where \(P\) is the local air pressure, \(T\) is the local air temperature, and \(el_a\) is the apparent (corrected) solar elevation angle.

References