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