changes.xml 202 KB
Newer Older
1
<?xml version="1.0" encoding="UTF-8" ?>
Luc Maisonobe's avatar
Luc Maisonobe committed
2
<!-- Copyright 2002-2021 CS GROUP
3
  Licensed to CS GROUP (CS) under one or more
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  CS licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<document>
  <properties>
    <title>Orekit Changes</title>
  </properties>
  <body>
23
    <release version="11.1" date="TBD" description="TBD">
24
25
26
      <action dev="bryan" type="fix" issue="868">
        Fixed writing of whitespace characters in CPF writer.
      </action>
27
28
29
      <action dev="bryan" type="fix" issue="864">
        Fixed BStar estimation in TLE-based orbit determination.
      </action>
30
31
32
      <action dev="mvanel" type="add" issue="653">
        Added Brouwer-Lyddane orbit propagator.
      </action>
33
34
35
      <action dev="luc" type="add" issue="865">
        Added derivatives with respect to maneuvers start and stop dates.
      </action>
36
37
38
      <action dev="luc" type="add" >
        Added observers for maneuvers triggers.
      </action>
39
40
41
      <action dev="luc" type="fix" issue="853">
        Added field-based init method in ForceModel and DSSTForceModel.
      </action>
42
43
44
      <action dev="luc" type="fix" >
        Added ParameterDrivenDateIntervalDetector and FieldParameterDrivenDateIntervalDetector.
      </action>
45
46
47
      <action dev="luc" type="add" >
        Added DateDriver to drive dates using a ParameterDriver.
      </action>
48
49
50
      <action dev="luc" type="fix" issue="848">
        Allow backward propagation in EventBasedManeuverTriggers.
      </action>
51
52
53
54
      <action dev="luc" type="add" >
        Added IntervalEventTrigger and StartStopEventsTrigger to streamline
        several ways to trigger maneuvers.
      </action>
55
56
57
58
59
      <action dev="luc" type="add" >
        When propagating with integrated additional equations, the generated
        spacecraft states now also contain both state and derivatives
        managed by the equations.
      </action>
60
61
62
63
      <action dev="luc" type="add" >
        Replaced AdditionalEquations by AdditionalDerivativesProvider with
        support for dimension retrieval and yield feature between providers.
      </action>
64
65
66
67
68
69
70
      <action dev="luc" type="add" issue="856">
        Added a new and simpler API for State Transition Matrix and Jacobian
        matrix computation. This new API is for now only used with NumericalPropagator
        (both in batch least squares and in Kalman filter), but it is expected to be
        generalized to semi-analytical and analytical propagators as well when it is
        stabilized.
      </action>
71
72
73
74
75
      <action dev="luc" type="add" >
        Added DoubleArrayDictionary and FieldArrayDictionary as replacements
        for HashMap when the number of keys is very small (such as in spacecraft
        states).
      </action>
76
      <action dev="luc" type="add">
77
78
        Manage dependencies between additional states in propagators using a yield
        feature between providers.
79
      </action>
80
      <action dev="luc" type="add" >
81
82
        SpacecraftState now handle derivatives of additional states.
      </action>
83
84
85
      <action dev="luc" type="add" issue="862">
        PropagatorParallelizer now preserves existing step handlers in the propagators it runs.
      </action>
86
    </release>
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
    <release version="11.0.2" date="2021-11-24"
             description="Version 11.0.2 is a patch release of Orekit.
             It fixes an important issue related to the handling of indexes
             when building the state transition matrix in multi satellites
             orbit determination. It also fixes bugs in TLE and CRD files.
             Finally it includes an update of the release guide.">
   	  <action dev="bryan" type="fix" issue="859" due-to="Emmanuel Papanagiotou">
        Allowed custom setting of state to TLE conversion in propagator builder. 
      </action>
   	  <action dev="bryan" type="fix" issue="847">
        Fixed handling of comments in CRD files.
      </action>
   	  <action dev="bryan" type="fix" issue="851">
        Fixed deserialization of TLE caused by the bStarParameterDriver.
      </action>
   	  <action dev="bryan" type="fix" issue="850">
        Fixed indexes when build state transition matrix for multi sat Kalman.
      </action>
   	  <action dev="sdinot" type="update">
        Updated the release guide to remove actions that are no longer required.
      </action>
108
    </release>
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
    <release version="11.0.1" date="2021-10-22"
             description="Version 11.0.1 is a patch release of Orekit.
             It fixes an important issue related to the calculation of the relativistic
             clock correction for GNSS measurements. It also fixes bugs in OEM and CPF
             files writing. Finally it includes some improvements in the class documentation">
   	  <action dev="bryan" type="fix" issue="846">
        Fixed wrong computation of relativistic clock correction for GNSS measurements.
      </action>
   	  <action dev="bryan" type="fix" issue="845">
        Fixed parsing of Rinex clock files.
      </action>
   	  <action dev="bryan" type="fix" issue="844">
        Fixed null pointer exception when constructing CPF from coordinates.
      </action>
   	  <action dev="bryan" type="update" issue="843">
        Improved documentation of solar radiation pressure class to include
        additional information about osculating bodies.
      </action>
   	  <action dev="sdinot" type="update" issue="842">
        Used the latest version of Maven available in RedHat 8.
      </action>
   	  <action dev="pascal" type="fix" issue="839">
        Fixed handling of time system in OemWriter.
      </action>
   	  <action dev="bryan" type="update" issue="838" due-to="Kendra Hale">
        Improved documentation of ImpulseManeuver class.
      </action>
136
    </release>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
137
    <release version="11.0" date="2021-09-20"
138
             description="Orekit 11.0 is a major new release.
139
140
141
142
143
144
145
146
147
148
149
150
151
             It includes both new features and bug fixes. New features introduced
             in 11.0 are: orbit determination using SGP4/SDP4 models, a sequential
             batch least squares estimator using initial covariance and state vector,
             writer and parser for all CCSDS Navigation Data Messages in both KVN
             and XML formats, version 2 of CCSDS Tracking Data Messages, version 3
             of CCSDS Orbit Data Messages, support for Rinex navigation files,
             support for IGS clock correction files, support for IGS real time
             data including both SSR and RTCM messages, NTrip protocole, eclipses
             by Moon in solar radiation pressure force, a new API for analytical
             GNSS orbit propagators, removal of propagation modes, possibility
             to add several step handlers for the same orbit propagation, a new
             event detector for angular separation as seen from the spacecraft.
             See the list below for a full description of the changes.">
152
153
154
155
   	  <action dev="bryan" type="update" issue="766" due-to="Gowtham Sivaraman">
        Allowed setting of AttitudeProvider to the BoundedPropagator
        generated via propagation.
      </action>
156
157
158
   	  <action dev="bryan" type="fix" issue="835">
        Fixed format symbols for year, month, day in DateComponents#toString().
      </action>
159
   	  <action dev="thomas" type="fix" issue="668">
Thomas Paulet's avatar
Thomas Paulet committed
160
161
        Added a new event detector for angular separation as seen from the spacecraft.
      </action>
162
163
164
      <action dev="maxime" type="fix" issue="829">
        Fixed DataSourceTest.testFileName for Windows users.
      </action>
165
166
167
      <action dev="bryan" type="fix" issue="818">
        Use observed solar flux instead of adjusted in DTM2000 model.
      </action>
168
169
170
      <action dev="evan" type="fix" issue="798">
        Allow DSST event detection when propagating backwards.
      </action>
171
172
173
      <action dev="bryan" type="fix" issue="717" due-to="evan">
        Fixed DSST orbit determination when propagating backwards.
      </action>
174
175
176
      <action dev="evan" type="remove" issue="586">
        Remove InertialProvider.EME2000_ALIGNED, Propagator.DEFAULT_LAW. Use
        InertialProvider.of(Frame).
177
      </action>
178
179
180
181
      <action dev="evan" type="update" issue="586">
        Change default attitude provider to be aligned with propagation frame for all
        analytic propagators and GLONASS propagator. Backward incompatible.
      </action>
182
183
184
      <action dev="evan" type="update" issue="586">
        Improve performance of IntertialProvider(Frame)
      </action>
185
186
187
      <action dev="anne-laure" type="update" issue="797">
        Add information if a detector failed during propagation
      </action>
188
189
190
      <action dev="bryan" type="fix" issue="788" due-to="luc">
        Fixed missing call to setMuCreated() in OemParser.
      </action>
191
192
      <action dev="evan" type="update" issue="618">
        Fix supportedNames matching in ClasspathCrawler. Backwards incompatible.
193
      </action>
194
195
196
      <action dev="bryan" type="fix" issue="828">
        Fixed missing file types in SP3Parser.
      </action>
197
198
199
      <action dev="bryan" type="fix" issue="827">
        Fixed time system used in SP3 files.
      </action>
200
201
202
      <action dev="evan" type="fix" issue="685">
        Fix AnalyticalPropagator RESET_STATE when new state is null.
      </action>
203
204
205
      <action dev="bryan" type="fix" issue="803">
        Fixed parsing of clock values in SP3 files.
      </action>
206
207
208
      <action dev="bryan" type="fix" issue="820">
        TLE Jacobians are now calculated in cartesian elements.
      </action>
209
210
211
212
      <action dev="evan" type="update" issue="825">
        Improve exception messages with two AbsoluteDates by including duration between
        them.
      </action>
213
214
215
216
      <action dev="evan" type="update" issue="637" due-to="Piotr">
        Add trailing "Z" to AbsoluteDate.toString() to indicate UTC.
        Backwards incompatible.
      </action>
217
218
219
      <action dev="evan" type="update" issue="825">
        In AbsoluteDate.toString() fallback to TAI when no leap seconds are loaded.
      </action>
Evan Ward's avatar
Evan Ward committed
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
      <action dev="evan" type="update" issue="591">
        Fix TimeComponents.toString(): correct ISO 8601 with UTC offset, rounding issues.
        Backwards incompatible.
      </action>
      <action dev="evan" type="update" issue="590">
        Fix DateTimeComponents.toString(): correct ISO 8601, leap second, rounding issues.
        Backwards incompatible.
      </action>
      <action dev="evan" type="update" issue="637" due-to="Piotr">
        Fix AbsoluteDate.toString(timeZone) and toString(minutesFromUtc) to include the
        UTC offset when it is zero.
      </action>
      <action dev="evan" type="add">
        Add DateTimeComponents.toString(...) method with correct rounding for user
        specified precision.
      </action>
236
237
238
      <action dev="bryan" type="update" issue="626">
        Used a separate Comparator for sorting integer least square solutions.
      </action>
239
240
241
      <action dev="bryan" type="update" issue="799">
        Used the field-specific value of π.
      </action>
242
243
244
      <action dev="evan" type="update" issue="830" due-to="skyrex">
        Remove step size limitations in analytic propagators. Backwards incompatible.
      </action>
245
246
247
248
      <action dev="evan" type="fix">
        Fix part of step passed to the step handler twice in analytic propagators with
        event handlers.
      </action>
249
250
251
      <action dev="bryan" type="fix" issue="795" due-to="guylaine">
        Fixed output of NRLMSISE00 for altitude at 32.5 km.
      </action>
252
253
254
      <action dev="luc" type="add" issue="821">
        Added support for CCSDS TDM V2.0.
      </action>
255
256
257
      <action dev="luc" type="add" issue="819">
        Allow data filtering upon loading to be used for explicit loading by applications.
      </action>
258
259
260
      <action dev="julie" type="add" issue="745">
        Added sequential batch least squares estimator.
      </action>
261
262
263
      <action dev="luc" type="add" issue="814" due-to="Valerian">
        Fixed additional states handling in ephemeris generated by analytical propagator.
      </action>
264
265
266
267
268
      <action dev="luc" type="add" issue="809">
        Dropped master/slave/ephemeris generation propagation modes, replaced by a
        versatile step handler multiplexer fulfilling all these needs
        simultaneously during a single propagation run
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
269
      <action dev="luc" type="add" issue="812">
270
        Dropped master/slave terminology in turn-around and inter-satellite measurements.
Luc Maisonobe's avatar
Luc Maisonobe committed
271
      </action>
272
273
274
      <action dev="luc" type="add" issue="813">
        Fixed derivatives with respect to secondary station in turn-around modifiers.
      </action>
275
276
277
278
      <action dev="luc" type="add" issue="811">
        Allow on-the-fly add/remove/clean for step handlers.
      </action>
      <action dev="luc" type="add" issue="810">
279
280
        Merged multiplexers for fixed steps and variable steps.
      </action>
281
282
283
      <action dev="luc" type="fix" issue="808">
        Moved isLast argument in step handler handleStep method to a separate method.
      </action>
284
285
286
      <action dev="luc" type="fix" issue="807">
        Fixed scheduling between calls to step handlers and events handlers.
      </action>
287
288
289
      <action dev="luc" type="fix" issue="806">
        Added restrictStep method to FieldOrekitStepInterpolator interface.
      </action>
290
291
292
      <action dev="bryan" type="fix" issue="801">
        Added getter for meteorological data used in CRD data block.
      </action>
293
294
295
      <action dev="bryan" type="fix" issue="796">
        Fixed writing of line H2 in CPF file header.
      </action>
296
297
      <action dev="thomas" type="fix" issue="702">
        Added possibility to take in account several bodies while computing SRP perturbation.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
298
      </action>
299
300
      <action dev="bryan" type="update" issue="793">
        Updated SP3File visibility to public.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
301
      </action>
302
303
      <action dev="bryan" type="update" issue="784">
        Updated architecture of GNSS orbit propagators.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
304
      </action>
305
306
      <action dev="bryan" type="update" issue="782">
        Updated error message of Orekit internal error exception.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
307
      </action>
308
309
      <action dev="luc" type="add">
        Added support for reading and writing CCSDS NDM composite messages.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
310
      </action>
311
312
      <action dev="afossa" type="fix" issue="781">
        Fixed parsing in buildLine2() method of FieldTLE.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
313
      </action>
314
315
      <action dev="luc" type="fix" issue="776">
        Fixed associativity in units parsing.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
316
      </action>
317
318
319
      <action dev="bryan" type="update" issue="773">
        TimeStampedFieldAngularCoordinates now implements FieldTimeStamped.
      </action>
320
321
322
      <action dev="bryan" type="update" issue="774">
        TimeStampedFieldPVCoordinates now implements FieldTimeStamped.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
323
324
325
      <action dev="nfialton" type="fix" issue="775">
        Fixed NullPointerException in FieldSpacecraftState when orbit is not defined.
      </action>
326
327
328
      <action dev="bryan" type="add" issue="763">
        Added support for RTCM ephemeris messages.
      </action>
329
330
331
      <action dev="bryan" type="add" issue="769">
        Added ionospheric model based on IM201 SSR message.
      </action>
332
333
334
335
336
337
      <action dev="bryan" type="add" issue="763">
        Added support for Ntrip protocol.
      </action>
      <action dev="bryan" type="add" issue="763">
        Added support for IGS SSR messages.
      </action>
Alberto Fossà's avatar
Alberto Fossà committed
338
339
340
341
      <action dev="afossa" type="fix" issue="772">
        Fixed computation of velocity derivative in FieldNumericalPropagator.Main.addKeplerContribution()
        with superGetOrbitType() == null.
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
342
343
344
345
      <action dev="luc" type="add" >
        Added AccurateFormatter to output double numbers and dates
        with adaptive number of digits, preserving one ULP accuracy.
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
346
347
348
      <action dev="luc" type="add" >
        Added a units converter.
      </action>
349
350
351
352
      <action dev="luc" type="update" >
        INCOMPATIBLE CHANGE! Now observations parsed from TDM files are in SI units.
      </action>
      <action dev="luc" type="update" issue="768">
353
354
        Allow parsing several variations of ITRF specifications (like itrf-97, ITRF2000, ITRF_2014…).
      </action>
355
356
357
      <action dev="luc" type="add" >
        Added a time scale for drifting on-board clocks.
      </action>
358
359
360
      <action dev="bryan" type="add" issue="523">
        Added support for RINEX 3.X navigation files.
      </action>
361
362
363
      <action dev="bryan" type="update" issue="691">
        Improved consistency between getParametersDrivers() method signatures.
      </action>
364
365
366
      <action dev="andrewsgoetz" type="add" issue="764">
        Added new method to UTCScale which exposes the raw UTC-TAI offset data.
      </action>
367
368
369
      <action dev="bryan" type="fix" issue="670">
        Fixed call to ForceModel.init() in AbstractGaussianContribution class.
      </action>
Thomas Paulet's avatar
Thomas Paulet committed
370
371
372
   	  <action dev="thomas" type="add" issue="712">
      	Added IGS clock file support.
      </action>
373
374
375
376
377
378
379
      <action dev="bryan" type="update" issue="650">
        Methods computeMeanState() and computeOsculatingState()
        of FieldDSSTPropagator are now statics.
      </action>
      <action dev="bryan" type="update" issue="762">
        TabulatelofOffset now implements BoundedAttitudeProvider.
      </action>
380
381
382
      <action dev="luc" type="update" issue="761">
        TabulateProvider now implements BoundedAttitudeProvider.
      </action>
383
384
385
      <action dev="luc" type="fix" issue="760">
        Fixed reference frame in tabulated attitude provider.
      </action>
386
      <action dev="luc" type="update" >
387
388
389
390
      	Renamed SINEXLoader into SinexLoader.
      </action>
      <action dev="luc" type="update" >
        Use DataSource in RinexLoader and SinexLoader.
391
392
393
      </action>
      <action dev="luc" type="update" >
        Renamed NamedData into DataSource.
394
      </action>
395
      <action dev="luc" type="add" issue="474">
396
        Added support for CCSDS ODM V3, with the new
397
398
399
400
401
402
403
404
        Orbit Comprehensive Message format.
      </action>
      <action dev="luc" type="update">
        Overhauled generic Ephemeris and AttitudeEphemeris writing.
      </action>
      <action dev="luc" type="update">
        Overhauled CCSDS messages handling, both parsing and writing.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
405
406
407
      <action dev="amir" type="fix" issue="746">
        Fixed combination of measurements using GNSS phase measurements.
      </action>
408
409
410
      <action dev="bryan" type="add" issue="756">
        Added new method signature in IodGooding using AngularRaDec measurement.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
411
412
413
414
415
416
      <action dev="thomas" type="fix" issue="688">
        Fixed ignored fields from TLE template in TLEPropagatorBuilder.
      </action>
      <action dev="thomas" type="fix" issue="372">
        Added TLE generation.
      </action>
417
418
419
      <action dev="bryan" type="fix" issue="624">
        Allowed dynamic station coordinates when calculating tropospheric delay.
      </action>
420
421
422
      <action dev="bryan" type="update" issue="755">
        Modified IodGooding constructor to be consistent with other IOD methods.
      </action>
423
424
425
      <action dev="bryan" type="add" issue="753">
        Added new method signature in IodLaplace using AngularRaDec measurement.
      </action>
426
427
428
      <action dev="bryan" type="add" issue="752">
        Added new method signature in IodLambert using Position measurement.
      </action>
429
430
431
      <action dev="bryan" type="add" issue="751">
        Added new method signature in IodGibbs using Position measurement.
      </action>
432
      <action dev="luc" type="fix" issue="749">
433
        Allow building PVCoordinates and AngularCoordinates (as well as their Field,
434
435
436
        Absolute and TimeStamped variations) to be build from UnivariateDerivative1
        and UnivariateDerivative2 in addition to DerivativeStructure.
      </action>
437
      <action dev="bryan" type="fix" issue="736">
438
        Fixed NullPointerException in DSSTTesseral Hansen object.
439
      </action>
440
441
442
443
      <action dev="bryan" type="update" issue="601">
      	Changed getPVInPZ90() method to private.
      </action>
      <action dev="bryan" type="fix" issue="744">
444
445
      	Fixed calculation of CR3BP constants.
      </action>
446
      <action dev="bryan" type="update" issue="743">
Thomas Paulet's avatar
Thomas Paulet committed
447
448
449
      	Updated JUnit version to 4.13.1.
      </action>
    </release>
450
451
452
453
    <release version="10.3.1" date="2021-06-16"
             description="Version 10.3.1 is a patch release of Orekit.
             It fixes one critical bug that could cause potential infinite loops in tesselation
             in very rare cases due to numerical noise.">
Luc Maisonobe's avatar
Luc Maisonobe committed
454
455
      <action dev="luc" type="fix" issue="792">
        Fixed potential infinite loops in tesselation in very rare cases due to numerical noise.
456
457
      </action>
    </release>
Thomas Paulet's avatar
Thomas Paulet committed
458
459
460
461
462
463
464
465
466
467
468
469
470
471
    <release version="10.3" date="2020-12-21"
             description="Version 10.3 is a minor release of Orekit.
             It includes both new features and bug fixes. New features introduced
             in 10.3 are: relativistic clock correction for range, phase, and range rate
             measurements, piece wise models for empirical forces, one-way GNSS code
             and phase measurements, support for laser ranging data (both CPF and
             CRD formats), Lense-Thirring and De Sitter relativistic corrections to
             satellite acceleration, support for AGI leap second files, new interfaces
             for attitude ephemeris files, Knocke model for Earth's albedo and infrared,
             as well as several other new features. This release includes an important
             fix in DSST orbit determination allowing to used short period Jacobian
             during state transition matrix calculation. It also fixes issues in Kalman
             orbit determination and CCSDS ADM format. See the list below for a full
             description of the changes.">
472
473
      <action dev="bryan" type="update" issue="741">
        Updated Hipparchus version to 1.8 and updated code with new functionalities.
Thomas Paulet's avatar
Thomas Paulet committed
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
      </action>
   	  <action dev="bryan" type="add" issue="740">
      	Added aggregator for bounded attitude providers.
      </action>
   	  <action dev="thomas" type="add" issue="8">
        Added Knocke's Earth rediffused radiation pressure force model.
      </action>
   	  <action dev="bryan" type="add" issue="739">
      	Allowed initialization of attitude provider from attitude segment.
      </action>
      <action dev="raphael" type="add" issue="705">
        Allowed writing an AEM file from a list of SpacecraftStates.
      </action>
      <action dev="luc" type="add" issue="738">
        Added user-defined max iteration and convergence criterion in SecularAndHarmonic.
      </action>
      <action dev="luc" type="add" issue="737">
        Added loading of AGI LeapSecond.dat files.
      </action>
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
      <action dev="raphael" type="add" issue="686">
        Allowed user-defined format for ephemeris data lines in
        StreamingAemWriter, AEMWriter, StreamingOemWriter and OEMWriter.
      </action>
   	  <action dev="bryan" type="fix" issue="683">
      	Updated building instructions.
      </action>
   	  <action dev="bryan" type="add" issue="734">
      	Added getters for phase measurement ambiguity driver.
      </action>
   	  <action dev="bryan" type="fix" issue="696">
      	Allowed to configure initial covariance for measurements in Kalman Filter.
      </action>
      <action dev="thomas, bryan" type="add" issue="709">
        Added clock drift contribution to range rate measurements.
      </action>
   	  <action dev="bryan" type="fix" issue="687">
      	Fixed Javadoc of ElevationMask.
      </action>
      <action dev="raphael" type="fix" issue="711">
        Allowed definition of a default interpolation degree in both AEMParser and OEMParser.
      </action>
      <action dev="bryan" type="add" issue="733">
        Added Lense-Thirring and De Sitter relativistic effects.
      </action>
      <action dev="melanisti" type="fix" issue="725">
        Fixed missing measurement parameter in InterSatellitesRange measurement.
      </action>
      <action dev="bryan" type="add" issue="732">
        Added documentation for checkstyle configuration.
      </action>
   	  <action dev="thomas" type="fix" issue="730">
      	Removed useless loop over an empty list
      </action>
527
528
529
      <action dev="luc" type="fix" issue="731">
        Fixed parsing of some ICGEM gravity fields files.
      </action>
530
531
532
      <action dev="raphael" type="fix" issue="720">
      	Added support for measurements parameters in UnivariateProcessNoise
      </action>
533
534
535
      <action dev="luc" type="fix" issue="729">
        Fixed wrong handling of RESET-STATE in analytical propagators.
      </action>
536
537
538
      <action dev="luc" type="add" issue="728">
        Allow creating a node detector without an orbit.
      </action>
539
540
541
      <action dev="bryan" type="add" issue="671">
        Added support for laser ranging file formats.
      </action>
542
543
544
      <action dev="clement" type="fix" issue="724">
        Remove range checks in TLE constructor.
      </action>
545
546
547
      <action dev="bryan" type="fix" issue="723">
        Allowed AEM and OEM writers to write header comments.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
548
549
550
551
      <action dev="bryan" type="add" issue="719">
        Added one-way GNSS range and phase measurements for LEO satellite
        orbit determination applications.
      </action>
552
553
554
      <action dev="bryan" type="add" issue="716">
        Added piecewise empirical force model.
      </action>
555
556
557
      <action dev="bryan" type="add" >
        Considered a new implementation for empirical forces, to allow piecewise model.
      </action>
558
559
560
      <action dev="bryan" type="add" issue="703">
        Added inter-satellites phase measurement.
      </action>
561
562
563
      <action dev="bryan" type="fix" issue="695">
        Considered covariance matrix from Position measurement in Kalman estimator.
      </action>
564
565
566
      <action dev="bryan" type="fix" issue="718">
        Fixed orbital state used for short periodic Jacobian computation.
      </action>
567
568
569
570
      <action dev="bryan" type="add" issue="704">
        Allow using user specified velocity error for computing
        tolerance vectors for integrators.
      </action>
571
572
573
      <action dev="bryan" type="add" issue="714">
        Added frequency deviation for range-rate measurements.
      </action>
574
575
576
577
      <action dev="bryan" type="add" issue="715">
        Added relativistic clock correction for range, phase and
        inter-satellite range measurements.
      </action>
578
579
580
      <action dev="bryan" type="fix" issue="706">
        Fixed missing measurement parameter in inter-satellites range measurement.
      </action>
Thomas Paulet's avatar
Thomas Paulet committed
581
582
583
   	  <action dev="thomas" type="fix" issue="713">
        Fixed computation of DSST short period Jacobian.
      </action>
584
585
586
      <action dev="luc" type="fix" issue="699">
        Fixed missing measurement parameter in Phase measurement
      </action>
587
588
589
590
591
      <action dev="luc" type="fix" issue="701">
        Fixed wrong handling of propagation parameters by Kalman filter in multi-satellite
        context
      </action>
    </release>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
592
    <release version="10.2" date="2020-07-14"
593
594
595
596
597
598
             description="Version 10.2 is a minor release of Orekit.
             It includes both new features and bug fixes. New features introduced
             in 10.2 are: support for CCSDS ADM files, modelling of trajectories
             around Lagrangian points using CR3BP model, a piece wise drag force model,
             a time span tropospheric estimated model, an estimated ionospheric model,
             an improved modelling of the GNSS phase measurement, several bug fixes
599
600
601
602
             for date functionnalities, a new organization of the maneuvers package,
             a configurable low thrust maneuver model based on detectors,
             support for CSSI space weather data, , as well as several other minor
             features and bug fixes. See the list below for a full description
603
             of the changes.">
604
605
606
      <action dev="bryan" type="fix" issue="661">
        Fixed visibility of WindUpFactory.
      </action>
607
608
609
      <action dev="bryan" type="update" >
        Increased visibility of setters in CCSDS ADM related classes.
      </action>
610
611
612
613
      <action dev="clement" type="add" issue="656">
        Added CssiSpaceWeatherLoader which provides three-hourly space weather
        data and implements DTM2000InputParameters and NRLMSISE00InputParameters
      </action>
614
615
616
      <action dev="maxime" type="update" issue="690">
        Increased visibility of setters in CCSDS OEM related classes.
      </action>
617
618
619
      <action dev="bryan" type="update" >
        Improved Orekit performance by using new Hipparchus' differentiation classes.
      </action>
620
621
622
      <action dev="bryan" type="update" issue="682">
        Changed visibility of OrbitType parameter drivers' names to public.
      </action>
623
624
625
626
      <action dev="evan" type="add" issue="684" due-to="Mikael">
        Fix infinite loop in event detection when a RESET_* event causes two other events
        to occur simultaneously and discontinuously.
      </action>
Evan Ward's avatar
Evan Ward committed
627
628
629
      <action dev="evan" type="add" issue="684">
        Add FieldFunctionalDetector.
      </action>
630
631
632
      <action dev="mikael" type="add">
        Added a configurable low thrust maneuver based on detectors.
      </action>
633
634
635
      <action dev="bryan" type="fix" issue="605">
        Added support for Rinex C0, L0, S0 and D0 observation types.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
636
637
638
      <action dev="bryan" type="fix" issue="641">
        Allow Pattern functionalities instead of String.replaceAll() and String.split().
      </action>
639
640
641
642
      <action dev="evan" type="fix" issue="658">
        Fix invalid hour when using TimeScale(double) or TimeScale(int, double) with a
        value in [86400, 86401]. Treat these values as indicating a leap second.
      </action>
643
644
645
      <action dev="evan" type="add" issue="677">
        Add AbsoluteDate.toStringRfc3339() and DateTimeComponents.toStringRfc3339().
      </action>
646
647
648
649
650
651
      <action dev="evan" type="fix" issue="681">
        Fix AbsoluteDate.getComponents(...) produces invalid times.
      </action>
      <action dev="evan" type="fix" issue="676">
        Fix AbsoluteDate.getComponents(utc) throws "non-existent time 23:59:61".
      </action>
652
653
654
      <action dev="bryan" type="fix" issue="651">
        Improved use of try with resources statement.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
655
      <action dev="bryan" type="fix" issue="679" due-to="luc, maxime">
656
657
        Improved testRetrogradeOrbit in CircularOrbit and KeplerianOrbit tests.
      </action>
658
659
660
      <action dev="bryan" type="fix" issue="680">
        Allowed ephemeris class to be used with absolute PV coordinates.
      </action>
661
662
663
      <action dev="bryan" type="fix" issue="674">
        Added an exception if eccentricity is negative for keplerian orbit.
      </action>
Evan Ward's avatar
Evan Ward committed
664
665
666
      <action dev="evan" type="fix" issue="667">
        Fix build on CentOS/RedHat 7.
      </action>
667
668
669
      <action dev="bryan" type="fix" issue="662">
        Fixed forgotten additional state in Ephemeris propagator.
      </action>
670
671
672
      <action dev="evan" type="update">
        Improve error message for TimeStampedCache by including requested date.
      </action>
673
674
675
      <action dev="bryan" type="fix" issue="663">
        Fixed initialization of the triggering event for ImpulseManeuver class.
      </action>
Clément Jonglez's avatar
Clément Jonglez committed
676
677
678
      <action dev="clement" type="fix" issue="664">
        Fix sign of RAAN and PA parameters in TLE constructor if negative, range check most other orbit parameters.
      </action>
679
680
681
      <action dev="bryan" type="add" issue="669">
        Added estimated ionospheric model.
      </action>
682
683
684
      <action dev="bryan" type="add" issue="645">
        Merged phase-measurement branch into develop.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
685
686
687
      <action dev="bryan" type="add" >
        Added a time span tropospheric estimated model.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
688
689
690
      <action dev="bryan" type="add" issue="646">
        Merged cr3bp branch into develop.
      </action>
691
692
693
      <action dev="bryan" type="add" issue="660">
        Improved exception handling in IODGibbs.
      </action>
694
695
696
      <action dev="bryan" type="add" issue="647">
        Improved package-info documentation.
      </action>
697
      <action dev="nick" type="update" >
698
        Upgrade maven-checkstyle-plugin to 3.1.1.
699
      </action>
700
701
702
      <action dev="bryan" type="add" issue="657">
        Added multiplexed Orekit fixed step handler.
      </action>
703
704
705
      <action dev="bryan" type="add" issue="655">
        Added support for CCSDS ADM files.
      </action>
Maxime Journot's avatar
Maxime Journot committed
706
707
708
      <action dev="maxime" type="add" issue="649">
        Added a piece wise drag force model: TimeSpanDragForce in forces package.
      </action>
Maxime Journot's avatar
Maxime Journot committed
709
710
711
      <action dev="yannick" type="fix" issue="654">
        Prevent divergence of Saastomoinen model pathDelay method at low elevation.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
712
713
714
715
716
717
718
719
720
721
722
723
      <action dev="bryan" type="fix" issue="542">
        Removed duplicated BUILDING.txt file.
      </action>
      <action dev="bryan" type="add" issue="504">
        Allowed Eckstein Hechler propagator to be initialized with a mean orbit.
      </action>
      <action dev="bryan" type="update" issue="644">
        Removed try and catch statements for ParameterDriver initialization.
      </action>
      <action dev="bryan" type="fix" issue="613">
        Allowed DSST propagation in osculating type with event detectors.
      </action>
724
    </release>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
725
    <release version="10.1" date="2020-02-19"
726
727
728
729
730
731
732
733
734
735
736
             description="Version 10.1 is a minor release of Orekit.
             It includes both new features and bug fixes. New features introduced
             in 10.1 are: wind-up effect for phase measurement, NeQuick ionospheric model,
             support for Hatanaka compact RINEX format, methods for the combination
             of GNSS measurements, Laplace method for initial orbit determination,
             a new Field Of View package, comparison methods for absolute dates,
             a new multiplexed measurement, specialized propagators for GNSS constellation,
             default constructors for DSST force models, covariance matrices in OEM writer,
             a new data context implementation, connection with Gitlab CI, improved documentation,
             the migration of the tutorials to a separate sister project, as well as several other minor
             features and bug fixes. See the list below for a full description of the changes.">
Evan Ward's avatar
Evan Ward committed
737
738
739
      <action dev="ward" type="fix">
        Improve performance of loading CCSDS files.
      </action>
740
741
742
      <action dev="ward" type="fix" issue="639" due-to="qmor">
        In Ellipsoid.pointOnLimb(...) improved numerical stability by cancelling terms.
      </action>
743
      <action dev="maxime" type="fix" issue="639" due-to="qmor">
744
745
        Fixed pointOnLimb method in bodies.Ellipsoid class. Normalized equations should now avoid numerical issues.
      </action>
746
747
748
749
      <action dev="evan" type="fix" issue="627">
        Fix TimeScalesFactory.getGMST(conventions, simpleEop) always returning the same
        value.
      </action>
750
751
752
      <action dev="evan" type="fix" issue="636">
        Fix UT1 and Earth rotation during a leap second. Was off by 1 second.
      </action>
753
      <action dev="luc" type="fix" issue="635">
754
755
        Fixed inconsistency in constant thrust maneuver acceleration.
      </action>
756
      <action dev="evan" type="add" >
757
758
759
        Added an annotation and a compiler plugin that generates a warning
        when default context is used without being explicitly annotated.
      </action>
760
      <action dev="luc" type="fix" issue="632" due-to="Evan Ward">
761
762
        Fixed projection to ellipsoid at pole.
      </action>
Evan Ward's avatar
Evan Ward committed
763
764
765
      <action dev="evan,luc,yannick" type="add" issue="607">
        Add DataContext, a way to load separate sets of EOP, leap seconds, etc.
      </action>
766
      <action dev="luc" type="fix" issue="630">
767
768
        Improve performance of UnixCompressFilter.
      </action>
769
      <action dev="luc" type="fix" issue="631">
770
771
        Improve performance of HatanakaCompressFilter.
      </action>
772
      <action dev="evan" type="fix" issue="629">
773
774
        Improve performance of ZipJarCrawler.
      </action>
775
776
777
778
      <action dev="bryan" type="add" issue="625">
      	Added default constructors for DSSTZonal and DSSTTesseral. 
      </action>   
      <action dev="bryan" type="add" issue="622">
779
780
      	Added OrekitException for unknown number of frequencies in ANTEX files. 
      </action>
781
      <action dev="bryan" type="add" issue="621">
Bryan Cazabonne's avatar
Bryan Cazabonne committed
782
783
      	Added OrekitException in the case where IONEX header is corrupted. 
      </action>
Gautreau Dylan's avatar
Gautreau Dylan committed
784
785
786
787
788
789
      <action dev="dylan" type="add" issue="359">
      	Added a specific test for issue 359 in BatchLSEstimatorTest.
      	The test verifies that a Newtonian attraction is known
      	by both the propagator builder and the propagator when
      	it is not added explicitly.
      </action>
790
791
792
      <action dev="dylan" type="add" issue="367">
      	Added write of covariance matrices in OEMWriter.
      </action>
793
794
795
      <action dev="dylan" type="fix" issue="619">
        Fixed origin transform in CcsdsModifierFrame.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
796
797
798
      <action dev="bryan" type="add" issue="611">
        Added SBAS orbit propagator.
      </action>
799
800
801
      <action dev="bryan" type="fix" issue="617">
        Fixed null pointer exception in MultiplexedMeasurement.
      </action>
802
803
804
805
      <action dev="luc" type="fix" issue="575">
        Allow users to provide custom convergence checkers for
        batch least squares orbit determination.
      </action>
806
807
808
      <action dev="luc" type="add" issue="614">
        Added multiplexed measurements.
      </action>
809
810
811
812
      <action dev="luc" type="fix" issue="616">
        Fixed missed changes updates in ParameterDriversList embedding
        other ParameterDriversList instances.
      </action>
813
814
815
      <action dev="luc" type="update">
        Moved tutorials to a separate sister project.
      </action>
816
817
818
      <action dev="bryan" type="add" due-to="Shiva Iyer">
        Added Laplace method for initial orbit determination.
      </action>
819
820
821
      <action dev="bryan" type="fix" issue="612">
        Fixed DSST orbit determination tutorial.
      </action>
822
823
824
      <action dev="bryan" type="add" issue="610">
        Added IRNSS orbit propagator.
      </action>
825
826
827
      <action dev="bryan" type="add" issue="608">
        Added support for RINEX 3.04 files.
      </action>
Gabriele Serafini's avatar
Gabriele Serafini committed
828
829
830
831
832
      <action dev="gabb" type="fix" issue="533">
        Fixed bugs in the derivatives computation in IodGooding.
        Fixed bugs in IodLambert when there's more than an half revolution
        between start and final position.
      </action>
833
834
835
836
      <action dev="bryan" type="fix" issue="604">
        Fixed parsing of compact RINEX files with wrong key in header
        produced by some Septentrio receivers.
      </action>
837
838
839
840
      <action dev="luc" type="fix" issue="603">
        Fixed parsing of compact RINEX files with missing types in header
        produced by some Septentrio receivers.
      </action>
841
842
843
      <action dev="evan" type="fix" issue="589">
        Improve performance of AggregateBoundedPropagator by factor of 2.
      </action>
844
845
846
      <action dev="luc" type="fix" issue="600">
        Fixed parsing of compact RINEX files with many observation types.
      </action>
847
848
849
      <action dev="bryan" type="fix">
        Fixed poor design of GLONASS numerical propagator.
      </action>
850
851
852
      <action dev="luc" type="fix" issue="599">
        Fixed an issue in projection to flat ellipse.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
853
854
855
856
      <action dev="bryan" type="fix" issue="598">
        Added lazily addition of Newtonian attraction to the DSST and
        numerical propagator builders.
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
857
858
859
860
861
      <action dev="luc" type="add" issue="595">
        Added EllipticalFieldOfView (with two different ways to define the
        ellipticity constraint) that can be used in FieldOfViewDetector,
        GroundFieldOfViewDetector and FootprintOverlapDetector.
      </action>
862
863
864
865
866
867
      <action dev="luc" type="add">
        Fields of view with regular polygonal shape can now be built either
        based on a defining cone inside the Fov and touching it at edges
        middle points, or based on a defining cone outside the Fov and touching
        it at vertices.
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
868
869
870
871
      <action dev="luc" type="add" issue="594">
        Added CircularFieldOfView that can be used in FieldOfViewDetector,
        GroundFieldOfViewDetector and FootprintOverlapDetector.
      </action>
872
873
874
875
      <action dev="luc" type="add">
        Set up a general hierarchy for Field Of View with various shapes. At
        start, it includes DoubleDihedraFieldOfView and PolygonalFieldOfView.
      </action>
876
877
878
      <action dev="luc" type="add" issue="592">
        Added FilesListCrawler to load files from an explicit list.
      </action>
879
880
881
      <action dev="evan" type="fix" issue="583">
        Fix AbsoluteDate.compareTo() for future/past infinity.
      </action>
882
883
884
885
      <action dev="luc" type="fix" issue="588">
        Fixed wrong handling of spacecraft states in multi-satellites orbit determination
        and multi-satellite measurements generation.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
886
887
888
      <action dev="bryan" type="fix" issue="585">
        Improved contributing guide.
      </action>
889
      <action dev="petrus" type="fix" issue="570">
890
        Make FieldOfView.getFootprint public.
891
      </action>
892
893
894
      <action dev="bryan" type="add">
        Added combination of measurements.
      </action>
895
896
897
      <action dev="bryan" type="fix">
        Fix values of GPS C2D, L2D, D2D and S2D frequencies.
      </action>
898
899
900
      <action dev="bryan" type="add">
        Add Nequick ionospheric model.
      </action>
901
902
903
904
      <action dev="luc" type="fix" issue="581">
        Fixed spurious empty line insertion during Rinex 2 decompression
        when the number of observations per satellite is a multiple of 5
      </action>
905
906
907
908
      <action dev="luc" type="fix" issue="580">
        Fixed decompression of very small negative values in Hatanaka
        Compact RINEX format.
      </action>
909
910
911
912
      <action dev="luc" type="fix" issue="578">
        Orbit determination tutorials (and tests too) now supports compressed
        measurement files (gzip, Unix compress, Hatanaka Compact RINEX).
      </action>
913
914
915
      <action dev="luc" type="fix" issue="579">
        Handle properly special events flags in Hatanaka Compact RINEX format.
      </action>
916
917
918
919
      <action dev="luc" type="fix" issue="483">
        Reset additional state changed by event handlers and not managed by any
        additional state providers.
      </action>
920
921
922
      <action dev="luc" type="add" issue="472">
        Added support for Hatanaka Compact RINEX format.
      </action>
923
924
925
926
      <action dev="luc" type="fix" issue="574">
        Cope with input stream readers that keep asking for new bytes after end
        of Unix compressed files has been reached.
      </action>
927
928
929
      <action dev="luc" type="fix" issue="573">
        Added detection of some corrupted Unix-compressed files.
      </action>
930
931
932
      <action dev="bryan" type="fix" issue="572">
        Fixed the Saastamoinen model when station altitude is bigger than 5000.0 meters.
      </action>
933
934
935
      <action dev="luc" type="fix" issue="568">
        Fixed too fast step increase in a bracketing attempt.
      </action>
936
937
938
      <action dev="luc" type="add">
        Added phase measurement builder.
      </action>
939
940
941
      <action dev="luc" type="add">
        Added getWavelength in GNSS Frequency.
      </action>
Evan Ward's avatar
Evan Ward committed
942
    </release>
Evan Ward's avatar
Evan Ward committed
943
944
945
946
947
948
949
950
951
952
953
954
955
    <release version="10.0" date="2019-06-24"
             description="Orekit 10.0 is a major new release. It includes DSST OD,
             propagation in non-inertial frames, specialized propagators for GNSS
             constellations, a new ionospheric model, modeling for phase measurements, the
             LAMBDA method for phase ambiguity resolution, Shapiro effect for range
             measurements, improved documentation, as well as several other new features
             and bug fixes. This release fixes a security denial of service bug regarding
             itrf-versions.conf present since Orekit 9.2. Some APIs have incompatibly
             changed since the 9.X series including the format of itrf-versions.conf,
             removal of deprecated methods, reorganization of the models package, as well
             as updates to AbstractDetector, AbstractGNSSAttitudeProvider, DragSensitive,
             RadiationSensitive, and ZipJarCrawler. See the list below for a full
             description of the changes.">
Evan Ward's avatar
Evan Ward committed
956
957
958
      <action dev="evan" type="fix">
        Fix  name of GLONASS G2 frequency.
      </action>
959
960
961
      <action dev="luc" type="fix" >
        Fixed accuracy of dates conversions from java dates.
      </action>
Evan Ward's avatar
Evan Ward committed
962
963
964
      <action dev="evan" type="fix" issue="566">
        Make ITRFVersionLoader public.
      </action>
965
966
967
      <action dev="bryan" type="fix" issue="564">
        Fixed private argument of getLLimits() abstract method.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
968
969
970
      <action dev="bryan" type="fix" issue="565">
        Fixed static loading of UTC for GLONASS reference epoch.
      </action>
971
972
973
974
975
976
      <action dev="luc" type="fix" issue="547">
        Added a tile/sampling aiming direction that diverts singularity outside of a
        area of interest. This is mainly useful when sampling areas of interest that
        cover the pole as the pole is singular for classical aiming directions (constant
        azimuth or along track).
      </action>
977
978
979
980
981
      <action dev="luc" type="update" >
        Removed latitude limitation in AlongTrackAiming. If latitude is above (resp. below)
        the maximum (resp. minimum) latitude reached by the defining orbit, then aiming
        will be towards East for prograde orbits and towards West for retrograde orbits.
      </action>
982
983
984
      <action dev="bryan" type="fix">
        Fixes broken links on Orekit JavaDoc.
      </action>
985
986
987
       <action dev="pascal" type="fix" issue="558">
        Fixes broken links on Maven site.
      </action>
988
989
990
      <action dev="luc" type="fix" issue="559">
        Take into account changes in MSAFE files names published by NASA.
      </action>
991
992
993
      <action dev="bryan" type="add">
        Add Global Ionosphere Map model.
      </action>
994
995
996
      <action dev="maxime" type="add" issue="554">
        Added propagation in inertial frame.
      </action>
997
998
999
1000
      <action dev="luc" type="fix" issue="557">
        Improved documentation about DatesSelector not being reusable across several
        schedulers during measurements generation.
      </action>