public final class RediffusedRadiationPressure extends JacobiansParameterizable implements ForceModel, GradientModel
Class that represents a rediffused radiative force.
The implementation of this class enables the computation of partial derivatives with respect to K0 albedo global coefficient, K0 infrared global coefficient, absorption, specular reflection or diffusion reflection coefficients.
| Constructor and Description |
|---|
RediffusedRadiationPressure(CelestialBody inSun,
Frame inBodyFrame,
int inCorona,
int inMeridian,
IEmissivityModel inEmissivityModel,
RediffusedRadiationSensitive inModel)
Constructor.
|
RediffusedRadiationPressure(CelestialBody inSun,
Frame inBodyFrame,
int inCorona,
int inMeridian,
IEmissivityModel inEmissivityModel,
RediffusedRadiationSensitive inModel,
boolean computePD)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addContribution(SpacecraftState s,
TimeDerivativesEquations adder)
Compute the contribution of the force model to the perturbing
acceleration.
|
void |
addDAccDParam(SpacecraftState s,
Parameter param,
double[] dAccdParam)
Compute acceleration derivatives with respect to additional parameters.
|
void |
addDAccDState(SpacecraftState s,
double[][] dAccdPos,
double[][] dAccdVel)
Compute acceleration derivatives with respect to state parameters.
|
Vector3D |
computeAcceleration(SpacecraftState s)
Compute the acceleration due to the force.
|
boolean |
computeGradientPosition()
This method returns true if the acceleration partial derivatives with
respect to position have to be computed.
|
boolean |
computeGradientVelocity()
This method returns true if the acceleration partial derivatives with
respect to velocity have to be computed.
|
EventDetector[] |
getEventsDetectors()
Get the discrete events related to the model.
|
addJacobiansParameter, addJacobiansParameter, addJacobiansParameter, supportsJacobianParameteraddParameter, getParameters, supportsParameterclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetParameters, supportsParameterpublic RediffusedRadiationPressure(CelestialBody inSun, Frame inBodyFrame, int inCorona, int inMeridian, IEmissivityModel inEmissivityModel, RediffusedRadiationSensitive inModel) throws PatriusException
inSun - coordinate of suninBodyFrame - boby frameinCorona - number of coronainMeridian - number of meridianinEmissivityModel - emissivity modelinModel - redistributed radiative modelPatriusException - thrown if no radiative properties foundpublic RediffusedRadiationPressure(CelestialBody inSun, Frame inBodyFrame, int inCorona, int inMeridian, IEmissivityModel inEmissivityModel, RediffusedRadiationSensitive inModel, boolean computePD) throws PatriusException
inSun - coordinate of suninBodyFrame - boby frameinCorona - number of coronainMeridian - number of meridianinEmissivityModel - emissivity modelinModel - redistributed radiative modelcomputePD - true if partial derivatives wrt position have to be computedPatriusException - thrown if no radiative properties foundpublic void addContribution(SpacecraftState s, TimeDerivativesEquations adder) throws PatriusException
addContribution in interface ForceModels - current state information: date, kinematics, attitudeadder - object where the contribution should be addedPatriusException - if some specific error occurspublic Vector3D computeAcceleration(SpacecraftState s) throws PatriusException
computeAcceleration in interface ForceModels - current state information: date, kinematics, attitudeSpacecraftState framePatriusException - if some specific error occurspublic EventDetector[] getEventsDetectors()
getEventsDetectors in interface ForceModelpublic void addDAccDState(SpacecraftState s, double[][] dAccdPos, double[][] dAccdVel) throws PatriusException
addDAccDState in interface IJacobiansParameterizables - spacecraft statedAccdPos - acceleration derivatives with respect to positiondAccdVel - acceleration derivatives with respect to velocityPatriusException - if derivatives cannot be computedpublic void addDAccDParam(SpacecraftState s, Parameter param, double[] dAccdParam) throws PatriusException
addDAccDParam in interface IJacobiansParameterizables - spacecraft stateparam - the parameter with respect to which derivatives are requireddAccdParam - acceleration derivatives with respect to specified parametersPatriusException - if derivatives cannot be computedpublic boolean computeGradientPosition()
computeGradientPosition in interface GradientModelpublic boolean computeGradientVelocity()
computeGradientVelocity in interface GradientModelCopyright © 2017 CNES. All rights reserved.