choclo.prism.kernel_eu#
- choclo.prism.kernel_eu(easting, northing, upward, radius)[source]#
Kernel for easting-upward component of the tensor due to a prism
Evaluates the integration kernel for the easting-upward 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:
- easting
float
Shifted easting coordinate of the vertex of the prism. Must be in meters.
- northing
float
Shifted northing coordinate of the vertex of the prism. Must be in meters.
- upward
float
Shifted upward coordinate of the vertex of the prism. Must be in meters.
- radius
float
Square root of the sum of the squares of the
easting
,northing
andupward
shifted coordinates.
- easting
- Returns:
- kernel
float
Value of the kernel function for the easting-upward component of the tensor due to a rectangular prism evaluated on a single vertex.
- kernel
Notes
Computes the following numerical kernel on the passed shifted coordinates:
\[k_{xz}(x, y, z) = \operatorname{safe\_ln} \left(y, 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