org.orekit.attitudes
Class GroundPointingWrapper

java.lang.Object
  extended by org.orekit.attitudes.GroundPointing
      extended by org.orekit.attitudes.GroundPointingWrapper
All Implemented Interfaces:
java.io.Serializable, AttitudeLaw
Direct Known Subclasses:
YawCompensation, YawSteering

public abstract class GroundPointingWrapper
extends GroundPointing

This class leverages common parts for compensation modes around ground pointing attitudes.

Version:
$Revision:1665 $ $Date:2008-06-11 12:12:59 +0200 (mer., 11 juin 2008) $
Author:
Véronique Pommier-Maurussane, Luc Maisonobe
See Also:
Serialized Form

Constructor Summary
GroundPointingWrapper(GroundPointing groundPointingLaw)
          Creates a new instance.
 
Method Summary
 Attitude getAttitude(Orbit orbit)
          Compute the attitude corresponding to an orbital state.
 Attitude getBaseState(Orbit orbit)
          Compute the base system state at given date, without compensation.
abstract  org.apache.commons.math.geometry.Rotation getCompensation(Orbit orbit, Attitude base)
          Compute the compensation rotation at given date.
 GroundPointing getGroundPointingLaw()
          Get the attitude rotation.
protected  org.apache.commons.math.geometry.Vector3D getTargetPoint(Orbit orbit, Frame frame)
          Compute the target point in specified frame.
protected  PVCoordinates getTargetPV(Orbit orbit, Frame frame)
          Compute the target point position/velocity in specified frame.
 
Methods inherited from class org.orekit.attitudes.GroundPointing
getBodyFrame
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GroundPointingWrapper

public GroundPointingWrapper(GroundPointing groundPointingLaw)
Creates a new instance.

Parameters:
groundPointingLaw - ground pointing attitude law without compensation
Method Detail

getGroundPointingLaw

public GroundPointing getGroundPointingLaw()
Get the attitude rotation.

Returns:
attitude satellite rotation from reference frame.

getTargetPoint

protected org.apache.commons.math.geometry.Vector3D getTargetPoint(Orbit orbit,
                                                                   Frame frame)
                                                            throws OrekitException
Compute the target point in specified frame.

Specified by:
getTargetPoint in class GroundPointing
Parameters:
orbit - orbit state
frame - frame in which observed ground point should be provided
Returns:
observed ground point position in specified frame
Throws:
OrekitException - if some specific error occurs, such as no target reached

getTargetPV

protected PVCoordinates getTargetPV(Orbit orbit,
                                    Frame frame)
                             throws OrekitException
Compute the target point position/velocity in specified frame.

The default implementation use a simple two points finite differences scheme, it may be replaced by more accurate models in specialized implementations.

Overrides:
getTargetPV in class GroundPointing
Parameters:
orbit - orbit state
frame - frame in which observed ground point should be provided
Returns:
observed ground point position/velocity in specified frame
Throws:
OrekitException - if some specific error occurs, such as no target reached

getBaseState

public Attitude getBaseState(Orbit orbit)
                      throws OrekitException
Compute the base system state at given date, without compensation.

Parameters:
orbit - orbit state for which attitude is requested
Returns:
satellite base attitude state, i.e without compensation.
Throws:
OrekitException - if some specific error occurs

getAttitude

public Attitude getAttitude(Orbit orbit)
                     throws OrekitException
Compute the attitude corresponding to an orbital state.

Specified by:
getAttitude in interface AttitudeLaw
Overrides:
getAttitude in class GroundPointing
Parameters:
orbit - orbit state for which attitude is requested
Returns:
attitude attitude on the specified orbit, using orbit inertial frame as its reference frame
Throws:
OrekitException - if attitude cannot be computed

getCompensation

public abstract org.apache.commons.math.geometry.Rotation getCompensation(Orbit orbit,
                                                                          Attitude base)
                                                                   throws OrekitException
Compute the compensation rotation at given date.

Parameters:
orbit - orbit state for which compensation is requested
base - base satellite attitude in given frame.
Returns:
compensation rotation at date, i.e rotation between non compensated attitude state and compensated state.
Throws:
OrekitException - if some specific error occurs


Copyright © 2002-2010 CS Communication & Systèmes. All Rights Reserved.