aboutsummaryrefslogtreecommitdiff
path: root/doc/TODO
blob: 054a564913d45768f79b1f091acf09cbe36fc96b (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
Things that Could be Improved in This Thorn
===========================================

This thorn works with non-unigrid Cactus, but it doesn't work very
efficiently: it does the 2D elliptic setup and solve all over again
for each local Cactus (3D) grid.  It would be more efficient to move the
2D elliptic stuff out into a separately scheduled routine which would
be done once (for Carpet, it would be scheduled in global
mode), and have only the interpolation to the 3D grid done for each
local Cactus grid.

Part of this same change might also be to store the 2D elliptic results
in Cactus grid arrays rather than native Fortran 90 arrays.  This would
let us use standard Cactus I/O methods to output the 2D elliptic results
instead of the hard-wired code we use right now.



For each Cactus grid point, IDAxiBrillBH calculates
  eta := |log(2r/m)|
and uses this to interpolate into an internal grid.  This internal grid
covers the range eta = 0 to etamax, where etamax defaults to 5.0.
So... for m=1, r must lie in the range 0.00337 to 74.2, or else the
computed  eta  value will fall outside the internal grid.

It would be nice if this restriction could be lifted (eg allowing
a grid point at the origin).  Maybe some sort of interpolation in real
space (instead of in eta-space) to fill in the hole at the origin?
Maybe an extrapolation that can lead outside the eta grid?  Maybe use
the unperturbed black hole data outside the eta grid?