MFC
Exascale flow solver
Loading...
Searching...
No Matches
m_boundary_io Module Reference

Boundary condition restart I/O, capillary/IGR buffer population, and grid-variable buffers. More...

Functions/Subroutines

impure subroutine s_create_mpi_types (bc_type)
 Create MPI derived datatypes for boundary condition type arrays and buffer arrays used in parallel I/O.
subroutine s_write_serial_boundary_condition_files (q_prim_vf, bc_type, step_dirpath, old_grid_in, q_t_sf)
 Write boundary condition type and buffer data to serial (unformatted) restart files.
subroutine s_write_parallel_boundary_condition_files (q_prim_vf, bc_type, q_t_sf)
 Write boundary condition type and buffer data to per-rank parallel files using MPI I/O.
subroutine s_read_serial_boundary_condition_files (step_dirpath, bc_type)
 Read boundary condition type and buffer data from serial (unformatted) restart files.
subroutine s_read_parallel_boundary_condition_files (bc_type, strict)
 Read boundary condition type and buffer data from per-rank parallel files using MPI I/O.
impure subroutine s_check_bc_decomposition (file_loc, strict)
 Check that the per-rank boundary files in file_loc were written for this run's decomposition: abort if strict, else warn. They are read by rank index, so on another decomposition each rank would silently read another rank's boundary slab. Files written before decomposition.dat existed are not checked.
subroutine s_pack_boundary_condition_buffers (q_prim_vf, q_t_sf)
 Pack primitive variable boundary slices into bc_buffers arrays for serialization.
subroutine s_assign_default_bc_type (bc_type)
 Initialize the per-cell boundary condition type arrays with the global default BC values.

Variables

integer, dimension(1:3, 1:2) mpi_bc_type_type
integer, dimension(1:3, 1:2) mpi_bc_buffer_type

Detailed Description

Boundary condition restart I/O, capillary/IGR buffer population, and grid-variable buffers.

Function/Subroutine Documentation

◆ s_assign_default_bc_type()

subroutine m_boundary_io::s_assign_default_bc_type ( type(integer_field), dimension(1:num_dims,1:2), intent(in) bc_type)

Initialize the per-cell boundary condition type arrays with the global default BC values.

Definition at line 793 of file m_boundary_io.fpp.f90.

Here is the caller graph for this function:

◆ s_check_bc_decomposition()

impure subroutine m_boundary_io::s_check_bc_decomposition ( character(len=*), intent(in) file_loc,
logical, intent(in) strict )

Check that the per-rank boundary files in file_loc were written for this run's decomposition: abort if strict, else warn. They are read by rank index, so on another decomposition each rank would silently read another rank's boundary slab. Files written before decomposition.dat existed are not checked.

Definition at line 687 of file m_boundary_io.fpp.f90.

Here is the caller graph for this function:

◆ s_create_mpi_types()

impure subroutine m_boundary_io::s_create_mpi_types ( type(integer_field), dimension(1:num_dims,1:2), intent(in) bc_type)

Create MPI derived datatypes for boundary condition type arrays and buffer arrays used in parallel I/O.

Definition at line 387 of file m_boundary_io.fpp.f90.

Here is the caller graph for this function:

◆ s_pack_boundary_condition_buffers()

subroutine m_boundary_io::s_pack_boundary_condition_buffers ( type(scalar_field), dimension(sys_size), intent(in) q_prim_vf,
type(scalar_field), intent(in), optional q_t_sf )

Pack primitive variable boundary slices into bc_buffers arrays for serialization.

Definition at line 731 of file m_boundary_io.fpp.f90.

Here is the caller graph for this function:

◆ s_read_parallel_boundary_condition_files()

subroutine m_boundary_io::s_read_parallel_boundary_condition_files ( type(integer_field), dimension(1:num_dims,1:2), intent(inout) bc_type,
logical, intent(in), optional strict )

Read boundary condition type and buffer data from per-rank parallel files using MPI I/O.

Parameters
[in]strictabort on a decomposition mismatch (default)

Definition at line 596 of file m_boundary_io.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_read_serial_boundary_condition_files()

subroutine m_boundary_io::s_read_serial_boundary_condition_files ( character(len=*), intent(in) step_dirpath,
type(integer_field), dimension(1:num_dims,1:2), intent(inout) bc_type )

Read boundary condition type and buffer data from serial (unformatted) restart files.

Definition at line 530 of file m_boundary_io.fpp.f90.

Here is the caller graph for this function:

◆ s_write_parallel_boundary_condition_files()

subroutine m_boundary_io::s_write_parallel_boundary_condition_files ( type(scalar_field), dimension(sys_size), intent(in) q_prim_vf,
type(integer_field), dimension(1:num_dims,1:2), intent(in) bc_type,
type(scalar_field), intent(in), optional q_t_sf )

Write boundary condition type and buffer data to per-rank parallel files using MPI I/O.

Definition at line 462 of file m_boundary_io.fpp.f90.

Here is the call graph for this function:

◆ s_write_serial_boundary_condition_files()

subroutine m_boundary_io::s_write_serial_boundary_condition_files ( type(scalar_field), dimension(sys_size), intent(in) q_prim_vf,
type(integer_field), dimension(1:num_dims,1:2), intent(in) bc_type,
character(len=*), intent(in) step_dirpath,
logical, intent(in) old_grid_in,
type(scalar_field), intent(in), optional q_t_sf )

Write boundary condition type and buffer data to serial (unformatted) restart files.

Definition at line 422 of file m_boundary_io.fpp.f90.

Here is the call graph for this function:

Variable Documentation

◆ mpi_bc_buffer_type

integer, dimension(1:3,1:2) m_boundary_io::mpi_bc_buffer_type

Definition at line 381 of file m_boundary_io.fpp.f90.

◆ mpi_bc_type_type

integer, dimension(1:3,1:2) m_boundary_io::mpi_bc_type_type

Definition at line 380 of file m_boundary_io.fpp.f90.