aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra
diff options
context:
space:
mode:
authorschnetter <>2004-04-07 15:08:00 +0000
committerschnetter <>2004-04-07 15:08:00 +0000
commit0da2cef8eccd2a2a87db35c84627caf5420be8d2 (patch)
treee7c7702973fc252373184be6d61712d82f24bed6 /CarpetExtra
parent89a477fbe9788ac1a5ba150bf55dace12670152e (diff)
Calculate an approximation of the solution error
darcs-hash:20040407150821-07bb3-eed6ae63d064c5746d4a408eabc7f1dd82db542d.gz
Diffstat (limited to 'CarpetExtra')
-rw-r--r--CarpetExtra/WaveToyMoL/interface.ccl7
-rw-r--r--CarpetExtra/WaveToyMoL/param.ccl6
-rw-r--r--CarpetExtra/WaveToyMoL/schedule.ccl34
-rw-r--r--CarpetExtra/WaveToyMoL/src/boundaries.F774
-rw-r--r--CarpetExtra/WaveToyMoL/src/initsymbound.F774
-rw-r--r--CarpetExtra/WaveToyMoL/src/make.code.defn4
6 files changed, 48 insertions, 11 deletions
diff --git a/CarpetExtra/WaveToyMoL/interface.ccl b/CarpetExtra/WaveToyMoL/interface.ccl
index 9b9c4a769..992543fab 100644
--- a/CarpetExtra/WaveToyMoL/interface.ccl
+++ b/CarpetExtra/WaveToyMoL/interface.ccl
@@ -1,5 +1,5 @@
# Interface definition for thorn WaveToyMoL
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/interface.ccl,v 1.2 2003/11/05 16:18:41 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/interface.ccl,v 1.3 2004/04/07 17:08:21 schnetter Exp $
IMPLEMENTS: WaveToyMoL
@@ -35,3 +35,8 @@ CCTK_REAL scalarevolvedot TYPE=gf
{
phidot psidot
} "Time derivative of the scalar field"
+
+CCTK_REAL scalarevolveerrorestimate TYPE=gf
+{
+ error
+} "Error estimate"
diff --git a/CarpetExtra/WaveToyMoL/param.ccl b/CarpetExtra/WaveToyMoL/param.ccl
index f4c10772a..37879c4d8 100644
--- a/CarpetExtra/WaveToyMoL/param.ccl
+++ b/CarpetExtra/WaveToyMoL/param.ccl
@@ -1,5 +1,5 @@
# Parameter definitions for thorn WaveToyMoL
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/param.ccl,v 1.1 2003/06/18 18:24:30 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/param.ccl,v 1.2 2004/04/07 17:08:21 schnetter Exp $
SHARES: MethodOfLines
@@ -18,3 +18,7 @@ STRING bound "Type of boundary condition to use"
{
.* :: "must be a registered boundary condition"
} "None"
+
+BOOLEAN estimate_error "Estimate the truncation error"
+{
+} "no"
diff --git a/CarpetExtra/WaveToyMoL/schedule.ccl b/CarpetExtra/WaveToyMoL/schedule.ccl
index 7d3f01265..ffce79084 100644
--- a/CarpetExtra/WaveToyMoL/schedule.ccl
+++ b/CarpetExtra/WaveToyMoL/schedule.ccl
@@ -1,26 +1,31 @@
# Schedule definitions for thorn WaveToyMoL
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/schedule.ccl,v 1.4 2004/01/25 14:57:31 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/schedule.ccl,v 1.5 2004/04/07 17:08:21 schnetter Exp $
STORAGE: scalarevolve[3]
STORAGE: scalarevolvedot
+if (estimate_error) {
+ STORAGE: scalarevolveerrorestimate
+}
+
SCHEDULE WaveToyMol_Startup AT startup
{
LANG: Fortran
+ OPTIONS: meta
} "Register banner"
SCHEDULE WaveToyMoL_InitSymBound AT basegrid
{
LANG: Fortran
- OPTIONS: global
+ OPTIONS: meta
} "Schedule symmetries"
SCHEDULE WaveToyMoL_RegisterVars IN MoL_Register
{
LANG: Fortran
- OPTIONS: global
+ OPTIONS: meta
} "Register variables for MoL"
@@ -33,9 +38,32 @@ SCHEDULE WaveToyMoL_CalcRHS IN MoL_CalcRHS
SCHEDULE WaveToyMoL_Boundaries IN MoL_PostStep
{
LANG: Fortran
+ OPTIONS: level
SYNC: scalarevolve
} "Select boundary conditions in MoL"
SCHEDULE GROUP ApplyBCs IN MoL_PostStep AFTER WaveToyMoL_Boundaries
{
} "Apply boundary conditions in MoL"
+
+
+
+if (estimate_error) {
+
+ SCHEDULE WaveToyMoL_EstimateError AT poststep
+ {
+ LANG: Fortran
+ } "Estimate the truncation error"
+
+ SCHEDULE WaveToyMoL_EstimateErrorBoundaries AT poststep AFTER WaveToyMoL_EstimateError
+ {
+ LANG: Fortran
+ OPTIONS: level
+ SYNC: scalarevolveerrorestimate
+ } "Select boundary conditions for the truncation error"
+
+ SCHEDULE GROUP ApplyBCs AT poststep AFTER WaveToyMoL_EstimateError
+ {
+ } "Apply boundary conditions"
+
+}
diff --git a/CarpetExtra/WaveToyMoL/src/boundaries.F77 b/CarpetExtra/WaveToyMoL/src/boundaries.F77
index 7cb9f6579..6b86f6383 100644
--- a/CarpetExtra/WaveToyMoL/src/boundaries.F77
+++ b/CarpetExtra/WaveToyMoL/src/boundaries.F77
@@ -1,4 +1,4 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/boundaries.F77,v 1.2 2003/10/27 15:31:41 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/boundaries.F77,v 1.3 2004/04/07 17:08:21 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
@@ -20,6 +20,4 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/boundar
ierr = Boundary_SelectGroupForBC(cctkGH, CCTK_ALL_FACES, bndwidth, -1,
$ "WaveToyMoL::scalarevolve", fbound);
if (ierr.ne.0) call CCTK_WARN (0, "internal error")
- call CartSymGN (ierr, cctkGH, "WaveToyMoL::scalarevolve")
- if (ierr.ne.0) call CCTK_WARN (0, "internal error")
end
diff --git a/CarpetExtra/WaveToyMoL/src/initsymbound.F77 b/CarpetExtra/WaveToyMoL/src/initsymbound.F77
index 782f0b6fe..554eb16f0 100644
--- a/CarpetExtra/WaveToyMoL/src/initsymbound.F77
+++ b/CarpetExtra/WaveToyMoL/src/initsymbound.F77
@@ -1,4 +1,4 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/initsymbound.F77,v 1.2 2003/10/27 15:31:41 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/initsymbound.F77,v 1.3 2004/04/07 17:08:21 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
@@ -20,4 +20,6 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/initsym
if (ierr.ne.0) call CCTK_WARN (0, "internal error")
call SetCartSymVN (ierr, cctkGH, sym, "WaveToyMoL::phidot")
if (ierr.ne.0) call CCTK_WARN (0, "internal error")
+ call SetCartSymVN (ierr, cctkGH, sym, "WaveToyMoL::error")
+ if (ierr.ne.0) call CCTK_WARN (0, "internal error")
end
diff --git a/CarpetExtra/WaveToyMoL/src/make.code.defn b/CarpetExtra/WaveToyMoL/src/make.code.defn
index 969543b4a..59782e596 100644
--- a/CarpetExtra/WaveToyMoL/src/make.code.defn
+++ b/CarpetExtra/WaveToyMoL/src/make.code.defn
@@ -1,8 +1,8 @@
# Main make.code.defn file for thorn WaveToyMoL
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/make.code.defn,v 1.1 2003/06/18 18:24:31 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyMoL/src/make.code.defn,v 1.2 2004/04/07 17:08:21 schnetter Exp $
# Source files in this directory
-SRCS = boundaries.F77 calcrhs.F77 initsymbound.F77 registervars.F77 startup.F77
+SRCS = boundaries.F77 calcrhs.F77 estimateerror.F77 initsymbound.F77 registervars.F77 startup.F77
# Subdirectories containing source files
SUBDIRS =