mus_update_viscKine Subroutine

public subroutine mus_update_viscKine(viscKine, state, neigh, auxField, gradData, layout, baryOfTotal, tNow, nSize, nFluids, nGhostFromCoarser, nGhostFromFiner, nHalo, varSys, iLevel, convFac, dxL, dtL, derVarPos, turb, nNwtn, Grad)

Update kinematic viscosity from STfun and calculate turbulent viscosity from velocity gradient or nonEqPDF Viscosity obtained from this routine are normalized to the level

calculate turbulence viscosity for nFluids and ghostFromCoarser, for ghostFromFiner elements, turb visc is interpolated

Arguments

Type IntentOptional Attributes Name
type(mus_viscosity_type), intent(inout) :: viscKine

Kinematic viscosity

real(kind=rk), intent(in) :: state(:)

state array

integer, intent(in) :: neigh(:)

neighbor connectivity array

real(kind=rk), intent(in) :: auxField(:)

Auxiliary field variable array

type(mus_gradData_type), intent(in) :: gradData

gradient data

type(mus_scheme_layout_type), intent(in) :: layout

stencil layout

real(kind=rk), intent(in) :: baryOfTotal(:,:)

bary of treeID in total list

type(tem_time_type), intent(in) :: tNow

current simulation time

integer, intent(in) :: nSize

number of elements in state array

integer, intent(in) :: nFluids

number of fluid elements in state array

integer, intent(in) :: nGhostFromCoarser

Number of ghostFromCoarser element in state array

integer, intent(in) :: nGhostFromFiner

Number of ghostFromFiner element in state array

integer, intent(in) :: nHalo

Number of halo element in state array

type(tem_varSys_type), intent(in) :: varSys

variable system

integer, intent(in) :: iLevel

current level

type(mus_convertFac_type), intent(in) :: convFac

reference physical conversion factors for current level

real(kind=rk), intent(in) :: dxL

lattice element size in current level

real(kind=rk), intent(in) :: dtL

lattice time step size in current level

type(mus_derVarPos_type), intent(in) :: derVarPos

contains position of in varSys

type(mus_turbulence_type), intent(inout) :: turb

turbulence type

type(mus_nNwtn_type), intent(in) :: nNwtn

non-Newtonian type

type(mus_Grad_type), intent(in) :: Grad

Object that contains pointers to calculate gradients