Add support for different Earth radii approximations into LayeredSphericalAtmosphereBuilder
LayerSphericalAtmosphereBuilder
currently uses a fixed earth radius (the mean Earth radius of 6371 km) implemented as a static constexpr
- it also supports a seaLevel
member variable that is used as an Earth radius everywhere in the code (and defaults to the fixed Earth radius). There are several experiments that are sensitive to the Earth radius used to approximate the Earth's spheroid (like ANITA and PUEO) and there are other applications where we could reuse the layered atmosphere builder at other radii.
This MR removes the static constexpr
earth radius and makes it an argument to the constructor (replacing the equivalent seaLevel
that was used as an Earth radius). It also creates a nested namespace containing constexpr values for the various Earth radius models that are useful (polar radius, mean radius, etc.). Access to the constexpr
value of earthRadius
is replaced with a method getEarthRadius()
.
This is ready for review. (Sorry if you were spammed with notifications - I had to rebase onto the enormous MR that happened recently).
-
The MR is without WIP (work in progress) status -
Make sure the most recent CI jobs (config, quality, build, tests) all run fine with no failures - if "check clang-format" failed: the code contributor has to run
./do-clang-format.py --apply
eventually with the--all
option - if "check copyright" failed the code contributor has to run
./do-copyright.py --add=20xy
- if "check clang-format" failed: the code contributor has to run
-
Also run all the extra optional jobs "coverage", "release-clang-8", "release-u-18.04" and make sure no problems occur -
Check in the "coverage" job output that the coverage did not decreases (!). It should always stay, or increase. If it decreased --> ask contributor to add further unit tests, and check coverage report. - On the MR page, open the "Open in Web IDE" tool
-
Check if the provided solution solves the Issue, discuss on gitlab -
Check that all changes are actually related to the issue -
There are no debug statements left, not even commented out -
Check all changes for coding rules and guidelines
-
- When all above is done
-
Add label "Code Review Finished"
-