choclo.prism.kernel_en

Contents

choclo.prism.kernel_en#

choclo.prism.kernel_en(easting, northing, upward, radius)[source]#

Kernel for easting-northing component of the tensor due to a prism

Evaluates the integration kernel for the easting-northing component of the tensor generated by a prism [Nagy2000] on a single vertex of the prism. The coordinates that must be passed are shifted coordinates: the coordinates of the vertex from a Cartesian coordinate system whose origin is located in the observation point.

This function makes use of a safe natural logarithmic function [Fukushima2020] that guarantee a good accuracy on every observation point.

Parameters:
eastingfloat

Shifted easting coordinate of the vertex of the prism. Must be in meters.

northingfloat

Shifted northing coordinate of the vertex of the prism. Must be in meters.

upwardfloat

Shifted upward coordinate of the vertex of the prism. Must be in meters.

radiusfloat

Square root of the sum of the squares of the easting, northing and upward shifted coordinates.

Returns:
kernelfloat

Value of the kernel function for the easting-northing component of the tensor due to a rectangular prism evaluated on a single vertex.

Notes

Computes the following numerical kernel on the passed shifted coordinates:

\[k_{xy}(x, y, z) = \operatorname{safe\_ln} \left(z, r \right)\]

where

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

References