Houses TermGenerator object used to generate electron energy implicit source terms based on associated variables in species list and CRM modelbound data
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 |
Deallocate pointer component
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(CRMElEnergyTermGenerator), | intent(inout) | :: | this |
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 |
final :: finalizeCRMElEnergyGenerator |
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 => initCRMElEnergyTermGenerator | |
procedure, public :: generate => generateElEnergySourceTerms |