aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordiener <diener@2a26948c-0e4f-0410-aee8-f1d3e353619c>2003-05-16 13:20:15 +0000
committerdiener <diener@2a26948c-0e4f-0410-aee8-f1d3e353619c>2003-05-16 13:20:15 +0000
commit8624cbc500699816e3b408b17bd29e6f4c56888b (patch)
treebcc4019c25e039f4aaeb139aed7f4f06e9e4179a
parent2f5271e3e16ae2cdddd9970ebeaad1307f9698e2 (diff)
Added parameter and code to use the new experimental upwinding scheme.
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/EHFinder/trunk@106 2a26948c-0e4f-0410-aee8-f1d3e353619c
-rw-r--r--param.ccl1
-rw-r--r--src/EHFinder_Sources.F9016
2 files changed, 15 insertions, 2 deletions
diff --git a/param.ccl b/param.ccl
index 747b68c..0eefed4 100644
--- a/param.ccl
+++ b/param.ccl
@@ -120,6 +120,7 @@ KEYWORD upwind_type "Type of upwinding used in evolving the ehfinder equations"
{
"intrinsic" :: "Use the values of f itself to determine upwind direction"
"shift" :: "Use the shift to determine upwind direction"
+ "characteristic" :: "Use characteristic information"
} "intrinsic"
BOOLEAN reparam_undo "Should re-parametrization be undone at pinch-off"
diff --git a/src/EHFinder_Sources.F90 b/src/EHFinder_Sources.F90
index 80d15dd..c20f25e 100644
--- a/src/EHFinder_Sources.F90
+++ b/src/EHFinder_Sources.F90
@@ -19,10 +19,11 @@ subroutine EHFinder_Sources(CCTK_ARGUMENTS)
CCTK_REAL :: idx, idy, idz, mdelta
CCTK_REAL :: a, b, c
CCTK_REAL :: g4tt, g4tx, g4ty, g4tz, g4xx, g4xy, g4xz, g4yy, g4yz, g4zz
+ CCTK_REAL :: g3xx, g3xy, g3xz, g3yy, g3yz, g3zz
CCTK_REAL :: gxxc, gxyc, gxzc, gyyc, gyzc, gzzc, psito4
CCTK_REAL :: idetg, alp2, tmp1, tmp2, tmp3
- CCTK_REAL :: ratio
- CCTK_REAL, dimension(3) :: maxpos
+ CCTK_REAL :: ratio, cfactor
+ CCTK_REAL, dimension(3) :: maxpos, cdx, dfup
CCTK_REAL :: al, ar, bl, br, cl, cr
CCTK_REAL :: alminus, alplus, blminus, blplus, clminus, clplus
CCTK_REAL :: arminus, arplus, brminus, brplus, crminus, crplus
@@ -61,6 +62,17 @@ subroutine EHFinder_Sources(CCTK_ARGUMENTS)
end do
end if
+ if ( CCTK_EQUALS ( upwind_type, 'characteristic' ) ) then
+ do k = kzl, kzr
+ do j = jyl, jyr
+ do i = ixl, ixr
+#include "include/metric.h"
+#include "include/upwind_characteristic_second2.h"
+ end do
+ end do
+ end do
+ end if
+
if ( CCTK_EQUALS ( metric_type, 'physical' ) ) then
do k = kzl, kzr
do j = jyl, jyr