TermGenerator object used to generate secondary electron source/sink terms based on associated variables in species list and CRM modelbound data.
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 |
||
character(len=:), | private, | allocatable | :: | distributionName |
Evolved distribution name |
||
type(StringArray), | private, | allocatable, dimension(:) | :: | implicitVars |
Implicit density names (corresponding to last inState in transitions) |
||
type(EnvironmentWrapper), | private, | pointer | :: | envPointer | => | null() |
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 secondary electron source/sink term generator
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(CRMSecElTermGenerator), | 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) | :: | distributionName |
Evolved distribution name |
||
character(len=*), | intent(in) | :: | generatorTag | |||
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 secondary electron source/sink terms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(CRMSecElTermGenerator), | intent(inout) | :: | this | |||
class(ModelboundData), | intent(in), | optional | :: | mbData |