opengnc.interfaces.ccsds package
opengnc.interfaces.ccsds.cdm module
CCSDS Conjunction Data Message (CDM) implementation.
Standard: CCSDS 508.0-B-1 (Blue Book).
-
class opengnc.interfaces.ccsds.cdm.CDM(data: dict[str, Any] | None = None)[source]
Bases: object
Conjunction Data Message (CDM) handler.
Supports reading, writing, and analytical collision probability calculation ($P_c$)
per CCSDS 508.0-B-1 and Foster (1992) standards.
-
compute_collision_probability(hard_body_radius: float | None = None) → float[source]
Compute the 2D collision probability ($P_c$) in the encounter frame (Foster, 1992).
- Parameters:
hard_body_radius (float, optional) – Combined spherical hard-body radius $R = R_1 + R_2$ (m).
If omitted, uses the sum of object1 and object2 radii.
- Returns:
Collision probability $P_c in [0, 1]$.
- Return type:
float
-
classmethod from_file(filepath: str | Path) → CDM[source]
Parse a CDM from a KVN file.
-
set_data(data: dict[str, Any]) → None[source]
Update CDM fields from a dictionary.
-
to_file(filepath: str | Path) → None[source]
Save the CDM to a KVN file.
-
to_string() → str[source]
Format CDM in standard CCSDS Key-Value Notation (KVN).
-
write(filepath: str | Path) → None[source]
Alias for to_file.
opengnc.interfaces.ccsds.oem module
CCSDS Orbit Ephemeris Message (OEM) implementation.
-
class opengnc.interfaces.ccsds.oem.OEM[source]
Bases: object
Orbit Ephemeris Message (OEM) handler.
Supports reading and writing CCSDS OEM files.
-
classmethod from_file(filepath: str) → OEM[source]
Load an OEM from a file.
-
get_interpolated_state(epoch: str) → ndarray[source]
Placeholder for orbital interpolation logic.
Returns the exact stored state for now.
-
set_data(epochs: list[str], states: ndarray) → None[source]
Set ephemeris data.
-
write(filepath: str) → None[source]
Write the OEM to a file.
opengnc.interfaces.ccsds.omm module
CCSDS Orbit Mean-Elements Message (OMM) implementation.
Standard: CCSDS 502.0-B-2 (Blue Book).
-
class opengnc.interfaces.ccsds.omm.OMM(data: dict[str, Any] | None = None)[source]
Bases: object
Orbit Mean-Elements Message (OMM) handler.
Supports reading, writing, and TLE cross-conversion of CCSDS OMM files (KVN format).
-
classmethod from_file(filepath: str | Path) → OMM[source]
Load an OMM from a KVN file.
-
classmethod from_tle(line1: str, line2: str, name: str = 'OBJECT') → OMM[source]
Create an OMM directly from a standard Two-Line Element (TLE) pair.
-
get_keplerian_elements() → dict[str, float][source]
Return mean Keplerian orbital elements.
-
set_data(data: dict[str, Any]) → None[source]
Update OMM fields from a dictionary.
-
to_file(filepath: str | Path) → None[source]
Save the OMM to a KVN file.
-
to_string() → str[source]
Render the OMM in standard Key-Value Notation (KVN).
-
write(filepath: str | Path) → None[source]
Alias for to_file.
opengnc.interfaces.ccsds.opm module
CCSDS Orbit Parameter Message (OPM) implementation.
-
class opengnc.interfaces.ccsds.opm.OPM(data: dict | None = None)[source]
Bases: object
Orbit Parameter Message (OPM) handler.
Supports reading and writing CCSDS OPM files (KVN format).
-
classmethod from_file(filepath: str) → OPM[source]
Load OPM from a KVN file.
-
get_state_vector() → ndarray[source]
Return state vector in SI units (m, m/s).
-
write(filepath: str) → None[source]
Write OPM to a KVN file.
Module contents
CCSDS standards implementation (OEM, OPM, OMM, CDM).
-
class opengnc.interfaces.ccsds.CDM(data: dict[str, Any] | None = None)[source]
Bases: object
Conjunction Data Message (CDM) handler.
Supports reading, writing, and analytical collision probability calculation ($P_c$)
per CCSDS 508.0-B-1 and Foster (1992) standards.
-
compute_collision_probability(hard_body_radius: float | None = None) → float[source]
Compute the 2D collision probability ($P_c$) in the encounter frame (Foster, 1992).
- Parameters:
hard_body_radius (float, optional) – Combined spherical hard-body radius $R = R_1 + R_2$ (m).
If omitted, uses the sum of object1 and object2 radii.
- Returns:
Collision probability $P_c in [0, 1]$.
- Return type:
float
-
classmethod from_file(filepath: str | Path) → CDM[source]
Parse a CDM from a KVN file.
-
set_data(data: dict[str, Any]) → None[source]
Update CDM fields from a dictionary.
-
to_file(filepath: str | Path) → None[source]
Save the CDM to a KVN file.
-
to_string() → str[source]
Format CDM in standard CCSDS Key-Value Notation (KVN).
-
write(filepath: str | Path) → None[source]
Alias for to_file.
-
class opengnc.interfaces.ccsds.OEM[source]
Bases: object
Orbit Ephemeris Message (OEM) handler.
Supports reading and writing CCSDS OEM files.
-
classmethod from_file(filepath: str) → OEM[source]
Load an OEM from a file.
-
get_interpolated_state(epoch: str) → ndarray[source]
Placeholder for orbital interpolation logic.
Returns the exact stored state for now.
-
set_data(epochs: list[str], states: ndarray) → None[source]
Set ephemeris data.
-
write(filepath: str) → None[source]
Write the OEM to a file.
-
class opengnc.interfaces.ccsds.OMM(data: dict[str, Any] | None = None)[source]
Bases: object
Orbit Mean-Elements Message (OMM) handler.
Supports reading, writing, and TLE cross-conversion of CCSDS OMM files (KVN format).
-
classmethod from_file(filepath: str | Path) → OMM[source]
Load an OMM from a KVN file.
-
classmethod from_tle(line1: str, line2: str, name: str = 'OBJECT') → OMM[source]
Create an OMM directly from a standard Two-Line Element (TLE) pair.
-
get_keplerian_elements() → dict[str, float][source]
Return mean Keplerian orbital elements.
-
set_data(data: dict[str, Any]) → None[source]
Update OMM fields from a dictionary.
-
to_file(filepath: str | Path) → None[source]
Save the OMM to a KVN file.
-
to_string() → str[source]
Render the OMM in standard Key-Value Notation (KVN).
-
write(filepath: str | Path) → None[source]
Alias for to_file.
-
class opengnc.interfaces.ccsds.OPM(data: dict | None = None)[source]
Bases: object
Orbit Parameter Message (OPM) handler.
Supports reading and writing CCSDS OPM files (KVN format).
-
classmethod from_file(filepath: str) → OPM[source]
Load OPM from a KVN file.
-
get_state_vector() → ndarray[source]
Return state vector in SI units (m, m/s).
-
write(filepath: str) → None[source]
Write OPM to a KVN file.