61    logical, 
intent(in) :: if_ext
 
   62    real(kind=
rp), 
intent(in) :: t
 
   63    integer, 
intent(in) :: tstep
 
   64    type(
coef_t), 
intent(in) :: coef
 
   65    type(
field_t), 
intent(inout) :: nut
 
   66    type(
field_t), 
intent(in) :: delta
 
   67    real(kind=
rp), 
intent(in) :: c_s
 
   68    type(
field_t), 
pointer :: u, v, w
 
   70    type(
field_t), 
pointer :: s11, s22, s33, s12, s13, s23
 
   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, u, v, w, coef)
 
  102         s12%x_d, s13%x_d, s23%x_d, &
 
  103         delta%x_d, nut%x_d, coef%mult_d, &
 
  107    call device_col2(nut%x_d, coef%mult_d, nut%dof%size())
 
 
subroutine, public device_col2(a_d, b_d, n, strm)
Vector multiplication .
 
subroutine, public device_smagorinsky_nut_compute(s11_d, s22_d, s33_d, s12_d, s13_d, s23_d, delta_d, nut_d, mult_d, c_s, n)
Compute the eddy viscosity field for the Sigma model indevice.
 
Defines a registry for storing solution fields.
 
type(field_registry_t), target, public neko_field_registry
Global field registry.
 
Defines Gather-scatter operations.
 
integer, parameter, public gs_op_add
 
integer, parameter, public rp
Global precision used in computations.
 
subroutine, public strain_rate(s11, s22, s33, s12, s13, s23, u, v, w, coef)
Compute the strain rate tensor, i.e 0.5 * du_i/dx_j + du_j/dx_i.
 
Defines a registry for storing and requesting temporary fields This can be used when you have a funct...
 
type(scratch_registry_t), target, public neko_scratch_registry
Global scratch registry.
 
Implements the device kernel for the smagorinsky_t type.
 
subroutine, public smagorinsky_compute_device(if_ext, t, tstep, coef, nut, delta, c_s)
Compute eddy viscosity on the device.
 
Coefficients defined on a given (mesh, ) tuple. Arrays use indices (i,j,k,e): element e,...
 
field_list_t, To be able to group fields together