This procedure is the implementation of the Harten, Lax, van Leer, and contact (HLLC) approximate Riemann solver, see Toro (1999) and Johnsen (2007). The viscous and the surface tension effects have been included by modifying the exact Riemann solver of Perigaud and Saurel (2005). @param qL_prim_vf The left WENO-reconstructed cell-boundary values of the cell-average primitive variables @param qR_prim_vf The right WENO-reconstructed cell-boundary values of the cell-average primitive variables @param dqL_prim_dx_vf The left WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives @param dqL_prim_dy_vf The left WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives @param dqL_prim_dz_vf The left WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives @param dqR_prim_dx_vf The right WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives @param dqR_prim_dy_vf The right WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives @param dqR_prim_dz_vf The right WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives @param gm_alphaL_vf Left averaged gradient magnitude @param gm_alphaR_vf Right averaged gradient magnitude @param flux_vf Intra-cell fluxes @param flux_src_vf Intra-cell fluxes sources @param flux_gsrc_vf Intra-cell geometric fluxes sources @param norm_dir Dir. splitting direction @param ix Index bounds in the x-dir @param iy Index bounds in the y-dir @param iz Index bounds in the z-dir @param q_prim_vf Cell-averaged primitive variables
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(inout), | dimension(startx:, starty:, startz:, 1:) | :: | qL_prim_rsx_vf_flat | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(startx:, starty:, startz:, 1:) | :: | qL_prim_rsy_vf_flat | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(startx:, starty:, startz:, 1:) | :: | qL_prim_rsz_vf_flat | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | dqL_prim_dx_vf | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | dqL_prim_dy_vf | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | dqL_prim_dz_vf | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | qL_prim_vf | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(startx:, starty:, startz:, 1:) | :: | qR_prim_rsx_vf_flat | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(startx:, starty:, startz:, 1:) | :: | qR_prim_rsy_vf_flat | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(startx:, starty:, startz:, 1:) | :: | qR_prim_rsz_vf_flat | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | dqR_prim_dx_vf | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | dqR_prim_dy_vf | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | dqR_prim_dz_vf | ||
| type(scalar_field), | intent(inout), | allocatable, dimension(:) | :: | qR_prim_vf | ||
| type(scalar_field), | intent(in), | dimension(sys_size) | :: | q_prim_vf | ||
| type(scalar_field), | intent(inout), | dimension(sys_size) | :: | flux_vf | ||
| type(scalar_field), | intent(inout), | dimension(sys_size) | :: | flux_src_vf | ||
| type(scalar_field), | intent(inout), | dimension(sys_size) | :: | flux_gsrc_vf | ||
| integer, | intent(in) | :: | norm_dir | |||
| type(int_bounds_info), | intent(in) | :: | ix | |||
| type(int_bounds_info), | intent(in) | :: | iy | |||
| type(int_bounds_info), | intent(in) | :: | iz |