pyampp.gxbox.observer_restore

Functions

decode_meta_text(→ str)

normalize_observer_key(→ str)

ephemeris_from_fits_header(→ tuple[dict[str, ...)

resolve_observer_from_metadata(...)

resolve_sdo_observer_from_b3d(...)

resolve_named_observer(observer_key, obs_time)

probe_observer_availability(b3d, observer_key, obs_time)

resolve_observer(b3d, observer_key, obs_time)

resolve_observer_parameters_from_ephemeris(ephemeris, *)

Resolve observer geometry and derived solar angles from stored ephemeris cards.

build_pb0r_metadata_from_ephemeris(ephemeris, *[, ...])

build_ephemeris_from_pb0r(*, b0_deg, l0_deg, rsun_arcsec)

resolve_observer_with_info(b3d, observer_key, obs_time)

Module Contents

pyampp.gxbox.observer_restore.decode_meta_text(value) str[source]
pyampp.gxbox.observer_restore.normalize_observer_key(observer_key: str | None) str[source]
pyampp.gxbox.observer_restore.ephemeris_from_fits_header(header: astropy.io.fits.Header | None) tuple[dict[str, float | str], tuple[str, Ellipsis]][source]
pyampp.gxbox.observer_restore.resolve_observer_from_metadata(b3d: dict, observer_key: str | None, obs_time=None) astropy.coordinates.SkyCoord | None[source]
pyampp.gxbox.observer_restore.resolve_sdo_observer_from_b3d(b3d: dict, obs_time=None) astropy.coordinates.SkyCoord | None[source]
pyampp.gxbox.observer_restore.resolve_named_observer(observer_key: str | None, obs_time: astropy.time.Time)[source]
pyampp.gxbox.observer_restore.probe_observer_availability(b3d: dict, observer_key: str | None, obs_time: astropy.time.Time)[source]
pyampp.gxbox.observer_restore.resolve_observer(b3d: dict, observer_key: str | None, obs_time: astropy.time.Time)[source]
pyampp.gxbox.observer_restore.resolve_observer_parameters_from_ephemeris(ephemeris: dict | None, *, observer_key: str | None = None, obs_time=None)[source]

Resolve observer geometry and derived solar angles from stored ephemeris cards.

Parameters:
  • ephemeris (dict | None) – Expected keys are hgln_obs_deg, hglt_obs_deg, dsun_cm and optionally rsun_cm and obs_date.

  • observer_key (str | None) – Fallback observer name used only when the ephemeris cards are incomplete.

  • obs_time (parseable time or astropy.time.Time, optional) – Observation time. If omitted, ephemeris['obs_date'] is used.

Returns:

Keys: observer_coordinate, observer_key, obs_time, b0_deg, l0_deg, p_deg, dsun_cm, rsun_cm, rsun_arcsec, source.

Return type:

dict

Notes

b0_deg and l0_deg follow the legacy GX/IDL pb0r convention: they are the observer Stonyhurst latitude and longitude, respectively. p_deg is currently returned as None. SunPy’s public sun.P() helper is Earth-only, and a general spacecraft-safe image-north position-angle implementation should be added separately rather than guessed here.

pyampp.gxbox.observer_restore.build_pb0r_metadata_from_ephemeris(ephemeris: dict | None, *, observer_key: str | None = None, obs_time=None)[source]
pyampp.gxbox.observer_restore.build_ephemeris_from_pb0r(*, b0_deg, l0_deg, rsun_arcsec, obs_date=None, rsun_cm=None)[source]
pyampp.gxbox.observer_restore.resolve_observer_with_info(b3d: dict, observer_key: str | None, obs_time: astropy.time.Time)[source]