Device backend for entropy viscosity regularization.
|
| 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.
|
| |
◆ entropy_viscosity_apply_element_max_device()
- Parameters
-
| reg_coeff_d | Device regularization coefficient field. |
| lx | Number of points per element direction. |
| nelv | Number of local elements. |
Definition at line 353 of file entropy_viscosity_device.F90.
◆ 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_d | Device regularization coefficient field. |
| h_d | Device mesh-size field. |
| max_wave_speed_d | Device maximum wave-speed field. |
| c_avisc_low | Low-order viscosity coefficient. |
| n | Number of points. |
Definition at line 376 of file entropy_viscosity_device.F90.
◆ 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_d | Device entropy residual field. |
| S_d | Device current entropy field. |
| S_lag1_d | Device first lagged entropy field. |
| S_lag2_d | Device second lagged entropy field. |
| S_lag3_d | Device third lagged entropy field. |
| bdf_coeffs | BDF time-scheme coefficients. |
| dt | Time-step size. |
| n | Number of points. |
Definition at line 290 of file entropy_viscosity_device.F90.
◆ 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_d | Device regularization coefficient field. |
| entropy_residual_d | Device entropy residual field. |
| h_d | Device mesh-size field. |
| c_avisc_entropy | Entropy viscosity coefficient. |
| n_S | Entropy normalization factor. |
| n | Number of points. |
Definition at line 326 of file entropy_viscosity_device.F90.
◆ entropy_viscosity_smooth_divide_device()
- Parameters
-
| reg_coeff_d | Device regularization coefficient field. |
| temp_field_d | Device field containing summed values. |
| mult_field_d | Device multiplicity field. |
| n | Number of points. |
Definition at line 404 of file entropy_viscosity_device.F90.