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 | :: | alpha(3) |
Stretching parameters |
|||
| real(kind=dp), | public | :: | beta(3) |
Stretching parameters |
|||
| 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 | |||
| 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) |