MUSCL (primitive-variable) reconstruction with slope limiter; HLLC approximate Riemann flux at faces. Restores the contact wave (and shear in Euler/HD), typically sharper than HLL for similar cost.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | u(nw_phys,5) | |||
| real(kind=dp), | intent(in) | :: | xlocC(1:ndim,2) | |||
| integer, | intent(in) | :: | flux_dim | |||
| real(kind=dp), | intent(out) | :: | flux(nw_flux,2) | |||
| integer, | intent(in) | :: | typelim |
subroutine reconflux_muscl_hllc_prim(u, xlocC, flux_dim, flux, typelim) real(dp), intent(in) :: u(nw_phys, 5) real(dp), intent(in) :: xlocC(1:ndim, 2) integer, intent(in) :: flux_dim, typelim real(dp), intent(out) :: flux(nw_flux, 2) real(dp) :: uL(nw_phys,2), uR(nw_phys,2) integer :: iface call muscl_reconstruct_prim(u, typelim, uL, uR) do iface=1,2 call riemann_hllc_prim(uL(:,iface), uR(:,iface), xlocC(:,iface), flux_dim, flux(:,iface)) end do end subroutine reconflux_muscl_hllc_prim