fr.cnes.sirius.patrius.guidance
Class AngularVelocitiesPolynomialProfile

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

public final class AngularVelocitiesPolynomialProfile
extends GuidanceProfile

Represents an angular velocities guidance profile, calculated with polynomial functions

Since:
1.3
Version:
$Id: AngularVelocitiesPolynomialProfile.java 15520 2016-03-07 13:25:06Z bignon $
Author:
Tiziana Sabatini
See Also:
Serialized Form
Concurrency :
conditionally thread-safe
Concurrency comment :
thread-safe if the attributes are thread-safe

Constructor Summary
AngularVelocitiesPolynomialProfile(Frame frame, AbsoluteDateInterval timeInterval, Rotation initialRotation, List<Vector3DPolynomialSegment> polynomials, KinematicsToolkit.IntegrationType integType, double integStep)
          Create a polynomial, angular velocity guidance profile.
 
Method Summary
 Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate userDate, Frame frame)
          Compute the attitude corresponding to an orbital state.
 Vector3DFunction getVectorFunction()
           
 Map<AbsoluteDateInterval,double[]> getXCoefficients()
           
 Map<AbsoluteDateInterval,double[]> getYCoefficients()
           
 Map<AbsoluteDateInterval,double[]> getZCoefficients()
           
 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

AngularVelocitiesPolynomialProfile

public AngularVelocitiesPolynomialProfile(Frame frame,
                                          AbsoluteDateInterval timeInterval,
                                          Rotation initialRotation,
                                          List<Vector3DPolynomialSegment> polynomials,
                                          KinematicsToolkit.IntegrationType integType,
                                          double integStep)
Create a polynomial, angular velocity guidance profile.

Parameters:
frame - the reference frame of the polynomial functions
timeInterval - interval of validity of the guidance profile
initialRotation - rotation at origin
polynomials - the list of polynomial guidance profile segments
integType - integration type (see KinematicsToolkit.IntegrationType)
integStep - integration step
Method Detail

getXCoefficients

public Map<AbsoluteDateInterval,double[]> getXCoefficients()
Returns:
the map containing the coefficients of the polynomial function representing x, and their time interval of validity.

getYCoefficients

public Map<AbsoluteDateInterval,double[]> getYCoefficients()
Returns:
the map containing the coefficients of the polynomial function representing y, and their time interval of validity.

getZCoefficients

public Map<AbsoluteDateInterval,double[]> getZCoefficients()
Returns:
the map containing the coefficients of the polynomial function representing z, and their time interval of validity.

getVectorFunction

public Vector3DFunction getVectorFunction()
Returns:
the angular velocity function

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.