public final class DirectRadiativeModel extends Parameterizable implements RadiationSensitive
Class that represents a radiative model, based on the vehicle.
Modifier and Type | Field and Description |
---|---|
static String |
K0_COEFFICIENT
Parameter name for K0 coefficient.
|
Constructor and Description |
---|
DirectRadiativeModel(Assembly inAssembly)
Radiative model (the acceleration is computed from all the sub parts of
the vehicle).
|
DirectRadiativeModel(Assembly inAssembly,
double inK0)
Radiative model (the acceleration is computed from all the sub parts of
the vehicle).
|
DirectRadiativeModel(Assembly inAssembly,
Parameter inK0)
Radiative model (the acceleration is computed from all the sub parts of
the vehicle).
|
Modifier and Type | Method and Description |
---|---|
void |
addDSRPAccDParam(SpacecraftState s,
Parameter param,
double[] dAccdParam,
Vector3D satSunVector)
Compute acceleration derivatives with respect to additional parameters.
|
void |
addDSRPAccDState(SpacecraftState s,
double[][] dAccdPos,
double[][] dAccdVel,
Vector3D satSunVector)
Compute acceleration derivatives with respect to state parameters.
|
protected static Vector3D |
forceOnFacet(SpacecraftState state,
IPart part,
Vector3D flux)
Method to compute the force for a plane model.
|
protected static Vector3D |
forceOnSphere(SpacecraftState state,
IPart part,
Vector3D flux,
Frame mainPartFrame)
Method to compute the force for a spherical model.
|
ArrayList<Parameter> |
getJacobianParameters()
Get the list of all jacobian parameters supported.
|
Vector3D |
radiationPressureAcceleration(SpacecraftState state,
Vector3D flux)
Method to compute the radiation pressure acceleration, based on the
assembly.
|
addParameter, getParameters, supportsParameter
public static final String K0_COEFFICIENT
public DirectRadiativeModel(Assembly inAssembly)
inAssembly
- The considered vehicle.public DirectRadiativeModel(Assembly inAssembly, double inK0)
inAssembly
- The considered vehicle.inK0
- global multiplicative factorpublic Vector3D radiationPressureAcceleration(SpacecraftState state, Vector3D flux) throws PatriusException
radiationPressureAcceleration
in interface RadiationSensitive
state
- the current state of the spacecraft.flux
- the incoming flux.PatriusException
- when an error occurs.public void addDSRPAccDState(SpacecraftState s, double[][] dAccdPos, double[][] dAccdVel, Vector3D satSunVector) throws PatriusException
addDSRPAccDState
in interface RadiationSensitive
s
- spacecraft statedAccdPos
- acceleration derivatives with respect to position parametersdAccdVel
- acceleration derivatives with respect to velocity parameterssatSunVector
- satellite to sun vector, expressed in the spacecraft framePatriusException
- if derivatives cannot be computedpublic void addDSRPAccDParam(SpacecraftState s, Parameter param, double[] dAccdParam, Vector3D satSunVector) throws PatriusException
addDSRPAccDParam
in interface RadiationSensitive
s
- spacecraft stateparam
- the parameter with respect to which derivatives are requireddAccdParam
- acceleration derivatives with respect to additional parameterssatSunVector
- satellite to sun vector, expressed in the spacecraft framePatriusException
- if derivatives cannot be computedprotected static Vector3D forceOnSphere(SpacecraftState state, IPart part, Vector3D flux, Frame mainPartFrame) throws PatriusException
state
- the current state of the spacecraft.part
- the current part of the assembly.flux
- the incoming flux.mainPartFrame
- mainPartFramePatriusException
- thrown if computation failedprotected static Vector3D forceOnFacet(SpacecraftState state, IPart part, Vector3D flux) throws PatriusException
state
- the current state of the spacecraft.part
- the current part of the assembly.flux
- the incoming flux.PatriusException
- orekit frame exceptionpublic ArrayList<Parameter> getJacobianParameters()
getJacobianParameters
in interface JacobianParametersProvider
Copyright © 2021 CNES. All rights reserved.