Package org.orekit.attitudes
Class SpinStabilized
- java.lang.Object
-
- org.orekit.attitudes.SpinStabilized
-
- All Implemented Interfaces:
AttitudeProvider
,AttitudeProviderModifier
,AttitudeRotationModel
,EventDetectorsProvider
,ParameterDriversProvider
public class SpinStabilized extends Object implements AttitudeProviderModifier
This class handles a spin stabilized attitude provider.Spin stabilized laws are handled as wrappers for an underlying non-rotating law. This underlying law is typically an instance of
CelestialBodyPointed
with the pointing axis equal to the rotation axis, but can in fact be anything.Instances of this class are guaranteed to be immutable.
- Author:
- Luc Maisonobe
-
-
Field Summary
-
Fields inherited from interface org.orekit.propagation.events.EventDetectorsProvider
DATATION_ACCURACY
-
-
Constructor Summary
Constructors Constructor Description SpinStabilized(AttitudeProvider nonRotatingLaw, AbsoluteDate start, Vector3D axis, double rate)
Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends CalculusFieldElement<T>>
FieldAttitude<T>getAttitude(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude corresponding to an orbital state.Attitude
getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude corresponding to an orbital state.<T extends CalculusFieldElement<T>>
FieldRotation<T>getAttitudeRotation(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.Rotation
getAttitudeRotation(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.AttitudeProvider
getUnderlyingAttitudeProvider()
Get the underlying attitude provider.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.attitudes.AttitudeProvider
getAttitudeRotation, getAttitudeRotation, getEventDetectors, getFieldEventDetectors
-
Methods inherited from interface org.orekit.attitudes.AttitudeProviderModifier
getEventDetectors, getFieldEventDetectors, getParametersDrivers
-
Methods inherited from interface org.orekit.propagation.events.EventDetectorsProvider
getDateDetector, getFieldDateDetector
-
Methods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
-
-
-
Constructor Detail
-
SpinStabilized
public SpinStabilized(AttitudeProvider nonRotatingLaw, AbsoluteDate start, Vector3D axis, double rate)
Creates a new instance.- Parameters:
nonRotatingLaw
- underlying non-rotating attitude providerstart
- start date of the rotationaxis
- rotation axis in satellite framerate
- spin rate in radians per seconds
-
-
Method Detail
-
getUnderlyingAttitudeProvider
public AttitudeProvider getUnderlyingAttitudeProvider()
Get the underlying attitude provider.- Specified by:
getUnderlyingAttitudeProvider
in interfaceAttitudeProviderModifier
- Returns:
- underlying attitude provider
-
getAttitude
public Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude corresponding to an orbital state.- Specified by:
getAttitude
in interfaceAttitudeProvider
- Specified by:
getAttitude
in interfaceAttitudeProviderModifier
- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- attitude on the specified date and position-velocity state
-
getAttitudeRotation
public Rotation getAttitudeRotation(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.- Specified by:
getAttitudeRotation
in interfaceAttitudeProvider
- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- attitude-related rotation on the specified date and position-velocity state
-
getAttitude
public <T extends CalculusFieldElement<T>> FieldAttitude<T> getAttitude(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude corresponding to an orbital state.- Specified by:
getAttitude
in interfaceAttitudeProvider
- Specified by:
getAttitude
in interfaceAttitudeProviderModifier
- Type Parameters:
T
- type of the field elements- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- attitude on the specified date and position-velocity state
-
getAttitudeRotation
public <T extends CalculusFieldElement<T>> FieldRotation<T> getAttitudeRotation(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.- Specified by:
getAttitudeRotation
in interfaceAttitudeProvider
- Type Parameters:
T
- type of the field elements- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- rotation on the specified date and position-velocity state
-
-