choclo.prism.gravity_pot#

choclo.prism.gravity_pot(easting, northing, upward, prism, density)[source]#

Gravitational potential field due to a rectangular prism

Returns the gravitational potential field produced by a single rectangular prism on a single computation point.

Parameters
• easting (float) – Easting coordinate of the observation point. Must be in meters.

• northing (float) – Northing coordinate of the observation point. Must be in meters.

• upward (float) – Upward coordinate of the observation point. Must be in meters.

• prism (1d-array) – One dimensional array containing the coordinates of the prism in the following order: west, east, south, north, bottom, top in a Cartesian coordinate system. All coordinates should be in meters.

Returns

potential (float) – Gravitational potential field generated by the rectangular prism on the observation point in $$\text{J}/\text{kg}$$.

Notes

Returns the gravitational potential field $$V(\mathbf{p})$$ 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$$:

$V(\mathbf{p}) = G \rho \,\, \Bigg\lvert \Bigg\lvert \Bigg\lvert k_V(x, y, z) \Bigg\rvert_{X_1}^{X_2} \Bigg\rvert_{Y_1}^{Y_2} \Bigg\rvert_{Z_1}^{Z_2}$

where

$\begin{split}k_V(x, y, z) &= x y \, \text{ln2} (z + r) + y z \, \text{ln2} (x + r) + z x \, \text{ln2} (y + r) \\ - \frac{x^2}{2} &\text{arctan2} \left( \frac{yz}{xr} \right) - \frac{y^2}{2} \text{arctan2} \left( \frac{zx}{yr} \right) - \frac{z^2}{2} \text{arctan2} \left( \frac{xy}{zr} \right),\end{split}$
$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 $$\text{ln2}$$ and $$\text{arctan2}$$ functions are defined as follows:

$\begin{split}\text{ln2}(x) = \begin{cases} 0 & |x| < 10^{-10} \\ \ln (x) \end{cases}\end{split}$
$\begin{split}\text{arctan2} \left( \frac{y}{x} \right) = \begin{cases} \text{arctan}\left( \frac{y}{x} \right) & x \ne 0 \\ \frac{\pi}{2} & x = 0 \quad \text{and} \quad y > 0 \\ -\frac{\pi}{2} & x = 0 \quad \text{and} \quad y < 0 \\ 0 & x = 0 \quad \text{and} \quad y = 0 \\ \end{cases}\end{split}$

These were defined after [Fukushima2020] and guarantee a good accuracy on any observation point.

References