fr.cnes.sirius.patrius.guidance
Class AngularVelocitiesHarmonicProfile

java.lang.Object
  extended by fr.cnes.sirius.patrius.guidance.GuidanceProfile
      extended by fr.cnes.sirius.patrius.guidance.AngularVelocitiesHarmonicProfile
All Implemented Interfaces:
Serializable, AttitudeLeg, AttitudeProvider

public final class AngularVelocitiesHarmonicProfile
extends GuidanceProfile

Represents an angular velocities guidance profile, calculated with Fourier series

Since:
1.3
Version:
$Id: AngularVelocitiesHarmonicProfile.java 15520 2016-03-07 13:25:06Z bignon $
Author:
Rami Houdroge
See Also:
Serialized Form
Concurrency :
conditionally thread-safe
Concurrency comment :
thread-safe if the Frame attribute is thread-safe.

Constructor Summary
AngularVelocitiesHarmonicProfile(AbsoluteDate origin, Rotation initialRotation, Frame frame, FourierSeries xAngle, FourierSeries yAngle, FourierSeries zAngle, AbsoluteDateInterval timeInterval, KinematicsToolkit.IntegrationType integType, double integStep)
          Create a harmonic, angular velocities guidance profile.
 
Method Summary
 double[] getAngularFrequencies()
           
 Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate userDate, Frame frame)
          Compute the attitude corresponding to an orbital state.
 double[] getConstants()
           
 double[][] getCosArrays()
           
 double[][] getSinArrays()
           
 void setSpinDerivativesComputation(boolean computeSpinDerivatives)
          Method to activate spin derivative computation.
 
Methods inherited from class fr.cnes.sirius.patrius.guidance.GuidanceProfile
checkDate, getAttitude, getTimeInterval
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AngularVelocitiesHarmonicProfile

public AngularVelocitiesHarmonicProfile(AbsoluteDate origin,
                                        Rotation initialRotation,
                                        Frame frame,
                                        FourierSeries xAngle,
                                        FourierSeries yAngle,
                                        FourierSeries zAngle,
                                        AbsoluteDateInterval timeInterval,
                                        KinematicsToolkit.IntegrationType integType,
                                        double integStep)
Create a harmonic, angular velocities guidance profile.

Parameters:
origin - origin of date
initialRotation - rotation at origin
frame - frame where initialRotation and xAngle, yAngle and zAngle are expressed
xAngle - x angular velocity Fourier decomposition
yAngle - y angular velocity Fourier decomposition
zAngle - z angular velocity Fourier decomposition
timeInterval - interval of validity of the guidance profile
integType - integration type (see KinematicsToolkit.IntegrationType)
integStep - integration step
Method Detail

getAngularFrequencies

public double[] getAngularFrequencies()
Returns:
the angular frequencies of the three Fourier series representing x, y and z.

getConstants

public double[] getConstants()
Returns:
the a0 coefficients of the three Fourier series representing x, y and z.

getCosArrays

public double[][] getCosArrays()
Returns:
the a coefficients of the three Fourier series representing x, y and z.

getSinArrays

public double[][] getSinArrays()
Returns:
the b coefficients of the three Fourier series representing x, y and z.

getAttitude

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

Parameters:
pvProv - local position-velocity provider around current date
userDate - 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

setSpinDerivativesComputation

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

Parameters:
computeSpinDerivatives - true if spin derivatives should be computed
Throws:
OrekitException - if spin derivatives can not be computed


Copyright © 2016 CNES. All Rights Reserved.