version 0.6.0
Grid tools

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.
 

Detailed Description

Function Documentation

◆ compute_grid_volume_face()

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 
)
Parameters
[out]grid_volume_facevolume of the face-centered grid
[in]has_immersed_boundariesflag for presence of immersed boundaries
[in]n_isdnumber of immersed boundaries (immersed subdomains)
[in]isd_targetlist of enabled immersed boundaries

◆ get_grid_volume()

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:

vol = sum(volumes) !! The inner part of the local domain.
call global_sum(vol) !! The inner part of the global domain.
int = sum(field*volumes) !! The integral of `field` restricted to the
!! inner part of the local domain.
call global_sum(int) !! The integral of `field` restricted to the inner
!! part of the global domain.