Truncation coefficients (pygeoid.integrals.truncation)

Truncation coefficients for Stokes’s integral.

pygeoid.integrals.truncation.molodensky_truncation_coefficients(spherical_distance: float, degree_n: int, method: str = 'hagiwara', **kwargs) → numpy.ndarray[source]

Evaluate Molodensky’s truncation coefficients Qn.

Compute sequence of Molodensky’s truncation coefficients for all degrees from 0 to degree_n (inclusive).

Parameters:
  • spherical_distance (float) – Spherical distance, in degrees.
  • degree_n (int) – Maximum degree of the coefficients.
  • method ({'hagiwara', 'numerical'}, optional) –

    Controls how coefficients are calculated.

    • ’hagiwara’ calculates coefficients by Hagiwara (1976) recurrence relations.
    • ’numerical’ calculates coefficients by numerical integration.

    Default is ‘hagiwara’.

  • **kwargs – Keyword arguments for scipy.intagrate.quad if method is ‘numerical’.
Returns:

Molodensky’s truncation coefficient for all degrees from 0 to degree_n (inclusive).

Return type:

array_like of floats

Notes

The Molodensky’s truncation coefficients \(Q_n\) of degree \(n\) are defined as [1]_:

\[Q_n \left(\psi_0\right) = \int\limits_{\psi_0}^{\pi} S\left(\psi\right) P_n \left(\cos{\psi} \right) \sin{\psi} d\psi,\]

where \(S\left(\psi\right)\) – Stokes function, \(P_n\) – Legendre polynomial, \(\psi\) – spherical distance.

The function calculates this integral by Hagiwara’s [2] method or by the numerical integration with scipy.intagrate.quad.

References

[1]Molodensky MS, Yeremeyev VF, Yurkina MI (1962) Methods for study of the external gravitational field and figure of the Earth. Translated from Russian, Isreali Programme for Scientific Translations, Jerusalem
[2]Hagiwara Y (1976) A new formula for evaluating the truncation error coefficient. Bulletin Géodésique 50:131–135.
pygeoid.integrals.truncation.paul_coefficients(spherical_distance: float, n: int, k: int = None, method: str = 'paul', **kwargs) → numpy.ndarray[source]

Return Paul’s coefficients.

In the original article (1973) the Paul’s coefficients are denoted as Rnk, but in many later articles they are denoted as enk.

Parameters:
  • spherical_distance (float or array_like of floats) – Spherical distance.
  • n,k (int) – Degrees of the coefficients. k by default is None, i.e. it is equal to n.
  • method ({'paul', 'numerical'}, optional) –

    Controls how coefficients are calculated.

    • ’paul’ calculate coefficients by Paul (1973) recurrence relations.
    • ’numerical’ calculate coefficients by numerical integration.

    Default is ‘paul’.

  • **kwargs – Keyword arguments for scipy.intagrate.quad if method is ‘numerical’.

Notes

The Pauls’s coefficients \(e_{nk}\) of degrees \(n\) and \(k\) are defined as [1]_:

\[e_{nk} \left(\psi_0\right) = \int\limits_{\psi_0}^{\pi} P_n \left(\cos{\psi}\right) P_k \left(\cos{\psi}\right) \sin{\psi} d\psi,\]

where \(P_n\) and \(P_k\) are Legendre polynomial of degrees \(n\) and \(k\) respectively, \(\psi\) is the spherical distance.

Note that in the original article [1]_ the Paul’s coefficients are denoted as \(R_{n,k}\).

References

[1]Paul MK (1973) A method of evaluating the truncation error coefficients for geoidal height. Bull Géodésique 110:413–425