View Source Azan.SolarTime (AzanEx v0.1.0)

Documentation for SolarTime.

Link to this section Summary

Link to this section Types

@type t() :: %Azan.SolarTime{
  approx_transit: float() | nil,
  coordinate: %Azan.Coordinate{latitude: term(), longitude: term()} | nil,
  date: %Date{calendar: term(), day: term(), month: term(), year: term()} | nil,
  next_solar:
    %Azan.SolarCoordinate{
      apparent_side_real_time: term(),
      declination: term(),
      right_ascension: term()
    }
    | nil,
  observer: %Azan.Coordinate{latitude: term(), longitude: term()} | nil,
  prev_solar:
    %Azan.SolarCoordinate{
      apparent_side_real_time: term(),
      declination: term(),
      right_ascension: term()
    }
    | nil,
  solar:
    %Azan.SolarCoordinate{
      apparent_side_real_time: term(),
      declination: term(),
      right_ascension: term()
    }
    | nil,
  sunrise: float() | nil,
  sunset: float() | nil,
  transit: float() | nil
}

Link to this section Functions

Link to this function

afternoon(solar_time, shadow_length)

View Source
Link to this function

find_pair_solar_time(date, coordinate, calculation_parameter)

View Source
@spec find_pair_solar_time(
  Date.t(),
  Azan.Coordinate.t(),
  Azan.CalculationParameter.t()
) ::
  {:ok, {t(), t()}}
Link to this function

hour_angle(solar_time, angle, after_transit)

View Source
Link to this function

new(datetime, coordinate)

View Source
Link to this function

resolve_safe_time(solar_time, tomorrow_solar_time, polar_circle_resolution, date, coordinate)

View Source