pylunar.lunar_feature module

Module for the LunarFeature class.

class pylunar.lunar_feature.LunarFeature(name: str, diameter: float, latitude: float, longitude: float, delta_latitude: float, delta_longitude: float, feature_type: str, quad_name: str, quad_code: str, code_name: str, lunar_club_type: str | None)[source]

Bases: object

Class keeping all the information for a given Lunar feature.

Parameters:
  • name (str) – The name of the Lunar feature (no unicode).

  • diameter (float) – The diameter (km) of the Lunar feature.

  • latitude (float) – The latitude (degrees) of the Lunar feature. Negative is South, positive is North.

  • longitude (float) – The longitude (degrees) of the Lunar feature. Negative is West, positive is East.

  • delta_latitude (float) – The size (degrees) in latitude of the Lunar feature.

  • delta_longitude (float) – The size (degrees) in longitude of the Lunar feature.

  • feature_type (str) – The classification of the Lunar feature: i.e. Crater, Mons.

  • quad_name (str) – Name of lunar quadrant containing feature’s center point as determined by the International Astronomical Union (IAU) Working Group for Planetary System Nomenclature (WGPSN).

  • quad_code (str) – Specific lunar quadrant containing feature’s center point as determined by the IAU WGPSN.

  • code_name (str) – The AstroLeague club name for the Lunar feature. Can be: Lunar, LunarII or Both.

  • lunar_club_type (str or None) – The Lunar Club classification of the feature: Naked Eye, Binocular, Telescope. For a LunarII only feature this is None.

feature_angle() float[source]

Get the angle of the feature on the lunar face relative to North.

The feature angle is determined by calculating atan2(lon, lat) and then adding 360 degrees if the result is less than zero. This makes North zero degrees, East 90 degrees, South 180 degrees and West 270 degrees.

Returns:

The feature angle in degrees.

Return type:

float

classmethod from_row(row: Tuple[int, str, float, float, float, float, float, str, str, str, str, str]) LunarFeature[source]

Initialize from a database row.

Parameters:

row (list) – The database row containing the information.

Returns:

Class initialized from database row.

Return type:

LunarFeature

latitude_range() Tuple[float, float][source]

Get the latitude range of the feature.

Returns:

The (minimum, maximum) latitude values for the feature.

Return type:

tuple(float, float)

list_from_feature() list[object][source]

Convert the feature information into a list.

Returns:

The list of lunar features.

Return type:

list

longitude_range() Tuple[float, float][source]

Get the longitude range of the feature.

Returns:

The (minimum, maximum) longitude values for the feature.

Return type:

tuple(float, float)