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
 
   68    type(
field_t), 
pointer :: a11, a12, a13, a21, a22, a23, a31, a32, a33
 
   69    type(
field_t), 
pointer :: u, v, w
 
   71    real(kind=
rp) :: beta11
 
   72    real(kind=
rp) :: beta12
 
   73    real(kind=
rp) :: beta13
 
   74    real(kind=
rp) :: beta22
 
   75    real(kind=
rp) :: beta23
 
   76    real(kind=
rp) :: beta33
 
   77    real(kind=
rp) :: b_beta
 
   78    real(kind=
rp) :: aijaij
 
   79    integer :: temp_indices(9)
 
   82    if (if_ext .eqv. .true.) 
then 
  104    call dudxyz (a11%x, u%x, coef%drdx, coef%dsdx, coef%dtdx, coef)
 
  105    call dudxyz (a12%x, u%x, coef%drdy, coef%dsdy, coef%dtdy, coef)
 
  106    call dudxyz (a13%x, u%x, coef%drdz, coef%dsdz, coef%dtdz, coef)
 
  108    call dudxyz (a21%x, v%x, coef%drdx, coef%dsdx, coef%dtdx, coef)
 
  109    call dudxyz (a22%x, v%x, coef%drdy, coef%dsdy, coef%dtdy, coef)
 
  110    call dudxyz (a23%x, v%x, coef%drdz, coef%dsdz, coef%dtdz, coef)
 
  112    call dudxyz (a31%x, w%x, coef%drdx, coef%dsdx, coef%dtdx, coef)
 
  113    call dudxyz (a32%x, w%x, coef%drdy, coef%dsdy, coef%dtdy, coef)
 
  114    call dudxyz (a33%x, w%x, coef%drdz, coef%dsdz, coef%dtdz, coef)
 
  126    do concurrent(e = 1:coef%msh%nelv)
 
  127       do concurrent(i = 1:coef%Xh%lxyz)
 
  129          beta11 = a11%x(i,1,1,e)**2 + a21%x(i,1,1,e)**2 + a31%x(i,1,1,e)**2
 
  130          beta22 = a12%x(i,1,1,e)**2 + a22%x(i,1,1,e)**2 + a32%x(i,1,1,e)**2
 
  131          beta33 = a13%x(i,1,1,e)**2 + a23%x(i,1,1,e)**2 + a33%x(i,1,1,e)**2
 
  132          beta12 = a11%x(i,1,1,e)*a12%x(i,1,1,e) + &
 
  133               a21%x(i,1,1,e)*a22%x(i,1,1,e) + &
 
  134               a31%x(i,1,1,e)*a32%x(i,1,1,e)
 
  135          beta13 = a11%x(i,1,1,e)*a13%x(i,1,1,e) + &
 
  136               a21%x(i,1,1,e)*a23%x(i,1,1,e) + &
 
  137               a31%x(i,1,1,e)*a33%x(i,1,1,e)
 
  138          beta23 = a12%x(i,1,1,e)*a13%x(i,1,1,e) + &
 
  139               a22%x(i,1,1,e)*a23%x(i,1,1,e) + &
 
  140               a32%x(i,1,1,e)*a33%x(i,1,1,e)
 
  142          b_beta = beta11*beta22 - beta12*beta12 + beta11*beta33 &
 
  143               - beta13*beta13 + beta22*beta33 - beta23*beta23
 
  145          b_beta = 
max(0.0_rp, b_beta)
 
  148          aijaij = beta11 + beta22 + beta33
 
  150          nut%x(i,1,1,e) = c*delta%x(i,1,1,e)*delta%x(i,1,1,e) &
 
  151               * sqrt(b_beta/(aijaij + 
neko_eps)) &
 
  157    call col2(nut%x, coef%mult, nut%dof%size())