bsrn.physics.geometry.get_solar_position#
- bsrn.physics.geometry.get_solar_position(times, lat, lon, elev=0, pressure=None, temp=12.0)[source]#
Calculates solar zenith angle ($Z$) and solar azimuth angle ($phi$) using SPA [1] [2].
- Parameters:
times (pd.DatetimeIndex) – Times for calculation.
lat (float) – Latitude. [degrees]
lon (float) – Longitude. [degrees]
elev (float, default 0) – Elevation. [m]
pressure (float, optional) – Surface pressure. [hPa] If None, calculated from elevation.
temp (float, default 12.0) – Air temperature ($T$). [°C]
- Returns:
solpos – DataFrame with columns ‘zenith’ ($Z$), ‘apparent_zenith’, ‘azimuth’ ($phi$). [degrees]
- Return type:
pd.DataFrame
- Raises:
ValueError – If pressure is provided and is non-positive or non-finite, or if
get_pressure_from_elevation()rejects elev when pressure is omitted.
References