This function calculates the delta function used in the paper of Ota et al. [7] (bibliography of treelm) for a vector by multiplying the results of the 1D version.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in) | :: | r(3) |
input point coordinates |
||
real(kind=rk), | intent(in) | :: | dx |
spatial discretization |
resulting value of the 3D delta function
function inamuroDelta3D(r, dx) result( res ) ! --------------------------------------------------------------------------- !> input point coordinates real(kind=rk), intent(in) :: r(3) !> spatial discretization real(kind=rk), intent(in) :: dx !> resulting value of the 3D delta function real(kind=rk) :: res ! --------------------------------------------------------------------------- real(kind=rk) :: tmpVal_X real(kind=rk) :: tmpVal_Y real(kind=rk) :: tmpVal_Z ! --------------------------------------------------------------------------- tmpVal_X = inamuroDelta1D(r(1)/dx) tmpVal_Y = inamuroDelta1D(r(2)/dx) tmpVal_Z = inamuroDelta1D(r(3)/dx) res = tmpVal_X * tmpVal_Y * tmpVal_Z / dx**3 end function inamuroDelta3D