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

Device backend for entropy viscosity regularization.

Data Types

interface  hip_entropy_visc_apply_element_max
 
interface  hip_entropy_visc_clamp_to_low_order
 
interface  hip_entropy_visc_compute_residual
 
interface  hip_entropy_visc_compute_viscosity
 
interface  hip_entropy_visc_smooth_divide
 

Functions/Subroutines

subroutine, public entropy_viscosity_compute_residual_device (entropy_residual_d, s_d, s_lag1_d, s_lag2_d, s_lag3_d, bdf_coeffs, dt, n)
 Compute entropy residual on a device.
 
subroutine, public entropy_viscosity_compute_viscosity_device (reg_coeff_d, entropy_residual_d, h_d, c_avisc_entropy, n_s, n)
 Compute viscosity from an entropy residual on a device.
 
subroutine, public entropy_viscosity_apply_element_max_device (reg_coeff_d, lx, nelv)
 Apply the element-wise maximum on a device.
 
subroutine, public entropy_viscosity_clamp_to_low_order_device (reg_coeff_d, h_d, max_wave_speed_d, c_avisc_low, n)
 Clamp the coefficient to low-order viscosity on a device.
 
subroutine, public entropy_viscosity_smooth_divide_device (reg_coeff_d, temp_field_d, mult_field_d, n)
 Divide by gather-scatter multiplicity on a device.
 

Function/Subroutine Documentation

◆ entropy_viscosity_apply_element_max_device()

subroutine, public entropy_viscosity_device::entropy_viscosity_apply_element_max_device ( type(c_ptr), intent(in)  reg_coeff_d,
integer, intent(in)  lx,
integer, intent(in)  nelv 
)
Parameters
reg_coeff_dDevice regularization coefficient field.
lxNumber of points per element direction.
nelvNumber of local elements.

Definition at line 353 of file entropy_viscosity_device.F90.

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

◆ entropy_viscosity_clamp_to_low_order_device()

subroutine, public entropy_viscosity_device::entropy_viscosity_clamp_to_low_order_device ( type(c_ptr), intent(in)  reg_coeff_d,
type(c_ptr), intent(in)  h_d,
type(c_ptr), intent(in)  max_wave_speed_d,
real(kind=rp), intent(in)  c_avisc_low,
integer, intent(in)  n 
)
Parameters
reg_coeff_dDevice regularization coefficient field.
h_dDevice mesh-size field.
max_wave_speed_dDevice maximum wave-speed field.
c_avisc_lowLow-order viscosity coefficient.
nNumber of points.

Definition at line 376 of file entropy_viscosity_device.F90.

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

◆ entropy_viscosity_compute_residual_device()

subroutine, public entropy_viscosity_device::entropy_viscosity_compute_residual_device ( type(c_ptr), intent(in)  entropy_residual_d,
type(c_ptr), intent(in)  s_d,
type(c_ptr), intent(in)  s_lag1_d,
type(c_ptr), intent(in)  s_lag2_d,
type(c_ptr), intent(in)  s_lag3_d,
real(kind=rp), dimension(4), intent(in)  bdf_coeffs,
real(kind=rp), intent(in)  dt,
integer, intent(in)  n 
)
Parameters
entropy_residual_dDevice entropy residual field.
S_dDevice current entropy field.
S_lag1_dDevice first lagged entropy field.
S_lag2_dDevice second lagged entropy field.
S_lag3_dDevice third lagged entropy field.
bdf_coeffsBDF time-scheme coefficients.
dtTime-step size.
nNumber of points.

Definition at line 290 of file entropy_viscosity_device.F90.

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

◆ entropy_viscosity_compute_viscosity_device()

subroutine, public entropy_viscosity_device::entropy_viscosity_compute_viscosity_device ( type(c_ptr), intent(in)  reg_coeff_d,
type(c_ptr), intent(in)  entropy_residual_d,
type(c_ptr), intent(in)  h_d,
real(kind=rp), intent(in)  c_avisc_entropy,
real(kind=rp), intent(in)  n_s,
integer, intent(in)  n 
)
Parameters
reg_coeff_dDevice regularization coefficient field.
entropy_residual_dDevice entropy residual field.
h_dDevice mesh-size field.
c_avisc_entropyEntropy viscosity coefficient.
n_SEntropy normalization factor.
nNumber of points.

Definition at line 326 of file entropy_viscosity_device.F90.

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

◆ entropy_viscosity_smooth_divide_device()

subroutine, public entropy_viscosity_device::entropy_viscosity_smooth_divide_device ( type(c_ptr), intent(in)  reg_coeff_d,
type(c_ptr), intent(in)  temp_field_d,
type(c_ptr), intent(in)  mult_field_d,
integer, intent(in)  n 
)
Parameters
reg_coeff_dDevice regularization coefficient field.
temp_field_dDevice field containing summed values.
mult_field_dDevice multiplicity field.
nNumber of points.

Definition at line 404 of file entropy_viscosity_device.F90.

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