fr.cnes.genopus.nonWidget.forces
Class CustomRediffusedRadiationPressure

java.lang.Object
  extended by org.orekit.parameter.Parameterizable
      extended by org.orekit.parameter.JacobiansParameterizable
          extended by fr.cnes.genopus.nonWidget.forces.CustomRediffusedRadiationPressure
All Implemented Interfaces:
Serializable, org.orekit.forces.ForceModel, org.orekit.forces.GradientModel, org.orekit.parameter.IJacobiansParameterizable, org.orekit.parameter.IParameterizable

public class CustomRediffusedRadiationPressure
extends org.orekit.parameter.JacobiansParameterizable
implements org.orekit.forces.ForceModel, org.orekit.forces.GradientModel

Encapsules a PATRIUS rediffused solar radiation force model.

Author:
ffsm
See Also:
Serialized Form

Constructor Summary
CustomRediffusedRadiationPressure(org.orekit.bodies.CelestialBody inSun, org.orekit.frames.Frame inBodyFrame, int inCorona, int inMeridian, org.orekit.forces.radiation.IEmissivityModel inEmissivityModel, boolean inAlbedo, boolean inIr, double inK0Albedo, double inK0Ir, fr.cnes.sirius.patrius.assembly.Assembly assembly)
          Creates a new instance.
CustomRediffusedRadiationPressure(CustomRediffusedRadiationPressure otherInstance, fr.cnes.sirius.patrius.assembly.Assembly assembly)
          Creates a new instance from the data in another one but with a different assembly.
 
Method Summary
 void addContribution(org.orekit.propagation.SpacecraftState s, org.orekit.propagation.numerical.TimeDerivativesEquations adder)
          
 void addDAccDParam(org.orekit.propagation.SpacecraftState s, org.orekit.parameter.Parameter param, double[] dAccdParam)
          
 void addDAccDState(org.orekit.propagation.SpacecraftState s, double[][] dAccdPos, double[][] dAccdVel)
          
 org.apache.commons.math3.geometry.euclidean.threed.Vector3D computeAcceleration(org.orekit.propagation.SpacecraftState s)
          
 boolean computeGradientPosition()
          
 boolean computeGradientVelocity()
          
 fr.cnes.sirius.patrius.assembly.Assembly getAssembly()
          Getter for the assembly used at construction.
 org.orekit.propagation.events.EventDetector[] getEventsDetectors()
          
 org.orekit.forces.radiation.RediffusedRadiationPressure getRediffusedRadiationPressure()
          Getter for the encapsuled RediffusedRadiationPressure instance.
 String toString()
          
 
Methods inherited from class org.orekit.parameter.JacobiansParameterizable
addJacobiansParameter, addJacobiansParameter, addJacobiansParameter, supportsJacobianParameter
 
Methods inherited from class org.orekit.parameter.Parameterizable
addParameter, getParameters, supportsParameter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.orekit.parameter.IParameterizable
getParameters, supportsParameter
 

Constructor Detail

CustomRediffusedRadiationPressure

public CustomRediffusedRadiationPressure(org.orekit.bodies.CelestialBody inSun,
                                         org.orekit.frames.Frame inBodyFrame,
                                         int inCorona,
                                         int inMeridian,
                                         org.orekit.forces.radiation.IEmissivityModel inEmissivityModel,
                                         boolean inAlbedo,
                                         boolean inIr,
                                         double inK0Albedo,
                                         double inK0Ir,
                                         fr.cnes.sirius.patrius.assembly.Assembly assembly)
                                  throws org.orekit.errors.OrekitException
Creates a new instance.

Parameters:
inSun - coordinate of sun
inBodyFrame - boby frame
inCorona - number of corona
inMeridian - number of meridian
inEmissivityModel - emissivity model
inAlbedo - albedo indicator
inIr - infrared indicator
inK0Albedo - albedo global multiplicative factor
inK0Ir - infrared global multiplicative factor
assembly - assembly with aerodynamic properties
Throws:
org.orekit.errors.OrekitException - if no radiative properties found

CustomRediffusedRadiationPressure

public CustomRediffusedRadiationPressure(CustomRediffusedRadiationPressure otherInstance,
                                         fr.cnes.sirius.patrius.assembly.Assembly assembly)
                                  throws org.orekit.errors.OrekitException
Creates a new instance from the data in another one but with a different assembly.

Parameters:
otherInstance - the other instance
assembly - the new assembly
Throws:
org.orekit.errors.OrekitException - if no radiative properties found
Method Detail

getAssembly

public fr.cnes.sirius.patrius.assembly.Assembly getAssembly()
Getter for the assembly used at construction.

Returns:
the assembly.

toString

public String toString()

Overrides:
toString in class Object

getRediffusedRadiationPressure

public org.orekit.forces.radiation.RediffusedRadiationPressure getRediffusedRadiationPressure()
Getter for the encapsuled RediffusedRadiationPressure instance. The exsistance of this method is mandatory since the PATRIUS class is declared as final. Otherwise CustomRediffusedRadiationPressure would heritate from RediffusedRadiationPressure directly.

Returns:
the assembly.

addDAccDState

public void addDAccDState(org.orekit.propagation.SpacecraftState s,
                          double[][] dAccdPos,
                          double[][] dAccdVel)
                   throws org.orekit.errors.OrekitException

Specified by:
addDAccDState in interface org.orekit.parameter.IJacobiansParameterizable
Throws:
org.orekit.errors.OrekitException

addDAccDParam

public void addDAccDParam(org.orekit.propagation.SpacecraftState s,
                          org.orekit.parameter.Parameter param,
                          double[] dAccdParam)
                   throws org.orekit.errors.OrekitException

Specified by:
addDAccDParam in interface org.orekit.parameter.IJacobiansParameterizable
Throws:
org.orekit.errors.OrekitException

computeGradientPosition

public boolean computeGradientPosition()

Specified by:
computeGradientPosition in interface org.orekit.forces.GradientModel

computeGradientVelocity

public boolean computeGradientVelocity()

Specified by:
computeGradientVelocity in interface org.orekit.forces.GradientModel

addContribution

public void addContribution(org.orekit.propagation.SpacecraftState s,
                            org.orekit.propagation.numerical.TimeDerivativesEquations adder)
                     throws org.orekit.errors.OrekitException

Specified by:
addContribution in interface org.orekit.forces.ForceModel
Throws:
org.orekit.errors.OrekitException

computeAcceleration

public org.apache.commons.math3.geometry.euclidean.threed.Vector3D computeAcceleration(org.orekit.propagation.SpacecraftState s)
                                                                                throws org.orekit.errors.OrekitException

Specified by:
computeAcceleration in interface org.orekit.forces.ForceModel
Throws:
org.orekit.errors.OrekitException

getEventsDetectors

public org.orekit.propagation.events.EventDetector[] getEventsDetectors()

Specified by:
getEventsDetectors in interface org.orekit.forces.ForceModel


Copyright © 2017. All rights reserved.