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

Per-cell noncharacteristic boundary condition primitives applied in the ghost cells. More...

Functions/Subroutines

subroutine s_ghost_cell_extrapolation (q_prim_vf, bc_dir, bc_loc, k, l, q_t_sf)
 Fill ghost cells by copying the nearest boundary cell value along the specified direction.
subroutine s_symmetry (q_prim_vf, bc_dir, bc_loc, k, l, pb_in, mv_in, q_t_sf)
 Apply reflective (symmetry) boundary conditions by mirroring primitive variables and flipping the normal velocity component.
subroutine s_periodic (q_prim_vf, bc_dir, bc_loc, k, l, pb_in, mv_in, q_t_sf)
 Apply periodic boundary conditions by copying values from the opposite domain boundary.
subroutine s_axis (q_prim_vf, pb_in, mv_in, k, l)
 Apply axis boundary conditions for cylindrical coordinates by reflecting values across the axis with azimuthal phase shift.
subroutine s_slip_wall (q_prim_vf, bc_dir, bc_loc, k, l, q_t_sf)
 Apply slip wall boundary conditions by extrapolating scalars and reflecting the wall-normal velocity component.
subroutine s_no_slip_wall (q_prim_vf, bc_dir, bc_loc, k, l, q_t_sf)
 Apply no-slip wall boundary conditions by reflecting and negating all velocity components at the wall.
subroutine s_dirichlet (q_prim_vf, bc_dir, bc_loc, k, l, q_t_sf)
 Apply Dirichlet boundary conditions by prescribing ghost cell values from stored boundary buffers.
subroutine s_qbmm_extrapolation (bc_dir, bc_loc, k, l, pb_in, mv_in)
 Extrapolate QBMM bubble pressure and mass-vapor variables into ghost cells by copying boundary values.
subroutine s_color_function_periodic (c_divs, bc_dir, bc_loc, k, l)
 Apply periodic boundary conditions to the color function and its divergence fields.
subroutine s_color_function_reflective (c_divs, bc_dir, bc_loc, k, l)
 Apply reflective boundary conditions to the color function and its divergence fields.
subroutine s_color_function_ghost_cell_extrapolation (c_divs, bc_dir, bc_loc, k, l)
 Extrapolate the color function and its divergence into ghost cells by copying boundary values.
subroutine s_f_igr_periodic (jac_sf, bc_dir, bc_loc, k, l)
 Apply periodic boundary conditions to the IGR Jacobian field by copying values from the opposite domain boundary.
subroutine s_f_igr_reflective (jac_sf, bc_dir, bc_loc, k, l)
 Apply reflective boundary conditions to the IGR Jacobian field by mirroring values across the boundary.
subroutine s_f_igr_ghost_cell_extrapolation (jac_sf, bc_dir, bc_loc, k, l)
 Extrapolate the IGR Jacobian field into ghost cells by copying boundary values.
subroutine s_beta_periodic (q_beta, kahan_comp, bc_dir, bc_loc, k, l, nvar)
subroutine s_beta_extrapolation (q_beta, bc_dir, bc_loc, k, l, nvar)
subroutine s_beta_reflective (q_beta, kahan_comp, bc_dir, bc_loc, k, l, nvar)
subroutine s_grid_periodic_bc (bc_dir, bc_loc, offset_dir)
 Apply periodic boundary conditions to grid variables by copying cell widths from opposite domain boundary.
subroutine s_grid_reflective_bc (bc_dir, bc_loc, offset_dir)
 Apply reflective boundary conditions to grid variables by mirroring cell widths across the boundary.
subroutine s_grid_ghost_cell_extrapolation_bc (bc_dir, bc_loc, offset_dir)
 Extrapolate grid variables by copying boundary cell width into ghost cells.
subroutine s_grid_axis_bc (bc_loc, offset_dir)
 Apply axis boundary conditions to grid variables for cylindrical coordinates.

Variables

type(scalar_field), dimension(:,:), allocatable bc_buffers

Detailed Description

Per-cell noncharacteristic boundary condition primitives applied in the ghost cells.

Function/Subroutine Documentation

◆ s_axis()

subroutine m_boundary_primitives::s_axis ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional pb_in,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional mv_in,
integer, intent(in) k,
integer, intent(in) l )

Apply axis boundary conditions for cylindrical coordinates by reflecting values across the axis with azimuthal phase shift.

Definition at line 915 of file m_boundary_primitives.fpp.f90.

◆ s_beta_extrapolation()

subroutine m_boundary_primitives::s_beta_extrapolation ( type(scalar_field), dimension(num_dims + 1), intent(inout) q_beta,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
integer, intent(in) nvar )

Definition at line 2221 of file m_boundary_primitives.fpp.f90.

◆ s_beta_periodic()

subroutine m_boundary_primitives::s_beta_periodic ( type(scalar_field), dimension(num_dims + 1), intent(inout) q_beta,
type(scalar_field), dimension(num_dims + 1), intent(inout) kahan_comp,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
integer, intent(in) nvar )

Definition at line 2113 of file m_boundary_primitives.fpp.f90.

◆ s_beta_reflective()

subroutine m_boundary_primitives::s_beta_reflective ( type(scalar_field), dimension(num_dims + 1), intent(inout) q_beta,
type(scalar_field), dimension(num_dims + 1), intent(inout) kahan_comp,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
integer, intent(in) nvar )

Definition at line 2310 of file m_boundary_primitives.fpp.f90.

◆ s_color_function_ghost_cell_extrapolation()

subroutine m_boundary_primitives::s_color_function_ghost_cell_extrapolation ( type(scalar_field), dimension(num_dims + 1), intent(inout) c_divs,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l )

Extrapolate the color function and its divergence into ghost cells by copying boundary values.

Definition at line 1794 of file m_boundary_primitives.fpp.f90.

◆ s_color_function_periodic()

subroutine m_boundary_primitives::s_color_function_periodic ( type(scalar_field), dimension(num_dims + 1), intent(inout) c_divs,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l )

Apply periodic boundary conditions to the color function and its divergence fields.

Definition at line 1592 of file m_boundary_primitives.fpp.f90.

◆ s_color_function_reflective()

subroutine m_boundary_primitives::s_color_function_reflective ( type(scalar_field), dimension(num_dims + 1), intent(inout) c_divs,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l )

Apply reflective boundary conditions to the color function and its divergence fields.

Definition at line 1681 of file m_boundary_primitives.fpp.f90.

◆ s_dirichlet()

subroutine m_boundary_primitives::s_dirichlet ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
type(scalar_field), intent(inout), optional q_t_sf )

Apply Dirichlet boundary conditions by prescribing ghost cell values from stored boundary buffers.

Parameters
[in,out]q_t_sfx-direction
[in,out]q_t_sfbc_xend
[in,out]q_t_sfy-direction
[in,out]q_t_sfbc_ybeg
[in,out]q_t_sfbc_yend
[in,out]q_t_sfz-direction
[in,out]q_t_sfbc_zbeg
[in,out]q_t_sfbc_zend

Definition at line 1377 of file m_boundary_primitives.fpp.f90.

Here is the call graph for this function:

◆ s_f_igr_ghost_cell_extrapolation()

subroutine m_boundary_primitives::s_f_igr_ghost_cell_extrapolation ( type(scalar_field), dimension(1:), intent(inout) jac_sf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l )

Extrapolate the IGR Jacobian field into ghost cells by copying boundary values.

Definition at line 2037 of file m_boundary_primitives.fpp.f90.

◆ s_f_igr_periodic()

subroutine m_boundary_primitives::s_f_igr_periodic ( type(scalar_field), dimension(1:), intent(inout) jac_sf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l )

Apply periodic boundary conditions to the IGR Jacobian field by copying values from the opposite domain boundary.

Definition at line 1883 of file m_boundary_primitives.fpp.f90.

◆ s_f_igr_reflective()

subroutine m_boundary_primitives::s_f_igr_reflective ( type(scalar_field), dimension(1:), intent(inout) jac_sf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l )

Apply reflective boundary conditions to the IGR Jacobian field by mirroring values across the boundary.

Definition at line 1960 of file m_boundary_primitives.fpp.f90.

◆ s_ghost_cell_extrapolation()

subroutine m_boundary_primitives::s_ghost_cell_extrapolation ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
type(scalar_field), intent(inout), optional q_t_sf )

Fill ghost cells by copying the nearest boundary cell value along the specified direction.

Parameters
[in,out]q_t_sfx-direction
[in,out]q_t_sfbc_xend
[in,out]q_t_sfy-direction
[in,out]q_t_sfbc_ybeg
[in,out]q_t_sfbc_yend
[in,out]q_t_sfz-direction
[in,out]q_t_sfbc_zbeg
[in,out]q_t_sfbc_zend

Definition at line 359 of file m_boundary_primitives.fpp.f90.

Here is the caller graph for this function:

◆ s_grid_axis_bc()

subroutine m_boundary_primitives::s_grid_axis_bc ( integer, intent(in) bc_loc,
type(int_bounds_info), intent(in) offset_dir )

Apply axis boundary conditions to grid variables for cylindrical coordinates.

Definition at line 2688 of file m_boundary_primitives.fpp.f90.

◆ s_grid_ghost_cell_extrapolation_bc()

subroutine m_boundary_primitives::s_grid_ghost_cell_extrapolation_bc ( integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
type(int_bounds_info), intent(in) offset_dir )

Extrapolate grid variables by copying boundary cell width into ghost cells.

Definition at line 2611 of file m_boundary_primitives.fpp.f90.

◆ s_grid_periodic_bc()

subroutine m_boundary_primitives::s_grid_periodic_bc ( integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
type(int_bounds_info), intent(in) offset_dir )

Apply periodic boundary conditions to grid variables by copying cell widths from opposite domain boundary.

Definition at line 2457 of file m_boundary_primitives.fpp.f90.

◆ s_grid_reflective_bc()

subroutine m_boundary_primitives::s_grid_reflective_bc ( integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
type(int_bounds_info), intent(in) offset_dir )

Apply reflective boundary conditions to grid variables by mirroring cell widths across the boundary.

Definition at line 2534 of file m_boundary_primitives.fpp.f90.

◆ s_no_slip_wall()

subroutine m_boundary_primitives::s_no_slip_wall ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
type(scalar_field), intent(inout), optional q_t_sf )

Apply no-slip wall boundary conditions by reflecting and negating all velocity components at the wall.

Parameters
[in,out]q_t_sfx-direction
[in,out]q_t_sfbc_xbeg
[in,out]q_t_sfbc_xend
[in,out]q_t_sfy-direction
[in,out]q_t_sfbc_ybeg
[in,out]q_t_sfbc_yend
[in,out]q_t_sfz-direction
[in,out]q_t_sfbc_zbeg
[in,out]q_t_sfbc_zend

Definition at line 1170 of file m_boundary_primitives.fpp.f90.

◆ s_periodic()

subroutine m_boundary_primitives::s_periodic ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional pb_in,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional mv_in,
type(scalar_field), intent(inout), optional q_t_sf )

Apply periodic boundary conditions by copying values from the opposite domain boundary.

Parameters
[in,out]q_t_sfx-direction
[in,out]q_t_sfbc_xbeg
[in,out]q_t_sfbc_xend
[in,out]q_t_sfy-direction
[in,out]q_t_sfbc_ybeg
[in,out]q_t_sfbc_yend
[in,out]q_t_sfz-direction
[in,out]q_t_sfbc_zbeg
[in,out]q_t_sfbc_zend

Definition at line 742 of file m_boundary_primitives.fpp.f90.

◆ s_qbmm_extrapolation()

subroutine m_boundary_primitives::s_qbmm_extrapolation ( integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional pb_in,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional mv_in )

Extrapolate QBMM bubble pressure and mass-vapor variables into ghost cells by copying boundary values.

Definition at line 1505 of file m_boundary_primitives.fpp.f90.

◆ s_slip_wall()

subroutine m_boundary_primitives::s_slip_wall ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
type(scalar_field), intent(inout), optional q_t_sf )

Apply slip wall boundary conditions by extrapolating scalars and reflecting the wall-normal velocity component.

Parameters
[in,out]q_t_sfx-direction
[in,out]q_t_sfbc_xbeg
[in,out]q_t_sfbc_xend
[in,out]q_t_sfy-direction
[in,out]q_t_sfbc_ybeg
[in,out]q_t_sfbc_yend
[in,out]q_t_sfz-direction
[in,out]q_t_sfbc_zbeg
[in,out]q_t_sfbc_zend

Definition at line 984 of file m_boundary_primitives.fpp.f90.

◆ s_symmetry()

subroutine m_boundary_primitives::s_symmetry ( type(scalar_field), dimension(sys_size), intent(inout) q_prim_vf,
integer, intent(in) bc_dir,
integer, intent(in) bc_loc,
integer, intent(in) k,
integer, intent(in) l,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional pb_in,
real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout), optional mv_in,
type(scalar_field), intent(inout), optional q_t_sf )

Apply reflective (symmetry) boundary conditions by mirroring primitive variables and flipping the normal velocity component.

Parameters
[in,out]q_t_sfx-direction
[in,out]q_t_sfbc_xbeg
[in,out]q_t_sfbc_xend
[in,out]q_t_sfy-direction
[in,out]q_t_sfbc_ybeg
[in,out]q_t_sfbc_yend
[in,out]q_t_sfz-direction
[in,out]q_t_sfbc_zbeg
[in,out]q_t_sfbc_zend

Definition at line 480 of file m_boundary_primitives.fpp.f90.

Variable Documentation

◆ bc_buffers

type(scalar_field), dimension(:,:), allocatable m_boundary_primitives::bc_buffers

Definition at line 343 of file m_boundary_primitives.fpp.f90.