block_obj_Partition Subroutine

private impure subroutine block_obj_Partition(this, Nb)

Partition a parent block into sub-blocks based on a given decomposition Nb(3) for parallel simulations. This will also define the partition axes, and update local bounds/extents, and global bounds/extents.

Type Bound

block_obj

Arguments

Type IntentOptional Attributes Name
class(block_obj), intent(inout) :: this

A block object

integer, intent(in) :: Nb(3)

Number of blocks in each direction


Calls

proc~~block_obj_partition~~CallsGraph proc~block_obj_partition block_obj%block_obj_Partition none~updategridghostcells block_obj%UpdateGridGhostCells proc~block_obj_partition->none~updategridghostcells proc~axis_obj_final axis_obj%axis_obj_Final proc~block_obj_partition->proc~axis_obj_final proc~axis_obj_init axis_obj%axis_obj_Init proc~block_obj_partition->proc~axis_obj_init proc~block_obj_setconveniencepointers block_obj%block_obj_SetConveniencePointers proc~block_obj_partition->proc~block_obj_setconveniencepointers proc~block_obj_setupmpitypes block_obj%block_obj_SetupMPITypes proc~block_obj_partition->proc~block_obj_setupmpitypes proc~block_obj_subdivideblock block_obj%block_obj_SubDivideBlock proc~block_obj_partition->proc~block_obj_subdivideblock proc~block_obj_updatemidpoints block_obj%block_obj_UpdateMidPoints proc~block_obj_partition->proc~block_obj_updatemidpoints proc~block_obj_updatespacing block_obj%block_obj_UpdateSpacing proc~block_obj_partition->proc~block_obj_updatespacing proc~parallel_obj_topology parallel_obj%parallel_obj_topology proc~block_obj_partition->proc~parallel_obj_topology proc~block_obj_updategridghostcells block_obj%block_obj_UpdateGridGhostCells none~updategridghostcells->proc~block_obj_updategridghostcells proc~block_obj_updategridghostcells2 block_obj%block_obj_UpdateGridGhostCells2 none~updategridghostcells->proc~block_obj_updategridghostcells2 mpi_type_commit mpi_type_commit proc~block_obj_setupmpitypes->mpi_type_commit mpi_type_free mpi_type_free proc~block_obj_setupmpitypes->mpi_type_free mpi_type_vector mpi_type_vector proc~block_obj_setupmpitypes->mpi_type_vector mpi_cart_coords mpi_cart_coords proc~parallel_obj_topology->mpi_cart_coords mpi_cart_create mpi_cart_create proc~parallel_obj_topology->mpi_cart_create mpi_cart_rank mpi_cart_rank proc~parallel_obj_topology->mpi_cart_rank mpi_cart_shift mpi_cart_shift proc~parallel_obj_topology->mpi_cart_shift mpi_comm_rank mpi_comm_rank proc~parallel_obj_topology->mpi_comm_rank mpi_dims_create mpi_dims_create proc~parallel_obj_topology->mpi_dims_create mpi_irecv mpi_irecv proc~block_obj_updategridghostcells->mpi_irecv mpi_isend mpi_isend proc~block_obj_updategridghostcells->mpi_isend mpi_waitall mpi_waitall proc~block_obj_updategridghostcells->mpi_waitall proc~block_obj_updateextents block_obj%block_obj_UpdateExtents proc~block_obj_updategridghostcells->proc~block_obj_updateextents proc~block_obj_updategridghostcells2->mpi_irecv proc~block_obj_updategridghostcells2->mpi_isend proc~block_obj_updategridghostcells2->mpi_waitall proc~block_obj_updateextents->proc~axis_obj_init

Called by

proc~~block_obj_partition~~CalledByGraph proc~block_obj_partition block_obj%block_obj_Partition proc~cdifs_channel_flow_block cdifs_channel_flow_block proc~cdifs_channel_flow_block->proc~block_obj_partition proc~cdifs_cylinder_block cdifs_cylinder_block proc~cdifs_cylinder_block->proc~block_obj_partition proc~cdifs_lamb_oseen_block cdifs_lamb_oseen_block proc~cdifs_lamb_oseen_block->proc~block_obj_partition proc~cdifs_lid_driven_cavity_block cdifs_lid_driven_cavity_block proc~cdifs_lid_driven_cavity_block->proc~block_obj_partition proc~cdifs_obj_preparesolverblock cdifs_obj_PrepareSolverBlock proc~cdifs_obj_preparesolverblock->proc~block_obj_partition proc~cdifs_rebound_block cdifs_rebound_block proc~cdifs_rebound_block->proc~block_obj_partition proc~cdifs_settling_sphere_block cdifs_settling_sphere_block proc~cdifs_settling_sphere_block->proc~block_obj_partition proc~cdifs_taylor_green_block cdifs_taylor_green_block proc~cdifs_taylor_green_block->proc~block_obj_partition proc~cdifs_vortex_dipole_block cdifs_vortex_dipole_block proc~cdifs_vortex_dipole_block->proc~block_obj_partition proc~cdifs_vortex_impingement_block cdifs_vortex_impingement_block proc~cdifs_vortex_impingement_block->proc~block_obj_partition proc~grans_headon_collision_block grans_headon_collision_block proc~grans_headon_collision_block->proc~block_obj_partition proc~grans_homogeneous_cooling_block grans_homogeneous_cooling_block proc~grans_homogeneous_cooling_block->proc~block_obj_partition proc~grans_obj_preparesolver_block grans_obj_PrepareSolver_block proc~grans_obj_preparesolver_block->proc~block_obj_partition proc~grans_rotating_drum_block grans_rotating_drum_block proc~grans_rotating_drum_block->proc~block_obj_partition proc~cdifs_channel_flow cdifs_channel_flow proc~cdifs_channel_flow->proc~cdifs_channel_flow_block proc~cdifs_cylinder cdifs_cylinder proc~cdifs_cylinder->proc~cdifs_cylinder_block proc~cdifs_lamb_oseen cdifs_lamb_oseen proc~cdifs_lamb_oseen->proc~cdifs_lamb_oseen_block proc~cdifs_lid_driven_cavity cdifs_lid_driven_cavity proc~cdifs_lid_driven_cavity->proc~cdifs_lid_driven_cavity_block proc~cdifs_obj_preparesolver cdifs_obj_PrepareSolver proc~cdifs_obj_preparesolver->proc~cdifs_obj_preparesolverblock proc~cdifs_rebound cdifs_rebound proc~cdifs_rebound->proc~cdifs_rebound_block proc~cdifs_settling_sphere cdifs_settling_sphere proc~cdifs_settling_sphere->proc~cdifs_settling_sphere_block proc~cdifs_taylor_green cdifs_taylor_green proc~cdifs_taylor_green->proc~cdifs_taylor_green_block proc~cdifs_vortex_dipole cdifs_vortex_dipole proc~cdifs_vortex_dipole->proc~cdifs_vortex_dipole_block proc~cdifs_vortex_impingement cdifs_vortex_impingement proc~cdifs_vortex_impingement->proc~cdifs_vortex_impingement_block proc~grans_headon_collision grans_headon_collision proc~grans_headon_collision->proc~grans_headon_collision_block proc~grans_homogeneous_cooling grans_homogeneous_cooling proc~grans_homogeneous_cooling->proc~grans_homogeneous_cooling_block proc~grans_obj_preparesolver grans_obj_PrepareSolver proc~grans_obj_preparesolver->proc~grans_obj_preparesolver_block proc~grans_rotating_drum grans_rotating_drum proc~grans_rotating_drum->proc~grans_rotating_drum_block interface~cdifs_channel_flow cdifs_channel_flow interface~cdifs_channel_flow->proc~cdifs_channel_flow interface~cdifs_cylinder cdifs_cylinder interface~cdifs_cylinder->proc~cdifs_cylinder interface~cdifs_lamb_oseen cdifs_lamb_oseen interface~cdifs_lamb_oseen->proc~cdifs_lamb_oseen interface~cdifs_lid_driven_cavity cdifs_lid_driven_cavity interface~cdifs_lid_driven_cavity->proc~cdifs_lid_driven_cavity interface~cdifs_obj_preparesolver cdifs_obj%cdifs_obj_PrepareSolver interface~cdifs_obj_preparesolver->proc~cdifs_obj_preparesolver interface~cdifs_rebound cdifs_rebound interface~cdifs_rebound->proc~cdifs_rebound interface~cdifs_settling_sphere cdifs_settling_sphere interface~cdifs_settling_sphere->proc~cdifs_settling_sphere interface~cdifs_taylor_green cdifs_taylor_green interface~cdifs_taylor_green->proc~cdifs_taylor_green interface~cdifs_vortex_dipole cdifs_vortex_dipole interface~cdifs_vortex_dipole->proc~cdifs_vortex_dipole interface~cdifs_vortex_impingement cdifs_vortex_impingement interface~cdifs_vortex_impingement->proc~cdifs_vortex_impingement interface~grans_headon_collision grans_headon_collision interface~grans_headon_collision->proc~grans_headon_collision interface~grans_homogeneous_cooling grans_homogeneous_cooling interface~grans_homogeneous_cooling->proc~grans_homogeneous_cooling interface~grans_obj_preparesolver grans_obj%grans_obj_PrepareSolver interface~grans_obj_preparesolver->proc~grans_obj_preparesolver interface~grans_rotating_drum grans_rotating_drum interface~grans_rotating_drum->proc~grans_rotating_drum proc~case_obj_setup cdifs_case_obj%case_obj_setup proc~case_obj_setup->interface~cdifs_channel_flow proc~case_obj_setup->interface~cdifs_cylinder proc~case_obj_setup->interface~cdifs_lamb_oseen proc~case_obj_setup->interface~cdifs_lid_driven_cavity proc~case_obj_setup->interface~cdifs_rebound proc~case_obj_setup->interface~cdifs_settling_sphere proc~case_obj_setup->interface~cdifs_taylor_green proc~case_obj_setup->interface~cdifs_vortex_dipole proc~case_obj_setup->interface~cdifs_vortex_impingement proc~case_obj_setup~2 grans_case_obj%case_obj_setup proc~case_obj_setup~2->interface~grans_headon_collision proc~case_obj_setup~2->interface~grans_homogeneous_cooling proc~case_obj_setup~2->interface~grans_rotating_drum proc~cdifs_obj_setinitialconditions cdifs_obj%cdifs_obj_SetInitialConditions proc~cdifs_obj_setinitialconditions->proc~case_obj_setup proc~grans_obj_setinitialconditions grans_obj%grans_obj_SetInitialConditions proc~grans_obj_setinitialconditions->proc~case_obj_setup~2