# choclo.prism.gravity_pot#

choclo.prism.gravity_pot(easting, northing, upward, prism_west, prism_east, prism_south, prism_north, prism_bottom, prism_top, 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:
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:
potentialfloat

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 \, \operatorname{safe-ln} (z, r) + y z \, \operatorname{safe-ln} (x, r) + z x \, \operatorname{safe-ln} (y, r) \\ - \frac{x^2}{2} &\operatorname{safe-arctan} \left( yz, xr \right) - \frac{y^2}{2} \operatorname{safe-arctan} \left( zx, yr \right) - \frac{z^2}{2} \operatorname{safe-arctan} \left( 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 $$\operatorname{safe-ln}$$ and $$\operatorname{safe-arctan}$$ functions are 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}$
$\begin{split}\operatorname{safe-arctan} \left( 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