diff options
author | diener <diener@2a26948c-0e4f-0410-aee8-f1d3e353619c> | 2003-07-02 09:48:57 +0000 |
---|---|---|
committer | diener <diener@2a26948c-0e4f-0410-aee8-f1d3e353619c> | 2003-07-02 09:48:57 +0000 |
commit | 116ecf1f8ad5bbd3ad74f9367bf7907d8c43d0ce (patch) | |
tree | 5e481aec43baa71f94a59f9cb3bb88d7ed1e62e6 /src/EHFinder_Generator_Sources2.F90 | |
parent | ffb807f5d7b17fe526de381d63098349199f2900 (diff) |
Added a parameter to schoose inward going surfaces instead of outward
going surfaces. If tracking inward going surfaces it is not an event horizon
finder anymore, but this feature might be useful for other things.
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/EHFinder/trunk@121 2a26948c-0e4f-0410-aee8-f1d3e353619c
Diffstat (limited to 'src/EHFinder_Generator_Sources2.F90')
-rw-r--r-- | src/EHFinder_Generator_Sources2.F90 | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/EHFinder_Generator_Sources2.F90 b/src/EHFinder_Generator_Sources2.F90 index aab47e1..b50f9f1 100644 --- a/src/EHFinder_Generator_Sources2.F90 +++ b/src/EHFinder_Generator_Sources2.F90 @@ -29,9 +29,12 @@ subroutine EHFinder_Generator_Sources2(CCTK_ARGUMENTS) CCTK_INT, dimension(3), parameter :: op_indices = (/ 0, 1, 2 /), & op_codes = (/ 0, 0, 0 /) CCTK_INT, dimension(3) :: out_types - CCTK_REAL :: alp2, psi4, dfux, dfuy, dfuz, factor + CCTK_REAL :: alp2, psi4, dfux, dfuy, dfuz, factor, ssign CCTK_REAL :: idetg, guxx, guxy, guxz, guyy, guyz, guzz + if ( CCTK_EQUALS ( surface_direction, 'outward' ) ) ssign = one + if ( CCTK_EQUALS ( surface_direction, 'inward' ) ) ssign = -one + out_types = CCTK_VARIABLE_REAL ! Convert the generator_interpolator string parameter to a Fortran string. @@ -140,9 +143,9 @@ subroutine EHFinder_Generator_Sources2(CCTK_ARGUMENTS) dfuz * dfz(i,j,k) ) ) ! Finally obtain dx^i/dt. - xgf(i,j,k) = - betax(i,j,k) + factor * dfux - ygf(i,j,k) = - betay(i,j,k) + factor * dfuy - zgf(i,j,k) = - betaz(i,j,k) + factor * dfuz + xgf(i,j,k) = - betax(i,j,k) + ssign * factor * dfux + ygf(i,j,k) = - betay(i,j,k) + ssign * factor * dfuy + zgf(i,j,k) = - betaz(i,j,k) + ssign * factor * dfuz else xgf(i,j,k) = zero ygf(i,j,k) = zero @@ -185,9 +188,9 @@ subroutine EHFinder_Generator_Sources2(CCTK_ARGUMENTS) factor = alp2 / sqrt ( alp2 * ( dfux * dfxg(i) + & dfuy * dfyg(i) + & dfuz * dfzg(i) ) ) - dxg(i) = - betaxg(i) + factor * dfux - dyg(i) = - betayg(i) + factor * dfuy - dzg(i) = - betazg(i) + factor * dfuz + dxg(i) = - betaxg(i) + ssign * factor * dfux + dyg(i) = - betayg(i) + ssign * factor * dfuy + dzg(i) = - betazg(i) + ssign * factor * dfuz end do end if |