# input file for laser ranging orbit determination
# Lageos 2 orbit determination using laser ranging data
# Laser measurements are read from CRD files provided by ILRS
# Lines starting with '#' are silently ignored
# Estimated parameters (clock offsets, atmospheric parameters, etc.)
# are given by [initialValue, minValue, maxValue]
# Flag for OPM generation
isOpmGenerated: true
# Orbit definition (position in meters, velocity in meter per seconds, angles in degrees, date in ISO 8601)
orbit:
date: "2023-01-01T00:00:00.000"
frameName: "EME2000"
orbitType:
name: "tle"
tle:
# 2022-12-31T21:02:29.05296Z, bstar: 7.7783e-06
line1: "1 22824U 93061B 22365.87672515 -.00000028 00000-0 77783-5 0 9994"
line2: "2 22824 98.9489 31.6356 0005561 310.4787 174.9689 14.27396379524543"
# Spacecraft definition (mass in kilogrammes)
spacecraft:
name: "stella"
id: "1993-061B"
mass: 48.0
bias:
# !!! Here the satellite bias corresponds to the center of mass offset !!!
values: [-0.075, -1000.0, 1000.0] # Negative
isEstimated: false
# Propagator definition
propagator:
# Numerical integrator (min step (s), max step (s) and position error (m))
integrator:
minStep: 0.001
maxStep: 300
positionError: 10.0
# Force models used by the propagator (only the ones used !!!)
forceModels:
# Central body gravity
gravity:
degree: 30
order: 30
# 3rd body attraction
#thirdBody:
# - name: "Sun"
# withSolidTides: true
# - name: "Moon"
# withSolidTides: true
# - name: "Venus"
# withSolidTides: false
# Post-Newtonian correction force due to general relativity ("isUsed: true" to not have an empty value)
#relativity:
# isUsed: true
# Oean tides:
#oceanTides:
# degree: 6
# order: 6
# Polynomial acceleration
#polynomialAcceleration:
# - name: "Z-bias"
# directions: [0.0, 0.0, 1.0]
# coefficients: [0.0]
# isEstimated: true
# Body definition (According to ILRS recommendations, the computation models follow the IERS 2003 Conventions as closely as possible)
body:
iersConventionYear: 2003
frameName: "CIO/2003-based ITRF accurate EOP"
equatorialRadius: 6378137.0
inverseFlattening: 298.257223563
# Measurements definition
measurements:
measurementFiles: ["stella_202301.np2"]
sinex:
stationPositions: "SLRF2014_POS+VEL_2030.0_200428.snx"
stationEccentricities: "ecc_une.snx"
range:
sigma: 20.0
weight: 1.0
outlierRejectionMultiplier: 6
outlierRejectionStartingIteration: 2
withStationPositionEstimated: false
# Troposphere: According to ILRS recommendations, Mendes-Pavlis model must be used
# Therefore, no need to configure the model here since it is done directly in the tutorial
# Shapiro correction on range measurements
withShapiro: true
# correction of ground stations displacements if remove_permanent_deformation is true,
# the station coordinates are considered *mean tide* and already include the permanent
# deformation, hence it should be removed from the displacement to avoid considering it
# twice if false, the station coordinates are considered *conventional tide free*
# so the permanent deformation must be included in the displacement
stationDisplacement:
withTidalCorrection: true
removePermanentDeformation: false
withOceanLoadingCorrection: false
# Stations
# Station names correspond to their identifier in Sinex and CRD files
# Station coordinates are read in a SINEX file
stations:
- name: "7090"
rangeBias:
values: [0.0, -1000.0, 1000.0]
isEstimated: false
observationTypes:
- name: ""
clockOffset:
values: [0.0, -0.001, 0.001]
isEstimated: false
- name: "7825"
rangeBias:
values: [0.0, -1000.0, 1000.0]
isEstimated: false
observationTypes:
- name: ""
clockOffset:
values: [0.0, -0.001, 0.001]
isEstimated: false
- name: "7119"
rangeBias:
values: [0.0, -1000.0, 1000.0]
isEstimated: false
observationTypes:
- name: ""
clockOffset:
values: [0.0, -0.001, 0.001]
isEstimated: false
- name: "7941"
rangeBias:
values: [0.0, -1000.0, 1000.0]
isEstimated: false
observationTypes:
- name: ""
clockOffset:
values: [0.0, -0.001, 0.001]
isEstimated: false
# Estimator definition
estimator:
# normalized parameters p are computed from physical parameters x as p = (x - x0) / sx
# where x0 is the reference value for physical parameter x and sx is the associated
# scaling factor for orbital parameters normalization (m)
orbitalParametersPositionScale: 100.0
# Levenberg-Marquardt or a Gauss-Newton
optimizationEngine:
# levenbergMarquardt or gaussNewton
levenbergMarquardt:
initialStep: 1.0e6
maxIterations: 20
maxEvaluations: 25
# convergence is reached when max|p(k+1) - p(k)| < ε for each normalized estimated
# parameters p and iterations k and k+1 so the ε threshold
# Normalized values are computed as (x - x0) / sx, so convergence is reached when
# the following condition holds for all estimated parameters: |x[i+1] - x[i]| <= ε * sx
# So the convergence threshold specified here can be considered as a multiplication
# factor applied to scale. Since for all parameters the scale is often small,
# then the threshold should not be too small. A value of 10⁻³ is often quite accurate.
convergenceThreshold: 1.0e-3
# base name of the output files (log and residuals), no files created if empty
outputBaseName: ""