Enum LOFType
 java.lang.Object

 java.lang.Enum<LOFType>

 org.orekit.frames.LOFType

 All Implemented Interfaces:
Serializable
,Comparable<LOFType>
,LOF
public enum LOFType extends Enum<LOFType> implements LOF
Enumerate for different types of Local Orbital Frames. Author:
 Luc Maisonobe, Maxime Journot, Vincent Cucchietti


Enum Constant Summary
Enum Constants Enum Constant 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).LVLH_CCSDS_INERTIAL
Constant for Local Vertical, Local Horizontal frame as defined by CCSDS considered inertial (Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).LVLH_INERTIAL
Constant for Local Vertical, Local Horizontal frame considered inertial (X axis aligned with position, Z axis aligned with orbital momentum).NTW
Constant for Transverse Velocity Normal coordinate system (Y axis aligned with velocity, Z axis aligned with orbital momentum).NTW_INERTIAL
Constant for Transverse Velocity Normal coordinate system considered inertial (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).QSW_INERTIAL
Constant for QSW frame considered inertial (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).TNW_INERTIAL
Constant for TNW frame considered inertial (X axis aligned with velocity, Z axis aligned with orbital momentum).VNC
Constant for Velocity  Normal  Conormal frame (X axis aligned with velocity, Y axis aligned with orbital momentum).VNC_INERTIAL
Constant for Velocity  Normal  Conormal frame considered inertial (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).VVLH_INERTIAL
Constant for Vehicle Velocity, Local Horizontal frame considered inertial (Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).

Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description String
getName()
Get name of the local orbital frame.<T extends CalculusFieldElement<T>>
FieldRotation<T>rotationFromInertial(Field<T> field, FieldAbsoluteDate<T> date, FieldPVCoordinates<T> pv)
Get the rotation from inertial frame to local orbital frame.abstract <T extends CalculusFieldElement<T>>
FieldRotation<T>rotationFromInertial(Field<T> field, FieldPVCoordinates<T> pv)
Get the rotation from inertial frame to local orbital frame.Rotation
rotationFromInertial(AbsoluteDate date, PVCoordinates 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.<T extends CalculusFieldElement<T>>
FieldRotation<T>rotationFromLOF(Field<T> field, LOFType fromLOF, FieldPVCoordinates<T> pv)
Get the rotation from inputlocal orbital frame
to the instance.Rotation
rotationFromLOF(LOFType fromLOF, PVCoordinates pv)
Get the rotation from inputlocal orbital frame
to the instance.abstract OrbitRelativeFrame
toOrbitRelativeFrame()
Convert current local orbital frame to CCSDS equivalent orbit relative frame when possible, null otherwise.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.
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

Methods inherited from interface org.orekit.frames.LOF
isQuasiInertial, rotationFromLOF, rotationFromLOF, transformFromInertial, transformFromInertial, transformFromLOF, transformFromLOF




Enum Constant Detail

TNW
public static final LOFType TNW

TNW_INERTIAL
public static final LOFType TNW_INERTIAL

QSW
public static final LOFType QSW
Constant for QSW frame (X axis aligned with position, Z axis aligned with orbital momentum).This frame is also known as the
LVLH
frame, both constants are equivalent.The axes of these frames are parallel to the axes of the
VVLH
frame: X_{QSW/LVLH} = Z_{VVLH}
 Y_{QSW/LVLH} = X_{VVLH}
 Z_{QSW/LVLH} = Y_{VVLH}

QSW_INERTIAL
public static final LOFType QSW_INERTIAL
Constant for QSW frame considered inertial (X axis aligned with position, Z axis aligned with orbital momentum).This frame is also known as the
LVLH
frame, both constants are equivalent.The axes of these frames are parallel to the axes of the
VVLH
frame: X_{QSW/LVLH} = Z_{VVLH}
 Y_{QSW/LVLH} = X_{VVLH}
 Z_{QSW/LVLH} = Y_{VVLH}

LVLH
public static final LOFType LVLH
Constant for Local Vertical, Local Horizontal frame (X axis aligned with position, Z axis aligned with orbital momentum).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: X_{LVLH/QSW} = Z_{LVLH_CCSDS}
 Y_{LVLH/QSW} = X_{LVLH_CCSDS}
 Z_{LVLH/QSW} = Y_{LVLH_CCSDS}

LVLH_INERTIAL
public static final LOFType LVLH_INERTIAL
Constant for Local Vertical, Local Horizontal frame considered inertial (X axis aligned with position, Z axis aligned with orbital momentum).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: X_{LVLH/QSW} = Z_{LVLH_CCSDS}
 Y_{LVLH/QSW} = X_{LVLH_CCSDS}
 Z_{LVLH/QSW} = Y_{LVLH_CCSDS}

LVLH_CCSDS
public static final LOFType 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).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
andLVLH
frames: X_{LVLH_CCSDS/VVLH} = Y_{QSW/LVLH}
 Y_{LVLH_CCSDS/VVLH} = Z_{QSW/LVLH}
 Z_{LVLH_CCSDS/VVLH} = X_{QSW/LVLH}

LVLH_CCSDS_INERTIAL
public static final LOFType LVLH_CCSDS_INERTIAL
Constant for Local Vertical, Local Horizontal frame as defined by CCSDS considered inertial (Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).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
andLVLH
frames: X_{LVLH_CCSDS/VVLH} = Y_{QSW/LVLH}
 Y_{LVLH_CCSDS/VVLH} = Z_{QSW/LVLH}
 Z_{LVLH_CCSDS/VVLH} = X_{QSW/LVLH}

VVLH
public static final LOFType VVLH
Constant for Vehicle Velocity, Local Horizontal frame (Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).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
andLVLH
frames: X_{LVLH_CCSDS/VVLH} = Y_{QSW/LVLH}
 Y_{LVLH_CCSDS/VVLH} = Z_{QSW/LVLH}
 Z_{LVLH_CCSDS/VVLH} = X_{QSW/LVLH}
 See Also:
LVLH_CCSDS

VVLH_INERTIAL
public static final LOFType VVLH_INERTIAL
Constant for Vehicle Velocity, Local Horizontal frame considered inertial (Z axis aligned with opposite of position, Y axis aligned with opposite of orbital momentum).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
andLVLH
frames: X_{LVLH_CCSDS/VVLH} = Y_{QSW/LVLH}
 Y_{LVLH_CCSDS/VVLH} = Z_{QSW/LVLH}
 Z_{LVLH_CCSDS/VVLH} = X_{QSW/LVLH}
 See Also:
LVLH_CCSDS

VNC
public static final LOFType VNC

VNC_INERTIAL
public static final LOFType VNC_INERTIAL

EQW
public static final LOFType EQW
Constant for Equinoctial Coordinate System (X axis aligned with ascending node, Z axis aligned with orbital momentum). Since:
 11.0

NTW
public static final LOFType NTW

NTW_INERTIAL
public static final LOFType NTW_INERTIAL
Constant for Transverse Velocity Normal coordinate system considered inertial (Y axis aligned with velocity, Z axis aligned with orbital momentum).The axes of this frame are parallel to the axes of the
TNW
andVNC
frames: X_{NTW} = Y_{TNW} = Z_{VNC}
 Y_{NTW} = X_{TNW} = X_{VNC}
 Z_{NTW} = Z_{TNW} = Y_{VNC}


Method Detail

values
public static LOFType[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (LOFType c : LOFType.values()) System.out.println(c);
 Returns:
 an array containing the constants of this enum type, in the order they are declared

valueOf
public static LOFType valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.) Parameters:
name
 the name of the enum constant to be returned. Returns:
 the enum constant with the specified name
 Throws:
IllegalArgumentException
 if this enum type has no constant with the specified nameNullPointerException
 if the argument is null

getName
public String getName()
Get name of the local orbital frame.

rotationFromLOF
public Rotation rotationFromLOF(LOFType fromLOF, PVCoordinates pv)
Get the rotation from inputlocal orbital frame
to the instance.This rotation does not include any time derivatives. If first time derivatives (i.e. rotation rate) is needed as well, the full
LOF.transformFromLOF(LOF, AbsoluteDate, PVCoordinates)
method must be called and the complete rotation transform must be extracted from it. Parameters:
fromLOF
 input local orbital framepv
 positionvelocity of the spacecraft in some inertial frame Returns:
 rotation from input local orbital frame to the instance

rotationFromLOF
public <T extends CalculusFieldElement<T>> FieldRotation<T> rotationFromLOF(Field<T> field, LOFType fromLOF, FieldPVCoordinates<T> pv)
Get the rotation from inputlocal orbital frame
to the instance.This rotation does not include any time derivatives. If first time derivatives (i.e. rotation rate) is needed as well, the full
LOF.transformFromLOF(LOF, FieldAbsoluteDate, FieldPVCoordinates)
method must be called and the complete rotation transform must be extracted from it. Type Parameters:
T
 type of the field elements Parameters:
field
 field to which the elements belongfromLOF
 input local orbital framepv
 positionvelocity of the spacecraft in some inertial frame Returns:
 rotation from input local orbital frame to the instance

rotationFromInertial
public Rotation rotationFromInertial(AbsoluteDate date, PVCoordinates pv)
Get the rotation from inertial frame to local orbital frame.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. It is unnecessary to use this method when dealing withLOFType
, userotationFromInertial(PVCoordinates)
instead. Specified by:
rotationFromInertial
in interfaceLOF
 Parameters:
date
 date of the rotationpv
 positionvelocity of the spacecraft in some inertial frame Returns:
 rotation from inertial frame to local orbital frame

rotationFromInertial
public abstract Rotation rotationFromInertial(PVCoordinates pv)
Get the rotation from inertial frame to local orbital frame.This rotation does not include any time derivatives. If first time derivatives (i.e. rotation rate) is needed as well, the full
LOF.transformFromInertial(AbsoluteDate, PVCoordinates)
method must be called and the complete rotation transform must be extracted from it. Parameters:
pv
 positionvelocity of the spacecraft in some inertial frame Returns:
 rotation from inertial frame to local orbital frame

rotationFromInertial
public <T extends CalculusFieldElement<T>> FieldRotation<T> rotationFromInertial(Field<T> field, FieldAbsoluteDate<T> date, FieldPVCoordinates<T> pv)
Get the rotation from inertial frame to local orbital frame.This rotation does not include any time derivatives. If first time derivatives (i.e. rotation rate) is needed as well, the full
It is unnecessary to use this method when dealing withLOF.transformFromInertial(FieldAbsoluteDate, FieldPVCoordinates)
method must be called and the complete rotation transform must be extracted from it.LOFType
, userotationFromInertial(Field, FieldPVCoordinates)
instead. Specified by:
rotationFromInertial
in interfaceLOF
 Type Parameters:
T
 type of the field elements Parameters:
field
 field to which the elements belongdate
 date of the rotationpv
 positionvelocity of the spacecraft in some inertial frame Returns:
 rotation from inertial frame to local orbital frame

rotationFromInertial
public abstract <T extends CalculusFieldElement<T>> FieldRotation<T> rotationFromInertial(Field<T> field, FieldPVCoordinates<T> pv)
Get the rotation from inertial frame to local orbital frame.This rotation does not include any time derivatives. If first time derivatives (i.e. rotation rate) is needed as well, the full
LOF.transformFromInertial(FieldAbsoluteDate, FieldPVCoordinates)
method must be called and the complete rotation transform must be extracted from it. Type Parameters:
T
 type of the field elements Parameters:
field
 field to which the elements belongpv
 positionvelocity of the spacecraft in some inertial frame Returns:
 rotation from inertial frame to local orbital frame

toOrbitRelativeFrame
public abstract OrbitRelativeFrame toOrbitRelativeFrame()
Convert current local orbital frame to CCSDS equivalent orbit relative frame when possible, null otherwise. Returns:
 CCSDS equivalent orbit relative frame when possible, null otherwise
 See Also:
OrbitRelativeFrame

