|
MFC
Exascale flow solver
|
Contains module m_cbc. More...
Go to the source code of this file.
Modules | |
| module | m_cbc |
| Characteristic boundary conditions (CBC) for slip walls, non-reflecting subsonic inflow/outflow, and supersonic boundaries. | |
Functions/Subroutines | |
| impure subroutine, public | m_cbc::s_initialize_cbc_module |
| The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other procedures that are necessary to setup the module. | |
| subroutine | m_cbc::s_compute_cbc_coefficients (cbc_dir_in, cbc_loc_in) |
| Compute CBC coefficients. | |
| subroutine | m_cbc::s_associate_cbc_coefficients_pointers (cbc_dir_in, cbc_loc_in) |
| Associates finite-difference and polynomial-interpolation CBC coefficients with targets based on coordinate direction and boundary location. The goal of the procedure is to associate the FD and PI coefficients, or CBC coefficients, with the appropriate targets, based on the coordinate direction and location of the CBC. | |
| subroutine, public | m_cbc::s_cbc (q_prim_vf, flux_vf, flux_src_vf, cbc_dir_norm, cbc_loc_norm, ix, iy, iz) |
| The following is the implementation of the CBC based on the work of Thompson (1987, 1990) on hyperbolic systems. The CBC is indirectly applied in the computation of the right-hand-side (RHS) near the relevant domain boundary through the modification of the fluxes. | |
| subroutine | m_cbc::s_initialize_cbc (q_prim_vf, flux_vf, flux_src_vf, ix, iy, iz) |
| The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other procedures that are required for the setup of the selected CBC. | |
| subroutine | m_cbc::s_finalize_cbc (flux_vf, flux_src_vf) |
| Deallocation and/or the disassociation procedures that are necessary in order to finalize the CBC application. | |
| elemental subroutine | m_cbc::s_any_cbc_boundaries (toggle) |
| Detects whether any domain boundary uses characteristic boundary conditions. | |
| impure subroutine, public | m_cbc::s_finalize_cbc_module |
| Module deallocation and/or disassociation procedures. | |
Variables | |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::q_prim_rsx_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::q_prim_rsy_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::q_prim_rsz_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::f_rsx_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::f_src_rsx_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::f_rsy_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::f_src_rsy_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::f_rsz_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::f_src_rsz_vf |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::flux_rsx_vf_l |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::flux_src_rsx_vf_l |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::flux_rsy_vf_l |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::flux_src_rsy_vf_l |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::flux_rsz_vf_l |
| real(wp), dimension(:, :, :, :), allocatable | m_cbc::flux_src_rsz_vf_l |
| real(wp), dimension(:), allocatable | m_cbc::ds |
| Cell-width distribution in the s-direction. | |
| real(wp), dimension(:, :), allocatable | m_cbc::fd_coef_x |
| Finite diff. coefficients x-dir. | |
| real(wp), dimension(:, :), allocatable | m_cbc::fd_coef_y |
| Finite diff. coefficients y-dir. | |
| real(wp), dimension(:, :), allocatable | m_cbc::fd_coef_z |
| Finite diff. coefficients z-dir. | |
| real(wp), dimension(:, :, :), allocatable | m_cbc::pi_coef_x |
| Polynomial interpolant coefficients in x-dir. | |
| real(wp), dimension(:, :, :), allocatable | m_cbc::pi_coef_y |
| Polynomial interpolant coefficients in y-dir. | |
| real(wp), dimension(:, :, :), allocatable | m_cbc::pi_coef_z |
| Polynomial interpolant coefficients in z-dir. | |
| type(int_bounds_info) | m_cbc::is1 |
| type(int_bounds_info) | m_cbc::is2 |
| type(int_bounds_info) | m_cbc::is3 |
| Indical bounds in the s1-, s2- and s3-directions. | |
| integer | m_cbc::dj |
| integer | m_cbc::bcxb |
| integer | m_cbc::bcxe |
| integer | m_cbc::bcyb |
| integer | m_cbc::bcye |
| integer | m_cbc::bczb |
| integer | m_cbc::bcze |
| integer | m_cbc::cbc_dir |
| integer | m_cbc::cbc_loc |
| integer | m_cbc::flux_cbc_index |
| real(wp), dimension(:), allocatable | m_cbc::pres_in |
| real(wp), dimension(:), allocatable | m_cbc::pres_out |
| real(wp), dimension(:), allocatable | m_cbc::del_in |
| real(wp), dimension(:), allocatable | m_cbc::del_out |
| real(wp), dimension(:, :), allocatable | m_cbc::vel_in |
| real(wp), dimension(:, :), allocatable | m_cbc::vel_out |
| real(wp), dimension(:, :), allocatable | m_cbc::alpha_rho_in |
| real(wp), dimension(:, :), allocatable | m_cbc::alpha_in |
Contains module m_cbc.
Definition in file m_cbc.fpp.f90.