Re-entry Data Message (RDM)¶
- class ccsds_ndm.Rdm(*, header, segment)¶
Re-entry Data Message (RDM).
The RDM specifies a standard message format to be used in the exchange of spacecraft re-entry information between Space Situational Awareness (SSA) or Space Surveillance and Tracking (SST) data providers, satellite owners/operators, and other parties.
It includes data such as: - Remaining orbital lifetime - Start and end of the re-entry and impact windows - Impact location and probabilities - Object physical properties
- Parameters:
header (RdmHeader) – The message header. (Mandatory)
segment (RdmSegment) – The message segment containing metadata and data. (Mandatory)
- static from_file(path, format=None)¶
Create an RDM message from a file.
- static from_str(data, format=None)¶
Create an RDM message from a string.
- header¶
Re-entry Data Message (RDM).
The RDM specifies a standard message format to be used in the exchange of spacecraft re-entry information between Space Situational Awareness (SSA) or Space Surveillance and Tracking (SST) data providers, satellite owners/operators, and other parties.
It includes data such as: - Remaining orbital lifetime - Start and end of the re-entry and impact windows - Impact location and probabilities - Object physical properties
- Type:
- segment¶
The RDM Body consists of a single segment.
- Type:
- to_file(path, format, validate=True)¶
Write to a file.
- to_str(format, validate=True)¶
Serialize to string (generic).
- class ccsds_ndm.RdmHeader(*, originator, creation_date, message_id, comment=None)¶
The RDM Header provides information about the message.
- Parameters:
- creation_date¶
File creation date and time in UTC.
Examples: 2001-11-06T11:17:33, 2002-204T15:56:23
- Type:
- message_id¶
ID that uniquely identifies a message from a given originator.
Examples: 201113719185, ESA20190101-3345
- Type:
- class ccsds_ndm.RdmSegment(*, metadata, data)¶
Represents a single segment of an RDM.
An RDM segment consists of a Metadata Section and a Data Section.
- Parameters:
metadata (RdmMetadata) – Segment metadata. (Mandatory)
data (RdmData) – Segment data. (Mandatory)
- metadata¶
The metadata for this RDM segment.
- Type:
- class ccsds_ndm.RdmMetadata(*, object_name, international_designator, epoch_tzero, controlled_reentry=None, center_name=Ellipsis, time_system=None, catalog_name=None, object_designator=None, object_type=None, object_owner=None, object_operator=None, ref_frame=None, ref_frame_epoch=None, ephemeris_name=None, gravity_model=None, atmospheric_model=None, solar_flux_prediction=None, n_body_perturbations=None, solar_rad_pressure=None, earth_tides=None, intrack_thrust=None, drag_parameters_source=None, drag_parameters_altitude=None, reentry_uncertainty_method=None, reentry_disintegration=None, impact_uncertainty_method=None, previous_message_id=None, previous_message_epoch=None, next_message_epoch=None, comment=None)¶
The RDM Metadata provides information about the re-entry event.
- Parameters:
object_name (str) – Object name for which the orbit state is provided.
international_designator (str) – The full international designator (COSPAR ID) for the object.
controlled_reentry (str) – Specification of whether the re-entry is controlled or not (YES, NO, UNKNOWN).
center_name (str) – Celestial body orbited by the object.
time_system (str) – Time system for all data/metadata (e.g., UTC, TAI).
epoch_tzero (str) –
Epoch from which the ORBIT_LIFETIME is calculated.
Optional
- atmospheric_model¶
The atmosphere model(s) used in the simulation. If more than one model is used they should be listed on the same line and separated by a comma.
Examples: MSIS, JACCHIA 70, MSISE-90, NRLMSISE-00
- Type:
Optional[str]
- catalog_name¶
The satellite catalog used for the object (formatting rules specified in 5.2.3.3). The name should be taken from the appropriate SANA registry for catalog names, reference [8].
Examples: SATCAT, ESA SST
- Type:
Optional[str]
- center_name¶
Celestial body orbited by the object and origin of the reference frame, which may be a natural solar system body (planets, asteroids, comets, and natural satellites), including any planet barycenter or the solar system barycenter. The value should be taken from the orbit center column in the SANA orbit centers registry, reference [9].
Examples: EARTH, MOON, JUPITER
- Type:
- controlled_reentry¶
Specification of whether the re-entry is controlled or not.
Examples: YES, NO, UNKNOWN
- Type:
- drag_parameters_altitude¶
The altitude (in km) at which the object drag parameters (DRAG_AREA, DRAG_COEFF, and/or BALLISTIC_COEFF) are valid. The units shall be kilometers, and the conventions specified in 5.2.4.1 and 5.3.4 must be followed.
Examples: 200 [km], 175 [km]
Units: km
- Type:
Optional[float]
- drag_parameters_source¶
The method used to estimate the drag parameters of the object (DRAG_AREA, DRAG_COEFF, and/or BALLISTIC_COEFF).
Examples: DESIGN, CFD: TOOL1, CFD DMSCFOAM, OD
- Type:
Optional[str]
- earth_tides¶
either model name, or NO if tides were not modelled.
Examples: ESR, NO
- Type:
Optional[str]
- Type:
Model used for solid Earth and ocean tides
- ephemeris_name¶
Unique identifier of an external ephemeris file used or NONE.
Examples: NONE, EPHEMERIS, INTELSAT2
- Type:
Optional[str]
- epoch_tzero¶
Epoch from which the ORBIT_LIFETIME is calculated (formatting rules specified in 5.3.3.5).
Examples: 2001-11-06T11:17:33, 2002-204T15:56:23
- Type:
- gravity_model¶
The gravity model used in the simulation. The degree (D) and order (O) of the spherical harmonic coefficients applied should be given along with the name of the model.
Examples: EGM-96: 36D 36O, JGM-2: 41D 41O
- Type:
Optional[str]
- impact_uncertainty_method¶
The method used to determine the impact location confidence interval(s).
Examples: NONE, ANALYTICAL, STOCHASTIC, EMPIRICAL
- Type:
Optional[str]
- international_designator¶
The full international designator (COSPAR ID) for the object. Values shall have the format YYYY-NNNP{PP}, where: YYYY = year of launch; NNN = three-digit serial number of launch (with leading zeros); P{PP} = at least one capital letter for the identification of the part brought into space by the launch. In cases where the object has no international designator, the value UNKNOWN should be used (formatting rules specified in 5.2.3.3).
Examples: 2010-012C, 2016-001A, 1985-067CD, UNKNOWN
- Type:
- intrack_thrust¶
Indicator on whether in-track thrust modeling was used in the simulation.
Examples: YES, NO
- Type:
Optional[str]
- n_body_perturbations¶
Comma separated list of other bodies used in the simulation. The names of the bodies should be taken from the SANA registry for orbit centers, reference [9]. If no other bodies are used in the simulation, the value should be NONE.
Examples: MOON, SUN, JUPITER, NONE
- Type:
Optional[str]
- next_message_epoch¶
Scheduled UTC epoch of the next RDM for the same object (formatting rules specified in 5.3.3.5); N/A if no other message is scheduled.
Examples: 2001-11-06T11:17:33, N/A
- Type:
Optional[str]
- object_designator¶
The CATALOG_NAME satellite catalog designator for the object (formatting rules specified in 5.2.3.3).
Examples: 37451, 125387U
- Type:
Optional[str]
- object_name¶
Object name for which the orbit state is provided. There is no CCSDS-based restriction on the value for this keyword, but it is recommended to use names from the UNOOSA registry—reference [7], which includes object name and international designator of the participant (formatting rules specified in 5.2.3.3). For objects that are not in the UNOOSA registry, either a descriptive name (e.g., DEBRIS, if the object is identified as space debris) or UNKNOWN should be used.
Examples: SENTINEL-1A, GOCE, ENVISAT, BRIZ R/B, DEBRIS, UNKNOWN
- Type:
- object_operator¶
Operator of the object (e.g., company, agency, or country operating the satellite). The value should be taken from the abbreviation column in the SANA organizations registry, reference [6].
Examples: ESA, EUMETSAT
- Type:
Optional[str]
- object_owner¶
Owner of the object (e.g., company, agency, or country owning the satellite). The value should be taken from the abbreviation column in the SANA organizations registry, reference [6].
Examples: DLR, INTELSAT, ESA, UNKNOWN
- Type:
Optional[str]
- object_type¶
The object type.
Examples: PAYLOAD, ROCKET BODY, DEBRIS, OTHER, UNKNOWN
- Type:
Optional[str]
- previous_message_epoch¶
UTC Epoch of the previous RDM issued for this object (formatting rules specified in 5.3.3.5).
Examples: 2001-11-06T11:17:33
- Type:
Optional[str]
- previous_message_id¶
ID of the previous RDM issued for this object.
Examples: ESA/2015-563892348
- Type:
Optional[str]
- reentry_disintegration¶
none (the object was treated as a point mass), mass loss, break-ups (including explosion), or both. It is a coarse indication on whether the impact area in the data covers potential fragments as well.
Examples: NONE, MASS-LOSS, BREAK-UP, MASS-LOSS + BREAK-UP
- Type:
Optional[str]
- Type:
The aspects of disintegration during re-entry considered during simulations
- reentry_uncertainty_method¶
The method used to determine the orbit lifetime uncertainty or the re-entry windows.
Examples: NONE, ANALYTICAL, STOCHASTIC, EMPIRICAL
- Type:
Optional[str]
- ref_frame¶
Reference frame in which the (optional) orbit information will be provided. The value should be taken from the keyword value name column in the SANA celestial body reference frames registry, reference [11]. The reference frame must be the same for all orbit data elements, with the exception of the covariance matrix, for which a different reference frame may be specified, and the ground impact data. This keyword becomes mandatory if state vectors are provided in the data section.
Examples: ITRF-97, EME2000, ICRF
- Type:
Optional[str]
- ref_frame_epoch¶
Epoch of reference frame, if not intrinsic to the definition of the reference frame (formatting rules specified in 5.3.3.5).
Examples: 2001-11-06T11:17:33, 2002-204T15:56:23Z
- Type:
Optional[str]
- solar_flux_prediction¶
The method used to predict the solar flux and geomagnetic indices.
Examples: STOCHASTIC, PREDICTED: MLLRT
- Type:
Optional[str]
- class ccsds_ndm.RdmData(*, atmospheric_reentry_parameters, ground_impact_parameters=None, state_vector=None, covariance_matrix=None, spacecraft_parameters=None, od_parameters=None, user_defined_parameters=None, comment=None)¶
The RDM Data section.
- Parameters:
atmospheric_reentry_parameters (AtmosphericReentryParameters) – Mandatory atmospheric re-entry data.
ground_impact_parameters (GroundImpactParameters, optional) – Ground impact and burn-up data.
state_vector (StateVector, optional) – Spacecraft state vector.
covariance_matrix (OpmCovarianceMatrix, optional) – Position/velocity covariance matrix.
spacecraft_parameters (RdmSpacecraftParameters, optional) – Object physical parameters.
od_parameters (OdParameters, optional) – Orbit determination parameters.
user_defined_parameters (UserDefined, optional) – User defined parameters.
- atmospheric_reentry_parameters¶
Atmospheric re-entry parameters.
- covariance_matrix¶
Covariance matrix.
- Type:
Optional[OpmCovarianceMatrix]
- ground_impact_parameters¶
Ground impact parameters.
- Type:
Optional[GroundImpactParameters]
- od_parameters¶
Orbit determination parameters.
- Type:
Optional[OdParameters]
- spacecraft_parameters¶
Spacecraft parameters.
- Type:
Optional[RdmSpacecraftParameters]
- state_vector¶
State vector.
- Type:
Optional[StateVector]
- user_defined_parameters¶
User defined parameters.
- Type:
UserDefined | None
- class ccsds_ndm.AtmosphericReentryParameters(*, orbit_lifetime, reentry_altitude, orbit_lifetime_window_start=None, orbit_lifetime_window_end=None, nominal_reentry_epoch=None, reentry_window_start=None, reentry_window_end=None, orbit_lifetime_confidence_level=None, comment=None)¶
Atmospheric reentry parameters (atmosphericReentryParametersType, RDM).
- Parameters:
- nominal_reentry_epoch¶
Predicted epoch at which the object’s altitude permanently drops below NOMINAL_REENTRY_ALTITUDE (formatting rules specified in 5.3.3.5).
- Type:
Optional[str]
- orbit_lifetime¶
from the EPOCH_TZERO epoch in the metadata (days—double precision values allowed; integer values assumed to have .0 fractional part) to permanently crossing the altitude specified in REENTRY_ALTITUDE. If the NOMINAL_REENTRY_EPOCH keyword is present, the ORBIT_LIFETIME and NOMINAL_REENTRY_EPOCH should resolve to the same value.
Units: d
- Type:
- Type:
Time until re-entry
- orbit_lifetime_confidence_level¶
Confidence level of the orbit lifetime or re-entry epoch being inside the window defined by ORBIT_LIFETIME_WINDOW_START and ORBIT_LIFETIME_WINDOW_END or REENTRY_WINDOW_START and REENTRY_WINDOW_END.
Units: %
- Type:
Optional[float]
- orbit_lifetime_window_end¶
End of the predicted orbital lifetime window from the EPOCH_TZERO epoch in the metadata (days—double precision values allowed; integer values assumed to have .0 fractional part). To be used for long-term predictions; REENTRY_WINDOW_START and _END should be used for accurate results.
Units: d
- Type:
Optional[float]
- orbit_lifetime_window_start¶
Start of the predicted orbital lifetime window from the EPOCH_TZERO epoch in the metadata (days—double precision values allowed; integer values assumed to have .0 fractional part). To be used for long-term predictions; REENTRY_WINDOW_START and _END should be used for accurate results.
Units: d
- Type:
Optional[float]
- reentry_altitude¶
Defined re-entry altitude over a spherical central body—once an object’s altitude permanently drops below this value, it is considered to be captured by the central body’s atmosphere.
Units: km
- Type:
- class ccsds_ndm.GroundImpactParameters(*, probability_of_impact=None, probability_of_burn_up=None, probability_of_break_up=None, probability_of_land_impact=None, probability_of_casualty=None, nominal_impact_epoch=None, impact_window_start=None, impact_window_end=None, impact_ref_frame=None, nominal_impact_lon=None, nominal_impact_lat=None, nominal_impact_alt=None, impact_1_confidence=None, impact_1_start_lon=None, impact_1_start_lat=None, impact_1_stop_lon=None, impact_1_stop_lat=None, impact_1_cross_track=None, impact_2_confidence=None, impact_2_start_lon=None, impact_2_start_lat=None, impact_2_stop_lon=None, impact_2_stop_lat=None, impact_2_cross_track=None, impact_3_confidence=None, impact_3_start_lon=None, impact_3_start_lat=None, impact_3_stop_lon=None, impact_3_stop_lat=None, impact_3_cross_track=None, comment=None)¶
Ground impact parameters (groundImpactParametersType, RDM).
- Parameters:
probability_of_impact (float, optional) – Probability of impact.
probability_of_burn_up (float, optional) – Probability of burn up.
probability_of_break_up (float, optional) – Probability of break up.
probability_of_land_impact (float, optional) – Probability of land impact.
probability_of_casualty (float, optional) – Probability of casualty.
nominal_impact_epoch (str, optional) – Nominal impact epoch.
impact_window_start (str, optional) – Impact window start.
impact_window_end (str, optional) – Impact window end.
impact_ref_frame (str, optional) – Impact reference frame.
nominal_impact_lon (float, optional) – Nominal impact longitude. Units: deg
nominal_impact_lat (float, optional) – Nominal impact latitude. Units: deg
nominal_impact_alt (float, optional) – Nominal impact altitude. Units: km
impact_1_confidence (float, optional) – Impact 1 confidence. Units: %
impact_1_start_lon (float, optional) – Impact 1 start longitude. Units: deg
impact_1_start_lat (float, optional) – Impact 1 start latitude. Units: deg
impact_1_stop_lon (float, optional) – Impact 1 stop longitude. Units: deg
impact_1_stop_lat (float, optional) – Impact 1 stop latitude. Units: deg
impact_1_cross_track (float, optional) – Impact 1 cross track. Units: km
impact_2_confidence (float, optional) – Impact 2 confidence. Units: %
impact_2_start_lon (float, optional) – Impact 2 start longitude. Units: deg
impact_2_start_lat (float, optional) – Impact 2 start latitude. Units: deg
impact_2_stop_lon (float, optional) – Impact 2 stop longitude. Units: deg
impact_2_stop_lat (float, optional) – Impact 2 stop latitude. Units: deg
impact_2_cross_track (float, optional) – Impact 2 cross track. Units: km
impact_3_confidence (float, optional) – Impact 3 confidence. Units: %
impact_3_start_lon (float, optional) – Impact 3 start longitude. Units: deg
impact_3_start_lat (float, optional) – Impact 3 start latitude. Units: deg
impact_3_stop_lon (float, optional) – Impact 3 stop longitude. Units: deg
impact_3_stop_lat (float, optional) – Impact 3 stop latitude. Units: deg
impact_3_cross_track (float, optional) – Impact 3 cross track. Units: km
- impact_1_confidence¶
First (lowest) confidence interval for the impact location.
Units: %
- Type:
Optional[float]
- impact_1_cross_track¶
Cross-track size of the first confidence interval.
Units: km
- Type:
Optional[float]
- impact_1_start_lat¶
Latitude of the start of the first confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- impact_1_start_lon¶
Longitude of the start of the first confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- impact_1_stop_lat¶
Latitude of the end of the first confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- impact_1_stop_lon¶
Longitude of the end of the first confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- impact_2_confidence¶
Second confidence interval for the impact location. The IMPACT_1_* block must be present if IMPACT_2_* is used.
Units: %
- Type:
Optional[float]
- impact_2_cross_track¶
Cross-track size of the second confidence interval.
Units: km
- Type:
Optional[float]
- impact_2_start_lat¶
Latitude of the start of the second confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- impact_2_start_lon¶
Longitude of the start of the second confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- impact_2_stop_lat¶
Latitude of the end of the second confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- impact_2_stop_lon¶
Longitude of the end of the second confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- impact_3_confidence¶
Third (highest) confidence interval for the impact location. The IMPACT_2_* block must be present if IMPACT_3_* is used.
Units: %
- Type:
Optional[float]
- impact_3_cross_track¶
Cross-track size of the third confidence interval.
Units: km
- Type:
Optional[float]
- impact_3_start_lat¶
Latitude of the start of the third confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- impact_3_start_lon¶
Longitude of the start of the third confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- impact_3_stop_lat¶
Latitude of the end of the third confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- impact_3_stop_lon¶
Longitude of the end of the third confidence interval along the ground track with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- impact_ref_frame¶
Reference frame of the impact location data. The value should be taken from the keyword value name column in the SANA celestial body reference frames registry, reference [11]. Only frames with the value ‘Body-Fixed’ in the Frame Type column shall be used. Mandatory if NOMINAL_IMPACT_LON and NOMINAL_IMPACT_LAT are present.
- Type:
Optional[str]
- impact_window_end¶
End epoch of the predicted impact window (formatting rules specified in 5.3.3.5).
- Type:
Optional[str]
- impact_window_start¶
Start epoch of the predicted impact window (formatting rules specified in 5.3.3.5).
- Type:
Optional[str]
- nominal_impact_alt¶
Altitude of the impact location with respect to the value of IMPACT_REF_FRAME.
Units: m
- Type:
Optional[float]
- nominal_impact_epoch¶
Epoch of the predicted impact (formatting rules specified in 5.3.3.5).
- Type:
Optional[str]
- nominal_impact_lat¶
Latitude of the predicted impact location with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.12.
Units: deg
- Type:
Optional[float]
- nominal_impact_lon¶
Longitude of the predicted impact location with respect to the value of IMPACT_REF_FRAME. Values shall be double precision and follow the rules specified in 3.5.11.
Units: deg
- Type:
Optional[float]
- probability_of_break_up¶
Probability that the object will break up during re-entry (0 to 1).
- Type:
Optional[float]
- probability_of_burn_up¶
Probability that the entire object and any fragments will burn up during atmospheric re-entry (0 to 1).
- Type:
Optional[float]
- probability_of_casualty¶
Probability that the re-entry event will cause any casualties (severe injuries or deaths—0 to 1).
- Type:
Optional[float]
- class ccsds_ndm.RdmSpacecraftParameters(*, wet_mass=None, dry_mass=None, comment=None)¶
RDM spacecraft parameters (rdmSpacecraftParametersType).
- hazardous_substances¶
Comma separated list of hazardous substances contained by the object.
- Type:
Optional[str]
- solar_rad_area¶
Object area exposed to Solar Radiation Pressure (SRP).
Units: m²
- Type:
Optional[float]