Implements the device kernel for the dynamic_smagorinsky_t type.
|
| subroutine, public | dynamic_smagorinsky_compute_device (if_ext, t, tstep, coef, nut, delta, c_dyn, test_filter, mij, lij, num, den) |
| | Compute eddy viscosity on the device.
|
| |
| subroutine | compute_lij_device (lij, u, v, w, test_filter, n) |
| | Compute Germano Identity on the device.
|
| |
| subroutine | compute_nut_device (nut, c_dyn, num, den, lij, mij, s11, s22, s33, s12, s13, s23, s_abs, test_filter, delta, alpha, coef, n) |
| | Compute M_ij and nut on the device.
|
| |
◆ compute_lij_device()
| subroutine dynamic_smagorinsky_device::compute_lij_device |
( |
type(field_t), dimension(6), intent(inout) |
lij, |
|
|
type(field_t), intent(in), pointer |
u, |
|
|
type(field_t), intent(in), pointer |
v, |
|
|
type(field_t), intent(in), pointer |
w, |
|
|
type(elementwise_filter_t), intent(inout) |
test_filter, |
|
|
integer, intent(in) |
n |
|
) |
| |
|
private |
L_ij = u_i*u_j - u_i*u_j
- Parameters
-
| lij | The Germano identity. |
| u | x-velocity resolved (only filtered once) |
| v | y-velocity resolved (only filtered once) |
| w | z-velocity resolved (only filtered once) |
| test_filter | |
| n | |
filtered u,v,w by the test filter
Definition at line 155 of file dynamic_smagorinsky_device.f90.
◆ compute_nut_device()
| subroutine dynamic_smagorinsky_device::compute_nut_device |
( |
type(field_t), intent(inout) |
nut, |
|
|
type(field_t), intent(inout) |
c_dyn, |
|
|
type(field_t), intent(inout) |
num, |
|
|
type(field_t), intent(inout) |
den, |
|
|
type(field_t), dimension(6), intent(in) |
lij, |
|
|
type(field_t), dimension(6), intent(inout) |
mij, |
|
|
type(field_t), intent(inout) |
s11, |
|
|
type(field_t), intent(inout) |
s22, |
|
|
type(field_t), intent(inout) |
s33, |
|
|
type(field_t), intent(inout) |
s12, |
|
|
type(field_t), intent(inout) |
s13, |
|
|
type(field_t), intent(inout) |
s23, |
|
|
type(field_t), intent(inout) |
s_abs, |
|
|
type(elementwise_filter_t), intent(inout) |
test_filter, |
|
|
type(field_t), intent(in) |
delta, |
|
|
real(kind=rp), intent(in) |
alpha, |
|
|
type(coef_t), intent(in) |
coef, |
|
|
integer, intent(in) |
n |
|
) |
| |
|
private |
M_ij = ((delta_test/delta)^2 s_abs*s_ij - s_abs*s_ij)*(delta^2)
- Parameters
-
| nut | The SGS viscosity array |
| c_dyn | The DS model coefficient |
| num | The numerator in the expression of c_dyn, i.e. <mij*lij> |
| den | The denominator in the expression of c_dyn, i.e. <mij*mij> |
| lij | The Germano identity |
| Mij | |
| s11 | |
| s22 | |
| s33 | |
| s12 | |
| s13 | |
| s23 | |
| s_abs | |
| test_filter | |
| delta | The filter size |
| alpha | The moving average coefficient |
| n | |
Definition at line 227 of file dynamic_smagorinsky_device.f90.
◆ dynamic_smagorinsky_compute_device()
| subroutine, public dynamic_smagorinsky_device::dynamic_smagorinsky_compute_device |
( |
logical, intent(in) |
if_ext, |
|
|
real(kind=rp), intent(in) |
t, |
|
|
integer, intent(in) |
tstep, |
|
|
type(coef_t), intent(in) |
coef, |
|
|
type(field_t), intent(inout) |
nut, |
|
|
type(field_t), intent(in) |
delta, |
|
|
type(field_t), intent(inout) |
c_dyn, |
|
|
type(elementwise_filter_t), intent(inout) |
test_filter, |
|
|
type(field_t), dimension(6), intent(inout) |
mij, |
|
|
type(field_t), dimension(6), intent(inout) |
lij, |
|
|
type(field_t), intent(inout) |
num, |
|
|
type(field_t), intent(inout) |
den |
|
) |
| |
- Parameters
-
| if_ext | If extrapolate the velocity field to evaluate |
| t | The time value. |
| tstep | The current time-step. |
| coef | SEM coefficients. |
| nut | The SGS viscosity array. |
| delta | The LES lengthscale. |
| c_dyn | The DS model coefficient |
| test_filter | |
| mij | |
| lij | The Germano identity. |
| num | The numerator in the expression of c_dyn, i.e. <mij*lij> |
| den | The denominator in the expression of c_dyn, i.e. <mij*mij> |
Definition at line 68 of file dynamic_smagorinsky_device.f90.