API¶
This section provides comprehensive API documentation for the Ephemerista Python library.
See also
For user-friendly tutorials and examples, see the User Manual.
Module Overview¶
Scenarios – ephemerista.scenarios - Central scenario management and ensemble propagation
Assets – ephemerista.assets - Spacecraft and ground station models
Orbit Propagators – ephemerista.propagators - Orbital propagation engines (SGP4, numerical, semi-analytical)
Analysis – ephemerista.analysis - Analysis modules (visibility, coverage, link budget, navigation)
Comms – ephemerista.comms - Communication systems modeling
Constellations – ephemerista.constellation - Constellation design tools
Coordinates – ephemerista.coords - Coordinate systems and trajectory handling
Time – ephemerista.time - Time scales and epoch management
Frames – ephemerista.frames - Reference frame definitions
Plotting Tools – ephemerista.plot - Visualization and plotting utilities
Angles – ephemerista.angles - Angle utilities and conversions
Celestial Bodies – ephemerista.bodies - Celestial body definitions
Math – ephemerista.math - Mathematical utilities
- Analysis –
ephemerista.analysis
- Available Analysis Modules
- Coverage –
ephemerista.analysis.coverage
Coverage
CoverageResults
CoverageResults.areas
CoverageResults.avg_time_gaps
CoverageResults.coverage_percent
CoverageResults.discretized_coverage_percent
CoverageResults.discretized_max_time_gaps
CoverageResults.discretized_polygons
CoverageResults.max_time_gaps
CoverageResults.min_time_gaps
CoverageResults.num_discretized_polygons
CoverageResults.results_type
CoverageResults.from_coverage_results()
CoverageResults.plot()
CoverageResults.plot_mpl()
CoverageResults.plot_plotly()
CoverageResults.to_dataframe()
CoverageResults.to_geodataframe()
CoverageResults.polygons
CoverageResults.revisit_times
load_geojson_multipolygon()
- Link Budgets –
ephemerista.analysis.link_budget
EnvironmentalLosses
EnvironmentalLosses.atmospheric_attenuation
EnvironmentalLosses.cloud_attenuation
EnvironmentalLosses.depolarization_loss
EnvironmentalLosses.gaseous_attenuation
EnvironmentalLosses.rain_attenuation
EnvironmentalLosses.scintillation_attenuation
EnvironmentalLosses.calculate()
EnvironmentalLosses.no_losses()
EnvironmentalLosses.sum()
InterferenceStats
Link
LinkBudget
LinkBudgetResults
LinkStats
LinkStats.bandwidth
LinkStats.c_n0
LinkStats.carrier_rx_power
LinkStats.data_rate
LinkStats.eb_n0
LinkStats.eirp
LinkStats.frequency
LinkStats.fspl
LinkStats.gt
LinkStats.interference_stats
LinkStats.losses
LinkStats.margin
LinkStats.noise_power
LinkStats.rx_angle
LinkStats.slant_range
LinkStats.tx_angle
LinkStats.calculate()
LinkStats.add_interference()
- Visibility –
ephemerista.analysis.visibility
- Coverage –
- Available Analysis Modules
- Angles –
ephemerista.angles
- Assets –
ephemerista.assets
Asset
GroundLocation
GroundLocation.altitude
GroundLocation.body
GroundLocation.latitude
GroundLocation.longitude
GroundLocation.minimum_elevation
GroundLocation.polygon_ids
GroundLocation.from_lla()
GroundLocation.get_minimum_elevation()
GroundLocation.observables()
GroundLocation.observables_batch()
GroundLocation.propagate()
GroundLocation.rotation_to_topocentric()
GroundStation
Observables
Spacecraft
- Celestial Bodies –
ephemerista.bodies
- Comms –
ephemerista.comms
- Communication Components
- Antennas -
ephemerista.comms.antennas
- Channels -
ephemerista.comms.channels
Channel
Channel.channel_id
Channel.data_rate
Channel.forward_error_correction
Channel.link_type
Channel.margin
Channel.modulation
Channel.name
Channel.required_eb_n0
Channel.roll_off
Channel.bit_energy_to_noise_density()
Channel.bit_energy_to_noise_interference_density()
Channel.bits_per_symbol()
Channel.bandwidth
- Receivers -
ephemerista.comms.receiver
ComplexReceiver
ComplexReceiver.antenna_noise_temperature
ComplexReceiver.demodulator_loss
ComplexReceiver.implementation_loss
ComplexReceiver.lna_gain
ComplexReceiver.lna_noise_figure
ComplexReceiver.loss
ComplexReceiver.noise_figure
ComplexReceiver.receiver_type
ComplexReceiver.gain_to_noise_temperature()
ComplexReceiver.total_gain()
ComplexReceiver.noise_temperature
ComplexReceiver.system_noise_temperature
Receiver
SimpleReceiver
- Communication Systems -
ephemerista.comms.systems
CommunicationSystem
CommunicationSystem.antenna
CommunicationSystem.channels
CommunicationSystem.receiver
CommunicationSystem.system_id
CommunicationSystem.transmitter
CommunicationSystem.carrier_power()
CommunicationSystem.carrier_to_noise_density()
CommunicationSystem.carrier_to_noise_interference_density()
CommunicationSystem.noise_power()
- Transmitters -
ephemerista.comms.transmitter
- Utilities -
ephemerista.comms.utils
- Antennas -
- Communication Components
- Constellations –
ephemerista.constellation
- Constellation Tools
- Constellation Design –
ephemerista.constellation.design
AbstractConstellation
AbstractConstellation.inclination
AbstractConstellation.name
AbstractConstellation.origin
AbstractConstellation.periapsis_argument
AbstractConstellation.time
AbstractConstellation.define_satellites()
AbstractConstellation.to_dataframe()
AbstractConstellation.inclination_radians
AbstractConstellation.satellites
AbstractWalker
AbstractWalkerOrSocConstellation
AbstractWalkerOrSocConstellation.eccentricity
AbstractWalkerOrSocConstellation.nplanes
AbstractWalkerOrSocConstellation.nsats
AbstractWalkerOrSocConstellation.semi_major_axis
AbstractWalkerOrSocConstellation.define_planes()
AbstractWalkerOrSocConstellation.to_dataframe()
AbstractWalkerOrSocConstellation.planes
Constellation
Flower
StreetOfCoverage
WalkerDelta
WalkerStar
c_j()
- Constellation Planes –
ephemerista.constellation.plane
- Constellation Design –
- Constellation Tools
- Coordinates –
ephemerista.coords
- Anomalies –
ephemerista.coords.anomalies
- Events –
ephemerista.coords.events
- Orbit Shapes –
ephemerista.coords.shapes
- Trajectories –
ephemerista.coords.trajectories
Event
Trajectory
Trajectory.attitude
Trajectory.frame
Trajectory.name
Trajectory.origin
Trajectory.start_time
Trajectory.states
Trajectory.trajectory_type
Trajectory.from_csv()
Trajectory.find_events()
Trajectory.interpolate()
Trajectory.interpolate_batch()
Trajectory.plot_3d()
Trajectory.to_csv()
Trajectory.to_frame()
Trajectory.to_origin()
Trajectory.cartesian_states
Trajectory.datetimes
Trajectory.simulation_time
Trajectory.times
- Two-Body States –
ephemerista.coords.twobody
Cartesian
Cartesian.frame
Cartesian.state_type
Cartesian.vx
Cartesian.vy
Cartesian.vz
Cartesian.x
Cartesian.y
Cartesian.z
Cartesian.from_rv()
Cartesian.isclose()
Cartesian.rotation_lvlh()
Cartesian.to_cartesian()
Cartesian.to_dataframe()
Cartesian.to_frame()
Cartesian.to_keplerian()
Cartesian.to_origin()
Cartesian.position
Cartesian.velocity
GEO
Inclination
Keplerian
Keplerian.anomaly
Keplerian.arg
Keplerian.inc
Keplerian.node
Keplerian.shape
Keplerian.state_type
Keplerian.from_altitudes()
Keplerian.from_elements()
Keplerian.from_radii()
Keplerian.is_physical()
Keplerian.to_cartesian()
Keplerian.to_dataframe()
Keplerian.to_keplerian()
Keplerian.apoapsis_radius
Keplerian.ascending_node
Keplerian.eccentricity
Keplerian.inclination
Keplerian.mean_anomaly
Keplerian.orbital_period
Keplerian.periapsis_argument
Keplerian.periapsis_radius
Keplerian.semi_major_axis
Keplerian.true_anomaly
LEO
MEO
SSO
TwoBody
- Anomalies –
- Frames –
ephemerista.frames
- Math –
ephemerista.math
- Plotting Tools –
ephemerista.plot
- Orbit Propagators –
ephemerista.propagators
- Available Propagators
- Orekit-based Propagators and Utilities –
ephemerista.propagators.orekit
- SGP4 Propagator -
ephemerista.propagators.sgp4
- Precomputed Trajectory Interpolator -
ephemerista.propagators.oem
- Orekit-based Propagators and Utilities –
- Available Propagators
- Scenarios –
ephemerista.scenarios
Ensemble
Rectangle
Scenario
Scenario.areas_of_interest
Scenario.assets
Scenario.auto_discretize
Scenario.channels
Scenario.constellations
Scenario.discretization_method
Scenario.discretization_resolution
Scenario.end_time
Scenario.frame
Scenario.name
Scenario.origin
Scenario.points_of_interest
Scenario.scenario_id
Scenario.start_time
Scenario.time_step
Scenario.load_from_file()
Scenario.channel_by_id()
Scenario.get_discretized_to_original_mapping()
Scenario.get_original_to_discretized_mapping()
Scenario.propagate()
Scenario.all_assets
Scenario.discretized_areas
Scenario.ground_locations
Scenario.times
polygonize_aoi()
polygonize_aoi_rectangles()
- Time –
ephemerista.time
ISOTimestamp
JulianDateTimestamp
SecondsTimestamp
Time
Time.scale
Time.timestamp
Time.from_components()
Time.from_day_of_year()
Time.from_iso()
Time.from_j2000()
Time.from_julian_date()
Time.from_two_part_julian_date()
Time.from_utc()
Time.isclose()
Time.to_scale()
Time.to_utc()
Time.trange()
Time.trange_fast()
Time.datetime
Time.day
Time.day_of_year
Time.hour
Time.j2000
Time.julian_date
Time.minute
Time.month
Time.second
Time.seconds
Time.two_part_julian_date
Time.year
UTCTimestamp