Houses TermGenerator object used to generate particle implicit source terms based on associated variables in species list and CRM modelbound data
Constructor routine for CRM particle source term generator
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(CRMDensTermGenerator), | intent(inout) | :: | this | |||
type(EnvironmentWrapper), | intent(in), | target | :: | envObj |
Environment wrapper used to get species data, partition info, etc. |
|
type(ModelboundCRMData), | intent(in) | :: | crmData |
CRM data object used to get transition data |
||
character(len=*), | intent(in) | :: | generatorTag | |||
integer(kind=ik), | intent(in), | optional, | dimension(:) | :: | evolvedSpeciesIDs |
Optional list of species IDs for which this generator will build source. Defaults to all species. |
integer(kind=ik), | intent(in), | optional, | dimension(:) | :: | includedTransitionIndices |
Optional list of transitions to be included in source calculations by this generator. Defaults to all transitions |
Generates and allocates parent implicit particle source terms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(CRMDensTermGenerator), | intent(inout) | :: | this | |||
class(ModelboundData), | intent(in), | optional | :: | mbData |
Deallocate pointer component
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(CRMDensTermGenerator), | intent(inout) | :: | this |
TermGenerator object used to generate particle source terms based on associated variables in species list and CRM modelbound data. Assumes rates are normalized so that the resulting source term is normalized to densNorm/timeNorm.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | userDefined | = | .false. |
True only if user explicitly sets it to true |
|
integer(kind=ik), | private, | allocatable, dimension(:) | :: | popChange |
Population change associated with each source term reaction |
||
type(VarData), | private, | allocatable, dimension(:) | :: | vData |
Individual term variable data including densities and required modelbound data |
||
type(StringArray), | private, | allocatable, dimension(:) | :: | evolvedVars |
Evolved density names |
||
type(StringArray), | private, | allocatable, dimension(:) | :: | implicitVars |
Implicit density names (corresponding to last inState in transitions) |
||
type(EnvironmentWrapper), | private, | pointer | :: | envPointer | => | null() | |
integer(kind=ik), | private | :: | numX |
Local copy of x-grid size |
final :: finalizeCRMDensGenerator |
procedure, public :: isDefined => isDefinedObject | |
procedure, public :: makeDefined => makeDefinedObject | |
procedure, public :: makeUndefined => makeUndefinedObject | |
procedure, public :: setImplicitTerms | |
procedure, public :: setGeneralTerms | |
procedure, public :: setGeneratorPrefix | |
procedure, public :: getNumImplicitTerms | |
procedure, public :: getNumGeneralTerms | |
procedure, public :: getGeneratorPrefix | |
procedure, public :: moveTerms | |
procedure, public :: init => initCRMDensTermGenerator | |
procedure, public :: generate => generatePartSourceTerms |