Class MendesPavlisModel
- java.lang.Object
-
- org.orekit.models.earth.troposphere.MendesPavlisModel
-
- All Implemented Interfaces:
TroposphereMappingFunction
,TroposphericModel
,ParameterDriversProvider
public class MendesPavlisModel extends Object implements TroposphericModel, TroposphereMappingFunction
The Mendes - Pavlis tropospheric delay model for optical techniques. It is valid for a wide range of wavelengths from 0.355µm to 1.064µm (Mendes and Pavlis, 2003)- Author:
- Bryan Cazabonne
- See Also:
- "Mendes, V. B., & Pavlis, E. C. (2004). High‐accuracy zenith delay prediction at optical wavelengths. Geophysical Research Letters, 31(14).", "Petit, G. and Luzum, B. (eds.), IERS Conventions (2010), IERS Technical Note No. 36, BKG (2010)"
-
-
Constructor Summary
Constructors Constructor Description MendesPavlisModel(PressureTemperatureHumidityProvider pthProvider, double lambda, Unit lambdaUnits)
Create a new Mendes-Pavlis model for the troposphere.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends CalculusFieldElement<T>>
T[]computeZenithDelay(FieldGeodeticPoint<T> point, FieldAbsoluteDate<T> date)
This method allows the computation of the zenith hydrostatic and zenith wet delay.double[]
computeZenithDelay(GeodeticPoint point, AbsoluteDate date)
This method allows the computation of the zenith hydrostatic and zenith wet delay.List<ParameterDriver>
getParametersDrivers()
Get the drivers for parameters.static MendesPavlisModel
getStandardModel(double lambda, Unit lambdaUnits)
Create a new Mendes-Pavlis model using a standard atmosphere model.<T extends CalculusFieldElement<T>>
T[]mappingFactors(FieldTrackingCoordinates<T> trackingCoordinates, FieldGeodeticPoint<T> point, FieldPressureTemperatureHumidity<T> weather, FieldAbsoluteDate<T> date)
With the Mendes Pavlis tropospheric model, the mapping function is not split into hydrostatic and wet component.double[]
mappingFactors(TrackingCoordinates trackingCoordinates, GeodeticPoint point, PressureTemperatureHumidity weather, AbsoluteDate date)
With the Mendes Pavlis tropospheric model, the mapping function is not split into hydrostatic and wet component.<T extends CalculusFieldElement<T>>
FieldTroposphericDelay<T>pathDelay(FieldTrackingCoordinates<T> trackingCoordinates, FieldGeodeticPoint<T> point, FieldPressureTemperatureHumidity<T> weather, T[] parameters, FieldAbsoluteDate<T> date)
Calculates the tropospheric path delay for the signal path from a ground station to a satellite.TroposphericDelay
pathDelay(TrackingCoordinates trackingCoordinates, GeodeticPoint point, PressureTemperatureHumidity weather, double[] parameters, AbsoluteDate date)
Calculates the tropospheric path delay for the signal path from a ground station to a satellite.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
-
-
-
Constructor Detail
-
MendesPavlisModel
public MendesPavlisModel(PressureTemperatureHumidityProvider pthProvider, double lambda, Unit lambdaUnits)
Create a new Mendes-Pavlis model for the troposphere.- Parameters:
pthProvider
- provider for atmospheric pressure, temperature and humidity at the stationlambda
- laser wavelengthlambdaUnits
- units in whichlambda
is given- Since:
- 12.1
- See Also:
TroposphericModelUtils.MICRO_M
,TroposphericModelUtils.NANO_M
-
-
Method Detail
-
getStandardModel
public static MendesPavlisModel getStandardModel(double lambda, Unit lambdaUnits)
Create a new Mendes-Pavlis model using a standard atmosphere model.- altitude: 0m
- temperature: 18 degree Celsius
- pressure: 1013.25 hPa
- humidity: 50%
- Parameters:
lambda
- laser wavelength, µmlambdaUnits
- units in whichlambda
is given- Returns:
- a Mendes-Pavlis model with standard environmental values
- Since:
- 12.1
- See Also:
TroposphericModelUtils.MICRO_M
,TroposphericModelUtils.NANO_M
-
pathDelay
public TroposphericDelay pathDelay(TrackingCoordinates trackingCoordinates, GeodeticPoint point, PressureTemperatureHumidity weather, double[] parameters, AbsoluteDate date)
Calculates the tropospheric path delay for the signal path from a ground station to a satellite.- Specified by:
pathDelay
in interfaceTroposphericModel
- Parameters:
trackingCoordinates
- tracking coordinates of the satellitepoint
- station locationweather
- weather parametersparameters
- tropospheric model parametersdate
- current date- Returns:
- the path delay due to the troposphere
-
pathDelay
public <T extends CalculusFieldElement<T>> FieldTroposphericDelay<T> pathDelay(FieldTrackingCoordinates<T> trackingCoordinates, FieldGeodeticPoint<T> point, FieldPressureTemperatureHumidity<T> weather, T[] parameters, FieldAbsoluteDate<T> date)
Calculates the tropospheric path delay for the signal path from a ground station to a satellite.- Specified by:
pathDelay
in interfaceTroposphericModel
- Type Parameters:
T
- type of the elements- Parameters:
trackingCoordinates
- tracking coordinates of the satellitepoint
- station locationweather
- weather parametersparameters
- tropospheric model parameters at current datedate
- current date- Returns:
- the path delay due to the troposphere
-
computeZenithDelay
public double[] computeZenithDelay(GeodeticPoint point, AbsoluteDate date)
This method allows the computation of the zenith hydrostatic and zenith wet delay. The resulting element is an array having the following form:- double[0] = Dhz → zenith hydrostatic delay
- double[1] = Dwz → zenith wet delay
- Parameters:
point
- station locationdate
- current date- Returns:
- a two components array containing the zenith hydrostatic and wet delays.
-
computeZenithDelay
public <T extends CalculusFieldElement<T>> T[] computeZenithDelay(FieldGeodeticPoint<T> point, FieldAbsoluteDate<T> date)
This method allows the computation of the zenith hydrostatic and zenith wet delay. The resulting element is an array having the following form:- T[0] = Dhz → zenith hydrostatic delay
- T[1] = Dwz → zenith wet delay
- Type Parameters:
T
- type of the elements- Parameters:
point
- station locationdate
- current date- Returns:
- a two components array containing the zenith hydrostatic and wet delays.
-
mappingFactors
public double[] mappingFactors(TrackingCoordinates trackingCoordinates, GeodeticPoint point, PressureTemperatureHumidity weather, AbsoluteDate date)
With the Mendes Pavlis tropospheric model, the mapping function is not split into hydrostatic and wet component.Therefore, the two components of the resulting array are equals.
- double[0] = m(e) → total mapping function
- double[1] = m(e) → total mapping function
The total delay will thus be computed as:
δ = Dhz * m(e) + Dwz * m(e)
δ = (Dhz + Dwz) * m(e) = δz * m(e)- Specified by:
mappingFactors
in interfaceTroposphereMappingFunction
- Parameters:
trackingCoordinates
- tracking coordinates of the satellitepoint
- station locationweather
- weather parametersdate
- current date- Returns:
- a two components array containing the hydrostatic and wet mapping functions.
-
mappingFactors
public <T extends CalculusFieldElement<T>> T[] mappingFactors(FieldTrackingCoordinates<T> trackingCoordinates, FieldGeodeticPoint<T> point, FieldPressureTemperatureHumidity<T> weather, FieldAbsoluteDate<T> date)
With the Mendes Pavlis tropospheric model, the mapping function is not split into hydrostatic and wet component.Therefore, the two components of the resulting array are equals.
- double[0] = m(e) → total mapping function
- double[1] = m(e) → total mapping function
The total delay will thus be computed as:
δ = Dhz * m(e) + Dwz * m(e)
δ = (Dhz + Dwz) * m(e) = δz * m(e)- Specified by:
mappingFactors
in interfaceTroposphereMappingFunction
- Type Parameters:
T
- type of the elements- Parameters:
trackingCoordinates
- tracking coordinates of the satellitepoint
- station locationweather
- weather parametersdate
- current date- Returns:
- a two components array containing the hydrostatic and wet mapping functions.
-
getParametersDrivers
public List<ParameterDriver> getParametersDrivers()
Get the drivers for parameters.- Specified by:
getParametersDrivers
in interfaceParameterDriversProvider
- Returns:
- drivers for parameters
-
-