aboutsummaryrefslogtreecommitdiff
path: root/ML_BSSN_Helper
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@cct.lsu.edu>2008-01-14 12:20:47 +0100
committerErik Schnetter <schnetter@cct.lsu.edu>2008-01-14 12:20:47 +0100
commit7ecbd6e427f539e2f5067b2dcca32ef613315a8a (patch)
tree36a47629d008c02eee003a21ba86f68cfb3ccdcd /ML_BSSN_Helper
parentfe57e3582691a9ef303de7c50f11e59b7f2f3aa4 (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.ccl1
-rw-r--r--ML_BSSN_Helper/interface.ccl2
-rw-r--r--ML_BSSN_Helper/schedule.ccl43
-rw-r--r--ML_BSSN_Helper/src/RegisterSlicing.c10
-rw-r--r--ML_BSSN_Helper/src/make.code.defn2
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