DEIMOS
Earth Observation Mission CFI Software
Orbit Software User Manual
ESA

EECFI::OrbitFunc Class Reference

Class grouping several static functions. More...

Inheritance diagram for EECFI::OrbitFunc:
EECFI::CfiClass

List of all members.

Public Member Functions

 OrbitFunc ()
 Empty constructor.
 ~OrbitFunc ()
 Destructor.

Static Public Member Functions

static string genOef (string oef, string osf, string pof, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate an orbit event file.
static string genOsf (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long absOrbitNum, long cycleNumber, long phaseNumber, long repeatCycle, long cycleLength, double anxLong, long driftMode, double inclination, double mlstDrift, double mlst, double date, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate an orbit scenario file.
static string genOsf (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, double date, const OrbitInfo &missionInfo, const RefOrbitInfo &refOrbitInfo, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate an orbit scenario file (with support for MLST non linear drift).
static string genOsfAppendOrbitChange (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, string inputFilename, long absOrbitNum, long repeatCycle, long cycleLength, double anxLong, long driftMode, double inclination, double mlstDrift, double mlst, long phaseIncrement, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Append an orbit change to the OSF.
static string genOsfAppendOrbitChange (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, string inputFilename, long absOrbitNum, const RefOrbitInfo &refOrbitInfo, long phaseIncrement, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Append an orbit change to the OSF (with support for MLST non linear drift).
static string genOsfChangeRepeatCycle (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, string inputFileName, long absOrbitNum, long searchDirection, long repeatCycle, long cycleLength, double anxLong, long driftMode, double inclination, double mlstDrift, long phaseIncrement, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Change repeat cycle in an OSF.
static string genOsfChangeRepeatCycle (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, string inputFileName, long absOrbitNum, long searchDirection, const RefOrbitInfo &refOrbitInfo, long phaseIncrement, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Change repeat cycle in an OSF (with support for MLST non linear drift).
static string genOsfAddDriftCycle (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, string inputFileName, long driftStartOrbit, long driftStopOrbit, double driftStopAnxLong, double maxAltitudeChange, long phaseIncStart, long phaseIncStop, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Add an orbital chabe for an orbit manoeuvre.
static string genPof (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long timeRef, long timeInit, double startTime, double stopTime, long startOrbit, long stopOrbit, double osvLocation, long refFiletype, string referenceFile, string preciseConfFile, long pofFileType, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate predicted orbit file.
static string genRof (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long timeRef, long timeInit, double startTime, double stopTime, long startOrbit, long stopOrbit, double osvInterval, long osvPrecise, long refFiletype, string referenceFile, string preciseConfFile, long rofFileType, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate restituted orbit file.
static string genRofPrototype (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long timeRef, long propagModel, double time0, long orbit0, long timeInitMode, double startTime, long startOrbit, double stopTime, long stopOrbit, long driftMode, double ascmlstDrift, double inclination, long repRef, long cycRef, double rLong, double ascmlst, double osvInterval, long rofFileType, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate restituted orbit file prototype.
static string genDnf (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long timeRef, long timeInit, double startTime, double stopTime, long startOrbit, long stopOrbit, double osvInterval, long osvPrecise, long refFiletype, string referenceFile, long dnfFileType, string preciseConfFile, string ctrlFile, string outputDir, string outputFileName, string fileClass, long versionNumber, string fhSystem) throw (CfiError)
 Generate a DORIS Navigator file.
static string genTle (const SatId &satId, long fitMode, const TimeCorrelation &timeCor, long timeRef, long timeMode, double startTime, double stopTime, long startOrbit, long stopOrbit, string referenceFile, string outputFileName) throw (CfiError)
 Generate Two Line Elements file.
static vector< double > checkOsf (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, string osfFile, long transitionNumber, vector< double > threshold) throw (CfiError)
 Check the consistency of an orbit scenario file.
static vector< pair< double,
double > > 
checkOef (const SatId &satId, const ModelId &modelId, const TimeCorrelation &timeCor, long timeRef, long timeMode, double startTime, double stopTime, long startOrbit, long stopOrbit, string oefFile, const vector< double > threshold) throw (CfiError)
 Check the consistency of an orbit event file.
static long orbitDataFilter (vector< OrbitFile > &osvDataIn, OrbitDataFilterConfiguration &filterSettings, vector< OrbitFile > &osvDataOut, OrbitDataFilterReport &filterReport) throw (CfiError)
 Filter OSV samples based on the argument settings (Orbit Files).
static long orbitDataFilter (vector< DorisFile > &osvDataIn, OrbitDataFilterConfiguration &filterSettings, vector< DorisFile > &osvDataOut, OrbitDataFilterReport &filterReport) throw (CfiError)
 Filter OSV samples based on the argument settings (Doris Files).

Detailed Description

Class grouping several static functions.


Constructor & Destructor Documentation

EECFI::OrbitFunc::OrbitFunc (  ) 

Empty constructor.

EECFI::OrbitFunc::~OrbitFunc (  ) 

Destructor.


Member Function Documentation

vector< pair< double, double > > EECFI::OrbitFunc::checkOef ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
long  timeRef,
long  timeMode,
double  startTime,
double  stopTime,
long  startOrbit,
long  stopOrbit,
string  oefFile,
const vector< double >  threshold 
) throw (CfiError) [static]

Check the consistency of an orbit event file.

In order to read files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
timeRef Time reference of input times (TimeRefOrbitEnum).
timeMode Flag for the input time range selection: whole file, time or orbits.
startTime Start time for the time range to be checked.
stopTime Stop time for the time range to be checked.
startOrbit Start orbit for the orbit range to be checked. Allowed range: file range.
stopOrbit Stop orbit for the orbit range to be checked. Allowed range: file range.
oefFile Orbit Event file to be checked.
threshold Vector with the thresholds of the quantities ckecked (must have length XOCFI_NUM_CHECK_PARAMS). Positions:
[0] Threshold for the time at ANX [s]. Allowed range: > 0.
[1] Threshold for the ANX longitude [deg]. Allowed range: > 0.
[2] Threshold for the MLST [s]. Allowed range: > 0.
[3] Threshold for the osculating semi-axis major [m]. Allowed range: > 0.
[4] Threshold for the osculating inclination [deg]. Allowed range: > 0.
[5] Threshold for the nodal period [s]. Allowed range: > 0.
Returns:
Vector of pairs with the differences in the checked quatities and the rms..
vector< double > EECFI::OrbitFunc::checkOsf ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
string  osfFile,
long  transitionNumber,
vector< double >  threshold 
) throw (CfiError) [static]

Check the consistency of an orbit scenario file.

In order to read files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Mode Id.
timeCor Time correlations.
osfFile Orbit Scenario file to be checked.
transitionNumber Number of the transition to be checked; the last transition is checked if it is 0. Allowed range: >1, <=Number of transitions.
threshold Vector with the thresholds of the quantities ckecked (must have length XOCFI_NUM_CHECK_PARAMS). Positions:
[0] Threshold for the time at ANX [s]. Allowed range: > 0.
[1] Threshold for the ANX longitude [deg]. Allowed range: > 0.
[2] Threshold for the MLST [s]. Allowed range: > 0.
[3] Threshold for the osculating semi-axis major [m]. Allowed range: > 0.
[4] Threshold for the osculating inclination [deg]. Allowed range: > 0.
[5] Threshold for the nodal period [s]. Allowed range: > 0.
Returns:
Vector with the differences in the checked quatities.
string EECFI::OrbitFunc::genDnf ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
long  timeRef,
long  timeInit,
double  startTime,
double  stopTime,
long  startOrbit,
long  stopOrbit,
double  osvInterval,
long  osvPrecise,
long  refFiletype,
string  referenceFile,
long  dnfFileType,
string  preciseConfFile,
string  ctrlFile,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate a DORIS Navigator file.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
timeRef Time reference of inputs.
timeInit Flag for selecting the time range of the initialisation (XOCFI_SEL_ORBIT or XOCFI_SEL_TIME).
startTime Processing time corresponding to the beginning of the required interval (MJD2000).
stopTime Processing time corresponding to the end of the required interval (MJD2000).
startOrbit Orbit number corresponding to the beginning of the required interval. Allowed range: >= 1.
stopOrbit Orbit number corresponding to the end of the required interval. Allowed range: >= 1.
osvInterval Interval between consecutive state vector [secs].
This parameter should be coherent with the osvPrecise flag (see below). If osvPrecise is set to:

  • XOCFI_OSV_PRECISE_MINUTE: osv will be forced to be a multiple of 60 seconds.
  • XOCFI_OSV_PRECISE_TEN_SECONDS: osv will be forced to be a multiple of 10 seconds. Allowed range: >= 0.

. Allowed range: >= 0.

osvPrecise Flag to indicatte if state vectors should be placed at exact time locations (OsvPreciseEnum).
refFiletype File type of the input reference file. (Note: When generating a ROF file from a DORIS NAVIGATOR file, the input times should be expresed in UTC).
referenceFile Reference file name.
dnfFileType File type of the output reference file (XOCFI_REF_FILETYPE_DORIS_NAV).
preciseConfFile Numerical propagator configuration file.
ctrlFile Control file in xml format. This file contains the corrections for position and velocity in the along, across and radial directions together with the position accuracy. If empty string (��), no corrections will be performed and the accuracy (quality index in the DNF)will be set to 1.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated DNF file name.
string EECFI::OrbitFunc::genOef ( string  oef,
string  osf,
string  pof,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate an orbit event file.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
oef OEF file name. If it is "", the name is generated automatically.
osf Orbit Scenario File name.
pof Predicted Orbit file name.
fileClass File class for output file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated OEF file name.
string EECFI::OrbitFunc::genOsf ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
long  absOrbitNum,
long  cycleNumber,
long  phaseNumber,
long  repeatCycle,
long  cycleLength,
double  anxLong,
long  driftMode,
double  inclination,
double  mlstDrift,
double  mlst,
double  date,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate an orbit scenario file.

This method is deprecated. Use the one that uses a RefOrbitInfo object to introduce orbital parameters.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
absOrbitNum Orbit number in OSF first orbit change. Allowed range: >= 1.
cycleNumber Cycle number in OSF first orbit change. Allowed range: >= 1.
phaseNumber Phase number in OSF first orbit change. Allowed range: >= 1.
repeatCycle Repeat cycle of the reference orbit. Allowed range: >= 1.
cycleLength Cycle length of the reference orbit. Allowed range: >= 14.
anxLong Reference orbit ascending node crossing longitude [deg]. Allowed range: [-180, 180].
driftMode Flag to select between drift in mlst and inclination as input characterization of the reference orbit. Allowed range: [0, 1].
inclination If driftMode=XOCFI_NOSUNSYNC_INCLINATION, inclination of the reference orbit [deg]. Allowed range: [0, 180).
mlstDrift If driftMode=XOCFI_NOSUNSYNC_DRIFT, drift in mlst of the reference orbit [seconds/day].
MLST[N+1]=MLST[N]+MLST-drift.
mlst Mean local solar time [decimal hours]. Allowed range: [0, 24).
date ANX date [decimal days].
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genOsf ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
double  date,
const OrbitInfo missionInfo,
const RefOrbitInfo refOrbitInfo,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate an orbit scenario file (with support for MLST non linear drift).

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
date ANX date [decimal days].
missionInfo Orbit information.
refOrbitInfo Orbital parameters, including support for MLST non linear drift.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genOsfAddDriftCycle ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
string  inputFileName,
long  driftStartOrbit,
long  driftStopOrbit,
double  driftStopAnxLong,
double  maxAltitudeChange,
long  phaseIncStart,
long  phaseIncStop,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Add an orbital chabe for an orbit manoeuvre.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
inputFileName Input OSF to which the orbit changes are appended.
driftStartOrbit Absolute orbit number at the drift start.
driftStopOrbit Absolute orbit number at the drift stop. Allowed range: > driftStartOrbit.
driftStopAnxLong Drift stop orbit ascending node crossing longitude [deg]. Allowed range: [-180, 180].
maxAltitudeChange Maximum variation in altitude between the reference orbit and the drift orbit [m].
phaseIncStart Phase increment at drift start:
If 1 then phase[N+1] = phase[N] + 1;
If 0 then phase[N+1] = phase[N]. Allowed range: [0, 1].
phaseIncStop Phase increment at drift stop:
If 1 then phase[N+1] = phase[N] + 1;
If 0 then phase[N+1] = phase[N]. Allowed range: [0, 1].
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genOsfAppendOrbitChange ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
string  inputFileName,
long  absOrbitNum,
long  repeatCycle,
long  cycleLength,
double  anxLong,
long  driftMode,
double  inclination,
double  mlstDrift,
double  mlst,
long  phaseIncrement,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Append an orbit change to the OSF.

This method is deprecated. Use the one that uses a RefOrbitInfo object to introduce orbital parameters.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
inputFileName Input OSF to which the orbit change is appended.
absOrbitNum Orbit number in OSF first orbit change.
repeatCycle Repeat cycle of the reference orbit. Allowed range: >= 1.
cycleLength Cycle length of the reference orbit. Allowed range: >= 14.
anxLong Reference orbit ascending node crossing longitude [deg]. Allowed range: [-180, 180].
driftMode Flag to select between drift in mlst and inclination as input characterization of the reference orbit. Allowed range: [0, 1].
inclination If driftMode=XOCFI_NOSUNSYNC_INCLINATION, inclination of the reference orbit [deg]. Allowed range: [0, 180).
mlstDrift If driftMode=XOCFI_NOSUNSYNC_DRIFT, drift in mlst of the reference orbit [seconds/day].
MLST[N+1]=MLST[N]+MLST-drift.
mlst Mean local solar time [decimal hours]. Allowed range: [0, 24).
phaseIncrement Flag.
If 0 -> phase [N+1] = phase[N]
If 1 -> phase [N+1] = phase[N] + 1.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genOsfAppendOrbitChange ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
string  inputFileName,
long  absOrbitNum,
const RefOrbitInfo refOrbitInfo,
long  phaseIncrement,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Append an orbit change to the OSF (with support for MLST non linear drift).

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
inputFileName Input OSF to which the orbit change is appended.
absOrbitNum Orbit number in OSF first orbit change.
refOrbitInfo Orbital parameters, including support for MLST non linear drift.
phaseIncrement Flag.
If 0 -> phase [N+1] = phase[N]
If 1 -> phase [N+1] = phase[N] + 1.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genOsfChangeRepeatCycle ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
string  inputFileName,
long  absOrbitNum,
long  searchDirection,
long  repeatCycle,
long  cycleLength,
double  anxLong,
long  driftMode,
double  inclination,
double  mlstDrift,
long  phaseIncrement,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Change repeat cycle in an OSF.

This method is deprecated. Use the one that uses a RefOrbitInfo object to introduce orbital parameters.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
inputFileName Input OSF to which the orbit change is appended.
absOrbitNum Orbit number in OSF first orbit change.
searchDirection Search for optimum transition after or before absOrbitNum.
repeatCycle Repeat cycle of the reference orbit. Allowed range: >= 1.
cycleLength Cycle length of the reference orbit. Allowed range: >= 14.
anxLong Reference orbit ascending node crossing longitude [deg]. Allowed range: [-180, 180].
driftMode Flag to select between drift in mlst and inclination as input characterization of the reference orbit. Allowed range: [0, 1].
inclination If driftMode=XOCFI_NOSUNSYNC_INCLINATION, inclination of the reference orbit [deg]. Allowed range: [0, 180).
mlstDrift If driftMode=XOCFI_NOSUNSYNC_DRIFT, drift in mlst of the reference orbit [seconds/day].
MLST[N+1]=MLST[N]+MLST-drift.
phaseIncrement Flag.
If 0 -> phase [N+1] = phase[N]
If 1 -> phase [N+1] = phase[N] + 1.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genOsfChangeRepeatCycle ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
string  inputFileName,
long  absOrbitNum,
long  searchDirection,
const RefOrbitInfo refOrbitInfo,
long  phaseIncrement,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Change repeat cycle in an OSF (with support for MLST non linear drift).

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
inputFileName Input OSF to which the orbit change is appended.
absOrbitNum Orbit number in OSF first orbit change.
searchDirection Search for optimum transition after or before absOrbitNum.
refOrbitInfo Orbital parameters, including support for MLST non linear drift.///
phaseIncrement Flag.
If 0 -> phase [N+1] = phase[N]
If 1 -> phase [N+1] = phase[N] + 1.
phaseIncrement Flag.
If 0 -> phase [N+1] = phase[N]
If 1 -> phase [N+1] = phase[N] + 1.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file.
fhSystem System field of the output file fixed header.
Returns:
Generated OSF file name.
string EECFI::OrbitFunc::genPof ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
long  timeRef,
long  timeInit,
double  startTime,
double  stopTime,
long  startOrbit,
long  stopOrbit,
double  osvLocation,
long  refFiletype,
string  referenceFile,
string  preciseConfFile,
long  pofFileType,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate predicted orbit file.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
timeRef Time reference of inputs (TimeRefOrbitEnum).
timeInit Flag for selecting the time range of the initialisation (XOCFI_SEL_ORBIT or XOCFI_SEL_TIME).
startTime Processing time corresponding to the beginning of the required interval (MJD2000).
stopTime Processing time corresponding to the end of the required interval (MJD2000).
startOrbit Orbit number corresponding to the beginning of the required interval. Allowed range: >= 1.
stopOrbit Orbit number corresponding to the end of the required interval. Allowed range: >= 1.
osvLocation Location of the state vector within the orbit (secs). Allowed range: >= 0
< 1 nodal period.
refFiletype File type of the input reference file.
referenceFile Reference file name.
preciseConfFile file to configurate the numeric propagator (empty string("") for analytic propagator or interpolator).
pofFileType File type of the output reference file (XOCFI_REF_FILETYPE_POF).
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated POF file name.
string EECFI::OrbitFunc::genRof ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
long  timeRef,
long  timeInit,
double  startTime,
double  stopTime,
long  startOrbit,
long  stopOrbit,
double  osvInterval,
long  osvPrecise,
long  refFiletype,
string  referenceFile,
string  preciseConfFile,
long  rofFileType,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate restituted orbit file.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
timeRef Time reference of inputs (TimeRefOrbitEnum).
timeInit Flag for selecting the time range of the initialisation (XOCFI_SEL_ORBIT or XOCFI_SEL_TIME).
startTime Processing time corresponding to the beginning of the required interval (MJD2000).
stopTime Processing time corresponding to the end of the required interval (MJD2000).
startOrbit Orbit number corresponding to the beginning of the required interval. Allowed range: >= 1.
stopOrbit Orbit number corresponding to the end of the required interval. Allowed range: >= 1.
osvInterval Interval between consecutive state vector [secs].
This parameter should be coherent with the osvPrecise flag (see below). If osvPrecise is set to:

  • XOCFI_OSV_PRECISE_MINUTE: osv will be forced to be a multiple of 60 seconds.
  • XOCFI_OSV_PRECISE_TEN_SECONDS: osv will be forced to be a multiple of 10 seconds. Allowed range: >= 0.

Allowed range: >= 0.

osvPrecise Flag to indicate if state vectors should be placed at exact time locations (OsvPreciseEnum).
refFiletype File type of the input reference file. (Note: When generating a ROF file from a DORIS NAVIGATOR file, the input times should be expresed in UTC).
referenceFile Reference file name.
preciseConfFile file to configurate the numeric propagator (empty string("") for analytic propagator or interpolator).
rofFileType File type of the output reference file (XOCFI_REF_FILETYPE_ROF, XOCFI_REF_FILETYPE_DORIS_PREM or XOCFI_REF_FILETYPE_DORIS_PREC).
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file.
fhSystem System field of the output file fixed header.
Returns:
Generated ROF file name.
string EECFI::OrbitFunc::genRofPrototype ( const SatId satId,
const ModelId modelId,
const TimeCorrelation timeCor,
long  timeRef,
long  propagModel,
double  time0,
long  orbit0,
long  timeInitMode,
double  startTime,
long  startOrbit,
double  stopTime,
long  stopOrbit,
long  driftMode,
double  ascmlstDrift,
double  inclination,
long  repRef,
long  cycRef,
double  rLong,
double  ascmlst,
double  osvInterval,
long  rofFileType,
string  outputDir,
string  outputFileName,
string  fileClass,
long  versionNumber,
string  fhSystem 
) throw (CfiError) [static]

Generate restituted orbit file prototype.

In order to write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
modelId Model Id.
timeCor Time correlations.
timeRef Time reference of inputs.
propagModel Propagation model.
time0 Reference time (decimal days, processing format).
orbit0 Absolute orbit number of the reference orbit. Allowed range: >= 0.
timeInitMode Flag for selecting the time range of the initialisation (XOCFI_SEL_ORBIT or XOCFI_SEL_TIME).
startTime Processing time corresponding to the beginning of the required interval (MJD2000).
stopTime Processing time corresponding to the end of the required interval (MJD2000).
startOrbit Orbit number corresponding to the beginning of the required interval. Allowed range: >= 1.
stopOrbit Orbit number corresponding to the end of the required interval. Allowed range: >= 1.
driftMode Flag to select between drift in mlst and inclination as input characterization of the reference orbit (NoSunSychronousModeEnum).
ascmlstDrift if driftMode=XOCFI_NOSUNSYNC_DRIFT. Drift in mlst of the reference orbit [seconds/day].
repRef Repeat cycle of the reference orbit [days].
cycRef Cycle length of the reference orbit (orbits).
rLong Geocentric longitude of the ascending node (Earth fixed CS) [deg]. Allowed range: [0, 360).
ascmlst Mean Local solar time at ascending node (hours). Allowed range: [0, 24).
inclination If driftMode = XOCFI_NOSUNSYNC_INCLINATION, inclination of the reference orbit [deg]. Allowed range: [0, 180].
osvInterval Interval between consecutive state vector (secs). Allowed range: >= 0.
rofFileType File type of the output reference file.
outputDir Directory where the resulting OSF is written (current directory if "").
outputFileName Output OSF name. It will be generated automatically if "".
fileClass File class for output Orbit file.
versionNumber Version number for output file. Allowed range: >= 1.
fhSystem System field of the output file fixed header.
Returns:
Generated ROF file name.
string EECFI::OrbitFunc::genTle ( const SatId satId,
long  fitMode,
const TimeCorrelation timeCor,
long  timeRef,
long  timeMode,
double  startTime,
double  stopTime,
long  startOrbit,
long  stopOrbit,
string  referenceFile,
string  outputFileName 
) throw (CfiError) [static]

Generate Two Line Elements file.

In order to read and write files, this method internally uses Data Handling functions. Please refer to [D_H_SUM] for further details.

Parameters:
satId Satellite id.
fitMode Fitting mode (see TLEFitModeEnum).
timeCor Time correlations.
timeRef ime reference of inputs (TimeRefOrbitEnum).
timeMode Flag for selecting the time range of the initialisation (XOCFI_SEL_ORBIT, XOCFI_SEL_TIME or XOCFI_SEL_DEFAULT).
startTime Processing time corresponding to the beginning of the required interval (MJD2000).
stopTime Processing time corresponding to the end of the required interval (MJD2000).
startOrbit Orbit number corresponding to the beginning of the required interval. Allowed range: >= 1.
stopOrbit Orbit number corresponding to the end of the required interval. Allowed range: >= 1.
referenceFile Reference file name.
outputFileName Output TLE name. It will be generated automatically if "".
Returns:
Generated TLE file name.
long EECFI::OrbitFunc::orbitDataFilter ( vector< OrbitFile > &  osvDataIn,
OrbitDataFilterConfiguration filterSettings,
vector< OrbitFile > &  osvDataOut,
OrbitDataFilterReport filterReport 
) throw (CfiError) [static]

Filter OSV samples based on the argument settings (Orbit Files).

OUTLIERS FILTER

The outliers filter works this way:
  • For every input state vector, a new state vector is computed using interpolation, taking as input for interpolation the 10 state vectors around that time (this is done except for the first 5 and last 5 state vectors in file, due to interpolation limitations).
  • The interpolated state vector is compared with the one present in the file. If the difference between them (in position or velocity) is bigger than the input thresholds, the state vector is removed.
Parameters:
osvDataIn Input data including a list of OSV
filterSettings Data Filter configuration
osvDataOut Output data with the filtered list of samples
filterReport Output Data Filter Report

References EECFI::CfiError::addMsg(), and EECFI::OrbitFile::osvRec.

long EECFI::OrbitFunc::orbitDataFilter ( vector< DorisFile > &  osvDataIn,
OrbitDataFilterConfiguration filterSettings,
vector< DorisFile > &  osvDataOut,
OrbitDataFilterReport filterReport 
) throw (CfiError) [static]

Filter OSV samples based on the argument settings (Doris Files).

OUTLIERS FILTER

The outliers filter works this way:
  • For every input state vector, a new state vector is computed using interpolation, taking as input for interpolation the 10 state vectors around that time (this is done except for the first 5 and last 5 state vectors in file, due to interpolation limitations).
  • The interpolated state vector is compared with the one present in the file. If the difference between them (in position or velocity) is bigger than the input thresholds, the state vector is removed.
Parameters:
osvDataIn Input data including a list of OSV
filterSettings Data Filter configuration
osvDataOut Output data with the filtered list of samples
filterReport Output Data Filter Report

References EECFI::CfiError::addMsg(), EECFI::DorisFile::osvRec, and EECFI::DorisFile::osvRecJ2.


Generated on Thu Apr 23 2015 08:18:18 for by doxygen 1.7.1