60 logical,
intent(in) :: if_ext
61 real(kind=
rp),
intent(in) :: t
62 integer,
intent(in) :: tstep
63 type(
coef_t),
intent(in) :: coef
64 type(
field_t),
intent(inout) :: nut
65 type(
field_t),
intent(in) :: delta
66 real(kind=
rp),
intent(in) :: c_s
67 type(
field_t),
pointer :: u, v, w
69 type(
field_t),
pointer :: s11, s22, s33, s12, s13, s23
70 real(kind=
rp) :: s_abs
71 integer :: temp_indices(6)
74 if (if_ext .eqv. .true.)
then
92 call strain_rate(s11%x, s22%x, s33%x, s12%x, s13%x, s23%x, &
102 do concurrent(e = 1:coef%msh%nelv)
103 do concurrent(i = 1:coef%Xh%lxyz)
104 s_abs = sqrt(2.0_rp * (s11%x(i,1,1,e)*s11%x(i,1,1,e) + &
105 s22%x(i,1,1,e)*s22%x(i,1,1,e) + &
106 s33%x(i,1,1,e)*s33%x(i,1,1,e)) + &
107 4.0_rp * (s12%x(i,1,1,e)*s12%x(i,1,1,e) + &
108 s13%x(i,1,1,e)*s13%x(i,1,1,e) + &
109 s23%x(i,1,1,e)*s23%x(i,1,1,e)))
111 nut%x(i,1,1,e) = c_s**2 * delta%x(i,1,1,e)**2 * s_abs &
117 call col2(nut%x, coef%mult, nut%dof%size())
subroutine, public smagorinsky_compute_cpu(if_ext, t, tstep, coef, nut, delta, c_s)
Compute eddy viscosity on the CPU.