initGeneralTerm Module Subroutine

module subroutine initGeneralTerm(this, gridObj, partitionObj, indexingObj, procRank, evolvedVar, implicitVar, varCont, sTemplate, vData, normConst, coordProfile, tData, evalTermGroup, mbData, copyTermName)

General matrix term initialization routine

Arguments

Type IntentOptional Attributes Name
class(GeneralMatrixTerm), intent(inout) :: this
type(Grid), intent(in) :: gridObj

Grid object used to initialize stencil

type(Partition), intent(in) :: partitionObj

Parition object used to determine local number of DoF

type(Indexing), intent(in) :: indexingObj

Indexing object used to initialize matrix row data

integer(kind=ik), intent(in) :: procRank

Current processor rank

character(len=*), intent(in) :: evolvedVar

Name of evolved variable

character(len=*), intent(in) :: implicitVar

Name of implicit variable

type(VariableContainer), intent(in) :: varCont

Reference variable container

type(StencilTemplate), intent(inout) :: sTemplate

StencilTemplate used

type(VarData), intent(in), optional :: vData

Required variable names and powers

real(kind=rk), intent(in), optional :: normConst

Normalization constant

type(CoordProfiles), intent(in), optional :: coordProfile

Multiplicative coordinate profiles (globally indexed)

type(TimeSignalData), intent(in), optional :: tData

Explicit time dependence

integer(kind=ik), intent(in), optional :: evalTermGroup

Optional term group of host model to evaluate and use as additional row variable

class(ModelboundData), intent(in), optional :: mbData

Optional modelbound data object used when initializing fixed stancil generators which might require it

character(len=*), intent(in), optional :: copyTermName

Name of the term whose values should be copied and multiplied with this term's stencil