aboutsummaryrefslogtreecommitdiff
path: root/src/gr/horizon.maple
diff options
context:
space:
mode:
authorjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2002-04-16 16:06:44 +0000
committerjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2002-04-16 16:06:44 +0000
commit84131b902f2b2fa03545bd2841e426326c1eb9ef (patch)
tree72622cf2f0eb08e2202465bf72b6b0533a8b72ec /src/gr/horizon.maple
parentc89c4c5d5e8ea694646441250ac2d5b528b01be9 (diff)
many changes --> should now generate LHS of apparent horizon eqn
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@522 f88db872-0e4f-0410-b76b-b9085cfa78c5
Diffstat (limited to 'src/gr/horizon.maple')
-rw-r--r--src/gr/horizon.maple44
1 files changed, 26 insertions, 18 deletions
diff --git a/src/gr/horizon.maple b/src/gr/horizon.maple
index d610844..86bc9cf 100644
--- a/src/gr/horizon.maple
+++ b/src/gr/horizon.maple
@@ -1,10 +1,10 @@
-# LHS.maple - evaluate $H$ = LHS of horizon function
+# horizon.maple - evaluate $H$ = LHS of horizon function
# $Id$
#
# horizon - overall driver
-# non_unit_normal - compute s_d
-# non_unit_normal_deriv - compute partial_d_s_d
-# horizon_function - compute HA,HB,HC,HD,H = fn(s_d)
+## non_unit_normal - compute s_d
+## non_unit_normal_deriv - compute partial_d_s_d
+## horizon_function - compute HA,HB,HC,HD,H = fn(s_d)
#
################################################################################
@@ -15,6 +15,12 @@
# This function is a driver to compute, and optionally generate C code
# for, the LHS of the apparent horizon equation, H.
#
+# Inputs:
+# h
+#
+# Outputs:
+# H = H__fnd(h, ...)
+#
horizon :=
proc(cg_flag::boolean)
@@ -35,9 +41,9 @@ end proc;
non_unit_normal :=
proc()
global
- @include "../maple/coords.minc",
- @include "../maple/gfa.minc",
- @include "../gr/gr_gfas.minc";
+ @include "../maple/coords.minc",
+ @include "../maple/gfa.minc",
+ @include "../gr/gr_gfas.minc";
local i, u;
printf("%a...\n", procname);
@@ -64,11 +70,11 @@ end proc;
# C code.
#
non_unit_normal_deriv :=
-proc(cg_flag::boolean)
+proc()
global
- @include "../maple/coords.minc",
- @include "../maple/gfa.minc",
- @include "../gr/gr_gfas.minc";
+ @include "../maple/coords.minc",
+ @include "../maple/gfa.minc",
+ @include "../gr/gr_gfas.minc";
local temp, i, j, k, u, v;
printf("%a...\n", procname);
@@ -105,16 +111,17 @@ end proc;
#
# This function computes the LHS of the apparent horizon equation
# as a function of 1st and 2nd angular partial derivatives of the
-# apparent horizon radius $h$, in the Maple gridfn array H.fnd ,
-# using equation (15) in my 1996 apparent horizon finding paper.
+# apparent horizon radius $h$, in the Maple gridfn array H__fnd,
+# using equation (15) in my 1996 apparent horizon finding paper,
+# and using partial_d_g_uu[k,i,j] instead of Diff(g_uu[i,j], x_xyz[k]).
# This function also optionally generates C code for this computation.
#
horizon_function :=
proc(cg_flag::boolean)
global
- @include "../maple/coords.minc",
- @include "../maple/gfa.minc",
- @include "../gr/gr_gfas.minc";
+ @include "../maple/coords.minc",
+ @include "../maple/gfa.minc",
+ @include "../gr/gr_gfas.minc";
local i,j,k,l;
printf("%a...\n", procname);
@@ -122,6 +129,7 @@ printf("%a...\n", procname);
assert_fnd_exists(g_uu);
assert_fnd_exists(K_uu);
assert_fnd_exists(partial_d_ln_sqrt_g);
+assert_fnd_exists(partial_d_g_uu);
assert_fnd_exists(s_d, fnd);
assert_fnd_exists(partial_d_s_d, fnd);
@@ -135,11 +143,11 @@ HA__fnd := - msum('g_uu[i,k]*s_d__fnd[k] * g_uu[j,l]*s_d__fnd[l]
* partial_d_s_d__fnd[i,j]',
'i'=1..N, 'j'=1..N, 'k'=1..N, 'l'=1..N)
- (1/2)*msum('g_uu[i,j]*s_d__fnd[j]
- * Diff(g_uu[k,l],x_xyz[i]) * s_d__fnd[k]*s_d__fnd[l]',
+ * partial_d_g_uu[i,k,l] * s_d__fnd[k]*s_d__fnd[l]',
'i'=1..N, 'j'=1..N, 'k'=1..N, 'l'=1..N);
# (15b) in my paper
-HB__fnd := + msum('Diff(g_uu[i,j],x_xyz[i])*s_d__fnd[j]', 'i'=1..N, 'j'=1..N)
+HB__fnd := + msum('partial_d_g_uu[i,i,j]*s_d__fnd[j]', 'i'=1..N, 'j'=1..N)
+ msum('g_uu[i,j]*partial_d_s_d__fnd[i,j]', 'i'=1..N, 'j'=1..N)
+ msum('g_uu[i,j]*partial_d_ln_sqrt_g[i]*s_d__fnd[j]',
'i'=1..N, 'j'=1..N);