astro.Satellite#
- class hohmannpy.astro.Satellite(name, starting_orbit, color='#FF073A', burns=None, mass=None, ballistic_coeff=None, mean_reflective_area=None, reflectivity=None)#
Basic spacecraft whose motion can be simulated using
Mission.- Parameters:
name (str) – Unique identifier of the spacecraft. Repeats are not allowed.
starting_orbit (
Orbit) – The orbit the spacecraft is in at the start of the perturbation.color (str) – The color of the orbit and spacecraft to display in renderings.
burns (Optional[list[Union[
ImpulsiveBurn,ContinuousBurn]]]) – The set of impulsive and continuous.rst burns to schedule for this spacecraft.mass (float) – Mass of the spacecraft in \(kg\). Needed for missions where the perturbation
SolarRadiationis enabled.ballistic_coeff (float) – Dimensionless parameter proportional to the drag effects experienced by a spacecraft. Needed for missions where the perturbation
AtmosphericDragis enabled.mean_reflective_area (float) – Average area exposed to solar radiation pressure in \(m^2\). Needed for missions where the perturbation
SolarRadiationis enabled.reflectivity (float) – Dimensionless parameter proportional to how much solar radiation is reflected by the
mean_reflective_area. 0 = transparent, 1 = full absorption, and 2 = full reflection. Needed for missions where the perturbationSolarRadiationis enabled.
- Variables:
name (str) – Unique identifier of the spacecraft. Repeats are not allowed.
starting_orbit (
Orbit) – The orbit the spacecraft is in at the start of the perturbation.orbit (
Orbit) – Current orbit of the spacecraft. Starts as a deep copy of thestarting_orbitand then is updated on each timestep during propagation.loggers (list[
Logger]) – Loggers which record data on each timestep during propagation. This attribute is initially set toNoneand is filled in by the__init__()ofMission.color (str) – The color of the orbit and spacecraft to display in renderings.
mass (float) – Mass of the spacecraft in \(kg\). Needed for missions where the perturbation
SolarRadiationis enabled.ballistic_coeff (float) – Dimensionless parameter proportional to the drag effects experienced by a spacecraft. Needed for missions where the perturbation
AtmosphericDragis enabled.mean_reflective_area (float) – Average area exposed to solar radiation pressure in \(m^2\). Needed for missions where the perturbation
SolarRadiationis enabled.reflectivity (float) – Dimensionless parameter proportional to how much solar radiation is reflected by the
mean_reflective_area. 0 = transparent, 1 = full absorption, and 2 = full reflection. Needed for missions where the perturbationSolarRadiationis enabled.impulsive_burns (list[
ImpulsiveBurn]) – The set of scheduled impulsive burns for this satellite. These will end up sorted from earliest to latest based on theirstart_timeattribute.continuous_burns (list[
ContinuousBurn]) – The set of scheduled continuous.rst burns for this satellite. These will end up sorted from earliest to latest based on theirstart_timeattribute.inverted_continuous_burns (list[
ContinuousBurn]) – Same ascontinuous_burns, but this time sorted from earliest to latest based on theirend_timeattribute.impulsive_burn_index (int) – Which burn from
impulsive_burnsis currently scheduled next.continuous_burn_start_index (int) – Which burn from
continuous_burnsis currently scheduled to start next.continuous_burn_end_index (int) – Which burn from
inverted_continuous_burnsis currently scheduled to end next.
Notes
Once a satellite’s orbit is propagator, the recorded data (attributes) of any
Loggerattached to this satellite can be access from the satellite using__getattr_().