Package gaiasky.util.gaia
Interface Attitude

 All Known Implementing Classes:
ConcreteAttitude
public interface Attitude
This is the basic interface for all attitude representations and scanning laws. An Attitude represents the threedimensional orientation of the SRS of Gaia at a specific instant in time as well as its inertial angular rotation at that moment. Getters exists to provide the attitude and inertial rotation in various forms, including a quaternion (getQuaternion()
, a set of heliotropic or equatorial angles and corresponding time derivatives. There are also methods to obtain a number of attituderelated quantities, e.g., the celestial pointings of two FOVs and the AL and AC rates for a particular point in the FoV.


Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description double[]
getAlAcRates(double alInstrumentAngle, double acFieldAngle)
Compute the angular speed AL and AC of an inertial direction in the SRS frame, using instrument angles (phi, zeta).double[]
getAlAcRates(FOV fov, double alFieldAngle, double acFieldAngle)
Compute the angular speed AL and AC of an inertial direction in the SRS frame, using field angles (fov, eta, zeta).Vector3d[]
getFovDirections()
Get the PFoV and FFoV directions as an array of unit vectors expressed in the ICRS (or CoMRS).Quaterniond
getQuaternion()
Quaterniond
getQuaternionDot()
Vector3d
getSpinVectorInIcrs()
Get the inertial spin vector in the ICRS (or CoMRS).Vector3d
getSpinVectorInSrs()
Get the inertial spin vector in the SRS.Vector3d[]
getSrsAxes(Vector3d[] xyz)
Get the x, y, z axes of the SRS as an array of three unit vectors expressed in the ICRS (or CoMRS).long
getTime()
Get the time that this attitude is valid for as a single long value.



Method Detail

getTime
long getTime()
Get the time that this attitude is valid for as a single long value. The meaning of the time depends on the TimeContext of the AttitudeDataServer that generated the attitude. Use #getGaiaTime() to get the time as an absolute GaiaTime if needed. Returns:
 time time that the attitude is valid for

getQuaternion
Quaterniond getQuaternion()
 Returns:
 quaternion that represents the attitude

getQuaternionDot
Quaterniond getQuaternionDot()
 Returns:
 time derivative [1/day] of the quaternion returned by
getQuaternion()

getSpinVectorInSrs
Vector3d getSpinVectorInSrs()
Get the inertial spin vector in the SRS. Returns:
 spin vector in [rad/day] relative to SRS

getSpinVectorInIcrs
Vector3d getSpinVectorInIcrs()
Get the inertial spin vector in the ICRS (or CoMRS). Returns:
 spin vector in [rad/day] relative to ICRS

getFovDirections
Vector3d[] getFovDirections()
Get the PFoV and FFoV directions as an array of unit vectors expressed in the ICRS (or CoMRS). Returns:
 array of two (PFoV, FFoV3) vectors

getSrsAxes
Vector3d[] getSrsAxes(Vector3d[] xyz)
Get the x, y, z axes of the SRS as an array of three unit vectors expressed in the ICRS (or CoMRS). Returns:
 array of three (x, y, z) vectors

getAlAcRates
double[] getAlAcRates(double alInstrumentAngle, double acFieldAngle)
Compute the angular speed AL and AC of an inertial direction in the SRS frame, using instrument angles (phi, zeta). Parameters:
alInstrumentAngle
 (=AL angle phi) of the direction [rad]acFieldAngle
 (=AC angle zeta) of the direction [rad] Returns:
 twoelement double array containing the angular speed AL and AC [rad/s]

getAlAcRates
double[] getAlAcRates(FOV fov, double alFieldAngle, double acFieldAngle)
Compute the angular speed AL and AC of an inertial direction in the SRS frame, using field angles (fov, eta, zeta). Parameters:
fov
 FOV (Preceding or Following)alFieldAngle
 (=AL angle eta) of the direction [rad]acFieldAngle
 (=AC angle zeta) of the direction [rad] Returns:
 twoelement double array containing the angular speed AL and AC [rad/s]

