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

Iterative ghost rasterization (IGR) for sharp immersed boundary treatment. More...

Functions/Subroutines

subroutine, public s_initialize_igr_module ()
 Initialize the IGR module.
subroutine, public s_igr_iterative_solve (q_cons_vf, bc_type, t_step)
 Iteratively solve the implicit gradient reconstruction system.
subroutine, public s_igr_sigma_x (q_cons_vf, rhs_vf)
 Compute the IGR viscous stress contribution in the x-direction and accumulate into the RHS.
subroutine, public s_igr_riemann_solver (q_cons_vf, rhs_vf, idir)
 Evaluate the approximate Riemann solver for the IGR scheme along a given direction.
subroutine s_get_derived_states (e_l, gamma_l, pi_inf_l, rho_l, vel_l, e_r, gamma_r, pi_inf_r, rho_r, vel_r, pres_l, pres_r, cfl)
 Compute pressure and maximum wavespeed from left and right reconstructed states.
subroutine, public s_igr_flux_add (q_cons_vf, rhs_vf, flux_vf, idir)
 Accumulate the IGR numerical flux divergence into the RHS along the specified direction.
subroutine, public s_finalize_igr_module ()
 Finalize the IGR module.

Variables

real(wp), dimension(:,:,:), allocatable, target jac
real(wp), dimension(:,:,:), allocatable jac_rhs
real(wp), dimension(:,:,:), allocatable jac_old
type(scalar_field), dimension(1) jac_sf
real(wp), dimension(:,:), allocatable res_igr
real(wpalf_igr
integer vidxb
integer vidxe
real(wp), dimension(:), allocatable coeff_l
real(wp), dimension(:), allocatable coeff_r
integer(kind=8) i
integer(kind=8) j
integer(kind=8) k
integer(kind=8) l
integer(kind=8) q
integer(kind=8) r

Detailed Description

Iterative ghost rasterization (IGR) for sharp immersed boundary treatment.

Function/Subroutine Documentation

◆ s_finalize_igr_module()

subroutine, public m_igr::s_finalize_igr_module

Finalize the IGR module.

Definition at line 8031 of file m_igr.fpp.f90.

Here is the caller graph for this function:

◆ s_get_derived_states()

subroutine m_igr::s_get_derived_states ( real(wp), intent(in) e_l,
real(wp), intent(in) gamma_l,
real(wp), intent(in) pi_inf_l,
real(wp), intent(in) rho_l,
real(wp), dimension(num_dims), intent(in) vel_l,
real(wp), intent(in) e_r,
real(wp), intent(in) gamma_r,
real(wp), intent(in) pi_inf_r,
real(wp), intent(in) rho_r,
real(wp), dimension(num_dims), intent(in) vel_r,
real(wp), intent(out) pres_l,
real(wp), intent(out) pres_r,
real(wp), intent(out) cfl )

Compute pressure and maximum wavespeed from left and right reconstructed states.

Definition at line 7835 of file m_igr.fpp.f90.

Here is the caller graph for this function:

◆ s_igr_flux_add()

subroutine, public m_igr::s_igr_flux_add ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf,
type(scalar_field), dimension(sys_size), intent(inout) rhs_vf,
type(scalar_field), dimension(sys_size), intent(inout) flux_vf,
integer, intent(in) idir )

Accumulate the IGR numerical flux divergence into the RHS along the specified direction.

Definition at line 7893 of file m_igr.fpp.f90.

◆ s_igr_iterative_solve()

subroutine, public m_igr::s_igr_iterative_solve ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf,
type(integer_field), dimension(1:num_dims,1:2), intent(in) bc_type,
integer, intent(in) t_step )

Iteratively solve the implicit gradient reconstruction system.

Definition at line 1358 of file m_igr.fpp.f90.

◆ s_igr_riemann_solver()

subroutine, public m_igr::s_igr_riemann_solver ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf,
type(scalar_field), dimension(sys_size), intent(inout) rhs_vf,
integer, intent(in) idir )

Evaluate the approximate Riemann solver for the IGR scheme along a given direction.

Definition at line 1789 of file m_igr.fpp.f90.

Here is the call graph for this function:

◆ s_igr_sigma_x()

subroutine, public m_igr::s_igr_sigma_x ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf,
type(scalar_field), dimension(sys_size), intent(inout) rhs_vf )

Compute the IGR viscous stress contribution in the x-direction and accumulate into the RHS.

Definition at line 1529 of file m_igr.fpp.f90.

◆ s_initialize_igr_module()

subroutine, public m_igr::s_initialize_igr_module

Initialize the IGR module.

Definition at line 439 of file m_igr.fpp.f90.

Here is the caller graph for this function:

Variable Documentation

◆ alf_igr

real(wp) m_igr::alf_igr

Definition at line 393 of file m_igr.fpp.f90.

◆ coeff_l

real(wp), dimension(:), allocatable m_igr::coeff_l

Definition at line 420 of file m_igr.fpp.f90.

◆ coeff_r

real(wp), dimension(:), allocatable m_igr::coeff_r

Definition at line 420 of file m_igr.fpp.f90.

◆ i

integer(kind=8) m_igr::i

Definition at line 434 of file m_igr.fpp.f90.

◆ j

integer(kind=8) m_igr::j

Definition at line 434 of file m_igr.fpp.f90.

◆ jac

real(wp), dimension(:,:,:), allocatable, target m_igr::jac

Definition at line 351 of file m_igr.fpp.f90.

◆ jac_old

real(wp), dimension(:,:,:), allocatable m_igr::jac_old

Definition at line 352 of file m_igr.fpp.f90.

◆ jac_rhs

real(wp), dimension(:,:,:), allocatable m_igr::jac_rhs

Definition at line 352 of file m_igr.fpp.f90.

◆ jac_sf

type(scalar_field), dimension(1) m_igr::jac_sf

Definition at line 367 of file m_igr.fpp.f90.

◆ k

integer(kind=8) m_igr::k

Definition at line 434 of file m_igr.fpp.f90.

◆ l

integer(kind=8) m_igr::l

Definition at line 434 of file m_igr.fpp.f90.

◆ q

integer(kind=8) m_igr::q

Definition at line 434 of file m_igr.fpp.f90.

◆ r

integer(kind=8) m_igr::r

Definition at line 434 of file m_igr.fpp.f90.

◆ res_igr

real(wp), dimension(:,:), allocatable m_igr::res_igr

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

◆ vidxb

integer m_igr::vidxb

Definition at line 407 of file m_igr.fpp.f90.

◆ vidxe

integer m_igr::vidxe

Definition at line 407 of file m_igr.fpp.f90.