Class SlewingPanel

java.lang.Object
org.orekit.forces.Panel
org.orekit.forces.SlewingPanel

public class SlewingPanel extends Panel
Class representing one panel of a satellite, slewing about an axis at constant rate.

It is mainly used to represent a solar array with fixed rate rotation.

The panel rotation evolves linearly according to a start position and an angular rate (which can be set to 0 for non-rotating panels, which may occur in special modes or during contingencies).

These panels are considered to be always double-sided.

Since:
3.0
Author:
Luc Maisonobe
  • Constructor Details

    • SlewingPanel

      public SlewingPanel(Vector3D rotationAxis, double rotationRate, AbsoluteDate referenceDate, Vector3D referenceNormal, double area, double drag, double liftRatio, double absorption, double reflection)
      Simple constructor.

      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.

      The panel is considered to rotate about one axis in order to make its normal point as close as possible to the target. It means the target will always be in the plane defined by the rotation axis and the panel normal.

      Parameters:
      rotationAxis - rotation axis of the panel
      rotationRate - rotation rate of the panel (rad/s)
      referenceDate - reference date for the panel rotation
      referenceNormal - direction of the panel normal at reference date in spacecraft frame
      area - panel area in m²
      drag - drag coefficient
      liftRatio - 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)
  • Method Details

    • getNormal

      public Vector3D getNormal(SpacecraftState state)
      Get panel normal in spacecraft frame.
      Specified by:
      getNormal in class Panel
      Parameters:
      state - current spacecraft state
      Returns:
      panel normal in spacecraft frame
    • getNormal

      public <T extends CalculusFieldElement<T>> FieldVector3D<T> getNormal(FieldSpacecraftState<T> state)
      Get panel normal in spacecraft frame.
      Specified by:
      getNormal in class Panel
      Type Parameters:
      T - type of the field elements
      Parameters:
      state - current spacecraft state
      Returns:
      panel normal in spacecraft frame