Stores geometry information
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=dp), | public | :: | origin(3) |
Origin: coordinates of vertex (1, 1, 1) |
|||
real(kind=dp), | public | :: | d(3) |
size of a cell in each direction for a uniform mesh |
|||
real(kind=dp), | public | :: | L(3) |
Global dimensions of the domain in each direction |
|||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | vert_coords |
Global coordinates at vertices |
||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | midp_coords |
Global coordinates at midpoints |
||
character(len=20), | public, | dimension(3) | :: | stretching |
Stretching type |
||
logical, | public | :: | stretched(3) |
Stretching |
|||
real(kind=dp), | public | :: | beta(3) |
Stretching parameter |
|||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | vert_ds |
Stretching factors at vertices |
||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | vert_ds2 |
Stretching factors at vertices |
||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | vert_d2s |
Stretching factors at vertices |
||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | midp_ds |
Stretching factors at midpoints |
||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | midp_ds2 |
Stretching factors at midpoints |
||
real(kind=dp), | public, | allocatable, dimension(:, :) | :: | midp_d2s |
Stretching factors at midpoints |
procedure, public :: obtain_coordinates |
Stores grid information
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | dimension(3) | :: | global_vert_dims | |||
integer, | public, | dimension(3) | :: | global_cell_dims | |||
integer, | public, | dimension(3) | :: | vert_dims_padded | |||
integer, | public, | dimension(3) | :: | vert_dims | |||
integer, | public, | dimension(3) | :: | cell_dims | |||
logical, | public, | dimension(3) | :: | periodic_BC | |||
integer, | public, | dimension(3, 2) | :: | BCs_global | |||
integer, | public, | dimension(3, 2) | :: | BCs |
procedure, public :: copy_cell2vert_dims | |
procedure, public :: copy_vert2cell_dims |
Stores parallel domain related information
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | nrank | ||||
integer, | public | :: | nproc | ||||
integer, | public, | dimension(3) | :: | nrank_dir | |||
integer, | public, | dimension(3) | :: | nproc_dir | |||
integer, | public, | dimension(3) | :: | n_offset | |||
integer, | public, | dimension(3) | :: | pnext | |||
integer, | public, | dimension(3) | :: | pprev |
procedure, public :: is_root | |
procedure, public :: compute_rank_pos_from_global |
From the global rank maps, fills in the rank position as well
as the previous and next rank in the par
structure
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(par_t), | intent(inout) | :: | self | |||
integer, | intent(in), | dimension(:, :, :) | :: | global_ranks |
Obtains global coordinates for all the vertices and midpoints
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(geo_t) | :: | self | ||||
integer, | intent(in) | :: | vert_dims(3) | |||
integer, | intent(in) | :: | cell_dims(3) | |||
integer, | intent(in) | :: | n_offset(3) |