update_ghost Subroutine

private subroutine update_ghost(state, bc_type, side, q_wall, q_penult, q_ghost, f_pos, f_neg)

Compute one ghost-state vector and its split fluxes from a boundary cell.

                    p_ref_left, p_ref_right, sigma_nrbc).
                    Used by 'outflow' (linear extrapolation) and
                    'nonreflecting' (subsonic left outflow fallback).

Arguments

Type IntentOptional Attributes Name
type(solver_state_t), intent(inout) :: state

Solver instance (reads use_fds, flux_split, gam,

character(len=*), intent(in) :: bc_type

Boundary condition type string.

character(len=1), intent(in) :: side

Which boundary: 'L' (left) or 'R' (right).

real(kind=wp), intent(in) :: q_wall(3)
real(kind=wp), intent(in) :: q_penult(3)
real(kind=wp), intent(out) :: q_ghost(3)
real(kind=wp), intent(out) :: f_pos(3)
real(kind=wp), intent(out) :: f_neg(3)