diff options
-rw-r--r-- | param.ccl | 5 | ||||
-rw-r--r-- | src/GRHydro_PPM.F90 | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -218,6 +218,11 @@ real enhanced_ppm_C3 "Parameter for enhancecd ppm limiter. Default from McCorquo 0:* :: "must be greater than 0." } 0.1 +real enhanced_ppm_C4 "Parameter for enhancecd ppm limiter. This is for the additional velocity limiter" STEERABLE=ALWAYS +{ + 0:1 :: "must be greater than or equal to 0, and not larger than 1" +} 0.0 + int eno_order "The order of accuracy of the ENO reconstruction" { diff --git a/src/GRHydro_PPM.F90 b/src/GRHydro_PPM.F90 index 48b1d72..2ad0187 100644 --- a/src/GRHydro_PPM.F90 +++ b/src/GRHydro_PPM.F90 @@ -791,7 +791,7 @@ trivial_rp = .true. !! Check if velocity is below speed of light. If not, reduce reconstruction to first order! #define VELCHECK(vxminus,vx,vxplus,vyminus,vy,vyplus,vzminus,vz,vzplus) \ - if (VEL2M(vxminus(i),vyminus(i),vzminus(i)) .ge. 1.0d0 .or. VEL2P(vxplus(i),vyplus(i),vzplus(i)) .ge. 1.0d0) then &&\ + if (VEL2M(vxminus(i),vyminus(i),vzminus(i)) .ge. (1.0d0-enhanced_ppm_C4) .or. VEL2P(vxplus(i),vyplus(i),vzplus(i)) .ge. (1.0d0-enhanced_ppm_C4)) then &&\ vxminus(i) = vx(i) &&\ vxplus(i) = vx(i) &&\ vyminus(i) = vy(i) &&\ |