diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2008-01-14 12:20:47 +0100 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2008-01-14 12:20:47 +0100 |
commit | 7ecbd6e427f539e2f5067b2dcca32ef613315a8a (patch) | |
tree | 36a47629d008c02eee003a21ba86f68cfb3ccdcd /ML_BSSN_Helper | |
parent | fe57e3582691a9ef303de7c50f11e59b7f2f3aa4 (diff) |
Update McLachlan. ML_BSSN_Helper is now required at run time
Calculate the complete RHS in one loop, including matter if desired.
This requires different McLachlan builds for runs with and without
matter.
Make the number of active timelevels a run-time parameter.
Register the slicing in ML_BSSN_Helper. This requires CoordGauge to be
activated at run time.
Add custom boundary conditions, to be used instead of Cactus boundary
conditions.
Make McLachlan fully compliant with the ADMBase initial data mechanism.
Calculate RHS and constrains in special groups provided by ML_BSSN_Helper.
ML_BSSN_Helper is now required at run time.
Diffstat (limited to 'ML_BSSN_Helper')
-rw-r--r-- | ML_BSSN_Helper/configuration.ccl | 1 | ||||
-rw-r--r-- | ML_BSSN_Helper/interface.ccl | 2 | ||||
-rw-r--r-- | ML_BSSN_Helper/schedule.ccl | 43 | ||||
-rw-r--r-- | ML_BSSN_Helper/src/RegisterSlicing.c | 10 | ||||
-rw-r--r-- | ML_BSSN_Helper/src/make.code.defn | 2 |
5 files changed, 56 insertions, 2 deletions
diff --git a/ML_BSSN_Helper/configuration.ccl b/ML_BSSN_Helper/configuration.ccl new file mode 100644 index 0000000..aecb1c4 --- /dev/null +++ b/ML_BSSN_Helper/configuration.ccl @@ -0,0 +1 @@ +REQUIRES THORNS: CoordGauge diff --git a/ML_BSSN_Helper/interface.ccl b/ML_BSSN_Helper/interface.ccl index 7fda368..0e82975 100644 --- a/ML_BSSN_Helper/interface.ccl +++ b/ML_BSSN_Helper/interface.ccl @@ -1 +1,3 @@ IMPLEMENTS: ML_BSSN_Helper + +INHERITS: ADMBase CoordGauge ML_BSSN diff --git a/ML_BSSN_Helper/schedule.ccl b/ML_BSSN_Helper/schedule.ccl index 49edf5e..ec388d1 100644 --- a/ML_BSSN_Helper/schedule.ccl +++ b/ML_BSSN_Helper/schedule.ccl @@ -1,7 +1,48 @@ if (CCTK_EQUALS (evolution_method, "ML_BSSN")) { + + STORAGE: ADMBase::metric[3] + STORAGE: ADMBase::curv[3] + STORAGE: ADMBase::lapse[3] + STORAGE: ADMBase::shift[3] + STORAGE: ADMBase::dtlapse[3] + STORAGE: ADMBase::dtshift[3] + + SCHEDULE ML_BSSN_RegisterSlicing AT startup + { + LANG: C + OPTIONS: meta + } "Register slicing" + SCHEDULE ML_BSSN_UnsetCheckpointTags AT basegrid { LANG: C - OPTIONS: global + OPTIONS: meta } "Don't checkpoint ADMBase variables" + + + + SCHEDULE GROUP ML_BSSN_evolCalcGroup IN MoL_CalcRHS + { + } "Calculate BSSN RHS" + + SCHEDULE GROUP ML_BSSN_evolCalcGroup AT analysis + { + TRIGGERS: ML_BSSN::ML_log_confacrhs + TRIGGERS: ML_BSSN::ML_metricrhs + TRIGGERS: ML_BSSN::ML_Gammarhs + TRIGGERS: ML_BSSN::ML_trace_curvrhs + TRIGGERS: ML_BSSN::ML_curvrhs + TRIGGERS: ML_BSSN::ML_lapserhs + TRIGGERS: ML_BSSN::ML_dtlapserhs + TRIGGERS: ML_BSSN::ML_shiftrhs + TRIGGERS: ML_BSSN::ML_dtshiftrhs + } "Calculate BSSN RHS" + + + + SCHEDULE GROUP ML_BSSN_constraintsCalcGroup AT analysis + { + TRIGGERS: ML_BSSN::Ham + TRIGGERS: ML_BSSN::mom + } "Calculate BSSN constraints" } diff --git a/ML_BSSN_Helper/src/RegisterSlicing.c b/ML_BSSN_Helper/src/RegisterSlicing.c new file mode 100644 index 0000000..313bf32 --- /dev/null +++ b/ML_BSSN_Helper/src/RegisterSlicing.c @@ -0,0 +1,10 @@ +#include <cctk.h> + +#include "CactusEinstein/CoordGauge/src/Slicing.h" + +int +ML_BSSN_RegisterSlicing (void) +{ + Einstein_RegisterSlicing ("ML_BSSN"); + return 0; +} diff --git a/ML_BSSN_Helper/src/make.code.defn b/ML_BSSN_Helper/src/make.code.defn index 7df7001..ec09a08 100644 --- a/ML_BSSN_Helper/src/make.code.defn +++ b/ML_BSSN_Helper/src/make.code.defn @@ -1,2 +1,2 @@ # -*-Makefile-*- -SRCS = UnsetCheckpointTags.c +SRCS = RegisterSlicing.c UnsetCheckpointTags.c |