aboutsummaryrefslogtreecommitdiff
path: root/src/driver/find_horizons.cc
diff options
context:
space:
mode:
authorrhaas <rhaas@f88db872-0e4f-0410-b76b-b9085cfa78c5>2013-02-02 05:47:25 +0000
committerrhaas <rhaas@f88db872-0e4f-0410-b76b-b9085cfa78c5>2013-02-02 05:47:25 +0000
commit903123a176b6c10e77fb3e013a35cc48fdcf2d31 (patch)
tree5bc5fe2093f240114fbe197bd42bff03335930bd /src/driver/find_horizons.cc
parentda6980d7c376f5e7e77c45ce313994705e5e2cf4 (diff)
Dont use initial guess origins from parameters when tracking from gridscalar
Problem: My horizon will appear sometimes during the simulation at some position. I don't know this position in advance, so I set origin_* and AHFinderDirect::initial_guesscoord_sphere*_center to zero initially in my par-file. However, I have a grid scalar which tracks the coordinate location where the horizon will eventually appear. When the horizon finder starts to search for a horizon, it will first setup the coordinate ellipsoid. This routine is executed *before* the new origin is set from the grid scalar. The tracking occurs in the routine Newton(...). The ellipsoid is set before Newton(...) gets executed. Hence, the ellipsoid uses the value that got set via parameters (which would be zero in my case). Patch by Christian Reisswig git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@1573 f88db872-0e4f-0410-b76b-b9085cfa78c5
Diffstat (limited to 'src/driver/find_horizons.cc')
-rw-r--r--src/driver/find_horizons.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/driver/find_horizons.cc b/src/driver/find_horizons.cc
index 45cc780..114f825 100644
--- a/src/driver/find_horizons.cc
+++ b/src/driver/find_horizons.cc
@@ -255,8 +255,13 @@ IO_info.output_mean_curvature
if (verbose_info.print_algorithm_highlights) {
printf ("AHF find_horizons[%d] setup_initial_guess\n", hn);
}
+ if (track_origin_from_grid_scalar[hn] && state.method == method__find_horizons) {
+ track_origin(cctkGH, ps, &AH_data, hn, verbose_info.print_algorithm_highlights);
+ set_initial_guess_parameters(AH_data, hn,
+ ps.origin_x(), ps.origin_y(), ps.origin_z());
+ }
setup_initial_guess(ps,
- AH_data.initial_guess_info,
+ AH_data.initial_guess_info,
IO_info,
hn, N_horizons, verbose_info);
if (active_flag && IO_info.output_initial_guess)