Implements the CPU kernel for the smagorinsky_t
type.
|
subroutine, public | dynamic_smagorinsky_compute_cpu (t, tstep, coef, nut, delta, c_dyn, test_filter, mij, lij, num, den) |
| Compute eddy viscosity on the CPU. More...
|
|
subroutine | compute_lij_cpu (lij, u, v, w, test_filter, n, nelv) |
| Compute Germano Identity on the CPU. More...
|
|
subroutine | compute_mij_cpu (mij, s11, s22, s33, s12, s13, s23, s_abs, test_filter, delta, n, nelv) |
| Compute M_ij on the CPU. More...
|
|
subroutine | compute_num_den_cpu (num, den, lij, mij, alpha, n) |
| Compute numerator and denominator for c_dyn on the CPU. More...
|
|
◆ compute_lij_cpu()
subroutine dynamic_smagorinsky_cpu::compute_lij_cpu |
( |
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, |
|
|
integer, intent(inout) |
nelv |
|
) |
| |
|
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 | |
filtered u,v,w by the test filter
Definition at line 157 of file dynamic_smagorinsky_cpu.f90.
◆ compute_mij_cpu()
subroutine dynamic_smagorinsky_cpu::compute_mij_cpu |
( |
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, |
|
|
integer, intent(in) |
n, |
|
|
integer, intent(inout) |
nelv |
|
) |
| |
|
private |
M_ij = ((delta_test/delta)^2 s_abs*s_ij - s_abs*s_ij)*(delta^2)
- 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 | |
Definition at line 219 of file dynamic_smagorinsky_cpu.f90.
◆ compute_num_den_cpu()
subroutine dynamic_smagorinsky_cpu::compute_num_den_cpu |
( |
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(in) |
mij, |
|
|
real(kind=rp), intent(in) |
alpha, |
|
|
integer, intent(in) |
n |
|
) |
| |
|
private |
- Parameters
-
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> |
mij | |
lij | The Germano identity. |
alpha | The moving average coefficient |
Definition at line 311 of file dynamic_smagorinsky_cpu.f90.
◆ dynamic_smagorinsky_compute_cpu()
subroutine, public dynamic_smagorinsky_cpu::dynamic_smagorinsky_compute_cpu |
( |
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
-
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 64 of file dynamic_smagorinsky_cpu.f90.