Class FieldAbsolutePVCoordinates<T extends CalculusFieldElement<T>>
- java.lang.Object
-
- org.orekit.utils.FieldPVCoordinates<T>
-
- org.orekit.utils.TimeStampedFieldPVCoordinates<T>
-
- org.orekit.utils.FieldAbsolutePVCoordinates<T>
-
- Type Parameters:
T- type of the field elements
- All Implemented Interfaces:
FieldBlendable<FieldPVCoordinates<T>,T>,FieldTimeShiftable<FieldPVCoordinates<T>,T>,FieldTimeStamped<T>,TimeShiftable<FieldPVCoordinates<T>>,FieldPVCoordinatesProvider<T>
public class FieldAbsolutePVCoordinates<T extends CalculusFieldElement<T>> extends TimeStampedFieldPVCoordinates<T> implements FieldTimeStamped<T>, FieldPVCoordinatesProvider<T>
Field implementation of AbsolutePVCoordinates.- Author:
- Vincent Mouraux
- See Also:
AbsolutePVCoordinates
-
-
Constructor Summary
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FramegetFrame()Get the frame in which the coordinates are defined.FieldVector3D<T>getPosition(Frame outputFrame)Get the position in a specified frame.TimeStampedFieldPVCoordinates<T>getPVCoordinates()Get the TimeStampedFieldPVCoordinates.TimeStampedFieldPVCoordinates<T>getPVCoordinates(Frame outputFrame)Get the TimeStampedFieldPVCoordinates in a specified frame.TimeStampedFieldPVCoordinates<T>getPVCoordinates(FieldAbsoluteDate<T> otherDate, Frame outputFrame)Get theFieldPVCoordinatesof the body in the selected frame.FieldAbsolutePVCoordinates<T>shiftedBy(double dt)Get a time-shifted state.FieldAbsolutePVCoordinates<T>shiftedBy(T dt)Get a time-shifted state.AbsolutePVCoordinatestoAbsolutePVCoordinates()Converts to an AbsolutePVCoordinates instance.FieldPVCoordinatesProvider<T>toTaylorProvider()Create a local provider using simply Taylor expansion throughshiftedBy(double).-
Methods inherited from class org.orekit.utils.TimeStampedFieldPVCoordinates
getDate, toString, toString, toTimeStampedPVCoordinates
-
Methods inherited from class org.orekit.utils.FieldPVCoordinates
blendArithmeticallyWith, crossProduct, estimateVelocity, getAcceleration, getAngularVelocity, getMomentum, getPosition, getVelocity, getZero, negate, normalize, positionShiftedBy, toDerivativeStructurePV, toDerivativeStructureVector, toPVCoordinates, toUnivariateDerivative1PV, toUnivariateDerivative1Vector, toUnivariateDerivative2PV, toUnivariateDerivative2Vector
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.orekit.utils.FieldPVCoordinatesProvider
getPosition
-
Methods inherited from interface org.orekit.time.FieldTimeStamped
durationFrom, getDate
-
-
-
-
Constructor Detail
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(Frame frame, FieldAbsoluteDate<T> date, FieldVector3D<T> position, FieldVector3D<T> velocity, FieldVector3D<T> acceleration)
Build from position, velocity, acceleration.- Parameters:
frame- the frame in which the coordinates are defineddate- coordinates dateposition- the position vector (m)velocity- the velocity vector (m/s)acceleration- the acceleration vector (m/sÂý)
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(Frame frame, FieldAbsoluteDate<T> date, FieldVector3D<T> position, FieldVector3D<T> velocity)
Build from position and velocity. Acceleration is set to zero.- Parameters:
frame- the frame in which the coordinates are defineddate- coordinates dateposition- the position vector (m)velocity- the velocity vector (m/s)
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(Frame frame, FieldAbsoluteDate<T> date, FieldPVCoordinates<T> pva)
Build from frame, date and FieldPVA coordinates.- Parameters:
frame- the frame in which the coordinates are defineddate- date of the coordinatespva- TimeStampedPVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(Frame frame, TimeStampedFieldPVCoordinates<T> pva)
Build from frame and TimeStampedFieldPVCoordinates.- Parameters:
frame- the frame in which the coordinates are definedpva- TimeStampedFieldPVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(Field<T> field, AbsolutePVCoordinates pva)
Build from Field and non-Fielded object.- Parameters:
field- fieldpva- non-Field AbsolutePVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(FieldAbsoluteDate<T> date, T a, FieldAbsolutePVCoordinates<T> AbsPva)
Multiplicative constructorBuild a FieldAbsolutePVCoordinates from another one and a scale factor.
The TimeStampedFieldPVCoordinates built will be a * AbsPva
- Parameters:
date- date of the built coordinatesa- scale factorAbsPva- base (unscaled) FieldAbsolutePVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(FieldAbsoluteDate<T> date, FieldAbsolutePVCoordinates<T> start, FieldAbsolutePVCoordinates<T> end)
Subtractive constructorBuild a relative FieldAbsolutePVCoordinates from a start and an end position.
The FieldAbsolutePVCoordinates built will be end - start.
In case start and end use two different pseudo-inertial frames, the new FieldAbsolutePVCoordinates arbitrarily be defined in the start frame.
- Parameters:
date- date of the built coordinatesstart- Starting FieldAbsolutePVCoordinatesend- ending FieldAbsolutePVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(FieldAbsoluteDate<T> date, T a1, FieldAbsolutePVCoordinates<T> absPv1, T a2, FieldAbsolutePVCoordinates<T> absPv2)
Linear constructorBuild a FieldAbsolutePVCoordinates from two other ones and corresponding scale factors.
The FieldAbsolutePVCoordinates built will be a1 * u1 + a2 * u2
In case the FieldAbsolutePVCoordinates use different pseudo-inertial frames, the new FieldAbsolutePVCoordinates arbitrarily be defined in the first frame.
- Parameters:
date- date of the built coordinatesa1- first scale factorabsPv1- first base (unscaled) FieldAbsolutePVCoordinatesa2- second scale factorabsPv2- second base (unscaled) FieldAbsolutePVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(FieldAbsoluteDate<T> date, T a1, FieldAbsolutePVCoordinates<T> absPv1, T a2, FieldAbsolutePVCoordinates<T> absPv2, T a3, FieldAbsolutePVCoordinates<T> absPv3)
Linear constructorBuild a FieldAbsolutePVCoordinates from three other ones and corresponding scale factors.
The FieldAbsolutePVCoordinates built will be a1 * u1 + a2 * u2 + a3 * u3
In case the FieldAbsolutePVCoordinates use different pseudo-inertial frames, the new FieldAbsolutePVCoordinates arbitrarily be defined in the first frame.
- Parameters:
date- date of the built coordinatesa1- first scale factorabsPv1- first base (unscaled) FieldAbsolutePVCoordinatesa2- second scale factorabsPv2- second base (unscaled) FieldAbsolutePVCoordinatesa3- third scale factorabsPv3- third base (unscaled) FieldAbsolutePVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(FieldAbsoluteDate<T> date, T a1, FieldAbsolutePVCoordinates<T> absPv1, T a2, FieldAbsolutePVCoordinates<T> absPv2, T a3, FieldAbsolutePVCoordinates<T> absPv3, T a4, FieldAbsolutePVCoordinates<T> absPv4)
Linear constructorBuild a FieldAbsolutePVCoordinates from four other ones and corresponding scale factors.
The FieldAbsolutePVCoordinates built will be a1 * u1 + a2 * u2 + a3 * u3 + a4 * u4
In case the FieldAbsolutePVCoordinates use different pseudo-inertial frames, the new AbsolutePVCoordinates arbitrarily be defined in the first frame.
- Parameters:
date- date of the built coordinatesa1- first scale factorabsPv1- first base (unscaled) FieldAbsolutePVCoordinatesa2- second scale factorabsPv2- second base (unscaled) FieldAbsolutePVCoordinatesa3- third scale factorabsPv3- third base (unscaled) FieldAbsolutePVCoordinatesa4- fourth scale factorabsPv4- fourth base (unscaled) FieldAbsolutePVCoordinates
-
FieldAbsolutePVCoordinates
public FieldAbsolutePVCoordinates(Frame frame, FieldAbsoluteDate<T> date, FieldVector3D<U> p)
Builds a FieldAbsolutePVCoordinates triplet from aFieldVector3D<DerivativeStructure>.The vector components must have time as their only derivation parameter and have consistent derivation orders.
- Type Parameters:
U- type of the derivative- Parameters:
frame- the frame in which the parameters are defineddate- date of the built coordinatesp- vector with time-derivatives embedded within the coordinates
-
-
Method Detail
-
shiftedBy
public FieldAbsolutePVCoordinates<T> shiftedBy(T dt)
Get a time-shifted state.The state can be slightly shifted to close dates. This shift is based on a simple Taylor expansion. It is not intended as a replacement for proper orbit propagation (it is not even Keplerian!) but should be sufficient for either small time shifts or coarse accuracy.
- Specified by:
shiftedByin interfaceFieldTimeShiftable<FieldPVCoordinates<T extends CalculusFieldElement<T>>,T extends CalculusFieldElement<T>>- Overrides:
shiftedByin classTimeStampedFieldPVCoordinates<T extends CalculusFieldElement<T>>- Parameters:
dt- time shift in seconds- Returns:
- a new state, shifted with respect to the instance (which is immutable)
-
shiftedBy
public FieldAbsolutePVCoordinates<T> shiftedBy(double dt)
Get a time-shifted state.The state can be slightly shifted to close dates. This shift is based on a simple Taylor expansion. It is not intended as a replacement for proper orbit propagation (it is not even Keplerian!) but should be sufficient for either small time shifts or coarse accuracy.
- Specified by:
shiftedByin interfaceTimeShiftable<T extends CalculusFieldElement<T>>- Overrides:
shiftedByin classTimeStampedFieldPVCoordinates<T extends CalculusFieldElement<T>>- Parameters:
dt- time shift in seconds- Returns:
- a new state, shifted with respect to the instance (which is immutable)
-
toTaylorProvider
public FieldPVCoordinatesProvider<T> toTaylorProvider()
Create a local provider using simply Taylor expansion throughshiftedBy(double).The time evolution is based on a simple Taylor expansion. It is not intended as a replacement for proper orbit propagation (it is not even Keplerian!) but should be sufficient for either small time shifts or coarse accuracy.
- Returns:
- provider based on Taylor expansion, for small time shifts around instance date
-
getFrame
public Frame getFrame()
Get the frame in which the coordinates are defined.- Returns:
- frame in which the coordinates are defined
-
getPVCoordinates
public TimeStampedFieldPVCoordinates<T> getPVCoordinates()
Get the TimeStampedFieldPVCoordinates.- Returns:
- TimeStampedFieldPVCoordinates
-
getPosition
public FieldVector3D<T> getPosition(Frame outputFrame)
Get the position in a specified frame.- Parameters:
outputFrame- frame in which the position coordinates shall be computed- Returns:
- position
- Since:
- 12.0
- See Also:
getPVCoordinates(Frame)
-
getPVCoordinates
public TimeStampedFieldPVCoordinates<T> getPVCoordinates(Frame outputFrame)
Get the TimeStampedFieldPVCoordinates in a specified frame.- Parameters:
outputFrame- frame in which the position/velocity coordinates shall be computed- Returns:
- TimeStampedFieldPVCoordinates
- Throws:
OrekitException- if transformation between frames cannot be computed- See Also:
getPVCoordinates()
-
getPVCoordinates
public TimeStampedFieldPVCoordinates<T> getPVCoordinates(FieldAbsoluteDate<T> otherDate, Frame outputFrame)
Description copied from interface:FieldPVCoordinatesProviderGet theFieldPVCoordinatesof the body in the selected frame.- Specified by:
getPVCoordinatesin interfaceFieldPVCoordinatesProvider<T extends CalculusFieldElement<T>>- Parameters:
otherDate- current dateoutputFrame- the frame where to define the position- Returns:
- time-stamped position/velocity of the body (m and m/s)
-
toAbsolutePVCoordinates
public AbsolutePVCoordinates toAbsolutePVCoordinates()
Converts to an AbsolutePVCoordinates instance.- Returns:
- AbsolutePVCoordinates with same properties
-
-