Neko 1.99.3
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
opr_device Module Reference

Operators accelerator backends.

Data Types

interface  hip_cdtp
 
interface  hip_cfl
 
interface  hip_conv1
 
interface  hip_convect_scalar
 
interface  hip_dudxyz
 
interface  hip_lambda2
 
interface  hip_opgrad
 
interface  hip_rotate_cyc
 
interface  hip_set_convect_rst
 

Functions/Subroutines

subroutine, public opr_device_dudxyz (du_d, u_d, dr_d, ds_d, dt_d, coef)
 
subroutine, public opr_device_opgrad (ux_d, uy_d, uz_d, u_d, coef)
 
subroutine, public device_ortho (x_d, glb_n_points, n)
 Othogonalize with regard to vector (1,1,1,1,1,1...,1)^T.
 
subroutine, public opr_device_lambda2 (lambda2_d, u_d, v_d, w_d, coef)
 
subroutine, public opr_device_cdtp (dtx_d, x_d, dr_d, ds_d, dt_d, coef)
 
subroutine, public opr_device_conv1 (du_d, u_d, vx_d, vy_d, vz_d, xh, coef, nelv, gdim)
 
subroutine, public opr_device_convect_scalar (du, u_d, cr_d, cs_d, ct_d, xh_gll, xh_gl, coef_gll, coef_gl, gll_to_gl)
 
subroutine, public opr_device_curl (w1, w2, w3, u1, u2, u3, work1, work2, c_xh, event)
 
real(kind=rp) function, public opr_device_cfl (dt, u_d, v_d, w_d, xh, coef, nelv, gdim)
 
subroutine, public opr_device_rotate_cyc (vx_d, vy_d, vz_d, idir, coef)
 
subroutine, public opr_device_set_convect_rst (cr_d, cs_d, ct_d, cx_d, cy_d, cz_d, xh, coef)
 

Function/Subroutine Documentation

◆ device_ortho()

subroutine, public opr_device::device_ortho ( type(c_ptr), intent(inout x_d,
integer(kind=i8), intent(in glb_n_points,
integer, intent(in n 
)
Parameters
x_dThe device vector to orthogonolize.
glb_n_pointsThe global number of non-unique gll points in the grid.
Note
This is equivalent to subtracting the mean of x from each of its elements.

Definition at line 510 of file opr_device.F90.

Here is the call graph for this function:

◆ opr_device_cdtp()

subroutine, public opr_device::opr_device_cdtp ( type(c_ptr), intent(inout dtx_d,
type(c_ptr), intent(inout x_d,
type(c_ptr), intent(in dr_d,
type(c_ptr), intent(in ds_d,
type(c_ptr), intent(in dt_d,
type(coef_t), intent(in), target  coef 
)

Definition at line 551 of file opr_device.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ opr_device_cfl()

real(kind=rp) function, public opr_device::opr_device_cfl ( real(kind=rp)  dt,
type(c_ptr), intent(in u_d,
type(c_ptr), intent(in v_d,
type(c_ptr), intent(in w_d,
type(space_t xh,
type(coef_t coef,
integer  nelv,
integer  gdim 
)

Definition at line 823 of file opr_device.F90.

Here is the call graph for this function:

◆ opr_device_conv1()

subroutine, public opr_device::opr_device_conv1 ( type(c_ptr), intent(inout du_d,
type(c_ptr), intent(in u_d,
type(c_ptr), intent(in vx_d,
type(c_ptr), intent(in vy_d,
type(c_ptr), intent(in vz_d,
type(space_t), intent(in xh,
type(coef_t), intent(in), target  coef,
integer, intent(in nelv,
integer, intent(in gdim 
)

Definition at line 576 of file opr_device.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ opr_device_convect_scalar()

subroutine, public opr_device::opr_device_convect_scalar ( real(kind=rp), dimension(xh_gll%lx, xh_gll%ly, xh_gll%lz, coef_gl%msh%nelv), intent(inout du,
type(c_ptr)  u_d,
type(c_ptr)  cr_d,
type(c_ptr)  cs_d,
type(c_ptr)  ct_d,
type(space_t), intent(in xh_gll,
type(space_t), intent(in xh_gl,
type(coef_t), intent(in coef_gll,
type(coef_t), intent(in coef_gl,
type(interpolator_t), intent(inout gll_to_gl 
)

Definition at line 612 of file opr_device.F90.

Here is the call graph for this function:

◆ opr_device_curl()

subroutine, public opr_device::opr_device_curl ( type(field_t), intent(inout w1,
type(field_t), intent(inout w2,
type(field_t), intent(inout w3,
type(field_t), intent(in u1,
type(field_t), intent(in u2,
type(field_t), intent(in u3,
type(field_t), intent(inout work1,
type(field_t), intent(inout work2,
type(coef_t), intent(in c_xh,
type(c_ptr), intent(inout), optional  event 
)

Definition at line 657 of file opr_device.F90.

Here is the call graph for this function:

◆ opr_device_dudxyz()

subroutine, public opr_device::opr_device_dudxyz ( type(c_ptr), intent(inout du_d,
type(c_ptr), intent(in u_d,
type(c_ptr), intent(in dr_d,
type(c_ptr), intent(in ds_d,
type(c_ptr), intent(in dt_d,
type(coef_t), intent(in), target  coef 
)

Definition at line 446 of file opr_device.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ opr_device_lambda2()

subroutine, public opr_device::opr_device_lambda2 ( type(c_ptr), intent(inout lambda2_d,
type(c_ptr), intent(in u_d,
type(c_ptr), intent(in v_d,
type(c_ptr), intent(in w_d,
type(coef_t), intent(in coef 
)

Definition at line 521 of file opr_device.F90.

Here is the call graph for this function:

◆ opr_device_opgrad()

subroutine, public opr_device::opr_device_opgrad ( type(c_ptr), intent(inout ux_d,
type(c_ptr), intent(inout uy_d,
type(c_ptr), intent(inout uz_d,
type(c_ptr), intent(in u_d,
type(coef_t), intent(in), target  coef 
)

Definition at line 471 of file opr_device.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ opr_device_rotate_cyc()

subroutine, public opr_device::opr_device_rotate_cyc ( type(c_ptr), intent(inout vx_d,
type(c_ptr), intent(inout vy_d,
type(c_ptr), intent(inout vz_d,
integer, intent(in idir,
type(coef_t), intent(in coef 
)

Definition at line 858 of file opr_device.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ opr_device_set_convect_rst()

subroutine, public opr_device::opr_device_set_convect_rst ( type(c_ptr), intent(inout cr_d,
type(c_ptr), intent(inout cs_d,
type(c_ptr), intent(inout ct_d,
type(c_ptr), intent(inout cx_d,
type(c_ptr), intent(inout cy_d,
type(c_ptr), intent(inout cz_d,
type(space_t), intent(inout xh,
type(coef_t), intent(inout coef 
)

Definition at line 888 of file opr_device.F90.

Here is the call graph for this function: