adam.opm_params module

opm_params.py

class adam.opm_params.OpmParams(params)

Bases: object

__init__(params)
Parameters

params (dict) – contains the OPM properties

Params properties are:

--- epoch is required! ---
epoch (str): the epoch associated with the state vector (IS0-8601 format)

--- either state_vector or keplerian_elements is required! ---
--- note that if keplerian_elements are provided, state_vector will be ignored
--- by server side even if also provided. ---
state_vector (list): an array with 6 elements [rx, ry, rz, vx, vy, vz]
    representing the cartesian coordinates (the position and velocity vector)
    of the object.
keplerian_elements (dictionary): contains 7 elements representing the
    keplerian coordinates of the object. The elements are:
        semi_major_axis_km (float): Semimajor axis (km)
        eccentricity (float): Eccentricity of orbit
        inclination_deg (float): Inclination of orbit (deg)
        ra_of_asc_node_deg (float): Right ascension of ascending node (deg)
        arg_of_pericenter_deg (float): Argument of pericenter (deg)
        true_anomaly_deg (float): True anomaly (deg)
        gm (float): Gravitational constant (km^3/s^2)
keplerian_covariance (list): lower triangular covariance matrix (21 elements)

originator (str): responsible entity for run (default: 'ADAM_User')
object_name (str): name of object (default: 'dummy')
object_id (str): identification of object (default: '001')

center_name (str): center for propagation. 'SUN' or 'EARTH'. (default: 'SUN')
ref_frame (str): reference frame for propagation. 'ICRF' (International Celestial
                 Reference Frame) or 'EMEME2000' (Earth Mean Ecliptic Mean
                 Equinox of J2000). (default: 'ICRF')

mass (float): object mass in kilograms (default: 1000 kg)
solar_rad_area (float): object solar radiation area in squared meters
    (default: 20 m^2)
solar_rad_coeff (float): object solar radiation coefficient (default: 1)
drag_area (float): object drag area in squared meters (default: 20 m^2)
drag_coeff (float): object drag coefficient (default: 2.2)

--- None or all of covariance, perturbation, and hypercube must be given ---
--- No defaults if not given ---
covariance (list): an array with 21 elements corresponding to a 6x6 lower triangle
perturbation (int): sigma perturbation on state vector
hypercube (str): hypercube propagation type (e.g. 'FACES' or 'CORNERS')

initial_maneuver (list): An array with 3 elements representing initial dx, dy, dz
    in velocity-orbit-normal coordinates (dx is in direction of velocity,
    dy is orbit-normal, and dz is in direction of x cross y).
    Assumed to take place at state vector epoch.
Raises
  • KeyError if the given object does not include 'epoch' and 'state_vector',

  • or if unsupported parameters are provided

classmethod fromJsonResponse(response_opm)
generate_opm()

Generate an OPM string

This function generates a single OPM string from defined parameters (CCSDS format)

Parameters

None

Returns

OPM (str)

get_state_vector()
set_state_vector(state_vector)