choclo.prism.gravity_nu

Contents

choclo.prism.gravity_nu#

choclo.prism.gravity_nu(easting, northing, upward, prism_west, prism_east, prism_south, prism_north, prism_bottom, prism_top, density)[source]#

Northing-upward component of the gravitational tensor due to a prism

Returns the northing-upward component of the gravitational tensor produced by a single rectangular prism on a single computation point.

Parameters:
eastingfloat

Easting coordinate of the observation point. Must be in meters.

northingfloat

Northing coordinate of the observation point. Must be in meters.

upwardfloat

Upward coordinate of the observation point. Must be in meters.

prism_westfloat

The West boundary of the prism. Must be in meters.

prism_eastfloat

The East boundary of the prism. Must be in meters.

prism_southfloat

The South boundary of the prism. Must be in meters.

prism_northfloat

The North boundary of the prism. Must be in meters.

prism_bottomfloat

The bottom boundary of the prism. Must be in meters.

prism_topfloat

The top boundary of the prism. Must be in meters.

densityfloat

Density of the rectangular prism in kilograms per cubic meter.

Returns:
g_nufloat

Northing-upward component of the gravitational tensor generated by the rectangular prism on the observation point in \(\text{m}/\text{s}^2\). Return numpy.nan if the observation point falls in a singular point: prism vertices or prism edges parallel to the easting direction.

Notes

Returns the northing-upward component \(g_{yz}(\mathbf{p})\) of the gravitational tensor \(\mathbf{T}\) on the observation point \(\mathbf{p} = (x_p, y_p, z_p)\) generated by a single rectangular prism defined by its boundaries \(x_1, x_2, y_1, y_2, z_1, z_2\) and with a density \(\rho\):

\[g_{yz}(\mathbf{p}) = G \rho \,\, \Bigg\lvert \Bigg\lvert \Bigg\lvert k_{yz}(x, y, z) \Bigg\rvert_{X_1}^{X_2} \Bigg\rvert_{Y_1}^{Y_2} \Bigg\rvert_{Z_1}^{Z_2}\]

where

\[k_{yz}(x, y, z) = \operatorname{safe-ln} \left( x, r \right),\]
\[r = \sqrt{x^2 + y^2 + z^2},\]

and

\[\begin{split}X_1 = x_1 - x_p \\ X_2 = x_2 - x_p \\ Y_1 = y_1 - y_p \\ Y_2 = y_2 - y_p \\ Z_1 = z_1 - z_p \\ Z_2 = z_2 - z_p\end{split}\]

are the shifted coordinates of the prism boundaries and \(G\) is the Universal Gravitational Constant.

The \(\operatorname{safe-ln}\) function is defined as follows:

\[\begin{split}\operatorname{safe-ln}(x, r) = \begin{cases} 0 & x = 0, r = 0 \\ \ln(x + r) & x \ge 0 \\ \ln((r^2 - x^2) / (r - x)) & x < 0, r \ne -x \\ -\ln(-2 x) & x < 0, r = -x \end{cases}\end{split}\]

It was defined after [Fukushima2020] and guarantee a good accuracy on any observation point.

References