Neko 1.99.1
A portable framework for high-order spectral element flow simulations
|
Data Types | |
type | legendre_rst_finder_t |
Type to compute local element (rst) coordinates for a gives set points in physical (xyz) space on a SEM grid. More... | |
Functions/Subroutines | |
subroutine | legendre_rst_finder_init (this, x, y, z, nelv, xh, tol, max_iter) |
subroutine | legendre_rst_finder_free (this) |
subroutine | legendre_rst_finder_find (this, rst_local_cand, x_t, y_t, z_t, el_cands, n_point_cand, resx, resy, resz) |
Given a set of element candidates containing the given points and computes the local RST coordinates for those points. This subroutine supports both CPU and device (GPU) execution, depending on the configugered backend of NEKO_BCKND_DEVICE . | |
subroutine | find_rst_legendre_device (this, rst, pt_x, pt_y, pt_z, el_list, n_pts, resx, resy, resz) |
Using the Legendre polynomials to find the rst coordinates on GPU. | |
subroutine | find_rst_legendre_cpu (this, rst, pt_x, pt_y, pt_z, el_list, n_pts, resx, resy, resz) |
Using the Legendre polynomials to find the rst coordinates. | |
|
private |
rst | holds the computed rst values |
pt_{x,y,z} | are the xyz coords of the points |
el_list | are the elements in which we look for rst |
n_pts | the number of points |
res{x,y,z} | are the difference between pt_{xyz} and xyz |
Definition at line 229 of file legendre_rst_finder.f90.
|
private |
rst | holds the computed rst values |
pt_{x,y,z} | are the xyz coords of the points |
el_list | are the elements in which we look for rst |
n_pts | the number of points |
res{x,y,z} | are the difference between pt_{xyz} and xyz |
Definition at line 185 of file legendre_rst_finder.f90.
|
private |
this | An instance of the legendre_rst_finder_t class. |
rst_local_cand | A matrix to store the local RST coordinates of the candidate points. |
x_t | A vector containing the x-coordinates of the target points. |
y_t | A vector containing the y-coordinates of the target points. |
z_t | A vector containing the z-coordinates of the target points. |
el_cands | An array with the indices of the candidate elements. |
n_point_cand | The number of candidate points to process. |
resx | A vector to store the residuals in the x-direction. |
resy | A vector to store the residuals in the y-direction. |
resz | A vector to store the residuals in the z-direction. |
Find the elements that contain the points
Definition at line 148 of file legendre_rst_finder.f90.
|
private |
Definition at line 122 of file legendre_rst_finder.f90.
subroutine legendre_rst_finder::legendre_rst_finder_init | ( | class(legendre_rst_finder_t), intent(inout) | this, |
real(kind=rp), dimension(nelv*xh%lxyz), intent(in) | x, | ||
real(kind=rp), dimension(nelv*xh%lxyz), intent(in) | y, | ||
real(kind=rp), dimension(nelv*xh%lxyz), intent(in) | z, | ||
integer, intent(in) | nelv, | ||
type(space_t), intent(in), target | xh, | ||
real(kind=rp), intent(in), optional | tol, | ||
integer, intent(in), optional | max_iter | ||
) |
Copy the data to the device (if device exists)
Definition at line 70 of file legendre_rst_finder.f90.