Atmospheric Transmission

class pysolorie.atmospheric_transmission.AtmosphericTransmission(climate_type: str, observer_altitude: int, observer_latitude: float)[source]

A class to model the atmospheric transmission.

To instantiate the AtmosphericTransmission class, provide the following three parameters.

Parameters:
  • climate_type (str) – The type of climate.

  • observer_altitude (int) – The altitude of the observer in meters.

  • observer_latitude (float) – The latitude of the observer in degrees.

calculate_transmittance(day_of_year: int, solar_time: float) float[source]

Calculate the effective atmospheric transmission coefficient of the direct beam.

The effective atmospheric transmission coefficient of the direct beam is calculated using the formula:

\[\tau_b = a_0 + a_1 \times \exp\left(-\frac{k}{\cos(\theta_z)}\right)\]
- \(\tau_b\) is the effective atmospheric transmission coefficient of the direct beam
- \(a_0\), \(a_1\), and \(k\) are the components of clear-sky beam radiation transmittance
- \(\theta_z\) is the solar zenith angle
Parameters:
  • day_of_year (int) – The day of the year.

  • solar_time (float) – The solar time in seconds.

Returns:

The effective atmospheric transmission coefficient of the direct beam.

Return type:

float