org.orekit.attitudes
Class RelativeTabulatedAttitudeLaw

java.lang.Object
  extended by org.orekit.attitudes.RelativeTabulatedAttitudeLaw
All Implemented Interfaces:
Serializable, AttitudeLaw, AttitudeProvider

public class RelativeTabulatedAttitudeLaw
extends Object
implements AttitudeLaw

This class represents a relative tabulated attitude law version "attitudeLeg", with an interval of validity (whose borders are closed points) and attitude laws outside this interval of validity, which can be of two types : a ConstantAttitudeLaw, or an ExtrapolatedAttitudeLaw (private class)

Since:
3.1
Version:
$Id: RelativeTabulatedAttitudeLaw.java 17582 2017-05-10 12:58:16Z bignon $
Author:
galpint
See Also:
Serialized Form
Concurrency :
conditionally thread-safe
Concurrency comment :
The use of an RelativeTabulatedAttitudeLaw makes it thread-safe only if the AttitudeLeglaw is

Nested Class Summary
static class RelativeTabulatedAttitudeLaw.AroundAttitudeType
          Enumeration of the existing constraint types
 
Constructor Summary
RelativeTabulatedAttitudeLaw(AbsoluteDate refDate, List<Pair<Double,AngularCoordinates>> angularCoordinates, Frame frame, RelativeTabulatedAttitudeLaw.AroundAttitudeType lawBefore, RelativeTabulatedAttitudeLaw.AroundAttitudeType lawAfter)
          Create a RelativeTabulatedAttitudeLaw object with list of Angular Coordinates (during the interval of validity), a law before the interval and a law after the interval.
RelativeTabulatedAttitudeLaw(Frame frame, AbsoluteDate refDate, List<Pair<Double,Rotation>> orientations, RelativeTabulatedAttitudeLaw.AroundAttitudeType lawBefore, RelativeTabulatedAttitudeLaw.AroundAttitudeType lawAfter)
          Create a RelativeTabulatedAttitudeLaw object with list of rotations (during the interval of validity), a law before the interval and a law after the interval.
 
Method Summary
 Attitude getAttitude(Orbit orbit)
          Compute the attitude corresponding to an orbital state.
 Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
          Compute the attitude corresponding to an orbital state.
 void setSpinDerivativesComputation(boolean computeSpinDerivatives)
          Method to activate spin derivative computation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RelativeTabulatedAttitudeLaw

public RelativeTabulatedAttitudeLaw(Frame frame,
                                    AbsoluteDate refDate,
                                    List<Pair<Double,Rotation>> orientations,
                                    RelativeTabulatedAttitudeLaw.AroundAttitudeType lawBefore,
                                    RelativeTabulatedAttitudeLaw.AroundAttitudeType lawAfter)
                             throws OrekitException
Create a RelativeTabulatedAttitudeLaw object with list of rotations (during the interval of validity), a law before the interval and a law after the interval.

Parameters:
refDate - reference date
orientations - List of rotations
frame - reference frame
lawBefore - Attitude law used before the reference date
lawAfter - Attitude law used after the date corresponding to the last attitude
Throws:
OrekitException - if not enough data for Hermite interpolation
Since:
3.1

RelativeTabulatedAttitudeLaw

public RelativeTabulatedAttitudeLaw(AbsoluteDate refDate,
                                    List<Pair<Double,AngularCoordinates>> angularCoordinates,
                                    Frame frame,
                                    RelativeTabulatedAttitudeLaw.AroundAttitudeType lawBefore,
                                    RelativeTabulatedAttitudeLaw.AroundAttitudeType lawAfter)
                             throws OrekitException
Create a RelativeTabulatedAttitudeLaw object with list of Angular Coordinates (during the interval of validity), a law before the interval and a law after the interval.

Parameters:
refDate - reference date
angularCoordinates - List of angular coordinates
frame - reference frame
lawBefore - Attitude law used before the reference date
lawAfter - Attitude law used after the date corresponding to the last attitude
Throws:
OrekitException - if not enough data for Hermite interpolation
Since:
3.1
Method Detail

getAttitude

public Attitude getAttitude(PVCoordinatesProvider pvProv,
                            AbsoluteDate date,
                            Frame frame)
                     throws OrekitException
Compute the attitude corresponding to an orbital state.

Specified by:
getAttitude in interface AttitudeProvider
Parameters:
pvProv - local position-velocity provider around current date
date - current date
frame - reference frame from which attitude is computed
Returns:
attitude attitude on the specified date and position-velocity state
Throws:
OrekitException - if attitude cannot be computed

getAttitude

public Attitude getAttitude(Orbit orbit)
                     throws OrekitException
Compute the attitude corresponding to an orbital state.

Specified by:
getAttitude in interface AttitudeProvider
Parameters:
orbit - current orbit
Returns:
attitude attitude on the current orbit
Throws:
OrekitException - if attitude cannot be computed

setSpinDerivativesComputation

public void setSpinDerivativesComputation(boolean computeSpinDerivatives)
                                   throws OrekitException
Method to activate spin derivative computation.

Specified by:
setSpinDerivativesComputation in interface AttitudeProvider
Parameters:
computeSpinDerivatives - true if spin derivatives should be computed
Throws:
OrekitException - if spin derivatives can not be computed


Copyright © 2017 CNES. All Rights Reserved.