oracowl package

Submodules

oracowl.dso_db module

oracowl.engine module

oracowl.engine.compute_dso(dso: dict, lat: float, lon: float, dt: datetime | None = None, skip_neverup: bool = False) dict[source]

Compute the DSO with the given data at the given latitude and longitude for the given datetime

Parameters:
  • dso (dict) – DSO data from the dso_list

  • lat (float) – latitude

  • lon (float) – longitude

  • dt (datetime) – datetime

  • skip_neverup (bool) – skip the DSOs if it never goes above the horizon

Returns:

DSO data as a dictionary

Return type:

dict

oracowl.engine.compute_dso_by_id(dso_id: int, lat: float, lon: float, dt: datetime | None = None)[source]

Compute the DSO with the given id at the given latitude and longitude

Parameters:
  • dso_id (str) – DSO id

  • lat (float) – latitude

  • lon (float) – longitude

  • dt (datetime) – datetime

Returns:

DSO data as a dictionary

Return type:

dict

oracowl.engine.compute_night(lat: float, lon: float, dt: datetime | None = None) dict[source]

Calculates the astronomical data for the given date and location, suggesting the top 20 DSOs to observe based on the Oracowl rank

Parameters:
  • lat (float) – latitude

  • lon (float) – longitude

  • dt (datetime) – datetime

Returns:

astronomical data as a dictionary

Return type:

dict

oracowl.engine.compute_planet(planet_id: str, lat: float, lon: float, dt: datetime | None = None) dict[source]

Compute the planet with the given id at the given latitude and longitude for the given datetime

Parameters:
  • planet_id (str) – planet id (e.g. “sun”, “moon”, “mercury”, “venus”, “mars”, “jupiter”, “saturn”, “uranus”, “neptune”, “pluto”)

  • lat (float) – lat

  • lon (float) – lon

  • dt (datetime) – datetime

Returns:

planet data as a dictionary

Return type:

dict

oracowl.engine.compute_planets(lat: float, lon: float, dt: datetime | None = None) list[source]

Compute all the planets at the given latitude and longitude for the given datetime

Parameters:
  • lat (float) – latitude

  • lon (float) – longitude

  • dt (datetime) – datetime

Returns:

list of planet data as dictionaries

Return type:

list

oracowl.engine.compute_polaris(lat: float, lon: float, dt: datetime | None = None) dict[source]

Compute the Polaris data at the given latitude and longitude for the given datetime

Parameters:
  • lat (float) – latitude

  • lon (float) – longitude

  • dt (datetime) – datetime

Returns:

Polaris data as a dictionary

Return type:

dict

Module contents