public abstract class Panel extends Object
FixedPanel
,
PointingPanel
,
SlewingPanel
Modifier | Constructor and Description |
---|---|
protected |
Panel(double area,
boolean doubleSided,
double drag,
double liftRatio,
double absorption,
double reflection)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
double |
getAbsorption()
Get radiation pressure absorption coefficient.
|
double |
getArea()
Get panel area.
|
double |
getDrag()
Get drag coefficient.
|
double |
getLiftRatio()
Get drag lift ratio.
|
abstract <T extends org.hipparchus.CalculusFieldElement<T>> |
getNormal(FieldSpacecraftState<T> state)
Get panel normal in spacecraft frame.
|
abstract org.hipparchus.geometry.euclidean.threed.Vector3D |
getNormal(SpacecraftState state)
Get panel normal in spacecraft frame.
|
double |
getReflection()
Get radiation pressure specular reflection coefficient.
|
boolean |
isDoubleSided()
Check if the panel is double-sided (typically solar arrays).
|
protected Panel(double area, boolean doubleSided, double drag, double liftRatio, double absorption, double reflection)
As the sum of absorption coefficient, specular reflection coefficient and diffuse reflection coefficient is exactly 1, only the first two coefficients are needed here, the third one is deduced from the other ones.
area
- panel area in m²doubleSided
- if true, the panel is double-sided (typically solar arrays),
otherwise it is the side of a box and only relevant for flux coming from its
positive normaldrag
- drag coefficientliftRatio
- drag lift ratio (proportion between 0 and 1 of atmosphere modecules
that will experience specular reflection when hitting spacecraft instead
of experiencing diffuse reflection, hence producing lift)absorption
- radiation pressure absorption coefficient (between 0 and 1)reflection
- radiation pressure specular reflection coefficient (between 0 and 1)public double getArea()
public boolean isDoubleSided()
public double getDrag()
public double getLiftRatio()
public double getAbsorption()
public double getReflection()
public abstract org.hipparchus.geometry.euclidean.threed.Vector3D getNormal(SpacecraftState state)
state
- current spacecraft statepublic abstract <T extends org.hipparchus.CalculusFieldElement<T>> org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> getNormal(FieldSpacecraftState<T> state)
T
- type of the field elementsstate
- current spacecraft stateCopyright © 2002-2023 CS GROUP. All rights reserved.