sample_points Subroutine

public subroutine sample_points(vals, points, a, b, c, n_points, dx, dy, dz, nx, ny, nz, gx, gy, gz, ox, oy, oz, px, py, pz, n_i_pad)

vals(1:3, p) = this rank's part of the trilinear interpolation of a, b and c at points(:, p), one thread per point; see field_sample_points. (dx, dy, dz) is the grid spacing, (nx, ny, nz) and (gx, gy, gz) the local and global VERT dims, (ox, oy, oz) the rank offsets and (px, py, pz) flag periodic directions.

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device :: vals(3,n_points)
real(kind=dp), intent(in), device :: points(3,n_points)
real(kind=dp), intent(in), device, dimension(:, :, :) :: a
real(kind=dp), intent(in), device, dimension(:, :, :) :: b
real(kind=dp), intent(in), device, dimension(:, :, :) :: c
integer, intent(in), value :: n_points
real(kind=dp), intent(in), value :: dx
real(kind=dp), intent(in), value :: dy
real(kind=dp), intent(in), value :: dz
integer, intent(in), value :: nx
integer, intent(in), value :: ny
integer, intent(in), value :: nz
integer, intent(in), value :: gx
integer, intent(in), value :: gy
integer, intent(in), value :: gz
integer, intent(in), value :: ox
integer, intent(in), value :: oy
integer, intent(in), value :: oz
logical, intent(in), value :: px
logical, intent(in), value :: py
logical, intent(in), value :: pz
integer, intent(in), value :: n_i_pad

Calls

proc~~sample_points~~CallsGraph proc~sample_points m_cuda_kernels_fieldops::sample_points proc~local_index m_cuda_kernels_fieldops::local_index proc~sample_points->proc~local_index

Called by

proc~~sample_points~~CalledByGraph proc~sample_points m_cuda_kernels_fieldops::sample_points proc~field_sample_points_cuda m_cuda_backend::cuda_backend_t%field_sample_points_cuda proc~field_sample_points_cuda->proc~sample_points