ParamOrbitAngle

class ssapy.rvsampler.ParamOrbitAngle(initparam, epoch, initObsPos, initObsVel, **kwargs)[source][source]

Bases: ParamOrbitTranslator

A class for translating orbital parameters in angle-based form, including conversions between angular parameters and orbit objects.

Inherits:

ParamOrbitTranslator : Base class providing foundational functionality for orbital parameter translation.

Attributes:

initObsPosarray-like

Initial observer position vector used for angle-based calculations.

initObsVelarray-like

Initial observer velocity vector used for angle-based calculations.

Methods:

__init__(initparam, epoch, initObsPos, initObsVel, **kwargs):

Initialize the ParamOrbitAngle object with initial parameters, epoch, observer position, and observer velocity.

initparamarray-like

Initial orbital parameters.

epochfloat

Epoch time for the orbit.

initObsPosarray-like

Initial observer position vector.

initObsVelarray-like

Initial observer velocity vector.

**kwargsdict

Additional keyword arguments passed to the parent class.

param_to_orbit(p):

Convert angle-based orbital parameters to an Orbit object.

parray-like

Orbital parameters in angle-based form. The first six elements represent angular parameters (e.g., right ascension, declination, and rates).

Orbit

An Orbit object created from the angular parameters, along with propagation keywords.

  • The method radecRateObsToRV is used to convert angular parameters to position (r) and velocity (v) vectors.

  • Additional propagation keywords are extracted from the full parameter set.

orbit_to_param(orbit):

Convert an Orbit object to a list of angle-based orbital parameters and associated propagation keywords.

orbitOrbit

An Orbit object containing position (r) and velocity (v) vectors.

list

A list of angle-based orbital parameters (e.g., right ascension, declination, and rates) and propagation keywords.

  • The method rvObsToRaDecRate is used to convert position (r) and velocity (v) vectors to angular parameters.

  • Observer position and velocity are used in the conversion process.

Example:

>>> initObsPos = [0, 0, 0]  # Example observer position
>>> initObsVel = [0, 0, 0]  # Example observer velocity
>>> translator = ParamOrbitAngle(initparam=[1, 2, 3, 4, 5, 6], epoch=2451545.0,
...                              initObsPos=initObsPos, initObsVel=initObsVel)
>>> params = [1, 2, 3, 4, 5, 6]  # Example angle-based parameters
>>> orbit = translator.param_to_orbit(params)
>>> new_params = translator.orbit_to_param(orbit)
>>> print(new_params)
[1, 2, 3, 4, 5, 6]  # Example output matching input

Methods Summary

orbit_to_param(orbit)

param_to_orbit(p)

Methods Documentation

orbit_to_param(orbit)[source][source]
param_to_orbit(p)[source][source]