aboutsummaryrefslogtreecommitdiff
path: root/ML_WaveToy
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@cct.lsu.edu>2008-04-02 18:42:43 -0500
committerErik Schnetter <schnetter@cct.lsu.edu>2008-04-02 18:42:43 -0500
commit70fd92da159408e939381abf14f37c01d523760d (patch)
tree589333caf890e42614583161b5a71dc00c8f2625 /ML_WaveToy
parent90b1458fa8c6340ad8c81dbc0dd43ed77f64f993 (diff)
Create several specialised thorns: ML_ADM and ML_BSSN as standard cases,
ML_BSSN_MP for multi-patch simulations, and ML_BSSN_M for AMR simulations with matter. Add helper thorns for all BSSN thorns. Helper thorns are required at run time, e.g. to register gauge conditions. Split ADM and BSSN equations into their own source files.
Diffstat (limited to 'ML_WaveToy')
-rw-r--r--ML_WaveToy/param.ccl4
-rw-r--r--ML_WaveToy/src/WT_Gaussian.c3
-rw-r--r--ML_WaveToy/src/WT_RHS.c91
3 files changed, 9 insertions, 89 deletions
diff --git a/ML_WaveToy/param.ccl b/ML_WaveToy/param.ccl
index 6c5e289..73a0f28 100644
--- a/ML_WaveToy/param.ccl
+++ b/ML_WaveToy/param.ccl
@@ -19,9 +19,9 @@ USES CCTK_INT MoL_Num_Evolved_Vars
USES CCTK_INT MoL_Num_Constrained_Vars
restricted:
-CCTK_REAL verbose "verbose"
+CCTK_INT verbose "verbose"
{
- "*:*" :: ""
+ *:* :: ""
} 0
restricted:
diff --git a/ML_WaveToy/src/WT_Gaussian.c b/ML_WaveToy/src/WT_Gaussian.c
index 34cc2fa..0e59b5f 100644
--- a/ML_WaveToy/src/WT_Gaussian.c
+++ b/ML_WaveToy/src/WT_Gaussian.c
@@ -5,7 +5,10 @@
#define KRANC_C
+#include <assert.h>
#include <math.h>
+#include <stdio.h>
+#include <stdlib.h>
#include "cctk.h"
#include "cctk_Arguments.h"
#include "cctk_Parameters.h"
diff --git a/ML_WaveToy/src/WT_RHS.c b/ML_WaveToy/src/WT_RHS.c
index 060c0b8..c4a07bc 100644
--- a/ML_WaveToy/src/WT_RHS.c
+++ b/ML_WaveToy/src/WT_RHS.c
@@ -5,7 +5,10 @@
#define KRANC_C
+#include <assert.h>
#include <math.h>
+#include <stdio.h>
+#include <stdlib.h>
#include "cctk.h"
#include "cctk_Arguments.h"
#include "cctk_Parameters.h"
@@ -118,55 +121,18 @@ void WT_RHS_Body(cGH *cctkGH, CCTK_INT dir, CCTK_INT face, CCTK_REAL normal[3],
subblock_index = i - min[0] + (max[0] - min[0]) * (j - min[1] + (max[1]-min[1]) * (k - min[2])) ;
/* Declare shorthands */
- CCTK_REAL dJinv111 = INITVALUE, dJinv122 = INITVALUE, dJinv133 = INITVALUE, dJinv211 = INITVALUE, dJinv222 = INITVALUE, dJinv233 = INITVALUE;
- CCTK_REAL dJinv311 = INITVALUE, dJinv322 = INITVALUE, dJinv333 = INITVALUE;
- CCTK_REAL Jinv11 = INITVALUE, Jinv12 = INITVALUE, Jinv13 = INITVALUE, Jinv21 = INITVALUE, Jinv22 = INITVALUE, Jinv23 = INITVALUE;
- CCTK_REAL Jinv31 = INITVALUE, Jinv32 = INITVALUE, Jinv33 = INITVALUE;
/* Declare local copies of grid functions */
- CCTK_REAL dadxL = INITVALUE;
- CCTK_REAL dadyL = INITVALUE;
- CCTK_REAL dadzL = INITVALUE;
- CCTK_REAL dbdxL = INITVALUE;
- CCTK_REAL dbdyL = INITVALUE;
- CCTK_REAL dbdzL = INITVALUE;
- CCTK_REAL dcdxL = INITVALUE;
- CCTK_REAL dcdyL = INITVALUE;
- CCTK_REAL dcdzL = INITVALUE;
- CCTK_REAL ddadxdxL = INITVALUE;
- CCTK_REAL ddadydyL = INITVALUE;
- CCTK_REAL ddadzdzL = INITVALUE;
CCTK_REAL rhoL = INITVALUE, rhorhsL = INITVALUE;
CCTK_REAL uL = INITVALUE, urhsL = INITVALUE;
/* Declare precomputed derivatives*/
/* Declare derivatives */
- CCTK_REAL PDstandardNth1u = INITVALUE;
- CCTK_REAL PDstandardNth2u = INITVALUE;
- CCTK_REAL PDstandardNth3u = INITVALUE;
CCTK_REAL PDstandardNth11u = INITVALUE;
CCTK_REAL PDstandardNth22u = INITVALUE;
CCTK_REAL PDstandardNth33u = INITVALUE;
- CCTK_REAL PDstandardNth12u = INITVALUE;
- CCTK_REAL PDstandardNth13u = INITVALUE;
- CCTK_REAL PDstandardNth21u = INITVALUE;
- CCTK_REAL PDstandardNth23u = INITVALUE;
- CCTK_REAL PDstandardNth31u = INITVALUE;
- CCTK_REAL PDstandardNth32u = INITVALUE;
/* Assign local copies of grid functions */
- dadxL = dadx[index];
- dadyL = dady[index];
- dadzL = dadz[index];
- dbdxL = dbdx[index];
- dbdyL = dbdy[index];
- dbdzL = dbdz[index];
- dcdxL = dcdx[index];
- dcdyL = dcdy[index];
- dcdzL = dcdz[index];
- ddadxdxL = ddadxdx[index];
- ddadydyL = ddadydy[index];
- ddadzdzL = ddadzdz[index];
rhoL = rho[index];
uL = u[index];
@@ -175,65 +141,16 @@ void WT_RHS_Body(cGH *cctkGH, CCTK_INT dir, CCTK_INT face, CCTK_REAL normal[3],
/* Include user supplied include files */
/* Precompute derivatives (new style) */
- PDstandardNth1u = PDstandardNth1(u, i, j, k);
- PDstandardNth2u = PDstandardNth2(u, i, j, k);
- PDstandardNth3u = PDstandardNth3(u, i, j, k);
PDstandardNth11u = PDstandardNth11(u, i, j, k);
PDstandardNth22u = PDstandardNth22(u, i, j, k);
PDstandardNth33u = PDstandardNth33(u, i, j, k);
- PDstandardNth12u = PDstandardNth12(u, i, j, k);
- PDstandardNth13u = PDstandardNth13(u, i, j, k);
- PDstandardNth23u = PDstandardNth23(u, i, j, k);
/* Precompute derivatives (old style) */
/* Calculate temporaries and grid functions */
- Jinv11 = dadxL;
-
- Jinv12 = dadyL;
-
- Jinv13 = dadzL;
-
- Jinv21 = dbdxL;
-
- Jinv22 = dbdyL;
-
- Jinv23 = dbdzL;
-
- Jinv31 = dcdxL;
-
- Jinv32 = dcdyL;
-
- Jinv33 = dcdzL;
-
- dJinv111 = ddadxdxL;
-
- dJinv122 = ddadydyL;
-
- dJinv133 = ddadzdzL;
-
- dJinv211 = ddadxdxL;
-
- dJinv222 = ddadydyL;
-
- dJinv233 = ddadzdzL;
-
- dJinv311 = ddadxdxL;
-
- dJinv322 = ddadydyL;
-
- dJinv333 = ddadzdzL;
-
urhsL = rhoL;
- rhorhsL = (dJinv111 + dJinv122 + dJinv133)*PDstandardNth1u +
- 2*((Jinv11*Jinv21 + Jinv12*Jinv22 + Jinv13*Jinv23)*PDstandardNth12u +
- (Jinv11*Jinv31 + Jinv12*Jinv32 + Jinv13*Jinv33)*PDstandardNth13u +
- (Jinv21*Jinv31 + Jinv22*Jinv32 + Jinv23*Jinv33)*PDstandardNth23u) +
- (dJinv211 + dJinv222 + dJinv233)*PDstandardNth2u + (dJinv311 + dJinv322 + dJinv333)*PDstandardNth3u +
- PDstandardNth11u*(SQR(Jinv11) + SQR(Jinv12) + SQR(Jinv13)) +
- PDstandardNth22u*(SQR(Jinv21) + SQR(Jinv22) + SQR(Jinv23)) +
- PDstandardNth33u*(SQR(Jinv31) + SQR(Jinv32) + SQR(Jinv33));
+ rhorhsL = PDstandardNth11u + PDstandardNth22u + PDstandardNth33u;
/* Copy local copies back to grid functions */