Earth Observation Mission CFI Software Pointing Software User Manual |
Class for storing the Satellite Attitude configuration parameters. More...
Public Member Functions | |
SatTransId () | |
Empty Class constructor. | |
~SatTransId () throw (CfiError) | |
Class destructor. | |
void | init (const double angle[3]) throw (CfiError) |
Initialise using angles. | |
void | init (const double matrix[3][3]) throw (CfiError) |
Initialise using matrix. | |
void | init (long angleType, const vector< long > &harmTypePitch, const vector< long > &harmTypeRoll, const vector< long > &harmTypeYaw, const vector< double > &harmCoeffPitch, const vector< double > &harmCoeffRoll, const vector< double > &harmCoeffYaw) throw (CfiError) |
Initialise satellite orbital to satellite nominal attitude mispointing angles for a given satellite with harmonics. | |
void | init (long inertialFrame, const vector< AttRec > &quaternions, double matrix[3][3]) throw (CfiError) |
Initialise using quaternions plus matrix. | |
void | init (long inertialFrame, const vector< AttRec > &quaternions, double angles[3]) throw (CfiError) |
Initialise using quaternions plus angles. | |
void | init (const TimeCorrelation &timeId, const vector< string > &files, string &auxiliaryFile, long timeInitMode, long timeRef, double time0, double time1) throw (CfiError) |
Initialise satellite attitude angles for a given satellite reading values from the attitude files. | |
MatrixModel | getMatrix () const throw (CfiError) |
Get matrix model. | |
void | setMatrix (const MatrixModel &matrixModel) throw (CfiError) |
Change matrix model. | |
AngleModel | getAngles () const throw (CfiError) |
Get angles model. | |
void | setAngles (const AngleModel &angleModel) throw (CfiError) |
Change angles model. | |
HarmonicModel | getHarmonic () const throw (CfiError) |
Get harmonic parameters of object. | |
void | setHarmonic (const HarmonicModel &harmModel) throw (CfiError) |
Change harmonic parameters of the object. | |
SatAttFileModel | getFile () const throw (CfiError) |
Get file data of object. | |
void | setFile (const SatAttFileModel &fileModel) throw (CfiError) |
Change initialisation file data of the object. | |
QuatPlusMatrixModel | getQuatPlusMatrix () const throw (CfiError) |
Get quaternions plus matrix model. | |
void | setQuatPlusMatrix (const QuatPlusMatrixModel &quatPlusMatrixModel) throw (CfiError) |
Change quaternions plus matrix model. | |
QuatPlusAnglesModel | getQuatPlusAngles () const throw (CfiError) |
Get quaternions plus angles model. | |
void | setQuatPlusAngles (const QuatPlusAnglesModel &quatPlusAnglesModel) throw (CfiError) |
Change quaternions plus angles model. | |
void | setAzElDefinition (const AzElDefinition &azElDef) throw (CfiError) |
Set azimuth/elevation definition. | |
SatId | satId () const |
Return satellite id. | |
Protected Member Functions | |
GenericId * | getId () |
Get the id. | |
void | eraseObject () throw (CfiError) |
Erase object and free memory. |
Class for storing the Satellite Attitude configuration parameters.
EECFI::SatTransId::SatTransId | ( | ) |
Empty Class constructor.
EECFI::SatTransId::~SatTransId | ( | ) | throw (CfiError) |
Class destructor.
References eraseObject().
void EECFI::SatTransId::eraseObject | ( | ) | throw (CfiError) [protected] |
Erase object and free memory.
References EECFI::CfiId::status(), EECFI::CfiId::subtractInstance(), and EECFI::CfiClass::throwWarn.
Referenced by ~SatTransId().
AngleModel EECFI::SatTransId::getAngles | ( | ) | const throw (CfiError) |
Get angles model.
References EECFI::CfiError::addMsg(), EECFI::AngleModel::angles, and EECFI::CfiClass::throwWarn.
SatAttFileModel EECFI::SatTransId::getFile | ( | ) | const throw (CfiError) |
Get file data of object.
References EECFI::StarTrackerAux::aberrCorrection, EECFI::CfiError::addMsg(), EECFI::SatAttFileModel::attData, EECFI::SatAttFileModel::auxData, EECFI::SatAttFileModel::dataType, EECFI::SatAttFileModel::fileModel, EECFI::SatAttFileModel::inertialFrame, EECFI::SatAttFileModel::maxGap, EECFI::StarTrackerAux::starTrId, EECFI::StarTrackerAux::strAttRot, EECFI::CfiClass::throwWarn, EECFI::SatAttFileModel::tmData, EECFI::SatAttFileModel::valTime0, and EECFI::SatAttFileModel::valTime1.
HarmonicModel EECFI::SatTransId::getHarmonic | ( | ) | const throw (CfiError) |
Get harmonic parameters of object.
References EECFI::CfiError::addMsg(), EECFI::HarmonicModel::angleType, EECFI::HarmonicData::harmonicCoeffPitch, EECFI::HarmonicData::harmonicCoeffRoll, EECFI::HarmonicData::harmonicCoeffYaw, EECFI::HarmonicModel::harmonicData, EECFI::HarmonicData::harmonicTypePitch, EECFI::HarmonicData::harmonicTypeRoll, EECFI::HarmonicData::harmonicTypeYaw, and EECFI::CfiClass::throwWarn.
GenericId * EECFI::SatTransId::getId | ( | ) | [protected] |
Get the id.
MatrixModel EECFI::SatTransId::getMatrix | ( | ) | const throw (CfiError) |
Get matrix model.
References EECFI::CfiError::addMsg(), EECFI::MatrixModel::attMatrix, and EECFI::CfiClass::throwWarn.
QuatPlusAnglesModel EECFI::SatTransId::getQuatPlusAngles | ( | ) | const throw (CfiError) |
Get quaternions plus angles model.
References EECFI::CfiError::addMsg(), EECFI::QuatPlusAnglesModel::angles, EECFI::QuatPlusAnglesModel::inertialFrame, EECFI::QuatPlusAnglesModel::quat, and EECFI::CfiClass::throwWarn.
QuatPlusMatrixModel EECFI::SatTransId::getQuatPlusMatrix | ( | ) | const throw (CfiError) |
Get quaternions plus matrix model.
References EECFI::CfiError::addMsg(), EECFI::QuatPlusMatrixModel::inertialFrame, EECFI::QuatPlusMatrixModel::quat, EECFI::QuatPlusMatrixModel::rotMatrix, and EECFI::CfiClass::throwWarn.
void EECFI::SatTransId::init | ( | const double | matrix[3][3] | ) | throw (CfiError) |
Initialise using matrix.
matrix | Rotation matrix. |
void EECFI::SatTransId::init | ( | long | inertialFrame, | |
const vector< AttRec > & | quaternions, | |||
double | matrix[3][3] | |||
) | throw (CfiError) |
Initialise using quaternions plus matrix.
inertialFrame | Inertial frame (CoordinateSystemsEnum). | |
quaternions | Quaternions that give the rotation from the inertial reference frame to the frame based on the satellite. | |
matrix | Rotation matrix from the frame based on the satellite to the satellite frame. |
void EECFI::SatTransId::init | ( | long | inertialFrame, | |
const vector< AttRec > & | quaternions, | |||
double | angles[3] | |||
) | throw (CfiError) |
Initialise using quaternions plus angles.
inertialFrame | Inertial frame (CoordinateSystemsEnum). | |
quaternions | Quaternions that give the rotation from the inertial reference frame to the frame based on the satellite. | |
angles | Angles that define the rotation from the frame based on the satellite to the satellite frame. |
void EECFI::SatTransId::init | ( | const double | angle[3] | ) | throw (CfiError) |
Initialise using angles.
angle | Rotation angles.
. |
void EECFI::SatTransId::init | ( | const TimeCorrelation & | timeId, | |
const vector< string > & | files, | |||
string & | auxiliaryFile, | |||
long | timeInitMode, | |||
long | timeRef, | |||
double | time0, | |||
double | time1 | |||
) | throw (CfiError) |
Initialise satellite attitude angles for a given satellite reading values from the attitude files.
In order to read files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.
timeId | Time correlations. | |
files | Filenames of the reference data files. In case multiple files are used, the files should be time ordered. The supported Attitude File formats are the Generic Attitude File (described in [DAT_SUM]) and Star Tracker files. If multiple files are used, Generic Attitude Files and Star Tracker files cannot be given to the function as part of the same list. When using Star-Tracker files, the function assumes that all the input files belong to the same Star-Tracker. As a consequence of this assumption only the Star-Tracker identifier of the first file provided in the list is read. Note that the Star-Tracker identification number should be either 1, 2 or 3 (no internal check is performed). | |
auxiliaryFile | Auxiliary file with StarTracker misalignment matrices. | |
timeInitMode | Flag for selecting the time range of the initialisation (XPCFI_SEL_TIME/XPCFI_SEL_FILE). | |
timeRef | Time reference (TimeRefPointingEnum). | |
time0 | Start of the time range [Decimal days (Processing format)]. | |
time1 | Stop of the time range [Decimal days (Processing format)]. |
void EECFI::SatTransId::init | ( | long | angleType, | |
const vector< long > & | harmTypePitch, | |||
const vector< long > & | harmTypeRoll, | |||
const vector< long > & | harmTypeYaw, | |||
const vector< double > & | harmCoefPitch, | |||
const vector< double > & | harmCoefRoll, | |||
const vector< double > & | harmCoefYaw | |||
) | throw (CfiError) |
Initialise satellite orbital to satellite nominal attitude mispointing angles for a given satellite with harmonics.
The Attitude::compute and Attitude::changeFrame functions will then compute the values as follows:
angleType | Type of angle (given by PointingAngleTypeEnum). | |
harmTypePitch | Type of coefficients:
. | |
harmTypeRoll | Type of coefficients (bias, sinus, cosinus, see documentation). | |
harmTypeYaw | Type of coefficients (bias, sinus, cosinus, see documentation). | |
harmCoefPitch | Bias, sinus and cosinus coefficients for the pitch angle. | |
harmCoefRoll | Bias, sinus and cosinus coefficients for the roll angle. | |
harmCoefYaw | Bias, sinus and cosinus coefficients for the yaw angle. |
References EECFI::CfiError::addMsg().
SatId EECFI::SatTransId::satId | ( | ) | const |
Return satellite id.
void EECFI::SatTransId::setAngles | ( | const AngleModel & | angleModel | ) | throw (CfiError) |
void EECFI::SatTransId::setAzElDefinition | ( | const AzElDefinition & | azElDef | ) | throw (CfiError) |
Set azimuth/elevation definition.
azElDef | Definition of azimuth and elevation. |
void EECFI::SatTransId::setFile | ( | const SatAttFileModel & | fileModel | ) | throw (CfiError) |
Change initialisation file data of the object.
fileModel | File model data. |
References EECFI::CfiError::addMsg().
void EECFI::SatTransId::setHarmonic | ( | const HarmonicModel & | harmonicModel | ) | throw (CfiError) |
Change harmonic parameters of the object.
harmonicModel | Harmonic model data. |
References EECFI::CfiError::addMsg().
void EECFI::SatTransId::setMatrix | ( | const MatrixModel & | matrixModel | ) | throw (CfiError) |
Change matrix model.
matrixModel | Matrix model data. |
References EECFI::CfiError::addMsg().
void EECFI::SatTransId::setQuatPlusAngles | ( | const QuatPlusAnglesModel & | quatPlusAng | ) | throw (CfiError) |
Change quaternions plus angles model.
quatPlusAng | Quaternion plus angles model data. |
References EECFI::CfiError::addMsg().
void EECFI::SatTransId::setQuatPlusMatrix | ( | const QuatPlusMatrixModel & | quatPlusMat | ) | throw (CfiError) |
Change quaternions plus matrix model.
quatPlusMat | Quaternion plus matrix model data. |
References EECFI::CfiError::addMsg().