changes.xml 216 KB
Newer Older
1
<?xml version="1.0" encoding="UTF-8" ?>
Luc Maisonobe's avatar
Luc Maisonobe committed
2
<!-- Copyright 2002-2022 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.3" date="TBD" description="TBD">
24
25
26
      <action dev="maxime" type="update" issue="955">
        Added method to get measurement types.
      </action>
27
28
29
      <action dev="bryan" type="add" issue="901">
        Added additional state provider for covariance matrix propagation.
      </action>
30
31
32
33
      <action dev="evan" type="add">
        Added constructor to AggregateBoundedPropagator for more control over which
        propagator is used.
      </action>
34
35
36
      <action dev="greyskyy" type="add">
        Added waypoint interpolation of PVCoordinatesProvider.
      </action>
37
38
39
      <action dev="evan" type="add" issue="954">
        Added method to round DateTimeComponents for custom formatting.
      </action>
40
    </release>
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
    <release version="11.2.1" date="2022-08-01"
             description="Version 11.2.1 is a patch release of Orekit.
             It fixes issues related to the parsing and writing of CCSDS CDM files.
             It also fixes issues related to date management.
             Finally it includes some improvements in the class documentation">
      <action dev="gc" type="fix" issue="945">
        Fixed documentation issue, RTNCovariance constructor initializes the covariance matrix with NaN.
      </action>
      <action dev="gc" type="fix" issue="944">
        Fixed wrong parsing of Area_DRG and Area_SRP from CDM.
      </action>
      <action dev="gc" type="fix" issue="942">
        Fixed N/A value not recognized for field MANEUVERABLE when parsing CDMs.
      </action>
      <action dev="luc" type="fix" issue="939">
        Fixed negative offset when shifting an AbsoluteDate.
      </action>
      <action dev="luc" type="fix" issue="935">
        Fixed internal error on DateEvent capture events in v11.1.2.
      </action>
    </release>
62
63
64
65
66
67
68
69
70
71
72
73
    <release version="11.2" date="2022-06-20"
             description="Version 11.2 is a minor release of Orekit.
             It includes both new features and bug fixes. New features introduced
             in 11.2 are: the Hatch filter for GNSS measurements smoothing, the parsing
             and writing of CCSDS CDM in both KVN and XML formats, the parsing of SOLFSMY
             and DTC data for JB2008 atmospheric model, the parsing of EOP in Sinex
             files, new measurements for orbit determination: TDOA, bi-static range and
             range rate, support for ITRF 2020 version, the computation of mean orbital
             parameters in the sense of Eckstein-Hechler or Brouwer-Lyddane models. It
             also includes an update of the CCSDS ODM format to latest draft version and an
             improvement of the frame transformation.
             See the list below for a full description of the changes.">
74
75
76
      <action dev="bryan" type="update">
        Added possibility to custom analytical mean parameters conversion.
      </action>
77
78
79
      <action dev="louis" type="add" issue="666">
        Added Hatch filters for smoothing of GNSS measurements.
      </action>
80
81
82
      <action dev="bryan" type="update" issue="895">
        Allowed parsing of SP3 files without EOF key.
      </action>
83
84
85
      <action dev="gc" type="add" issue="790">
        Added writing of velocity record in CPF file writers.
      </action>
86
87
88
      <action dev="bryan" type="update" issue="804">
        Added support for loading EOP from Sinex files.
      </action>
89
90
91
      <action dev="luc" type="fix" issue="936">
        Raised a too stringent convergence threshold in Eackstein-Hechler model.
      </action>
92
93
94
      <action dev="bryan" type="add" issue="932">
        Added a way to compute mean parameters in Brouwer-Lyddane model.
      </action>
95
96
97
      <action dev="markrutten" type="add" issue="922">
        Added bistatic range measurement.
      </action>
98
99
100
101
      <action dev="luc" type="add" issue="933">
        Added a way to compute mean parameters in Eckstein-Hechler model.
      </action>
      <action dev="luc" type="update" issue="934">
102
103
        Updated CCSDS ODM to latest draft version (pink book).
      </action>
104
      <action dev="luc" type="fix" issue="930">
105
106
        Prevents zero max check intervals in maneuvers triggers detectors.
      </action>
107
       <action dev="luc" type="add">
108
109
        Added detection of non-positive max check interval and threshold.
      </action>
110
111
112
      <action dev="luc" type="add" issue="929">
        Allow additional derivatives providers to update main state derivatives.
      </action>
113
      <action dev="luc" type="fix" issue="928">
114
115
        Fixed indexing error when estimating a subset of orbital parameters.
      </action>
116
      <action dev="luc" type="update" issue="925">
117
118
        Don't loose additional derivatives when generating ephemeris.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
119
120
121
      <action dev="gc" type="fix" issue="889">
        Fixed unexpected behavior of two tests in OrekitMessagesTest.
      </action>
122
123
124
      <action dev="mvanel" type="add" issue="777">
        Added support for parsing and writing CDM files in both KVN and XML formats.
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
125
126
127
      <action dev="luc" type="add" issue="918">
        Added support for ITRF-2020.
      </action>
128
129
130
      <action dev="pascal" type="add" issue="911">
        Added TDOA and bistatic range rate measurements.
      </action>
131
132
133
      <action dev="bryan" type="add" issue="900">
        Added init method in {Field}AdditionalStateProvider.
      </action>
134
135
136
      <action dev="louis" type="add" issue="888">
        Added J2-contribution for relativistic clock correction.
      </action>
137
138
139
      <action dev="evan" type="update">
        Allow creating Geoid without default data context.
      </action>
140
141
142
      <action dev="louis" type="add" issue="759">
        Added data loaders for Space Environment's JB2008 data.
      </action>
143
144
145
      <action dev="bryan" type="add" issue="898">
        Added static method to create a BodyFacade from a CenterName.
      </action>
Evan Ward's avatar
Evan Ward committed
146
147
148
149
      <action dev="evan" type="update" issue="903">
        Added Frame.getStaticTransformTo(...) and supporting methods to improve
        performance.
      </action>
150
    </release>
151
152
153
154
155
156
    <release version="11.1.2" date="2022-04-27"
             description="Version 11.1.2 is a patch release of Orekit.
             It fixes issues related to the parsing and writing of CCSDS and ILRS files.
             It also fixes issues in ECOM2 solar radiation pressure model, event bracketing,
             ephemeris generation, and NTW local orbital frame.
             Finally it includes some improvements in the class documentation">
157
158
159
      <action dev="luc" type="fix" issue="917">
        Fixed missing tags in XML generation by EphemerisWriter.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
160
161
162
      <action dev="louis" type="fix" issue="886">
        Fixed rollover in CRD parser.
      </action>
163
164
165
166
      <action dev="louis" type="fix" issue="786">
        Fixed NaNs when constructing Keplerian orbit from PV
        computed from KeplerianOrbit.
      </action>
167
      <action dev="louis" type="fix" issue="826">
168
        Fixed ephemeris generation using PropagatorParallelizer.
169
      </action>
170
171
172
      <action dev="luc" type="fix" issue="921">
        Fixed event bracketing problem induced by numerical noise at end of search interval.
      </action>
173
174
175
      <action dev="luc" type="fix" issue="919">
        Fixed ephemeris generation with several derivatives providers.
      </action>
176
177
178
      <action dev="maxime" type="fix" issue="909">
        Fixed wrong implementation of NTW LOF frame.
      </action>
179
180
181
      <action dev="bryan" type="fix" issue="910">
        Fixed eD and eY equation in ECOM2 model.
      </action>
182
183
184
      <action dev="pascal" type="fix" issue="908">
        Fixed unmanaged comment in OMM.
      </action>
Pascal Parraud's avatar
Pascal Parraud committed
185
186
187
      <action dev="pascal" type="fix" issue="906">
        Fixed unmanaged units in OMM.
      </action>
188
189
190
      <action dev="evan" type="fix" issue="882">
        Fix StreamingOemWriter in ITRF and without optional fields.
      </action>
191
192
193
      <action dev="evan" type="fix" issue="912">
        Fix StreamingOemWriter without acceleration.
      </action>
194
195
196
197
      <action dev="luc" type="fix" issue="184">
        Fixed non-bracketing issue when RESET_STATE slightly moves an event at the start
        of a step and another regular event happens in the first half of the same step
      </action>
Pascal Parraud's avatar
Pascal Parraud committed
198
    </release>
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
    <release version="11.1.1" date="2022-03-17"
             description="Version 11.1.1 is a patch release of Orekit.
             It fixes issues related to the parsing of SP3 and Rinex files. It also takes
             additional derivatives into account in {Field}SpacecraftState.shiftedBy method.
             Finally it includes some improvements in the class documentation">
      <action dev="lars" type="add" issue="896">
        Added Git configuration instructions in contributing guide.
      </action>
      <action dev="lars" type="fix" issue="897">
        Corrected wrong path in release guide.
      </action>
      <action dev="bryan" type="fix" issue="894">
        Fixed dead link in contributing guidelines.
      </action>
      <action dev="bryan" type="fix" issue="698">
        Added missing BDS-3 signal for Rinex 3.04.
      </action>
      <action dev="bryan" type="fixed" issue="892">
        Removed check of not supported keys in RinexLoader.
      </action>
      <action dev="lirw1984" type="update" issue="895">
220
221
        Enhanced parsing of SP3 files.
      </action>
222
223
224
225
      <action dev="luc" type="add" issue="902">
        Take additional derivatives into account in {Field}SpacecraftState.shiftedBy.
      </action>
    </release>
226
227
228
229
230
231
232
233
234
235
236
    <release version="11.1" date="2022-02-14"
             description="Version 11.1 is a minor release of Orekit.
             It includes both new features and bug fixes. New features introduced
             in 11.1 are: the estimation of maneuver start/stop time, the Brouwer-Lyddane
             orbit propagation model with Warren Phipps’ correction for the critical
             inclination of 63.4° and the perturbative acceleration due to atmospheric
             drag, the Extended Semi-analytical Kalman Filter, a new API for
             State Transition Matrix and Jacobian matrices computation, orbit
             determination  using analytical propagation models, parsing of ICGEM V2.0 format.
             This release includes important fixes in CCSDS files, TimeSpanMap, and
             display of dates. See the list below for a full description of the changes.">
237
238
239
240
241
      <action dev="luc" type="fix" issue="722">
        Prefer values from Bulletin B rather than Bulletin A if both are present
        in rapid data column format. This handling of priority was already in
        place for XML file, but not for column format.
      </action>
242
243
244
245
246
      <action dev="luc" type="fix" issue="448">
        Added support for ICGEM V2.0 format for piecewise gravity fields
        that contain discontinuities around major earthquakes, like
        Eigen 6S4 V2.
      </action>
247
248
249
250
      <action dev="andrewsgoetz" type="add">
        Added Automatic-Module-Name "org.orekit" to JAR manifest to improve usability
        of Orekit by modular Java projects.
      </action>
251
252
253
      <action dev="julie,bryan,maxime" type="add" issue="823">
        Added the Extended Semi-analytical Kalman Filter.
      </action>
254
255
256
      <action dev="luc" type="fix" issue="875">
        Allow empty comments in CCSDS messages
      </action>
257
258
259
      <action dev="luc" type="fix" issue="884">
        Deprecated TimeSpanMap.getTransitions()
      </action>
Luc Maisonobe's avatar
Luc Maisonobe committed
260
      <action dev="luc" type="fix" issue="832,885">
261
262
        Allow to enter the same transition date in TimeSpanMap several times
      </action>
263
264
      <action dev="luc" type="fix" issue="833">
        Added a way to erase all earlier/later transitions when adding an entry
265
        and added addValidBetween to TimeSpanMap.
266
      </action>
267
268
      <action dev="bryan" type="add">
        Added a new and simpler API for State Transition Matrix and Jacobian
Bryan Cazabonne's avatar
Bryan Cazabonne committed
269
        matrix computation for analytical orbit propagators.
270
      </action>
271
272
273
      <action dev="bryan" type="fix" issue="878">
        Fixed writing of ITRF frames before 2000 when generating CCSDS files.
      </action>
274
275
276
      <action dev="luc" type="fix" issue="836">
        Use the orbit normalization feature to reduce discontinuities across impulsive maneuvers.
      </action>
277
278
279
      <action dev="luc" type="add">
        Added an orbit normalization feature.
      </action>
280
281
282
283
284
      <action dev="evan" type="add" issue="881">
        Add AbsoluteDate.toStringWithoutUtcOffset(TimeScale, int) and
        DateTimeComponents.toStringWithoutUtcOffset(int, int) to emulate
        AbsoluteDate.toString() from Orekit 10.
      </action>
285
286
287
      <action dev="evan" type="fix" issue="880">
        Fix UTC offset in DateTimeComponents.toString(int, int)
      </action>
288
289
290
      <action dev="luc" type="fix" issue="849">
        Added detector to FieldEventHandler.init arguments list.
      </action>
291
292
293
      <action dev="luc" type="fix" issue="837">
        Added getters for raw detectors in event shifter, slope filter and predicate filter.
      </action>
294
295
296
      <action dev="bryan" type="fix" issue="874">
        Fixed initialization of maneuver trigger events when using EventBasedManeuverTriggers.
      </action>
297
298
299
300
      <action dev="luc" type="fix" issue="872">
        Fixed multiple detection of events when using propagate(start, target) with
        integration-based propagators.
      </action>
301
302
303
      <action dev="bryan" type="add" issue="871">
        Added atmospheric drag effect for Brouwer-Lyddane model.
      </action>
304
305
306
      <action dev="bryan" type="add" issue="869">
        Allowed Brouwer-Lyddane model to work for the critical inclination.
      </action>
307
308
309
      <action dev="bryan" type="fix" issue="867">
        Fixed handling of multiple historical eccentricities for a same station.
      </action>
310
311
312
      <action dev="bryan" type="fix" issue="868">
        Fixed writing of whitespace characters in CPF writer.
      </action>
313
314
315
      <action dev="bryan" type="fix" issue="864">
        Fixed BStar estimation in TLE-based orbit determination.
      </action>
316
317
318
      <action dev="mvanel" type="add" issue="653">
        Added Brouwer-Lyddane orbit propagator.
      </action>
319
      <action dev="luc" type="add" issue="865">
320
321
        Added derivatives with respect to maneuvers start/stop dates
        or median date/duration.
322
      </action>
323
324
325
      <action dev="luc" type="add" >
        Added observers for maneuvers triggers.
      </action>
326
327
328
      <action dev="luc" type="fix" issue="853">
        Added field-based init method in ForceModel and DSSTForceModel.
      </action>
329
330
331
      <action dev="luc" type="fix" >
        Added ParameterDrivenDateIntervalDetector and FieldParameterDrivenDateIntervalDetector.
      </action>
332
333
334
      <action dev="luc" type="add" >
        Added DateDriver to drive dates using a ParameterDriver.
      </action>
335
336
337
      <action dev="luc" type="fix" issue="848">
        Allow backward propagation in EventBasedManeuverTriggers.
      </action>
338
339
340
341
      <action dev="luc" type="add" >
        Added IntervalEventTrigger and StartStopEventsTrigger to streamline
        several ways to trigger maneuvers.
      </action>
342
343
344
345
346
      <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>
347
348
349
350
      <action dev="luc" type="add" >
        Replaced AdditionalEquations by AdditionalDerivativesProvider with
        support for dimension retrieval and yield feature between providers.
      </action>
351
352
353
      <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
354
355
        and DSSTPropagator (both in batch least squares and in Kalman filter), but it
        is expected to be generalized to analytical propagators as well when it is
356
357
        stabilized.
      </action>
358
359
360
361
362
      <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>
363
      <action dev="luc" type="add">
364
365
        Manage dependencies between additional states in propagators using a yield
        feature between providers.
366
      </action>
367
      <action dev="luc" type="add" >
368
369
        SpacecraftState now handle derivatives of additional states.
      </action>
370
371
372
      <action dev="luc" type="add" issue="862">
        PropagatorParallelizer now preserves existing step handlers in the propagators it runs.
      </action>
user's avatar
user committed
373
374
375
      <action dev="ShippingEnjoyer" type="add">
        Get rid of StringBuffer for logging without unnecessary synchronization (bias-locking disabled at jdk18)
      </action>
376
    </release>
377
378
379
380
381
382
    <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.">
383
         <action dev="bryan" type="fix" issue="859" due-to="Emmanuel Papanagiotou">
384
385
        Allowed custom setting of state to TLE conversion in propagator builder. 
      </action>
386
         <action dev="bryan" type="fix" issue="847">
387
388
        Fixed handling of comments in CRD files.
      </action>
389
         <action dev="bryan" type="fix" issue="851">
390
391
        Fixed deserialization of TLE caused by the bStarParameterDriver.
      </action>
392
         <action dev="bryan" type="fix" issue="850">
393
394
        Fixed indexes when build state transition matrix for multi sat Kalman.
      </action>
395
         <action dev="sdinot" type="update">
396
397
        Updated the release guide to remove actions that are no longer required.
      </action>
398
    </release>
399
400
401
402
403
    <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">
404
         <action dev="bryan" type="fix" issue="846">
405
406
        Fixed wrong computation of relativistic clock correction for GNSS measurements.
      </action>
407
         <action dev="bryan" type="fix" issue="845">
408
409
        Fixed parsing of Rinex clock files.
      </action>
410
         <action dev="bryan" type="fix" issue="844">
411
412
        Fixed null pointer exception when constructing CPF from coordinates.
      </action>
413
         <action dev="bryan" type="update" issue="843">
414
415
416
        Improved documentation of solar radiation pressure class to include
        additional information about osculating bodies.
      </action>
417
         <action dev="sdinot" type="update" issue="842">
418
419
        Used the latest version of Maven available in RedHat 8.
      </action>
420
         <action dev="pascal" type="fix" issue="839">
421
422
        Fixed handling of time system in OemWriter.
      </action>
423
         <action dev="bryan" type="update" issue="838" due-to="Kendra Hale">
424
425
        Improved documentation of ImpulseManeuver class.
      </action>
426
    </release>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
427
    <release version="11.0" date="2021-09-20"
428
             description="Orekit 11.0 is a major new release.
429
430
431
432
433
434
435
436
437
438
439
440
441
             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.">
442
         <action dev="bryan" type="update" issue="766" due-to="Gowtham Sivaraman">
443
444
445
        Allowed setting of AttitudeProvider to the BoundedPropagator
        generated via propagation.
      </action>
446
         <action dev="bryan" type="fix" issue="835">
447
448
        Fixed format symbols for year, month, day in DateComponents#toString().
      </action>
449
         <action dev="thomas" type="fix" issue="668">
Thomas Paulet's avatar
Thomas Paulet committed
450
451
        Added a new event detector for angular separation as seen from the spacecraft.
      </action>
452
453
454
      <action dev="maxime" type="fix" issue="829">
        Fixed DataSourceTest.testFileName for Windows users.
      </action>
455
456
457
      <action dev="bryan" type="fix" issue="818">
        Use observed solar flux instead of adjusted in DTM2000 model.
      </action>
458
459
460
      <action dev="evan" type="fix" issue="798">
        Allow DSST event detection when propagating backwards.
      </action>
461
462
463
      <action dev="bryan" type="fix" issue="717" due-to="evan">
        Fixed DSST orbit determination when propagating backwards.
      </action>
464
465
466
      <action dev="evan" type="remove" issue="586">
        Remove InertialProvider.EME2000_ALIGNED, Propagator.DEFAULT_LAW. Use
        InertialProvider.of(Frame).
467
      </action>
468
469
470
471
      <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>
472
473
474
      <action dev="evan" type="update" issue="586">
        Improve performance of IntertialProvider(Frame)
      </action>
475
476
477
      <action dev="anne-laure" type="update" issue="797">
        Add information if a detector failed during propagation
      </action>
478
479
480
      <action dev="bryan" type="fix" issue="788" due-to="luc">
        Fixed missing call to setMuCreated() in OemParser.
      </action>
481
482
      <action dev="evan" type="update" issue="618">
        Fix supportedNames matching in ClasspathCrawler. Backwards incompatible.
483
      </action>
484
485
486
      <action dev="bryan" type="fix" issue="828">
        Fixed missing file types in SP3Parser.
      </action>
487
488
489
      <action dev="bryan" type="fix" issue="827">
        Fixed time system used in SP3 files.
      </action>
490
491
492
      <action dev="evan" type="fix" issue="685">
        Fix AnalyticalPropagator RESET_STATE when new state is null.
      </action>
493
494
495
      <action dev="bryan" type="fix" issue="803">
        Fixed parsing of clock values in SP3 files.
      </action>
496
497
498
      <action dev="bryan" type="fix" issue="820">
        TLE Jacobians are now calculated in cartesian elements.
      </action>
499
500
501
502
      <action dev="evan" type="update" issue="825">
        Improve exception messages with two AbsoluteDates by including duration between
        them.
      </action>
503
504
505
506
      <action dev="evan" type="update" issue="637" due-to="Piotr">
        Add trailing "Z" to AbsoluteDate.toString() to indicate UTC.
        Backwards incompatible.
      </action>
507
508
509
      <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
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
      <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>
526
527
528
      <action dev="bryan" type="update" issue="626">
        Used a separate Comparator for sorting integer least square solutions.
      </action>
529
530
531
      <action dev="bryan" type="update" issue="799">
        Used the field-specific value of π.
      </action>
532
533
534
      <action dev="evan" type="update" issue="830" due-to="skyrex">
        Remove step size limitations in analytic propagators. Backwards incompatible.
      </action>
535
536
537
538
      <action dev="evan" type="fix">
        Fix part of step passed to the step handler twice in analytic propagators with
        event handlers.
      </action>
539
540
541
      <action dev="bryan" type="fix" issue="795" due-to="guylaine">
        Fixed output of NRLMSISE00 for altitude at 32.5 km.
      </action>
542
543
544
      <action dev="luc" type="add" issue="821">
        Added support for CCSDS TDM V2.0.
      </action>
545
546
547
      <action dev="luc" type="add" issue="819">
        Allow data filtering upon loading to be used for explicit loading by applications.
      </action>
548
549
550
      <action dev="julie" type="add" issue="745">
        Added sequential batch least squares estimator.
      </action>
551
552
553
      <action dev="luc" type="add" issue="814" due-to="Valerian">
        Fixed additional states handling in ephemeris generated by analytical propagator.
      </action>
554
555
556
557
558
      <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
559
      <action dev="luc" type="add" issue="812">
560
        Dropped master/slave terminology in turn-around and inter-satellite measurements.
Luc Maisonobe's avatar
Luc Maisonobe committed
561
      </action>
562
563
564
      <action dev="luc" type="add" issue="813">
        Fixed derivatives with respect to secondary station in turn-around modifiers.
      </action>
565
566
567
568
      <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">
569
570
        Merged multiplexers for fixed steps and variable steps.
      </action>
571
572
573
      <action dev="luc" type="fix" issue="808">
        Moved isLast argument in step handler handleStep method to a separate method.
      </action>
574
575
576
      <action dev="luc" type="fix" issue="807">
        Fixed scheduling between calls to step handlers and events handlers.
      </action>
577
578
579
      <action dev="luc" type="fix" issue="806">
        Added restrictStep method to FieldOrekitStepInterpolator interface.
      </action>
580
581
582
      <action dev="bryan" type="fix" issue="801">
        Added getter for meteorological data used in CRD data block.
      </action>
583
584
585
      <action dev="bryan" type="fix" issue="796">
        Fixed writing of line H2 in CPF file header.
      </action>
586
587
      <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
588
      </action>
589
590
      <action dev="bryan" type="update" issue="793">
        Updated SP3File visibility to public.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
591
      </action>
592
593
      <action dev="bryan" type="update" issue="784">
        Updated architecture of GNSS orbit propagators.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
594
      </action>
595
596
      <action dev="bryan" type="update" issue="782">
        Updated error message of Orekit internal error exception.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
597
      </action>
598
599
      <action dev="luc" type="add">
        Added support for reading and writing CCSDS NDM composite messages.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
600
      </action>
601
602
      <action dev="afossa" type="fix" issue="781">
        Fixed parsing in buildLine2() method of FieldTLE.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
603
      </action>
604
605
      <action dev="luc" type="fix" issue="776">
        Fixed associativity in units parsing.
Thomas Paulet's avatar
Merge    
Thomas Paulet committed
606
      </action>
607
608
609
      <action dev="bryan" type="update" issue="773">
        TimeStampedFieldAngularCoordinates now implements FieldTimeStamped.
      </action>
610
611
612
      <action dev="bryan" type="update" issue="774">
        TimeStampedFieldPVCoordinates now implements FieldTimeStamped.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
613
614
615
      <action dev="nfialton" type="fix" issue="775">
        Fixed NullPointerException in FieldSpacecraftState when orbit is not defined.
      </action>
616
617
618
      <action dev="bryan" type="add" issue="763">
        Added support for RTCM ephemeris messages.
      </action>
619
620
621
      <action dev="bryan" type="add" issue="769">
        Added ionospheric model based on IM201 SSR message.
      </action>
622
623
624
625
626
627
      <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
628
629
630
631
      <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
632
633
634
635
      <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
636
637
638
      <action dev="luc" type="add" >
        Added a units converter.
      </action>
639
640
641
642
      <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">
643
644
        Allow parsing several variations of ITRF specifications (like itrf-97, ITRF2000, ITRF_2014…).
      </action>
645
646
647
      <action dev="luc" type="add" >
        Added a time scale for drifting on-board clocks.
      </action>
648
649
650
      <action dev="bryan" type="add" issue="523">
        Added support for RINEX 3.X navigation files.
      </action>
651
652
653
      <action dev="bryan" type="update" issue="691">
        Improved consistency between getParametersDrivers() method signatures.
      </action>
654
655
656
      <action dev="andrewsgoetz" type="add" issue="764">
        Added new method to UTCScale which exposes the raw UTC-TAI offset data.
      </action>
657
658
659
      <action dev="bryan" type="fix" issue="670">
        Fixed call to ForceModel.init() in AbstractGaussianContribution class.
      </action>
660
661
         <action dev="thomas" type="add" issue="712">
          Added IGS clock file support.
Thomas Paulet's avatar
Thomas Paulet committed
662
      </action>
663
664
665
666
667
668
669
      <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>
670
671
672
      <action dev="luc" type="update" issue="761">
        TabulateProvider now implements BoundedAttitudeProvider.
      </action>
673
674
675
      <action dev="luc" type="fix" issue="760">
        Fixed reference frame in tabulated attitude provider.
      </action>
676
      <action dev="luc" type="update" >
677
          Renamed SINEXLoader into SinexLoader.
678
679
680
      </action>
      <action dev="luc" type="update" >
        Use DataSource in RinexLoader and SinexLoader.
681
682
683
      </action>
      <action dev="luc" type="update" >
        Renamed NamedData into DataSource.
684
      </action>
685
      <action dev="luc" type="add" issue="474">
686
        Added support for CCSDS ODM V3, with the new
687
688
689
690
691
692
693
694
        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
695
696
697
      <action dev="amir" type="fix" issue="746">
        Fixed combination of measurements using GNSS phase measurements.
      </action>
698
699
700
      <action dev="bryan" type="add" issue="756">
        Added new method signature in IodGooding using AngularRaDec measurement.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
701
702
703
704
705
706
      <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>
707
708
709
      <action dev="bryan" type="fix" issue="624">
        Allowed dynamic station coordinates when calculating tropospheric delay.
      </action>
710
711
712
      <action dev="bryan" type="update" issue="755">
        Modified IodGooding constructor to be consistent with other IOD methods.
      </action>
713
714
715
      <action dev="bryan" type="add" issue="753">
        Added new method signature in IodLaplace using AngularRaDec measurement.
      </action>
716
717
718
      <action dev="bryan" type="add" issue="752">
        Added new method signature in IodLambert using Position measurement.
      </action>
719
720
721
      <action dev="bryan" type="add" issue="751">
        Added new method signature in IodGibbs using Position measurement.
      </action>
722
      <action dev="luc" type="fix" issue="749">
723
        Allow building PVCoordinates and AngularCoordinates (as well as their Field,
724
725
726
        Absolute and TimeStamped variations) to be build from UnivariateDerivative1
        and UnivariateDerivative2 in addition to DerivativeStructure.
      </action>
727
      <action dev="bryan" type="fix" issue="736">
728
        Fixed NullPointerException in DSSTTesseral Hansen object.
729
      </action>
730
      <action dev="bryan" type="update" issue="601">
731
          Changed getPVInPZ90() method to private.
732
733
      </action>
      <action dev="bryan" type="fix" issue="744">
734
          Fixed calculation of CR3BP constants.
735
      </action>
736
      <action dev="bryan" type="update" issue="743">
737
          Updated JUnit version to 4.13.1.
Thomas Paulet's avatar
Thomas Paulet committed
738
739
      </action>
    </release>
740
741
742
743
    <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
744
745
      <action dev="luc" type="fix" issue="792">
        Fixed potential infinite loops in tesselation in very rare cases due to numerical noise.
746
747
      </action>
    </release>
Thomas Paulet's avatar
Thomas Paulet committed
748
749
750
751
752
753
754
755
756
757
758
759
760
761
    <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.">
762
763
      <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
764
      </action>
765
766
         <action dev="bryan" type="add" issue="740">
          Added aggregator for bounded attitude providers.
Thomas Paulet's avatar
Thomas Paulet committed
767
      </action>
768
         <action dev="thomas" type="add" issue="8">
Thomas Paulet's avatar
Thomas Paulet committed
769
770
        Added Knocke's Earth rediffused radiation pressure force model.
      </action>
771
772
         <action dev="bryan" type="add" issue="739">
          Allowed initialization of attitude provider from attitude segment.
Thomas Paulet's avatar
Thomas Paulet committed
773
774
775
776
777
778
779
780
781
782
      </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>
783
784
785
786
      <action dev="raphael" type="add" issue="686">
        Allowed user-defined format for ephemeris data lines in
        StreamingAemWriter, AEMWriter, StreamingOemWriter and OEMWriter.
      </action>
787
788
         <action dev="bryan" type="fix" issue="683">
          Updated building instructions.
789
      </action>
790
791
         <action dev="bryan" type="add" issue="734">
          Added getters for phase measurement ambiguity driver.
792
      </action>
793
794
         <action dev="bryan" type="fix" issue="696">
          Allowed to configure initial covariance for measurements in Kalman Filter.
795
796
797
798
      </action>
      <action dev="thomas, bryan" type="add" issue="709">
        Added clock drift contribution to range rate measurements.
      </action>
799
800
         <action dev="bryan" type="fix" issue="687">
          Fixed Javadoc of ElevationMask.
801
802
803
804
805
806
807
808
809
810
811
812
813
      </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>
814
815
         <action dev="thomas" type="fix" issue="730">
          Removed useless loop over an empty list
816
      </action>
817
818
819
      <action dev="luc" type="fix" issue="731">
        Fixed parsing of some ICGEM gravity fields files.
      </action>
820
      <action dev="raphael" type="fix" issue="720">
821
          Added support for measurements parameters in UnivariateProcessNoise
822
      </action>
823
824
825
      <action dev="luc" type="fix" issue="729">
        Fixed wrong handling of RESET-STATE in analytical propagators.
      </action>
826
827
828
      <action dev="luc" type="add" issue="728">
        Allow creating a node detector without an orbit.
      </action>
829
830
831
      <action dev="bryan" type="add" issue="671">
        Added support for laser ranging file formats.
      </action>
832
833
834
      <action dev="clement" type="fix" issue="724">
        Remove range checks in TLE constructor.
      </action>
835
836
837
      <action dev="bryan" type="fix" issue="723">
        Allowed AEM and OEM writers to write header comments.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
838
839
840
841
      <action dev="bryan" type="add" issue="719">
        Added one-way GNSS range and phase measurements for LEO satellite
        orbit determination applications.
      </action>
842
843
844
      <action dev="bryan" type="add" issue="716">
        Added piecewise empirical force model.
      </action>
845
846
847
      <action dev="bryan" type="add" >
        Considered a new implementation for empirical forces, to allow piecewise model.
      </action>
848
849
850
      <action dev="bryan" type="add" issue="703">
        Added inter-satellites phase measurement.
      </action>
851
852
853
      <action dev="bryan" type="fix" issue="695">
        Considered covariance matrix from Position measurement in Kalman estimator.
      </action>
854
855
856
      <action dev="bryan" type="fix" issue="718">
        Fixed orbital state used for short periodic Jacobian computation.
      </action>
857
858
859
860
      <action dev="bryan" type="add" issue="704">
        Allow using user specified velocity error for computing
        tolerance vectors for integrators.
      </action>
861
862
863
      <action dev="bryan" type="add" issue="714">
        Added frequency deviation for range-rate measurements.
      </action>
864
865
866
867
      <action dev="bryan" type="add" issue="715">
        Added relativistic clock correction for range, phase and
        inter-satellite range measurements.
      </action>
868
869
870
      <action dev="bryan" type="fix" issue="706">
        Fixed missing measurement parameter in inter-satellites range measurement.
      </action>
871
         <action dev="thomas" type="fix" issue="713">
Thomas Paulet's avatar
Thomas Paulet committed
872
873
        Fixed computation of DSST short period Jacobian.
      </action>
874
875
876
      <action dev="luc" type="fix" issue="699">
        Fixed missing measurement parameter in Phase measurement
      </action>
877
878
879
880
881
      <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
882
    <release version="10.2" date="2020-07-14"
883
884
885
886
887
888
             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
889
890
891
892
             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
893
             of the changes.">
894
895
896
      <action dev="bryan" type="fix" issue="661">
        Fixed visibility of WindUpFactory.
      </action>
897
898
899
      <action dev="bryan" type="update" >
        Increased visibility of setters in CCSDS ADM related classes.
      </action>
900
901
902
903
      <action dev="clement" type="add" issue="656">
        Added CssiSpaceWeatherLoader which provides three-hourly space weather
        data and implements DTM2000InputParameters and NRLMSISE00InputParameters
      </action>
904
905
906
      <action dev="maxime" type="update" issue="690">
        Increased visibility of setters in CCSDS OEM related classes.
      </action>
907
908
909
      <action dev="bryan" type="update" >
        Improved Orekit performance by using new Hipparchus' differentiation classes.
      </action>
910
911
912
      <action dev="bryan" type="update" issue="682">
        Changed visibility of OrbitType parameter drivers' names to public.
      </action>
913
914
915
916
      <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
917
918
919
      <action dev="evan" type="add" issue="684">
        Add FieldFunctionalDetector.
      </action>
920
921
922
      <action dev="mikael" type="add">
        Added a configurable low thrust maneuver based on detectors.
      </action>
923
924
925
      <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
926
927
928
      <action dev="bryan" type="fix" issue="641">
        Allow Pattern functionalities instead of String.replaceAll() and String.split().
      </action>
929
930
931
932
      <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>
933
934
935
      <action dev="evan" type="add" issue="677">
        Add AbsoluteDate.toStringRfc3339() and DateTimeComponents.toStringRfc3339().
      </action>
936
937
938
939
940
941
      <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>
942
943
944
      <action dev="bryan" type="fix" issue="651">
        Improved use of try with resources statement.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
945
      <action dev="bryan" type="fix" issue="679" due-to="luc, maxime">
946
947
        Improved testRetrogradeOrbit in CircularOrbit and KeplerianOrbit tests.
      </action>
948
949
950
      <action dev="bryan" type="fix" issue="680">
        Allowed ephemeris class to be used with absolute PV coordinates.
      </action>
951
952
953
      <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
954
955
956
      <action dev="evan" type="fix" issue="667">
        Fix build on CentOS/RedHat 7.
      </action>
957
958
959
      <action dev="bryan" type="fix" issue="662">
        Fixed forgotten additional state in Ephemeris propagator.
      </action>
960
961
962
      <action dev="evan" type="update">
        Improve error message for TimeStampedCache by including requested date.
      </action>
963
964
965
      <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
966
967
968
      <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>
969
970
971
      <action dev="bryan" type="add" issue="669">
        Added estimated ionospheric model.
      </action>
972
973
974
      <action dev="bryan" type="add" issue="645">
        Merged phase-measurement branch into develop.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
975
976
977
      <action dev="bryan" type="add" >
        Added a time span tropospheric estimated model.
      </action>
Bryan Cazabonne's avatar
Bryan Cazabonne committed
978
979
980
      <action dev="bryan" type="add" issue="646">
        Merged cr3bp branch into develop.
      </action>
981
982
983
      <action dev="bryan" type="add" issue="660">
        Improved exception handling in IODGibbs.
      </action>
984
985
986
      <action dev="bryan" type="add" issue="647">
        Improved package-info documentation.
      </action>
987
      <action dev="nick" type="update" >
988
        Upgrade maven-checkstyle-plugin to 3.1.1.
989
      </action>
990
991
992
      <action dev="bryan" type="add" issue="657">
        Added multiplexed Orekit fixed step handler.
      </action>
993
994
995
      <action dev="bryan" type="add" issue="655">
        Added support for CCSDS ADM files.
      </action>
Maxime Journot's avatar
Maxime Journot committed
996
997
998
      <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
999
1000
      <action dev="yannick" type="fix" issue="654">
        Prevent divergence of Saastomoinen model pathDelay method at low elevation.