Orekit issueshttps://gitlab.orekit.org/orekit/orekit/-/issues2019-02-03T19:20:53Zhttps://gitlab.orekit.org/orekit/orekit/-/issues/511Add weather model GPT2019-02-03T19:20:53ZBryan CazabonneAdd weather model GPTOrekit provides two tropospheric models (Marini-Murray and Saastamoinen) that need weather parameters inputs. In the case of the user does not have access to weather data, standard atmosphere initialization is possible. However, it can b...Orekit provides two tropospheric models (Marini-Murray and Saastamoinen) that need weather parameters inputs. In the case of the user does not have access to weather data, standard atmosphere initialization is possible. However, it can be useful to implement weather models that allow the computation of the weather parameters thanks to the station position (latitude, longitude and altitude) and the date. One of these models is GPT (Global Pressure and Temperature). It was developed by the Vienna University.
More information about these models can be found at: [GPT](http://vmf.geo.tuwien.ac.at/documentation/Boehm%20et%20al.,%202007%20%20%20(GPT).pdf)9.3Bryan CazabonneBryan Cazabonnehttps://gitlab.orekit.org/orekit/orekit/-/issues/512Add weather model GPT22019-02-03T19:20:38ZBryan CazabonneAdd weather model GPT2Same as issue #511 but with the Global Pressure and Temperature 2 (GPT2) model.
GPT2 model is an improvement of GPT model.
More information about this model can be found at : [GPT2](http://vmf.geo.tuwien.ac.at/documentation/Lagler%20et...Same as issue #511 but with the Global Pressure and Temperature 2 (GPT2) model.
GPT2 model is an improvement of GPT model.
More information about this model can be found at : [GPT2](http://vmf.geo.tuwien.ac.at/documentation/Lagler%20et%20al.,%202013%20%20%20(GPT2).pdf)9.3Bryan CazabonneBryan Cazabonnehttps://gitlab.orekit.org/orekit/orekit/-/issues/494Promote the measurements generators from the unit tests part to the regular l...2019-02-03T19:17:46ZLuc MaisonobePromote the measurements generators from the unit tests part to the regular library partOrbit Determination validation involved writing measurements generators for all measurements types.
As validation was very accurate, these generators are very realistic and not straightforward. They
would be useful in many mission analys...Orbit Determination validation involved writing measurements generators for all measurements types.
As validation was very accurate, these generators are very realistic and not straightforward. They
would be useful in many mission analysis tools, so they should be promoted to be available in the
library.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/495The MarshallSolarActivityFutureEstimation class could implement the NRLMSISE...2019-02-03T19:17:32ZPascal ParraudThe MarshallSolarActivityFutureEstimation class could implement the NRLMSISE00InputParameters interfaceIt would be of interest to make the MarshallSolarActivityFutureEstimation class implement the NRLMSISE00InputParameters interface in order to provide data to the NRLMSISE00 atmospheric model. Updating the code is straightforward.It would be of interest to make the MarshallSolarActivityFutureEstimation class implement the NRLMSISE00InputParameters interface in order to provide data to the NRLMSISE00 atmospheric model. Updating the code is straightforward.9.3https://gitlab.orekit.org/orekit/orekit/-/issues/496JavaDoc fix for TimeComponents.getSecond()2019-02-03T19:17:21ZEvan WardJavaDoc fix for TimeComponents.getSecond()JavaDoc for `TimeComponents.getSecond()` states `return second second number from 0.0 to 60.0 (excluded)` but since the constructor allows values up to 61 seconds I believe the documentation is wrong and should be updated.JavaDoc for `TimeComponents.getSecond()` states `return second second number from 0.0 to 60.0 (excluded)` but since the constructor allows values up to 61 seconds I believe the documentation is wrong and should be updated.9.3Evan WardEvan Wardhttps://gitlab.orekit.org/orekit/orekit/-/issues/501Deprecate GFunction2019-02-03T19:17:10ZEvan WardDeprecate GFunctionNow that OrekitException is unchecked `Function` can be used instead of `GFunction`. Also make `GFunction` extend `Function`.Now that OrekitException is unchecked `Function` can be used instead of `GFunction`. Also make `GFunction` extend `Function`.9.3Evan WardEvan Wardhttps://gitlab.orekit.org/orekit/orekit/-/issues/516GPSPropagator should manage clock corrections2019-02-03T19:16:33ZLuc MaisonobeGPSPropagator should manage clock correctionsThe GPSPropagator should be able to provide clock corrections, including the relativistic correction related to the propagated state as additional states.The GPSPropagator should be able to provide clock corrections, including the relativistic correction related to the propagated state as additional states.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/517GPT2 model uses hardcoded 5° step2019-02-03T19:16:15ZLuc MaisonobeGPT2 model uses hardcoded 5° stepThe GPT2 model cannot load grids with finer or coarser step sizes than an hardcoded value of 5°.
As the grids include the latitude/longitude values, they could theoretically be loaded with a
different step size. Indeed, tuwien does provi...The GPT2 model cannot load grids with finer or coarser step sizes than an hardcoded value of 5°.
As the grids include the latitude/longitude values, they could theoretically be loaded with a
different step size. Indeed, tuwien does provide at least to step sizes: 1° and 5°.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/497JavaDoc fix for Marini-Murray tropospheric model2019-02-01T18:07:12ZBryan CazabonneJavaDoc fix for Marini-Murray tropospheric modelOn MariniMurrayModel class current JavaDoc of `getStandardModel` method is the following one:
/** Create a new Marini-Murray model using a standard atmosphere model.
*
* <ul>
* <li>temperature: 20 degree Celsius
...On MariniMurrayModel class current JavaDoc of `getStandardModel` method is the following one:
/** Create a new Marini-Murray model using a standard atmosphere model.
*
* <ul>
* <li>temperature: 20 degree Celsius
* <li>pressure: 1013.25 mbar
* <li>humidity: 50%
* </ul>
*
* @param latitude site latitude
* @param frequency laser frequency, Hz
*
* @return a Saastamoinen model with standard environmental values
*/
It should be:
/** Create a new Marini-Murray model using a standard atmosphere model.
*
* <ul>
* <li>temperature: 20 degree Celsius
* <li>pressure: 1013.25 mbar
* <li>humidity: 50%
* </ul>
*
* @param latitude site latitude
* @param wavelength laser wavelength, nm
*
* @return a Marini-Murray model with standard environmental values
*/9.3Bryan CazabonneBryan Cazabonnehttps://gitlab.orekit.org/orekit/orekit/-/issues/498Add Mendes-Pavlis tropospheric model2019-02-01T18:07:12ZBryan CazabonneAdd Mendes-Pavlis tropospheric modelIt could be interesting to add the Mendes & Pavlis tropospheric model on Orekit.
This model is recommended by the IERS Conventions 2010 for optical techniques and it presents better accuracy than the current models on Orekit (Murini-Mur...It could be interesting to add the Mendes & Pavlis tropospheric model on Orekit.
This model is recommended by the IERS Conventions 2010 for optical techniques and it presents better accuracy than the current models on Orekit (Murini-Murray and Saastamoinen).
Reference article:
Mendes, V. B., & Pavlis, E. C. (2004). High‐accuracy zenith delay prediction at optical wavelengths. Geophysical Research Letters, 31(14).
IERS Conventions (2010): https://www.iers.org/SharedDocs/Publikationen/EN/IERS/Publications/tn/TechnNote36/tn36_132.pdf?__blob=publicationFile&v=19.3Bryan CazabonneBryan Cazabonnehttps://gitlab.orekit.org/orekit/orekit/-/issues/513Add clock bias in measurements2019-02-01T18:07:12ZLuc MaisonobeAdd clock bias in measurementsMeasurements made by ground stations may be affected by clock biases.
Such a bias should be available for estimation in orbit determination.Measurements made by ground stations may be affected by clock biases.
Such a bias should be available for estimation in orbit determination.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/509Differentiation.differentiate with ParameterFunction/ParameterDriver often fails2019-02-01T18:07:12ZLuc MaisonobeDifferentiation.differentiate with ParameterFunction/ParameterDriver often failsThe method only works if the scaling factor of the ParameterDriver is 1.0 and if the ParameterDriver passed at the call to differentiate is the same as the one passed to the returned ParameterFunction.
If scale is different from 1.0, th...The method only works if the scaling factor of the ParameterDriver is 1.0 and if the ParameterDriver passed at the call to differentiate is the same as the one passed to the returned ParameterFunction.
If scale is different from 1.0, the returned derivative is the real derivative multiplied by scale.
If the parameterDriver p2 passed to the returned ParameterFunction is not the parameter p1 passed when calling differentiate, the derivative is computed using the current value of p1, not p2.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/515add clock offset for inter-satellite measurements2019-02-01T18:07:12ZLuc Maisonobeadd clock offset for inter-satellite measurementsThis is the same as issue #513, but for inter-satellites measurements.This is the same as issue #513, but for inter-satellites measurements.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/508Inconsistent conversions from AbsoluteDate to FieldAbsoluteDate2019-02-01T18:07:12ZLuc MaisonobeInconsistent conversions from AbsoluteDate to FieldAbsoluteDateDepending on how an AbsoluteDate is converted into a FieldAbsoluteDate, the result is not the same.
When running the following example, the difference is about 3.2e-10 second. It is not big but as absolutely
no computation should occur ...Depending on how an AbsoluteDate is converted into a FieldAbsoluteDate, the result is not the same.
When running the following example, the difference is about 3.2e-10 second. It is not big but as absolutely
no computation should occur in the conversion, we should end up with exactly 0, or at least ulp(1.0), i.e.
about 2.2e-16.
```java
AbsoluteDate date = new AbsoluteDate(2000, 2, 24, 17, 5, 30.047, TimeScalesFactory.getUTC());
FieldAbsoluteDate<T> tA = new FieldAbsoluteDate<>(field, date);
FieldAbsoluteDate<T> tB = new FieldAbsoluteDate<>(date, field.getZero());
Assert.assertEquals(0.0, tA.durationFrom(tB).getReal(), FastMath.ulp(1.0));
```9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/510TimeStampedFieldPVCoordinates.shiftedBy drops derivatives2019-02-01T18:07:12ZLuc MaisonobeTimeStampedFieldPVCoordinates.shiftedBy drops derivativesWhen calling the shiftedBy(dt) method on an instance of TimeStampedFieldPVCoordinates with a dt argument that includes derivatives, the derivatives are silently dropped in the date embedded in the created instance.When calling the shiftedBy(dt) method on an instance of TimeStampedFieldPVCoordinates with a dt argument that includes derivatives, the derivatives are silently dropped in the date embedded in the created instance.9.3Luc MaisonobeLuc Maisonobehttps://gitlab.orekit.org/orekit/orekit/-/issues/500get interval of validity from a TimeSpanMap2018-12-18T16:41:37ZLuc Maisonobeget interval of validity from a TimeSpanMap`TimeSpanMap` allows to store objects that are valid only for a certain time range, and replaced by others when
their validity ends. They are used for example to store propagation states before and after maneuvers, or
attitude modes duri...`TimeSpanMap` allows to store objects that are valid only for a certain time range, and replaced by others when
their validity ends. They are used for example to store propagation states before and after maneuvers, or
attitude modes during attitude sequences changes, or satellite code to PRN number mapping in GNSS constellations.
It is easy to retrieve the object valid at any specified time using the `get(AbsoluteDate)` method. Is is however
cumbersome to know the interval of validity of this object. Users have to retrieve the full set of transitions using
`getTransitions()` and explore it.
It would be nice to have a `getValidity(AbsoluteDate)` method to retrieve the interval to which the provided date belongs.9.3Luc MaisonobeLuc Maisonobe