Houses base species class containing particle properties and associated variable names
Getter for id
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(in) | :: | this |
Getter for mass
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(in) | :: | this |
Getter for charge
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(in) | :: | this |
Getter for name
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(in) | :: | this |
Getter for associatedVars
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(in) | :: | this |
Initialize species from JSON file. Here for extensibility
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(inout) | :: | this | |||
character(len=*), | intent(in) | :: | name | |||
type(JSONController), | intent(inout) | :: | jsonCont |
JSONController used to get parameters from ./config.json |
||
type(MPIController), | intent(inout) | :: | mpiCont |
MPIController used with JSONController |
Species initialization. Z is the charge and A the atomic mass (in amus). A/Z are ignored if id = 0, which is reserved for electrons.
vars is a StringArray containing names of associated variables for easy access
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Species), | intent(inout) | :: | this | |||
integer(kind=ik), | intent(in) | :: | id | |||
character(len=*), | intent(in) | :: | name | |||
real(kind=rk), | intent(in) | :: | Z | |||
real(kind=rk), | intent(in) | :: | A | |||
type(StringArray), | intent(in), | dimension(:) | :: | vars |
Base species class containing particle properties and associated variable names
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | userDefined | = | .false. |
True only if user explicitly sets it to true |
|
integer(kind=ik), | private | :: | id | ||||
character(len=:), | private, | allocatable | :: | name | |||
real(kind=rk), | private | :: | charge |
in elementary charge units |
|||
real(kind=rk), | private | :: | mass |
in kg |
|||
type(StringArray), | private, | allocatable, dimension(:) | :: | associatedVars |
procedure, public :: isDefined => isDefinedObject | |
procedure, public :: makeDefined => makeDefinedObject | |
procedure, public :: makeUndefined => makeUndefinedObject | |
procedure, public :: getID | |
procedure, public :: getName | |
procedure, public :: getCharge | |
procedure, public :: getMass | |
procedure, public :: getAssociatedVars | |
procedure, public :: initFromJSON | |
procedure, public :: init => initSpecies |