Attitude

This package provides classes to represent simple attitudes.

Attitudes Presentation

Some force models such as the atmospheric drag or the maneuvers need to know the spacecraft orientation in inertial frame. OREKIT uses a simple container for Attitude which includes both the geometric part (i.e. rotation) and the kinematic part (i.e. the instant spin axis). The components held by this container allow to convert vectors from inertial frame to spacecraft frame along with their derivatives. This container is similar in spirit to the various extensions of the abstract Orbit class: it represents a state at a specific instant.

In order to represent attitude evolution in time, the AttitudeLaw interface is available. At upper level, attitude laws defined by a ground pointing law are also available. This corresponds to "real" situation where satellite attitude law is defined in order to perform a mission, i.e. pointing a specified point/area. All these laws are gathered around an abstract class called "GroundPointing". At last, there exists attitude laws wrapping a "base" attitude law, and adding to this base attitude law a complementary rotation in order to fulfill specific mission constraints.

The attitude package is organized as follows :

Description of attitudes laws

"Basic" attitude laws

  • inertial law, which represents an inertial attitude law, perfectly aligned with the EME2000 frame.
  • celestial body pointed, i.e satellite pointing axis directed towards given celestial body.
  • spin stabilized law, which is handled as a wrappers for an underlying non-rotating law. This underlying law is typically an instance of CelestialBodyPointed with the pointing axis equal to the rotation axis, but can in fact be anything...
  • lof offset law, defined as a given angular offset from local orbital frame at given date.

Ground pointing laws

These classes are designed to represent attitude laws used to fulfill pointing missions. Several pointing laws are modelized :

  • body center pointing law, i.e satellite pointing axis directed towards reference body frame center.
  • lof offset pointing, defined by a lof offset simple attitude law and completed with ground pointing corresponding functions.
  • nadir pointing, i.e. satellite pointing axis aligned on subtrack point vertical direction.
  • target pointing, i.e. satellite pointing axis directed towards given point on reference body shape.
  • ground pointing wrapper, which is an abstract class used for complex pointing laws described herebelow.

All these ground pointing laws are relative to corresponding body frame, which is used for their construction. Depending on their nature, each ground pointing law also have their own specific construction arguments. For each of these laws, satellite attitude state at any time in any given frame can be computed, as well as observed ground point, or target in body frame.

"Complex" pointing laws

Several classes have been implemented in order to represent some attitude law in which a "base" attitude law is used, and added a "complementary" rotation in order to fulfill specific mission constraints. They are gathered under abstract class GroundPointingWrapper . Up to now, implemented laws of this kind are:

  • yaw compensation law: this law is used to fulfill ground observation constraints which are to reduce geometrical distortion. Yaw angle is changed a little from the basic ground pointing attitude, so that the apparent motion of ground points is along a prescribed axis (orthogonal to the optical sensors rows), taking into account all effects. It is the impact of earth proper rotation on ground points that is compensated.
  • yaw steering law: this law is mainly used for low Earth orbiting satellites with no missions-related constraints on yaw angle. It sets the yaw angle in such a way the solar arrays have maximal lightning without changing the roll and pitch.

Authors

  • Luc Maisonobe
  • Véronique Pommier-Maurussane