Contains the implementations of various initialization support routines
Add variable to variable list based on varName
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(VariableList), | intent(inout) | :: | varList | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
||
logical, | intent(in) | :: | isDerivedList | |||
character(len=*), | intent(in) | :: | varName |
Initialize variable list based on variable data from a JSON file. If isDerivedList = .true. the list is initialized based on derived list data, otherwise it uses the implicit list.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(VariableList), | intent(inout) | :: | varList | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
||
logical, | intent(in), | optional | :: | isDerivedList |
Initialize grid object based on data from a JSON file.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(Grid), | intent(inout) | :: | gridObj | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
||
real(kind=rk), | intent(in), | optional | :: | lengthNorm |
Length normalization if the supplied grid is in meters, defaults to 1 |
Initialize simple partition object based on data from a JSON file and grid object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(Partition), | intent(inout) | :: | partObj | |||
type(Grid), | intent(in) | :: | gridObj |
Grid object used to get numX and numH |
||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
Initialize geometry object based on data from a JSON file and grid object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(Geometry), | intent(inout) | :: | geometryObj | |||
type(Grid), | intent(in) | :: | gridObj |
Grid object used to infer cell widths for consistency |
||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
Initialize PETSc controller object based on data from a JSON file and indexing object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(PETScController), | intent(inout) | :: | petscCont | |||
type(Indexing), | intent(in) | :: | indexingObj | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController and to initialize PETSc |
Initialize HDF5 controller object based on data from a JSON file and variable container object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(HDF5Controller), | intent(inout) | :: | hdf5Cont | |||
type(VariableContainer), | intent(in) | :: | varCont | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController and to initialize PETSc |
Initialize variable container based on variable data from a JSON file.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(VariableContainer), | intent(inout) | :: | varCont | |||
type(Indexing), | intent(in) | :: | indexingObj |
Indexing object used in variable container initialization |
||
type(Partition), | intent(in) | :: | partObj |
Partition object used in variable container initialization |
||
type(Textbook), | intent(in) | :: | textbookObj |
Textbook object used to retrieve derivation rules for variable container |
||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
Initialize standard textbook object based on grid, geometry, partition, species, and normalization data as well as a JSON file. Assumes that the velocity grid is normalized to electron thermal speed. The textbook includes (passed variables are in appearance order unless otherwise specified):
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(Textbook), | intent(inout) | :: | textbookObj | |||
type(Grid), | intent(in) | :: | gridObj | |||
type(Geometry), | intent(in) | :: | geometryObj | |||
type(Partition), | intent(in) | :: | partObj | |||
type(VSpace), | intent(in) | :: | vSpaceObj | |||
class(Normalization), | intent(in) | :: | normObj | |||
type(SpeciesList), | intent(in) | :: | speciesListObj | |||
type(VariableList), | intent(in) | :: | varList | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
Initialize standard integrator based on data from a JSON file. The standard integrator is a composit integrator containing either RK, BDE, or CVODE integrators.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(CompositeIntegrator), | intent(inout) | :: | integratorObj | |||
type(VariableContainer), | intent(in) | :: | varCont | |||
type(Indexing), | intent(in) | :: | indexingObj |
Indexing object used in BDE integrator initialization |
||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
Initialize signal collection with commonly used signals and their names. The signals are: 1. constant signal 2. hat signal 3. cut sine signal
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(SignalCollection), | intent(inout) | :: | signalCollectionObj |
Set the h-th harmonic of distribution function variable dist to xArr*vArr at corresponding x, and v coordinates. vArr should be either rank 1 or 2, and if it is rank 2 it should be size(numV,size(xArr))
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(inout), | dimension(:) | :: | dist | ||
integer(kind=ik), | intent(in) | :: | h | |||
real(kind=rk), | intent(in), | dimension(:) | :: | xArr | ||
real(kind=rk), | intent(in), | dimension(..) | :: | vArr |