Add conversion routines between ellipsoidal-harmonic and geodetic coordinates #186
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds two conversion routines, to and from geodetic and ellipsoidal-harmonic coordinates:
Ellipsoid.geodetic_to_ellipsoidal_harmonic()
Ellipsoid.ellipsoidal_harmonic_to_geodetic()
These will be required when computing the normal gravitational potential above the reference ellipsoid in issue #151.
The routines work, but I am worried about the precision. The conversion from geodetic to ellipsoidal uses the same code as in the
normal_gravity
method, which is based on the equations in Lakshmanan (1991). The inverse is just a a couple atans for the latitude, and the ellipsoidal height is computed as the difference of theprime_vertical_radius
of the two ellipsoids. Even if I can understand why the height might lose precision this way, the latitude shouldn't.Here are a couple of examples:
Maybe this is good enough. I suspect that the loss of precision comes from the Lakshmanan equations (which have some subtractions of similarly sized numbers). Perhaps there is nothing we can do about it, but if this is the case, then it affects the Normal gravity routine.
Relevant issues/PRs:
Related to #151