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