| Earth Observation Mission CFI Software Lib Software User Manual for JAVA |

Public Member Functions | Public Attributes

# EECFI.StateVector Class Reference

Base class for StateVector objects. More...

Inheritance diagram for EECFI.StateVector:

List of all members.

## Public Member Functions
| StateVector ()
| Class constructor (empty constructor).
| StateVector (Time timeIn, Coord coordIn)
| Class constructor.
native StateVector | change (ModelId modelId, long deriv, long newCS) throws CfiError
| Change coordinate system.
native void | setSun (ModelId modelId, Time time) throws CfiError
| Set Sun state vector.
native void | setMoon (ModelId modelId, Time time) throws CfiError
| Set Moon state vector.
native void | setPlanet (ModelId modelId, Time time, long planet) throws CfiError
| Set state vector for the requested planet.
native OrbitPos | getPositionOnOrbit (ModelId modelId, long angleType, long deriv) throws CfiError
| Get the true latitude corresponding to the state vector.
## Public Attributes
Time | time
| Time object.
Coord | coord
| Coordinates.

## Detailed Description

Base class for StateVector objects.

## Constructor & Destructor Documentation

EECFI.StateVector.StateVector | ( |  | ) |

Class constructor (empty constructor).

EECFI.StateVector::StateVector | ( | Time | time,
|  | Coord | coord |
| ) |  |  |

Class constructor.

Parameters:

  | time | Time of the state vector.
  | coord | Coordinates.

## Member Function Documentation

StateVector EECFI.StateVector::change | ( | ModelId | modelId,
|  | long | deriv,
|  | long | newCS |
| ) |  |  | throws CfiError

Change coordinate system.

This method transforms a cartesian state vector between different reference frames. The transformation are done sequentially following the schema in next figure:

. Time attribute Time must have time correlations initialized. Note that the transformations between BM2000, HM2000 and GM2000 involve a translation of the input vectors (TR3 and TR3’). In case that the input vector is a direction and not a location, the transformation should only apply the rotations between frames, so the transformation should be done in several steps with StateVector.change, skipping the translations.
Permitted CS = XLCFI_CS_GALACTIC, XLCFI_CS_BM1950, XLCFI_CS_BM2000, XLCFI_CS_HM2000, XLCFI_CS_GM2000, XLCFI_CS_MOD, XLCFI_CS_TOD or XLCFI_CS_EF.

Parameters:

  | modelId | Model Id.
  | deriv | derivative to be computed (XLCFI_NO_DER or XLCFI_1ST_DER).
  | newCS | New coordinate frame (CoordinateSystemEnum).

Returns:
  State vector in new reference system.

OrbitPos EECFI.StateVector::getPositionOnOrbit | ( | ModelId | modelId,
|  | long | angleType,
|  | long | deriv |
| ) |  |  | throws CfiError

Get the true latitude corresponding to the state vector.

Get the true/mean latitude describing the position on the orbit. The latitude angle is the angle between the satellite position and the intersection of the orbital plane with a given reference plane. Asumption: the state vector is given in EF.

Parameters:

  | modelId | Model Id.
  | angleType | Type of angle(AngleTypeEnum). It defines the reference plane. (Note: XLCFI_ANGLE_TYPE_MEAN_LAT_TOD is not supported)
  | deriv | Derivative (DerivEnum).

void EECFI.StateVector::setMoon | ( | ModelId | modelId,
|  | Time | time |
| ) |  |  | throws CfiError

Set Moon state vector.

It is computed the position and velocity in EF CS.

Parameters:

  | modelId | Model id.
  | time | Requested time.

void EECFI.StateVector::setPlanet | ( | ModelId | modelId,
|  | Time | time,
|  | long | planet |
| ) |  |  | throws CfiError

Set state vector for the requested planet.

It is computed the position and velocity in EF CS.

Parameters:

  | modelId | Model id.
  | time | requested time.
  | planet | (PlanetEnum).

void EECFI.StateVector::setSun | ( | ModelId | modelId,
|  | Time | time |
| ) |  |  | throws CfiError

Set Sun state vector.

It is computed the position and velocity in EF CS.

Parameters:

  | modelId | Model id.
  | time | Requested time.

## Member Data Documentation

Coord EECFI.StateVector.coord

Coordinates.

Time EECFI.StateVector.time

Time object.