Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private, | parameter, dimension(max_coord_dirs, num_faces , max_vec_components) | :: | displacement | = | reshape([[-1, 0, 0], [1, 0, 0], [0, -1, 0], [0, 1, 0], [0, 0, -1], [0, 0, 1]], [max_coord_dirs, num_faces, max_vec_components]) | displacement vectors in indicial coordinates for structured_grid blocks |
integer, | private, | parameter | :: | max_coord_dirs | = | size([x_dir, y_dir, z_dir]) | maximum number of coordinate directions |
integer, | private, | parameter | :: | max_vec_components | = | max_coord_dirs | maximum number of vector components |
integer, | private, | parameter | :: | num_faces | = | size([backward, forward]) | number of faces in each coordinate direction of a hexahedral volume with faces orthogonal to coordinate directions |
integer, | private, | parameter | :: | success | = | 0 | allocation stat value indicating success |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
integer, | intent(in), | dimension(:) | :: | ijk |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
integer, | intent(in), | dimension(:) | :: | ijk |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
integer, | intent(in) | :: | id |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
integer, | intent(in) | :: | n |
this verifies correct geometry for the assumptions in building the surfaces below initialize packages with only the time step & neighbor block_id (no halo-exchange data yet)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
class(geometry), | intent(in) | :: | problem_geometry | |||
class(structured_grid), | intent(in), | dimension(:), allocatable | :: | vertices | ||
type(surfaces), | intent(inout) | :: | block_faces | |||
integer, | intent(in), | dimension(:) | :: | block_partitions | ||
integer, | intent(in) | :: | num_scalars |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
class(structured_grid), | intent(in) | :: | vertices | |||
type(surfaces), | intent(in) | :: | block_surfaces | |||
class(structured_grid), | intent(inout) | :: | div_flux |
Evaluate 2nd partial derivatives in each coordinate direction according to equations (2.2) & (2.4) in Sundqvist & Veronis (1969) "A simple finite-difference grid with non-constant intervals", Tellus 22:1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(cartesian_grid), | intent(in) | :: | this | |||
class(structured_grid), | intent(in) | :: | vertices | |||
type(surfaces), | intent(inout) | :: | block_surfaces | |||
class(structured_grid), | intent(inout) | :: | div_flux_internal_points |