T
- type of the field elementspublic class FieldAttitude<T extends org.hipparchus.CalculusFieldElement<T>> extends Object implements FieldTimeStamped<T>, FieldTimeShiftable<FieldAttitude<T>,T>
This class represents the rotation between a reference frame and the satellite frame, as well as the spin of the satellite (axis and rotation rate).
The state can be slightly shifted to close dates. This shift is based on a linear extrapolation for attitude taking the spin rate into account. It is not intended as a replacement for proper attitude propagation but should be sufficient for either small time shifts or coarse accuracy.
The instance Attitude
is guaranteed to be immutable.
Orbit
,
AttitudeProvider
Constructor and Description |
---|
FieldAttitude(org.hipparchus.Field<T> field,
Attitude attitude)
Builds an instance for a regular
Attitude . |
FieldAttitude(FieldAbsoluteDate<T> date,
Frame referenceFrame,
FieldAngularCoordinates<T> orientation)
Creates a new instance.
|
FieldAttitude(FieldAbsoluteDate<T> date,
Frame referenceFrame,
org.hipparchus.geometry.euclidean.threed.FieldRotation<T> attitude,
org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> spin,
org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> acceleration)
Creates a new instance.
|
FieldAttitude(FieldAbsoluteDate<T> date,
Frame referenceFrame,
org.hipparchus.geometry.euclidean.threed.Rotation attitude,
org.hipparchus.geometry.euclidean.threed.Vector3D spin,
org.hipparchus.geometry.euclidean.threed.Vector3D acceleration,
org.hipparchus.Field<T> field)
Creates a new instance.
|
FieldAttitude(Frame referenceFrame,
TimeStampedFieldAngularCoordinates<T> orientation)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
FieldAbsoluteDate<T> |
getDate()
Get the date of attitude parameters.
|
TimeStampedFieldAngularCoordinates<T> |
getOrientation()
Get the complete orientation including spin.
|
Frame |
getReferenceFrame()
Get the reference frame.
|
org.hipparchus.geometry.euclidean.threed.FieldRotation<T> |
getRotation()
Get the attitude rotation.
|
org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> |
getRotationAcceleration()
Get the satellite rotation acceleration.
|
org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> |
getSpin()
Get the satellite spin.
|
FieldAttitude<T> |
shiftedBy(double dt)
Get a time-shifted attitude.
|
FieldAttitude<T> |
shiftedBy(T dt)
Get a time-shifted attitude.
|
Attitude |
toAttitude()
Converts to an Attitude instance.
|
FieldAttitude<T> |
withReferenceFrame(Frame newReferenceFrame)
Get a similar attitude with a specific reference frame.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
durationFrom
public FieldAttitude(Frame referenceFrame, TimeStampedFieldAngularCoordinates<T> orientation)
referenceFrame
- reference frame from which attitude is definedorientation
- complete orientation between reference frame and satellite frame,
including rotation ratepublic FieldAttitude(FieldAbsoluteDate<T> date, Frame referenceFrame, FieldAngularCoordinates<T> orientation)
date
- date at which attitude is definedreferenceFrame
- reference frame from which attitude is definedorientation
- complete orientation between reference frame and satellite frame,
including rotation ratepublic FieldAttitude(FieldAbsoluteDate<T> date, Frame referenceFrame, org.hipparchus.geometry.euclidean.threed.FieldRotation<T> attitude, org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> spin, org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> acceleration)
date
- date at which attitude is definedreferenceFrame
- reference frame from which attitude is definedattitude
- rotation between reference frame and satellite framespin
- satellite spin (axis and velocity, in satellite frame)acceleration
- satellite rotation acceleration (in satellite frame)public FieldAttitude(FieldAbsoluteDate<T> date, Frame referenceFrame, org.hipparchus.geometry.euclidean.threed.Rotation attitude, org.hipparchus.geometry.euclidean.threed.Vector3D spin, org.hipparchus.geometry.euclidean.threed.Vector3D acceleration, org.hipparchus.Field<T> field)
date
- date at which attitude is definedreferenceFrame
- reference frame from which attitude is definedattitude
- rotation between reference frame and satellite framespin
- satellite spin (axis and velocity, in satellite frame)acceleration
- satellite rotation acceleration (in satellite frame)field
- field used by defaultpublic FieldAttitude<T> shiftedBy(double dt)
The state can be slightly shifted to close dates. This shift is based on a linear extrapolation for attitude taking the spin rate into account. It is not intended as a replacement for proper attitude propagation but should be sufficient for either small time shifts or coarse accuracy.
shiftedBy
in interface TimeShiftable<FieldAttitude<T extends org.hipparchus.CalculusFieldElement<T>>>
dt
- time shift in secondspublic FieldAttitude<T> shiftedBy(T dt)
The state can be slightly shifted to close dates. This shift is based on a linear extrapolation for attitude taking the spin rate into account. It is not intended as a replacement for proper attitude propagation but should be sufficient for either small time shifts or coarse accuracy.
shiftedBy
in interface FieldTimeShiftable<FieldAttitude<T extends org.hipparchus.CalculusFieldElement<T>>,T extends org.hipparchus.CalculusFieldElement<T>>
dt
- time shift in secondspublic FieldAttitude<T> withReferenceFrame(Frame newReferenceFrame)
If the instance reference frame is already the specified one, the instance itself is returned without any object creation. Otherwise, a new instance will be created with the specified reference frame. In this case, the required intermediate rotation and spin between the specified and the original reference frame will be inserted.
newReferenceFrame
- desired reference frame for attitudepublic FieldAbsoluteDate<T> getDate()
getDate
in interface FieldTimeStamped<T extends org.hipparchus.CalculusFieldElement<T>>
public Frame getReferenceFrame()
public TimeStampedFieldAngularCoordinates<T> getOrientation()
getRotation()
,
getSpin()
public org.hipparchus.geometry.euclidean.threed.FieldRotation<T> getRotation()
getOrientation()
,
getSpin()
public org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> getSpin()
The spin vector is defined in satellite frame.
getOrientation()
,
getRotation()
public org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> getRotationAcceleration()
The rotation acceleration. vector is defined in satellite frame.
getOrientation()
,
getRotation()
public Attitude toAttitude()
Copyright © 2002-2023 CS GROUP. All rights reserved.