|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectfr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
fr.cnes.sirius.patrius.stela.forces.radiation.SRPSquaring
public class SRPSquaring
Class representing the srp gauss force model for STELA
AbstractStelaGaussContribution| Field Summary | |
|---|---|
static int |
DEFAULT_QUADRATURE_POINTS
Default quadrature points |
| Fields inherited from class fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution |
|---|
dPert |
| Constructor Summary | |
|---|---|
SRPSquaring(RadiationSensitive radiativeSpacecraft,
int quadraturePoints,
PVCoordinatesProvider sunBody,
double earthRadius)
Create an instance with an assembly and a number of points. |
|
SRPSquaring(RadiationSensitive radiativeSpacecraft,
int quadraturePoints,
PVCoordinatesProvider sunBody,
double earthRadius,
double dRef,
double pRef)
Create an instance with an assembly and a number of points. |
|
SRPSquaring(RadiationSensitive radiativeSpacecraft,
PVCoordinatesProvider sunBody,
double earthRadius)
Create an instance with an assembly and a number of points. |
|
| Method Summary | |
|---|---|
Vector3D |
computeAcceleration(StelaEquinoctialOrbit orbit,
PVCoordinates satSunVector)
Compute the acceleration due to the force. |
protected double[] |
computeInOutTrueAnom(StelaEquinoctialOrbit orbit,
PVCoordinates sunPV)
Computation of in and out true anomalies of the shadowed part of the orbit. |
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[] |
computeShortPeriods(StelaEquinoctialOrbit orbit)
Compute the short periodic variations for a given spacecraft state. |
protected double[] |
computeSunBetaPhi(StelaEquinoctialOrbit orbit,
PVCoordinates sunPV)
Computation of Sun's right ascension (φ) and declination (β) wrt the orbit plane. |
protected int |
getPolyOrder(double a0,
double a1,
double a2,
double a3,
double a4)
Determination of the order of A4*s4 + A3*s3 + A2*s2 + A1*s1 + A0 . |
protected double[] |
rootsFiltering(Complex[] roots)
Filtering of computed roots. |
protected Complex[] |
solveBiquadratic(double c4,
double c2,
double c0)
Solves the equation c4x4 + c2x2 + c0 = 0. |
protected Complex[] |
solvePolyDeg2(Complex c2,
Complex c1,
Complex c0)
Solves the complex equation c2x2 + c1x + c0 = 0. |
protected Complex[] |
solvePolyDeg3(double c3,
double c2,
double c1,
double c0)
Solves the equation c3x3 + c2x2 + c1x + c0 = 0. |
protected Complex[] |
solvePolyDeg4(double c4,
double c3,
double c2,
double c1,
double c0)
Solves the equation c4x4 + c3x3 + c2x2 + c1x + c0 = 0. |
| 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 |
| Field Detail |
|---|
public static final int DEFAULT_QUADRATURE_POINTS
| Constructor Detail |
|---|
public SRPSquaring(RadiationSensitive radiativeSpacecraft,
PVCoordinatesProvider sunBody,
double earthRadius)
radiativeSpacecraft - the radiative spacecraftsunBody - the sunearthRadius - earth's equatorial radius
public SRPSquaring(RadiationSensitive radiativeSpacecraft,
int quadraturePoints,
PVCoordinatesProvider sunBody,
double earthRadius)
radiativeSpacecraft - the radiative spacecraftquadraturePoints - the number of points for quadraturesunBody - the sunearthRadius - earth's equatorial radius
public SRPSquaring(RadiationSensitive radiativeSpacecraft,
int quadraturePoints,
PVCoordinatesProvider sunBody,
double earthRadius,
double dRef,
double pRef)
radiativeSpacecraft - the radiative spacecraftquadraturePoints - the number of points for quadraturesunBody - the sunearthRadius - earth's equatorial radiusdRef - reference distance for the solar radiation pressure (m)pRef - reference solar radiation pressure at dRef (N/m2)| Method Detail |
|---|
public double[] computePerturbation(StelaEquinoctialOrbit orbit,
OrbitNatureConverter converter)
throws OrekitException
computePerturbation in class AbstractStelaGaussContributionorbit - current orbit information: date, kinematicsconverter - mean / osculating parameters converter
OrekitException - if perturbation computation fails
public Vector3D computeAcceleration(StelaEquinoctialOrbit orbit,
PVCoordinates satSunVector)
throws OrekitException
orbit - an orbitsatSunVector - Satellite - Sun vector coordinates
orbit reference frame
OrekitException - if some specific error occurs
protected double[] computeInOutTrueAnom(StelaEquinoctialOrbit orbit,
PVCoordinates sunPV)
throws OrekitException
orbit - an orbitsunPV - Sun coordinates
OrekitException - if computation of declination and right ascension of the Sun failsprotected double[] rootsFiltering(Complex[] roots)
roots - roots of a polynomial
protected Complex[] solvePolyDeg2(Complex c2,
Complex c1,
Complex c0)
c2 - coefficient of order 2c1 - coefficient of order 1c0 - coefficient of order 0
protected Complex[] solvePolyDeg3(double c3,
double c2,
double c1,
double c0)
c3 - coefficient of order 3c2 - coefficient of order 2c1 - coefficient of order 1c0 - coefficient of order 0
protected Complex[] solveBiquadratic(double c4,
double c2,
double c0)
c4 - coefficient of order 4c2 - coefficient of order 2c0 - coefficient of order 0
protected Complex[] solvePolyDeg4(double c4,
double c3,
double c2,
double c1,
double c0)
c4 - coefficient of order 4c3 - coefficient of order 3c2 - coefficient of order 2c1 - coefficient of order 1c0 - coefficient of order 0
protected int getPolyOrder(double a0,
double a1,
double a2,
double a3,
double a4)
a0 - coefficient of order 0a1 - coefficient of order 1a2 - coefficient of order 2a3 - coefficient of order 3a4 - coefficient of order 4
protected double[] computeSunBetaPhi(StelaEquinoctialOrbit orbit,
PVCoordinates sunPV)
throws OrekitException
orbit - orbitsunPV - the sun PV coordinates
OrekitException - if sun position cannot be computed raised if beta computation fails
public double[] computeShortPeriods(StelaEquinoctialOrbit orbit)
throws OrekitException
orbit - current orbit information: date, kinematics
OrekitException - if short periods computation fails
public double[][] computePartialDerivatives(StelaEquinoctialOrbit orbit)
throws OrekitException
orbit - current orbit information: date, kinematics
OrekitException - if partial derivatives computation fails
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||