fr.cnes.sirius.patrius.stela.forces.radiation
Class StelaSRPSquaring

java.lang.Object
  extended by fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
      extended by fr.cnes.sirius.patrius.stela.forces.radiation.StelaSRPSquaring
All Implemented Interfaces:
StelaForceModel

public class StelaSRPSquaring
extends AbstractStelaGaussContribution

This class represents the Stela SRP model, which computes perturbations using the squaring method and the partial derivatives using the potential approximation.

Since:
1.3
Version:
$Id: StelaSRPSquaring.java 17584 2017-05-10 13:26:39Z bignon $
Author:
Rami Houdroge
See Also:
SRPSquaring, SRPPotential
Concurrency :
conditionally thread-safe
Concurrency comment :
thread-safe if the SRPSquaring and SRPPotential models are thread-safe.

Field Summary
 
Fields inherited from class fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
dPert
 
Constructor Summary
StelaSRPSquaring(double mass, double surface, double reflectionCoef, int quadraturePoints, CelestialBody sunBody)
          Create an instance of the SRP force Stela model.
StelaSRPSquaring(double mass, double surface, double reflectionCoef, int quadraturePoints, CelestialBody sunBody, double earthRadius, double dRef, double pRef)
          Create an instance of the SRP force Stela model.
 
Method Summary
 double[][] computePartialDerivatives(StelaEquinoctialOrbit orbit)
          Compute the partial derivatives for a given spacecraft state.
 double[] computePerturbation(StelaEquinoctialOrbit orbit, OrbitNatureConverter converter)
          Compute the dE/dt force derivatives for a given spacecraft state.
 double[] computePotentialPerturbation(StelaEquinoctialOrbit orbit)
           
 double[] computeShortPeriods(StelaEquinoctialOrbit orbit)
          Compute the short periodic variations for a given spacecraft state.
 
Methods inherited from class fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
computeGaussDerivativeEquations, computeGaussEquations, getdPert, getType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StelaSRPSquaring

public StelaSRPSquaring(double mass,
                        double surface,
                        double reflectionCoef,
                        int quadraturePoints,
                        CelestialBody sunBody)
                 throws OrekitException
Create an instance of the SRP force Stela model.

Parameters:
mass - mass of spacecraft
surface - radiative surface of spacecraft
reflectionCoef - reflection coefficient of spacecraft
quadraturePoints - number of quadrature points
sunBody - sun as a celestialbody
Throws:
OrekitException - if the mass is negative (OrekitMessages.MASS_ARGUMENT_IS_NEGATIVE)

StelaSRPSquaring

public StelaSRPSquaring(double mass,
                        double surface,
                        double reflectionCoef,
                        int quadraturePoints,
                        CelestialBody sunBody,
                        double earthRadius,
                        double dRef,
                        double pRef)
                 throws OrekitException
Create an instance of the SRP force Stela model.

Parameters:
mass - mass of spacecraft
surface - radiative surface of spacecraft
reflectionCoef - reflection coefficient of spacecraft
sunBody - sun as a celestialbody
quadraturePoints - number of quadrature points
earthRadius - earth radius
dRef - reference distant
pRef - reference solar pressure at dRef
Throws:
OrekitException - if the mass is negative (OrekitMessages.MASS_ARGUMENT_IS_NEGATIVE)
Method Detail

computeShortPeriods

public double[] computeShortPeriods(StelaEquinoctialOrbit orbit)
                             throws OrekitException
Compute the short periodic variations for a given spacecraft state.

Parameters:
orbit - current orbit information: date, kinematics
Returns:
the short periodic variations of the current force
Throws:
OrekitException - if short periods computation fails

computePartialDerivatives

public double[][] computePartialDerivatives(StelaEquinoctialOrbit orbit)
                                     throws OrekitException
Compute the partial derivatives for a given spacecraft state.

Parameters:
orbit - current orbit information: date, kinematics
Returns:
the partial derivatives of the current force
Throws:
OrekitException - if partial derivatives computation fails

computePerturbation

public double[] computePerturbation(StelaEquinoctialOrbit orbit,
                                    OrbitNatureConverter converter)
                             throws OrekitException
Compute the dE/dt force derivatives for a given spacecraft state.

Specified by:
computePerturbation in class AbstractStelaGaussContribution
Parameters:
orbit - current orbit information: date, kinematics
converter - mean / osculating parameters converter
Returns:
the perturbation dE/dt for the current force
Throws:
OrekitException - if perturbation computation fails

computePotentialPerturbation

public double[] computePotentialPerturbation(StelaEquinoctialOrbit orbit)
                                      throws OrekitException
Parameters:
orbit - the stela equinoctial orbit
Returns:
the potential perturbation
Throws:
OrekitException - the Orekit exception


Copyright © 2017 CNES. All Rights Reserved.