Namespaces | |
module | mod_generic_node_type |
Any node type variables. | |
module | mod_grid_physical_points |
Functions to manage physical points in/out the mesh. | |
Functions | |
subroutine | mod_compute_grid_volume::compute_grid_volume_face (grid_volume_face, has_immersed_boundaries, n_isd, isd_target) |
Compute the volume of each cell of the face-centered grid. More... | |
subroutine, public | mod_grid_get_grid_volume::get_grid_volume (volumes) |
Compute the volume of each cell of a grid. More... | |
subroutine | mod_grid_get_grid_volume::modify_volumes_near_boundary (volumes, distance, boundary_shape, coord_x, coord_y, coord_z, coord_x_u, coord_y_v, coord_z_w, method) |
Compute the volume of each cell of grid. Functional version. | |
subroutine mod_compute_grid_volume::compute_grid_volume_face | ( | type(t_face_field), intent(out) | grid_volume_face, |
logical, intent(in) | has_immersed_boundaries, | ||
integer, intent(in) | n_isd, | ||
integer, dimension(:), intent(in), allocatable | isd_target | ||
) |
[out] | grid_volume_face | volume of the face-centered grid |
[in] | has_immersed_boundaries | flag for presence of immersed boundaries |
[in] | n_isd | number of immersed boundaries (immersed subdomains) |
[in] | isd_target | list of enabled immersed boundaries |
subroutine, public mod_grid_get_grid_volume::get_grid_volume | ( | double precision, dimension(:,:,:), intent(out) | volumes | ) |
Then using immersed boundaries, the volume is restricted to the inner domain. The outer domain counts as zero.
The argument volumes
can be a cell field or the component of a face field. In the latter case, the routine considers "shifted cells," i. e. cells centered on face nodes. Although, on the boundary, the volume outside the physical domain and in overlaping regions is not counted. Therefore, the returned argument volumes
can be used as follows: