vanleer Function

private pure function vanleer(a, b) result(phi)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: a
real(kind=dp), intent(in) :: b

Return Value real(kind=dp)


Called by

proc~~vanleer~4~~CalledByGraph proc~vanleer~4 vanleer proc~muscl_reconstruct_prim~4 muscl_reconstruct_prim proc~muscl_reconstruct_prim~4->proc~vanleer~4 proc~reconflux_muscl_hll_prim~4 reconflux_muscl_hll_prim proc~reconflux_muscl_hll_prim~4->proc~muscl_reconstruct_prim~4 proc~reconflux_muscl_hllc_prim~4 reconflux_muscl_hllc_prim proc~reconflux_muscl_hllc_prim~4->proc~muscl_reconstruct_prim~4 proc~reconflux_muscl_llf_prim~4 reconflux_muscl_llf_prim proc~reconflux_muscl_llf_prim~4->proc~muscl_reconstruct_prim~4 proc~finite_volume_local_muscl_hllc~4 finite_volume_local_muscl_hllc proc~finite_volume_local_muscl_hllc~4->proc~reconflux_muscl_hllc_prim~4 proc~finite_volume_local_muscl_hll~4 finite_volume_local_muscl_hll proc~finite_volume_local_muscl_hll~4->proc~reconflux_muscl_hll_prim~4 proc~finite_volume_local_muscl_llf~4 finite_volume_local_muscl_llf proc~finite_volume_local_muscl_llf~4->proc~reconflux_muscl_llf_prim~4 proc~finite_volume_local~4 finite_volume_local proc~finite_volume_local~4->proc~finite_volume_local_muscl_hllc~4 proc~finite_volume_local~4->proc~finite_volume_local_muscl_hll~4 proc~finite_volume_local~4->proc~finite_volume_local_muscl_llf~4

Source Code

  pure real(dp) function vanleer(a, b) result(phi)
    
    real(dp), intent(in) :: a, b
    real(dp)             :: ab

    ab = a * b
    if (ab > 0) then
       phi = 2.0_dp * ab / (a + b)
    else
       phi = 0.0_dp
    end if
  end function vanleer