Set the perpendicular box size and resolution for linear or nonlinear runs.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real, | private | :: | ly | ||||
real, | public | :: | y0 | ||||
real, | public | :: | x0 | ||||
real, | private | :: | rtwist | ||||
real, | private | :: | rhostar_box | ||||
integer, | private | :: | naky_private | ||||
integer, | private | :: | ntheta0_private | ||||
integer, | private | :: | nx_private | ||||
integer, | private | :: | ny_private | ||||
integer, | private | :: | n0 | ||||
integer, | public | :: | jtwist | ||||
integer, | private | :: | naky | ||||
integer, | private | :: | ntheta0 | ||||
integer, | private | :: | nx | ||||
integer, | private | :: | ny | ||||
logical, | private | :: | parameters_read | = | .false. | ||
logical, | private | :: | initialized | = | .false. | ||
type(kt_grids_box_config_type), | private | :: | kt_grids_box_config |
Used to represent the input configuration of kt_grids_box
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | exist | = | .false. |
Does the related namelist exist in the target input file? |
|
integer, | public | :: | index | = | 0 |
Used to hold the specific index of numbered namelists |
|
logical, | public | :: | skip_read | = | .false. |
Do we want to skip the read step in init? |
|
logical, | public | :: | skip_broadcast | = | .false. |
Do we want to skip the broadcast step in init? |
|
logical, | public | :: | skip_smart_defaults | = | .false. |
Do we want to skip the smaart defaults in init? |
|
integer, | public | :: | jtwist | = | 1 |
For finite magnetic shear determines the box size in the x
direction according to . This also affects the number
of connections at each |
|
real, | public | :: | ly | = | 0.0 |
Sets the box size in the y direction. If set to 0 (the default) then
we set |
|
integer, | public | :: | n0 | = | 0 |
If set greater than zero (the default) then this sets the
toroidal mode number of the first non-zero |
|
integer, | public | :: | naky | = | 0 |
The actual number of ky modes. For nonlinear runs it is
generally recommended to use |
|
integer, | public | :: | ntheta0 | = | 0 |
The actual number of theta0 modes. For nonlinear runs it is
generally recommended to use |
|
integer, | public | :: | nx | = | 0 |
The number of kx points in inputs to the fft routines, and
hence the number of radial points used in real space
calculations. This differs from the actual number of kx points
simulated in the rest of the code due to the need to prevent
aliasing. The number of kx modes actually simulated
( |
|
integer, | public | :: | ny | = | 0 |
The number of ky points in inputs to the fft routines, and
hence the number of binormal points used in real space
calculations. This differs from the actual number of ky points
simulated in the rest of the code due to the need to prevent
aliasing. The number of ky modes actually simulated
( |
|
real, | public | :: | rhostar_box | = | 0.0 |
The rhostar ( |
|
real, | public | :: | rtwist | = | 0.0 |
Expert usage only -- more documentation required. |
|
real, | public | :: | x0 | = | 0. |
Controls the box length in the x direction (measured in the reference Larmour radius) if the magnetic shear is small (). The box size in the x direction is given by . See rtwist for an alternative. |
|
real, | public | :: | y0 | = | 2.0 |
Controls the box length in the y direction (measured in the
reference Larmour radius). The box size in the y direction is
given by . Note if |
Gets the default name for this namelist
Gets the default requires index for this namelist
Set the smart defaults for the kt_grids_box_config_type instance
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(kt_grids_box_config_type), | intent(inout) | :: | self |
FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(kt_grids_box_config_type), | intent(in), | optional | :: | kt_grids_box_config_in |
FIXME : Add documentation
FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(kt_grids_box_config_type), | intent(in), | optional | :: | kt_grids_box_config_in |
Write namelist for kt_grids_box
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | unit |
Get the various grid sizes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(out) | :: | naky |
Number of modes. See [[kt_grids_box_parameters::naky]] |
||
integer, | intent(out) | :: | ntheta0 |
Number of points. See [[kt_grids_box_parameters::ntheta0]] |
||
integer, | intent(out) | :: | nx |
Number of x points in real space. See [[kt_grids_box_parameters::nx]] |
||
integer, | intent(out) | :: | ny |
Number of y points in real space. See [[kt_grids_box_parameters::ny]] |
FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(kt_grids_overrides_type), | intent(in) | :: | grids_ov |
Calculate the grid of wavenumbers for box mode
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real, | intent(out), | dimension (:) | :: | aky |
The grid |
|
real, | intent(out), | dimension (:,:) | :: | theta0 |
The grid |
|
real, | intent(out), | dimension (:) | :: | akx |
The grid |
|
integer, | intent(out), | dimension (:) | :: | ikx |
Discrete kx wavenumber grid indices |
FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | report_unit |
Reads in the kt_grids_box_parameters namelist and populates the member variables
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(kt_grids_box_config_type), | intent(inout) | :: | self |
Writes out a namelist representing the current state of the config object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(kt_grids_box_config_type), | intent(in) | :: | self | |||
integer, | intent(in), | optional | :: | unit |
Resets the config object to the initial empty state
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(kt_grids_box_config_type), | intent(inout) | :: | self |
Broadcasts all config parameters so object is populated identically on all processors
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(kt_grids_box_config_type), | intent(inout) | :: | self |
Set the module level config instance
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(kt_grids_box_config_type), | intent(in), | optional | :: | kt_grids_box_config_in |