TermGenerator object used to generate electronj energy source and sink 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*eVTemperature/timeNorm.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | userDefined | = | .false. |
True only if user explicitly sets it to true |
|
type(VarData), | private, | allocatable, dimension(:) | :: | vData |
Individual term variable data including densities and required modelbound data |
||
type(StringArray), | private, | allocatable, dimension(:) | :: | implicitVars |
Implicit density names (corresponding to last inState in transitions) |
||
character(len=:), | private, | allocatable | :: | electronEnergyVarName |
Name of implicit electron energy variable |
||
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 energy source/sink term generator
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(CRMElEnergyTermGenerator), | 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 | |||
character(len=*), | intent(in) | :: | electronEnergyVarName |
Name of electron energy variable (used as evolved var) |
||
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 that include electrons in ingoingStates |
Generates and allocates parent implicit energy source terms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(CRMElEnergyTermGenerator), | intent(inout) | :: | this | |||
class(ModelboundData), | intent(in), | optional | :: | mbData |