Houses Grid object responsible for storing spatial, velocity, and harmonic grid vertices
Getter for xGrid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Getter for vGrid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Getter for maxL
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Getter for maxM
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Return total number of resolved harmonic on grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Return number of x points on grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Return number of v points on grid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Getter for lGrid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Getter for mGrid
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Getter for imaginaryHarmonic
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this |
Return index of harmonic l,m, (if im=true returns the imaginary component)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this | |||
integer(kind=ik), | intent(in) | :: | l | |||
integer(kind=ik), | intent(in) | :: | m | |||
logical, | intent(in) | :: | im |
Return l number for given harmonic index
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this | |||
integer(kind=ik), | intent(in) | :: | ind |
Return m number for given harmonic index
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this | |||
integer(kind=ik), | intent(in) | :: | ind |
Return true if harmonic with given index is imaginary
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(in) | :: | this | |||
integer(kind=ik), | intent(in) | :: | ind |
Grid initialization routine
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(Grid), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | dimension(:) | :: | x |
Positions of x-grid cell centres |
|
real(kind=rk), | intent(in), | dimension(:) | :: | v |
Positions of v-grid cell centres |
|
integer(kind=ik), | intent(in) | :: | maxL |
Highest resolved l-harmonic |
||
integer(kind=ik), | intent(in) | :: | maxM |
Highest resolved m-harmonic |
Grid object storing cell positions of x and v grid, as well as Legendre harmonic data of the grid
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | userDefined | = | .false. |
True only if user explicitly sets it to true |
|
real(kind=rk), | private, | allocatable, dimension(:) | :: | xGrid |
Positions of x-grid cell centres |
||
real(kind=rk), | private, | allocatable, dimension(:) | :: | vGrid |
Positions of v-grid cell centres |
||
integer(kind=ik), | private, | allocatable, dimension(:) | :: | lGrid |
l-numbers of each resolved harmonic |
||
integer(kind=ik), | private, | allocatable, dimension(:) | :: | mGrid |
m-numbers of each resolved harmonic |
||
logical, | private, | allocatable, dimension(:) | :: | imaginaryHarmonic |
True if resolved harmonic is imaginary |
||
integer(kind=ik), | private | :: | maxL |
Highest l-number resolved on grid |
|||
integer(kind=ik), | private | :: | maxM |
Highest m-number resolved on grid |
procedure, public :: isDefined => isDefinedObject | |
procedure, public :: makeDefined => makeDefinedObject | |
procedure, public :: makeUndefined => makeUndefinedObject | |
procedure, public :: getXGrid | |
procedure, public :: getVGrid | |
procedure, public :: getMaxL | |
procedure, public :: getMaxM | |
procedure, public :: getNumX | |
procedure, public :: getNumV | |
procedure, public :: getNumH | |
procedure, public :: getLGrid | |
procedure, public :: getMGrid | |
procedure, public :: getHarmonicIm | |
procedure, public :: getH | |
procedure, public :: getL | |
procedure, public :: getM | |
procedure, public :: isImaginary | |
procedure, public :: init => initGrid |