mus_gradData_module Module

This module contains data types, function and routines for gradient computation.

author: Kannan Masilamani


Uses

Used by

  • module~~mus_graddata_module~~UsedByGraph module~mus_graddata_module mus_gradData_module module~mus_aux_module mus_aux_module module~mus_aux_module->module~mus_graddata_module module~mus_relaxationparam_module mus_relaxationParam_module module~mus_relaxationparam_module->module~mus_graddata_module module~mus_turb_viscosity_module mus_turb_viscosity_module module~mus_turb_viscosity_module->module~mus_graddata_module module~mus_turbulence_module mus_turbulence_module module~mus_turbulence_module->module~mus_graddata_module module~mus_smagorinsky_module mus_Smagorinsky_module module~mus_smagorinsky_module->module~mus_graddata_module module~mus_dynloadbal_module mus_dynLoadBal_module module~mus_dynloadbal_module->module~mus_graddata_module module~mus_scheme_type_module mus_scheme_type_module module~mus_scheme_type_module->module~mus_graddata_module module~mus_hvs_aux_module mus_hvs_aux_module module~mus_hvs_aux_module->module~mus_graddata_module module~mus_vreman_module mus_Vreman_module module~mus_vreman_module->module~mus_graddata_module module~mus_turbulence_var_module mus_turbulence_var_module module~mus_turbulence_var_module->module~mus_graddata_module module~mus_derivedquantities_module2 mus_derivedQuantities_module2 module~mus_derivedquantities_module2->module~mus_graddata_module module~mus_wale_module mus_WALE_module module~mus_wale_module->module~mus_graddata_module

Contents


Derived Types

type, public :: mus_gradData_type

Contains information required to compute gradient like position of six direct neigbors in the state array and coeff for the gradient operation

Components

TypeVisibilityAttributesNameInitial
integer, private, allocatable:: neighPos(:,:,:)

Stores position of 6 direct face neighbors in the state array for each element Size: nSize, stencil%nDims, 2 last index refers to left and right side 1 is left/negative side and 2 is right/positive side

real(kind=rk), private, allocatable:: FDcoeff(:,:)

coeff to calculate 1st order derivative use forward difference for element with boundary (coeff = 1.0) and central difference for inner fluid element (coeff=0.5) size: nSize, stencil%nDims


Subroutines

public subroutine mus_init_gradData(me, neigh, levelDesc, stencil, nSize, nSolve, nScalars)

This routine initialize gradData with direct neighbors in state and finite difference coefficients.

Arguments

TypeIntentOptionalAttributesName
type(mus_gradData_type), intent(out) :: me

Gradient type

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

neighbor connectivity array

type(tem_levelDesc_type), intent(in) :: levelDesc

levelDesc to access communication buffers of state array

type(tem_stencilHeader_type), intent(in) :: stencil

stencil header

integer, intent(in) :: nSize

Number of elements in state array

integer, intent(in) :: nSolve

Number of elements solved in compute kernel i.e. excluding halos

integer, intent(in) :: nScalars

number of scalars in state array