aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhaas <rhaas@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45>2012-07-17 17:08:28 +0000
committerrhaas <rhaas@c83d129a-5a75-4d5a-9c4d-ed3a5855bf45>2012-07-17 17:08:28 +0000
commit5a745f6dfc6bbc11027e37d6e01238b2c0eda494 (patch)
treeab2641dc70594f159529ce23c85643845f612f51
parent375c87d95be79ae5b04c2fa464fff89c41c98dd4 (diff)
GRHydro: ePPM: Allow for tolerance in vel^2 limiting.
From: Christian Reisswig <reisswig@scriwalker.(none)> git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinEvolve/GRHydro/trunk@398 c83d129a-5a75-4d5a-9c4d-ed3a5855bf45
-rw-r--r--param.ccl5
-rw-r--r--src/GRHydro_PPM.F902
2 files changed, 6 insertions, 1 deletions
diff --git a/param.ccl b/param.ccl
index 0ce2894..75f26c2 100644
--- a/param.ccl
+++ b/param.ccl
@@ -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) &&\