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 |
Getter for userDefined
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Object), | intent(in) | :: | this |
Set userDefined to .true.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Object), | intent(inout) | :: | this |
Set userDefined to .false.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Object), | intent(inout) | :: | this |
Move allocation of impTerms to this%implicitTerms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(inout) | :: | this | |||
type(MatTermContainer), | intent(inout), | allocatable, dimension(:) | :: | impTerms |
Move allocation of genTerms to this%generalTerms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(inout) | :: | this | |||
type(TermContainer), | intent(inout), | allocatable, dimension(:) | :: | genTerms |
Set prefix for added term names
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(inout) | :: | this | |||
character(len=*), | intent(in) | :: | prefix |
Get size of this%implicitTerms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(in) | :: | this |
Get size of this%generalTerms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(in) | :: | this |
Get size of this%generalTerms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(in) | :: | this |
Move terms to modelObj
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TermGenerator), | intent(inout) | :: | this | |||
class(Model), | intent(inout) | :: | modelObj | |||
type(IntArray), | intent(in), | optional, | dimension(:) | :: | impTermImpGroups | |
type(IntArray), | intent(in), | optional, | dimension(:) | :: | impTermGenGroups | |
type(IntArray), | intent(in), | optional, | dimension(:) | :: | genTermGroups |
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 |