aboutsummaryrefslogtreecommitdiff
path: root/src/driver/setup.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/driver/setup.cc')
-rw-r--r--src/driver/setup.cc28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/driver/setup.cc b/src/driver/setup.cc
index edf52f3..3ec6ca1 100644
--- a/src/driver/setup.cc
+++ b/src/driver/setup.cc
@@ -97,6 +97,9 @@ extern struct state state;
// This function is called by the Cactus scheduler to set up all our
// persistent data structures. (These are stored in struct state .)
//
+// This function is the only one in this thorn which looks directly at
+// the Cactus parameters.
+//
extern "C"
void AHFinderDirect_setup(CCTK_ARGUMENTS)
{
@@ -110,6 +113,7 @@ CCTK_VInfo(CCTK_THORNSTRING,
//
// basic setup
//
+state.find_every = find_every;
state.method = decode_method(method);
state.error_info.warn_level__point_outside__initial
@@ -138,6 +142,8 @@ verbose_info.print_algorithm_details
verbose_info.print_algorithm_debug
= (state.verbose_info.verbose_level >= verbose_level__algorithm_debug);
+state.metric_type = /* ADMBase:: */ metric_type;
+
state.timer_handle = (print_timing_stats != 0) ? CCTK_TimerCreateI() : -1;
state.N_procs = CCTK_nProcs(cctkGH);
@@ -214,6 +220,9 @@ gi.check_that_geometry_is_finite = (check_that_geometry_is_finite != 0);
//
// Jacobian info
//
+state.test_all_Jacobian_compute_methods
+ = (test_all_Jacobian_compute_methods != 0);
+
struct Jacobian_info& Jac_info = state.Jac_info;
Jac_info.Jacobian_compute_method
= decode_Jacobian_compute_method(Jacobian_compute_method);
@@ -352,6 +361,25 @@ if (mask_info.set_mask_for_any_horizon)
}
+state.announce_centroid_flag = (which_horizon_to_announce_centroid != 0);
+if (state.announce_centroid_flag)
+ then {
+ state.which_horizon_to_announce_centroid
+ = which_horizon_to_announce_centroid;
+ if ( (state.which_horizon_to_announce_centroid < 1)
+ || (state.which_horizon_to_announce_centroid > state.N_horizons) )
+ then CCTK_VWarn(FATAL_ERROR, __LINE__, __FILE__, CCTK_THORNSTRING,
+"\n"
+" AHFinderDirect_setup():\n"
+" invalid which_horizon_to_announce_centroid = %d!\n"
+" (valid range is [1,N_horizons=%d])!\n"
+ ,
+ state.which_horizon_to_announce_centroid,
+ state.N_horizons); /*NOTREACHED*/
+ }
+ else state.which_horizon_to_announce_centroid = 0; // dummy value; unused
+
+
//
// (genuine) horizon sequence for this processor
//