public enum LOFType extends Enum<LOFType>
Enum Constant and Description |
---|
EQW
Constant for Equinoctial Coordinate System
(X axis aligned with ascending node, Z axis aligned with orbital momentum).
|
LVLH
Constant for Local Vertical, Local Horizontal frame
(X axis aligned with position, Z axis aligned with orbital momentum).
|
LVLH_CCSDS
Constant for Local Vertical, Local Horizontal frame as defined by CCSDS
(Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).
|
NTW
Constant for Transverse Velocity Normal coordinate system
(Y axis aligned with velocity, Z axis aligned with orbital momentum).
|
QSW
Constant for QSW frame
(X axis aligned with position, Z axis aligned with orbital momentum).
|
TNW
Constant for TNW frame
(X axis aligned with velocity, Z axis aligned with orbital momentum).
|
VNC
Constant for Velocity - Normal - Co-normal frame
(X axis aligned with velocity, Y axis aligned with orbital momentum).
|
VVLH
Constant for Vehicle Velocity, Local Horizontal frame
(Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).
|
Modifier and Type | Method and Description |
---|---|
abstract <T extends CalculusFieldElement<T>> |
rotationFromInertial(Field<T> field,
FieldPVCoordinates<T> pv)
Get the rotation from inertial frame to local orbital frame.
|
abstract Rotation |
rotationFromInertial(PVCoordinates pv)
Get the rotation from inertial frame to local orbital frame.
|
static <T extends CalculusFieldElement<T>> |
rotationFromLOFInToLOFOut(Field<T> field,
LOFType in,
LOFType out,
FieldPVCoordinates<T> pv)
Get the rotation from input to output
commonly used local orbital frame . |
static Rotation |
rotationFromLOFInToLOFOut(LOFType in,
LOFType out,
PVCoordinates pv)
Get the rotation from input to output
commonly used local orbital frame . |
<T extends CalculusFieldElement<T>> |
rotationFromLOFType(Field<T> field,
LOFType fromLOF,
FieldPVCoordinates<T> pv)
Get the rotation from input
commonly used local orbital frame to the instance. |
Rotation |
rotationFromLOFType(LOFType fromLOF,
PVCoordinates pv)
Get the rotation from input
commonly used local orbital frame to the instance. |
Transform |
transformFromInertial(AbsoluteDate date,
PVCoordinates pv)
Get the transform from an inertial frame defining position-velocity and the local orbital frame.
|
<T extends CalculusFieldElement<T>> |
transformFromInertial(FieldAbsoluteDate<T> date,
FieldPVCoordinates<T> pv)
Get the transform from an inertial frame defining position-velocity and the local orbital frame.
|
static <T extends CalculusFieldElement<T>> |
transformFromLOFInToLOFOut(Field<T> field,
LOFType in,
LOFType out,
FieldAbsoluteDate<T> date,
FieldPVCoordinates<T> pv)
Get the transform from input to output
commonly used local orbital frame . |
static Transform |
transformFromLOFInToLOFOut(LOFType in,
LOFType out,
AbsoluteDate date,
PVCoordinates pv)
Get the transform from input to output
commonly used local orbital frame . |
static LOFType |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static LOFType[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final LOFType TNW
public static final LOFType QSW
public static final LOFType LVLH
BEWARE! Depending on the background (software used, textbook, community),
different incompatible definitions for LVLH are used. This one is consistent
with Vallado's book and with AGI's STK. However CCSDS standard, Wertz, and
a.i. solutions' FreeFlyer use another definition (see LVLH_CCSDS
).
This frame is also known as the QSW
frame, both constants are equivalent.
The axes of these frames are parallel to the axes of the LVLH_CCSDS
frame:
public static final LOFType LVLH_CCSDS
BEWARE! Depending on the background (software used, textbook, community),
different incompatible definitions for LVLH are used. This one is consistent
with CCSDS standard, Wertz, and a.i. solutions' FreeFlyer. However Vallado's
book and with AGI's STK use another definition (see LVLH
).
The axes of this frame are parallel to the axes of both the QSW
and LVLH
frames:
public static final LOFType VVLH
This is another name for LVLH_CCSDS
, kept here for compatibility with STK.
Beware that the name is misleading: in the general case (i.e. not perfectly circular),
none of the axes is perfectly aligned with velocity! The preferred name for this
should be LVLH_CCSDS
.
The axes of this frame are parallel to the axes of both the QSW
and LVLH
frames:
LVLH_CCSDS
public static final LOFType VNC
public static final LOFType EQW
public static final LOFType NTW
public static LOFType[] values()
for (LOFType c : LOFType.values()) System.out.println(c);
public static LOFType valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic static Rotation rotationFromLOFInToLOFOut(LOFType in, LOFType out, PVCoordinates pv)
commonly used local orbital frame
.
This rotation does not include any time derivatives.
in
- input commonly used local orbital frameout
- output commonly used local orbital framepv
- position-velocity of the spacecraft in some inertial framecommonly used local orbital frame
.public static <T extends CalculusFieldElement<T>> FieldRotation<T> rotationFromLOFInToLOFOut(Field<T> field, LOFType in, LOFType out, FieldPVCoordinates<T> pv)
commonly used local orbital frame
.
This rotation does not include any time derivatives.
T
- type of the field elementsfield
- field to which the elements belongin
- input commonly used local orbital frameout
- output commonly used local orbital framepv
- position-velocity of the spacecraft in some inertial framecommonly used local orbital frame
.public static Transform transformFromLOFInToLOFOut(LOFType in, LOFType out, AbsoluteDate date, PVCoordinates pv)
commonly used local orbital frame
.
This method simply builds the transform using the rotation obtained from
rotationFromLOFInToLOFOut(LOFType, LOFType, PVCoordinates)
in
- input commonly used local orbital frameout
- output commonly used local orbital framedate
- current datepv
- position-velocity of the spacecraft in some inertial framecommonly used local orbital frame
.public static <T extends CalculusFieldElement<T>> FieldTransform<T> transformFromLOFInToLOFOut(Field<T> field, LOFType in, LOFType out, FieldAbsoluteDate<T> date, FieldPVCoordinates<T> pv)
commonly used local orbital frame
.
This method simply builds the transform using the rotation obtained from
rotationFromLOFInToLOFOut(LOFType, LOFType, PVCoordinates)
T
- type of the field elementsfield
- field to which the elements belongin
- input commonly used local orbital frameout
- output commonly used local orbital framedate
- current datepv
- position-velocity of the spacecraft in some inertial framecommonly used local orbital frame
.public Rotation rotationFromLOFType(LOFType fromLOF, PVCoordinates pv)
commonly used local orbital frame
to the instance.fromLOF
- input local orbital framepv
- position-velocity of the spacecraft in some inertial framepublic <T extends CalculusFieldElement<T>> FieldRotation<T> rotationFromLOFType(Field<T> field, LOFType fromLOF, FieldPVCoordinates<T> pv)
commonly used local orbital frame
to the instance.T
- type of the field elementsfield
- field to which the elements belongfromLOF
- input local orbital framepv
- position-velocity of the spacecraft in some inertial framepublic Transform transformFromInertial(AbsoluteDate date, PVCoordinates pv)
date
- current datepv
- position-velocity of the spacecraft in some inertial framepublic <T extends CalculusFieldElement<T>> FieldTransform<T> transformFromInertial(FieldAbsoluteDate<T> date, FieldPVCoordinates<T> pv)
T
- type of the fields elementsdate
- current datepv
- position-velocity of the spacecraft in some inertial framepublic abstract Rotation rotationFromInertial(PVCoordinates pv)
This rotation does not include any time derivatives. If first time derivatives (i.e. rotation rate) is needed as
well, the full transformFromInertial
method must be
called and the complete rotation transform must be extracted from it.
pv
- position-velocity of the spacecraft in some inertial framepublic abstract <T extends CalculusFieldElement<T>> FieldRotation<T> rotationFromInertial(Field<T> field, FieldPVCoordinates<T> pv)
This rotation does not include any time derivatives. If first
time derivatives (i.e. rotation rate) is needed as well, the full
transformFromInertial
method must be called and the complete rotation transform must be extracted
from it.
T
- type of the field elementsfield
- field to which the elements belongpv
- position-velocity of the spacecraft in some inertial frameCopyright © 2002-2022 CS GROUP. All rights reserved.