aboutsummaryrefslogtreecommitdiff
path: root/interface.ccl
blob: ebb03d026b3b65a063168daa5837e6fa5aca207b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
# Interface definition for thorn EHFinder
# $Header$

implements: ehfinder
inherits: grid admbase coordgauge staticconformal spacemask boundary

USES INCLUDE: Boundary.h
#USES INCLUDE: MoL.h

CCTK_INT FUNCTION MoLRegisterEvolved(CCTK_INT IN EvolvedIndex, \
                                     CCTK_INT IN RHSIndex)
USES FUNCTION MoLRegisterEvolved

public:

CCTK_REAL level_set TYPE=GF TIMELEVELS=2
{
  f
} "The scalar level set function that defines the null surface"

CCTK_REAL slevel_set TYPE=GF TIMELEVELS=1
{
  sf
} "Source for the level set function"

CCTK_REAL dlevel_set TYPE=GF TIMELEVELS=1
{
  dfx, dfy, dfz, dfsq
} "Derivatives of the level set function"

CCTK_REAL ftmp_set TYPE=GF TIMELEVELS=1
{
  ftmp, sftmp
} "temporary variables used in pde re-parametrization"

CCTK_REAL level_bak TYPE=GF TIMELEVELS=1
{
  fbak
} "Temporary placeholder for the level set during re-parametrization"

CCTK_INT eh_mask_all TYPE=GF TIMELEVELS=1
{
  eh_mask, tm_mask
} "Masks to define active cells"

CCTK_INT mask_bak TYPE=GF TIMELEVELS=1
{
  eh_mask_bak
} "Temporary placeholder for the mask during re-parametrization"

CCTK_INT surface_index TYPE=GF TIMELEVELS=1
{
  sc
}

CCTK_INT find_surface_status TYPE=SCALAR

CCTK_INT surface_integers TYPE=SCALAR
{
  surface_counter
  points_counter
  more_surfaces
  more_points
  integrate_counter
} "Integer variables used in surface integration"

CCTK_REAL surface_reals TYPE=SCALAR
{
  sym_factor, theta_sym_factor, phi_sym_factor
} "Real variables used in surface integration"

CCTK_REAL surface_arrays TYPE=ARRAY DIM=2 TIMELEVELS=1 SIZE=ntheta,nphi GHOSTSIZE=n_array_ghosts,n_array_ghosts DISTRIB=DEFAULT
{
  ctheta, cphi, rsurf, sintheta, costheta, sinphi, cosphi,
  drdtheta, drdphi, da, gtt, gtp, gpp, weights, dltheta, dlphi,
  thetaweights, phiweights
} "Grid arrays for points on the surface"

CCTK_REAL surface_tmp_arrays TYPE=ARRAY DIM=2 TIMELEVELS=1 SIZE=ntheta,nphi GHOSTSIZE=n_array_ghosts,n_array_ghosts DISTRIB=DEFAULT
{
  drsurf, interp_x, interp_y, interp_z, f_interp,
  dfdx_interp, dfdy_interp, dfdz_interp
} "Temporary grid arrays for finding points on the surface"

CCTK_REAL center_arrays TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=3 DISTRIB=CONSTANT
{
  center
} "The cartesian location of the center for the spherical coordinate system"

CCTK_INT surface_int_array TYPE=ARRAY DIM=2 TIMELEVELS=1 SIZE=ntheta,nphi GHOSTSIZE=n_array_ghosts,n_array_ghosts DISTRIB=DEFAULT
{
  n_since_last_reduction
} "Temporary integer grid array for finding points on the surface"

CCTK_REAL interp_metric_arrays TYPE=ARRAY DIM=2 TIMELEVELS=1 SIZE=ntheta,nphi GHOSTSIZE=n_array_ghosts,n_array_ghosts DISTRIB=DEFAULT
{
  gxxi, gxyi, gxzi, gyyi, gyzi, gzzi, psii
} "Arrays for holding the interpolated metric and conformal factor"

CCTK_REAL integrate_tmp_array TYPE=ARRAY DIM=2 TIMELEVELS=1 SIZE=ntheta,nphi GHOSTSIZE=n_array_ghosts,n_array_ghosts DISTRIB=DEFAULT
{
  int_tmp
}

CCTK_INT rep_mask TYPE=GF TIMELEVELS=1

CCTK_INT re_param_control_pde TYPE=SCALAR
CCTK_INT re_param_control_approx TYPE=SCALAR

CCTK_REAL eh_area TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number GHOSTSIZE=0 DISTRIB=DEFAULT

#CCTK_REAL eh_area TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT

#CCTK_REAL eh_area[maximum_surface_number] TYPE=SCALAR

CCTK_REAL eh_area2 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number GHOSTSIZE=0 DISTRIB=DEFAULT #"The area of the event horizon(s)"

#CCTK_REAL eh_area2 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT #"The area of the event horizon(s)"

#CCTK_REAL eh_area2[maximum_surface_number] TYPE=SCALAR
#CCTK_REAL eh_area3 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT

#CCTK_REAL eh_centroid TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT
#{
#  eh_centroid_x, eh_centroid_y, eh_centroid_z
#} "The centroid of the event horizon(s)"

CCTK_REAL eh_centroid TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number GHOSTSIZE=0 DISTRIB=DEFAULT
{
  eh_centroid_x, eh_centroid_y, eh_centroid_z
} "The centroid of the event horizon(s)"

#CCTK_REAL eh_centroid2 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT
#{
#  eh_centroid2_x, eh_centroid2_y, eh_centroid2_z
#} "The centroid of the event horizon(s)"

CCTK_REAL eh_centroid2 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number GHOSTSIZE=0 DISTRIB=DEFAULT
{
  eh_centroid2_x, eh_centroid2_y, eh_centroid2_z
} "The centroid of the event horizon(s)"

#CCTK_REAL eh_circumference TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT
#{
#  eh_circ_eq, eh_circ_pol
#} "The circumferences of the event horizon(s)"

CCTK_REAL eh_circumference TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number GHOSTSIZE=0 DISTRIB=DEFAULT
{
  eh_circ_eq, eh_circ_pol
} "The circumferences of the event horizon(s)"

#CCTK_REAL eh_circumference2 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT
#{
#  eh_circ_eq2, eh_circ_pol2
#} "The circumferences of the event horizon(s)"

CCTK_REAL eh_circumference2 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number GHOSTSIZE=0 DISTRIB=DEFAULT
{
  eh_circ_eq2, eh_circ_pol2
} "The circumferences of the event horizon(s)"

#CCTK_REAL eh_centroid3 TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=maximum_surface_number DISTRIB=CONSTANT
#{
#  eh_centroid3_x, eh_centroid3_y, eh_centroid3_z
#} "The centroid of the event horizon(s)"

CCTK_REAL eh_group_test[maximum_surface_number] TYPE=SCALAR
CCTK_REAL eh_group_array_test[maximum_surface_number] TYPE=ARRAY DIM=1 SIZE=100 GHOSTSIZE=0 DISTRIB=DEFAULT

CCTK_REAL generators TYPE=ARRAY DIM=1 TIMELEVELS=2 SIZE=number_of_generators GHOSTSIZE=0 DISTRIB=DEFAULT
{
  xg, yg, zg
} "The position of the generators of the event horizon"

CCTK_REAL generators_rhs TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=number_of_generators GHOSTSIZE=0 DISTRIB=DEFAULT
{
  dxg, dyg, dzg
}

CCTK_REAL generators_arrays TYPE=ARRAY DIM=1 TIMELEVELS=1 SIZE=number_of_generators GHOSTSIZE=0 DISTRIB=DEFAULT
{
  alpg, betaxg, betayg, betazg, gxxg, gxyg, gxzg, gyyg, gyzg, gzzg, dfxg, dfyg, dfzg, psig
}