empyrean.ObservatoryConfig¶
- class ObservatoryConfig(obs_code, sigma_arcsec, max_apparent_mag, min_elongation_deg, min_elevation_deg=None, max_sun_altitude_deg=None)[source]
Bases:
objectPer-site astrometric assumptions and observability filters.
Not consulted by
empyrean.evaluate_plan(): the only field that takes these,PlanningConfig.observatories, refuses any non-empty list. Pass each candidate’s σ toPlannedObservation.optical()instead; the observability filters are engine-set on that entry point and are not caller-configurable. The class exists because it is part of the shared planning configuration, and becomes live if a surface that reads it is exposed.Two of the four filters below stay inert even then.
min_elevation_degandmax_sun_altitude_degare applied by the engine’s visibility survey, which no channel of this distribution exposes; plan evaluation gates each candidate on apparent magnitude and solar elongation alone. SoPlanCandidates.observablemeans “not ruled out from Earth”, never “schedulable from this site”.Mirrors
empyrean::ObservatoryConfigfield for field. The four astrometric and site-invariant fields carry no defaults on either side, so a config cannot be half-specified without saying so.The two visibility limits are optional here, and
Noneon either means “take the engine’s own default” — a deliberate deferral, not a number invented on this side. That is a spelling difference from Rust, which statesmin_elevation_degas a plain float (its default,0.0, being the geometric horizon a zero already means) and onlymax_sun_altitude_degas anOption. Both spellings reach the same engine values.Methods
__init__(obs_code, sigma_arcsec, ...[, ...])Attributes
max_sun_altitude_degSolar altitude at or below which the site counts as dark (degrees).
min_elevation_degMinimum geometric elevation of the target above the site's local horizon (degrees), ignoring atmospheric refraction.
obs_codeMPC observatory code.
sigma_arcsecAssumed 1σ (RA·cosδ, Dec) uncertainty in arcsec.
max_apparent_magLimiting apparent magnitude.
min_elongation_degMinimum solar elongation (degrees).
- Parameters:
- obs_code: str
MPC observatory code.
- max_apparent_mag: float
Limiting apparent magnitude.
- min_elongation_deg: float
Minimum solar elongation (degrees).
- min_elevation_deg: float | None = None
Minimum geometric elevation of the target above the site’s local horizon (degrees), ignoring atmospheric refraction.
Nonetakes the engine’s default of0.0, the geometric horizon — the least-opinionated statement the geometry can make, not an observing recommendation: airmass there is about 38, and real programs cut between 20° and 30°.
- max_sun_altitude_deg: float | None = None
Solar altitude at or below which the site counts as dark (degrees).
Nonetakes the engine’s default of −18°, astronomical twilight.Optional rather than a plain float because
0.0is a legal solar altitude — the Sun’s centre on the geometric horizon — so a defaulted zero would quietly plan a campaign in daylight. The other conventions are civil (−6°) and nautical (−12°); above +90° disables the gate.