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