I propose to use Lombok as a Maven dependency for the Orekit tutorial project.
This way we won’t need to write getters, setters and most constructors. The focus will then be on how to use the library which is the primary intent.
Records are immutable so there’s no setters. From what I see, some classes in the tutorials do have setters tho. They might not be really necessary, I’ve not checked.
Lombok also brings builders, the with pattern, etc. It’s really handy.
I’d like to see more tutorial material, especially geared towards users without an object-oriented background. I’d like to use Orekit more library of subroutines. Here is example of recent problem that scripted in MATLAB. I start with an ECI 6 by 6 covariance matrix of an object at some epoch - say the covariance just after latest orbit determination update. Then, I propagate it forward 2, 4, 6, 8, and 12 hours. Next, I transform the ECI covariance into my sensor coordinates that is pointed in the direction of the object and compute probability that the object is within X degrees of the center of the sensor’s instantaneous field of view. Finally, plotted the probability versus propagation time.
To propagate the covariance matrix, I wrote a function that implements the analytical state transition matrix as described in a paper by Der and Danchick (1996). It was simple to understand and verify. I’d like to use Orekit at a minimum to propagate the covariance (to replace the function I wrote) but also to perform the transform from ECI to sensor coordinates ( a series of transform functions [ECI to RSW] [RSW to Body] [Body to Sensor] I wrote). I know it can be done but I don’t exactly how to start. I looked at some of the Orekit tutorials but they don’t provide the object-oriented context on how things are connected or flow (solution diagram/flow or architecture). If they there is an object-oriented tutorial that matches Okekit’s architecture and flow, please send me a reference.