fr.cnes.sirius.patrius.guidance
Class QuaternionPolynomialProfile

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

public final class QuaternionPolynomialProfile
extends GuidanceProfile

Represents a quaternion guidance profile, calculated with polynomial functions

Since:
1.3
Version:
$Id: QuaternionPolynomialProfile.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
QuaternionPolynomialProfile(Frame frame, AbsoluteDateInterval timeInterval, List<QuaternionPolynomialSegment> polynomials)
          Create a polynomial, quaternion guidance profile.
 
Method Summary
 Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
          Compute the attitude corresponding to an orbital state.
 Map<AbsoluteDateInterval,double[]> getQ0Coefficients()
           
 Map<AbsoluteDateInterval,double[]> getQ1Coefficients()
           
 Map<AbsoluteDateInterval,double[]> getQ2Coefficients()
           
 Map<AbsoluteDateInterval,double[]> getQ3Coefficients()
           
 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

QuaternionPolynomialProfile

public QuaternionPolynomialProfile(Frame frame,
                                   AbsoluteDateInterval timeInterval,
                                   List<QuaternionPolynomialSegment> polynomials)
Create a polynomial, quaternion guidance profile.

Parameters:
frame - the reference frame of the polynomial functions
timeInterval - interval of validity of the guidance profile
polynomials - the list of polynomial guidance profile segments
Method Detail

getQ0Coefficients

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

getQ1Coefficients

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

getQ2Coefficients

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

getQ3Coefficients

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

getAttitude

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

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

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.