Class SolarRadiationPressure
- All Implemented Interfaces:
ForceModel,RadiationForceModel,EventDetectorsProvider,ParameterDriversProvider
Since Orekit 11.0, it is possible to take into account
the eclipses generated by Moon in the solar radiation
pressure force model using the
AbstractRadiationForceModel.addOccultingBody(ExtendedPositionProvider, double)
method.
Example:
SolarRadiationPressure srp =
new SolarRadiationPressure(CelestialBodyFactory.getSun(), Constants.EIGEN5C_EARTH_EQUATORIAL_RADIUS,
new IsotropicRadiationClassicalConvention(50.0, 0.5, 0.5));
srp.addOccultingBody(CelestialBodyFactory.getMoon(), Constants.MOON_EQUATORIAL_RADIUS);
- Author:
- Fabien Maussion, Édouard Delente, Véronique Pommier-Maurussane, Pascal Parraud
-
Field Summary
Fields inherited from interface org.orekit.propagation.events.EventDetectorsProvider
DATATION_ACCURACY -
Constructor Summary
ConstructorsConstructorDescriptionSolarRadiationPressure(double dRef, double pRef, ExtendedPositionProvider sun, OneAxisEllipsoid centralBody, RadiationSensitive spacecraft) Constructor with default eclipse detection settings.SolarRadiationPressure(double dRef, double pRef, ExtendedPositionProvider sun, OneAxisEllipsoid centralBody, RadiationSensitive spacecraft, EventDetectionSettings eclipseDetectionSettings) Complete constructor.SolarRadiationPressure(ExtendedPositionProvider sun, OneAxisEllipsoid centralBody, RadiationSensitive spacecraft) Simple constructor with default reference values. -
Method Summary
Modifier and TypeMethodDescription<T extends CalculusFieldElement<T>>
FieldVector3D<T> acceleration(FieldSpacecraftState<T> s, T[] parameters) Compute acceleration.acceleration(SpacecraftState s, double[] parameters) Compute acceleration.<T extends CalculusFieldElement<T>>
TgetLightingRatio(FieldSpacecraftState<T> state) Get the lighting ratio ([0-1]).doublegetLightingRatio(SpacecraftState state) Get the lighting ratio ([0-1]).Get the drivers for parameters.Getter for radiation-sensitive spacecraft.Methods inherited from class org.orekit.forces.radiation.AbstractRadiationForceModel
addOccultingBody, addOccultingBody, getDefaultEclipseDetectionSettings, getEventDetectors, getFieldEventDetectors, getGeneralEclipseAngles, getGeneralEclipseAngles, getOccultingBodiesMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.propagation.events.EventDetectorsProvider
getDateDetector, getEventDetectors, getFieldDateDetector, getFieldEventDetectorsMethods inherited from interface org.orekit.forces.ForceModel
addContribution, addContribution, dependsOnAttitudeRate, getMassDerivative, getMassDerivative, init, initMethods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupportedMethods inherited from interface org.orekit.forces.radiation.RadiationForceModel
dependsOnPositionOnly
-
Constructor Details
-
SolarRadiationPressure
public SolarRadiationPressure(ExtendedPositionProvider sun, OneAxisEllipsoid centralBody, RadiationSensitive spacecraft) Simple constructor with default reference values.When this constructor is used, the reference values are:
- dref = 149597870000.0 m
- pref = 4.56 10-6 N/m²
- Parameters:
sun- Sun modelcentralBody- central body shape model (for umbra/penumbra computation)spacecraft- the object physical and geometrical information- Since:
- 12.0
-
SolarRadiationPressure
public SolarRadiationPressure(double dRef, double pRef, ExtendedPositionProvider sun, OneAxisEllipsoid centralBody, RadiationSensitive spacecraft) Constructor with default eclipse detection settings.Note that reference solar radiation pressure
pRefin N/m² is linked to solar flux SF in W/m² using formula pRef = SF/c where c is the speed of light (299792458 m/s). So at 1UA a 1367 W/m² solar flux is a 4.56 10-6 N/m² solar radiation pressure.- Parameters:
dRef- reference distance for the solar radiation pressure (m)pRef- reference solar radiation pressure at dRef (N/m²)sun- Sun modelcentralBody- central body shape model (for umbra/penumbra computation)spacecraft- the object physical and geometrical information- Since:
- 12.0
-
SolarRadiationPressure
public SolarRadiationPressure(double dRef, double pRef, ExtendedPositionProvider sun, OneAxisEllipsoid centralBody, RadiationSensitive spacecraft, EventDetectionSettings eclipseDetectionSettings) Complete constructor.Note that reference solar radiation pressure
pRefin N/m² is linked to solar flux SF in W/m² using formula pRef = SF/c where c is the speed of light (299792458 m/s). So at 1UA a 1367 W/m² solar flux is a 4.56 10-6 N/m² solar radiation pressure.- Parameters:
dRef- reference distance for the solar radiation pressure (m)pRef- reference solar radiation pressure at dRef (N/m²)sun- Sun modelcentralBody- central body shape model (for umbra/penumbra computation)spacecraft- the object physical and geometrical informationeclipseDetectionSettings- event detection settings for penumbra and umbra- Since:
- 13.0
-
-
Method Details
-
getRadiationSensitiveSpacecraft
Getter for radiation-sensitive spacecraft.- Returns:
- radiation-sensitive model
- Since:
- 12.1
-
acceleration
Compute acceleration.- Parameters:
s- current state information: date, kinematics, attitudeparameters- values of the force model parameters at state date, only 1 value for each parameterDriver- Returns:
- acceleration in same frame as state
-
acceleration
public <T extends CalculusFieldElement<T>> FieldVector3D<T> acceleration(FieldSpacecraftState<T> s, T[] parameters) Compute acceleration.- Type Parameters:
T- type of the elements- Parameters:
s- current state information: date, kinematics, attitudeparameters- values of the force model parameters at state date, only 1 value for each parameterDriver- Returns:
- acceleration in same frame as state
-
getLightingRatio
Get the lighting ratio ([0-1]).- Parameters:
state- spacecraft state- Returns:
- lighting ratio
- Since:
- 7.1
-
getLightingRatio
Get the lighting ratio ([0-1]).- Type Parameters:
T- extends CalculusFieldElement- Parameters:
state- spacecraft state- Returns:
- lighting ratio
- Since:
- 7.1
-
getParametersDrivers
Get the drivers for parameters.- Returns:
- drivers for parameters
-