|
MFC: Simulation
High-fidelity multiphase flow simulation
|
This module is used to handle all operations related to immersed boundary methods (IBMs) More...
Functions/Subroutines | |
| impure subroutine, public | s_initialize_ibm_module () |
| Allocates memory for the variables in the IBM module. | |
| impure subroutine, public | s_ibm_setup () |
| Initializes the values of various IBM variables, such as ghost points and image points. | |
| subroutine | s_populate_ib_buffers () |
| subroutine, public | s_ibm_correct_state (q_cons_vf, q_prim_vf, pb_in, mv_in) |
| Subroutine that updates the conservative variables at the ghost points. | |
| impure subroutine, private | s_compute_image_points (ghost_points_in, levelset_in, levelset_norm_in) |
| Function that computes the image points for each ghost point. | |
| subroutine, private | s_find_num_ghost_points (num_gps_out, num_inner_gps_out) |
| Function that finds the number of ghost points, used for allocating memory. | |
| subroutine, private | s_find_ghost_points (ghost_points_in, inner_points_in) |
| Function that finds the ghost points. | |
| subroutine, private | s_compute_interpolation_coeffs (ghost_points_in) |
| Function that computes the interpolation coefficients of image points. | |
| subroutine, private | s_interpolate_image_point (q_prim_vf, gp, alpha_rho_ip, alpha_ip, pres_ip, vel_ip, c_ip, r_ip, v_ip, pb_ip, mv_ip, nmom_ip, pb_in, mv_in, presb_ip, massv_ip) |
| Function that uses the interpolation coefficients and the current state at the cell centers in order to estimate the state at the image point. | |
| impure subroutine | s_update_mib (num_ibs, levelset, levelset_norm) |
| Resets the current indexes of immersed boundaries and replaces them after updating the position of each moving immersed boundary. | |
| impure subroutine, public | s_finalize_ibm_module () |
| Subroutine to deallocate memory reserved for the IBM module. | |
| real(wp) function, dimension(3) | cross_product (a, b) |
Variables | |
| integer, dimension(:, :, :), allocatable | patch_id_fp |
| type(integer_field), public | ib_markers |
| type(levelset_field), public | levelset |
| type(levelset_norm_field), public | levelset_norm |
| type(ghost_point), dimension(:), allocatable | ghost_points |
| type(ghost_point), dimension(:), allocatable | inner_points |
| integer | num_gps |
| Number of ghost points. | |
| integer | num_inner_gps |
| Number of ghost points. | |
| logical | moving_immersed_boundary_flag |
This module is used to handle all operations related to immersed boundary methods (IBMs)
| real(wp) function, dimension(3) m_ibm::cross_product | ( | real(wp), dimension(3), intent(in) | a, |
| real(wp), dimension(3), intent(in) | b ) |
|
private |
Function that computes the image points for each ghost point.
| ghost_points | Ghost Points |
| levelset | Closest distance from each grid cell to IB |
| levelset_norm | Vector pointing in the direction of the closest distance |
|
private |
Function that computes the interpolation coefficients of image points.
| impure subroutine, public m_ibm::s_finalize_ibm_module |
Subroutine to deallocate memory reserved for the IBM module.
|
private |
Function that finds the ghost points.
|
private |
Function that finds the number of ghost points, used for allocating memory.
| subroutine, public m_ibm::s_ibm_correct_state | ( | type(scalar_field), dimension(sys_size), intent(inout) | q_cons_vf, |
| 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 ) |
Subroutine that updates the conservative variables at the ghost points.
| q_cons_vf | Conservative Variables | |
| q_prim_vf | Primitive variables | |
| pb | Internal bubble pressure | |
| mv | Mass of vapor in bubble | |
| [in,out] | q_cons_vf | Primitive Variables |
| [in,out] | q_prim_vf | Primitive Variables |
| impure subroutine, public m_ibm::s_ibm_setup |
Initializes the values of various IBM variables, such as ghost points and image points.
| impure subroutine, public m_ibm::s_initialize_ibm_module |
Allocates memory for the variables in the IBM module.
|
private |
Function that uses the interpolation coefficients and the current state at the cell centers in order to estimate the state at the image point.
| [in] | q_prim_vf | Primitive Variables |
| subroutine m_ibm::s_populate_ib_buffers |
| impure subroutine m_ibm::s_update_mib | ( | integer, intent(in) | num_ibs, |
| type(levelset_field), intent(inout) | levelset, | ||
| type(levelset_norm_field), intent(inout) | levelset_norm ) |
Resets the current indexes of immersed boundaries and replaces them after updating the position of each moving immersed boundary.
| type(ghost_point), dimension(:), allocatable m_ibm::ghost_points |
| type(integer_field), public m_ibm::ib_markers |
| type(ghost_point), dimension(:), allocatable m_ibm::inner_points |
| type(levelset_field), public m_ibm::levelset |
| type(levelset_norm_field), public m_ibm::levelset_norm |
| logical m_ibm::moving_immersed_boundary_flag |
| integer m_ibm::num_gps |
Number of ghost points.
| integer m_ibm::num_inner_gps |
Number of ghost points.
| integer, dimension(:, :, :), allocatable m_ibm::patch_id_fp |