[Commits] [svn:einsteintoolkit] ADMBase/trunk/ (Rev. 80)

rhaas at tapir.caltech.edu rhaas at tapir.caltech.edu
Tue May 27 10:11:27 CDT 2014


User: rhaas
Date: 2014/05/27 10:11 AM

Modified:
 /trunk/
  param.ccl, schedule.ccl

Log:
 add evolutin methods "ID-apply-always", "ID-apply-regrid"
 
 These methods are similar to "static" in that they can be used for Cowling
 runs, they differ from "static" in that ID-apply-regrid only schedules the
 initial data routine after any grid changes and that both do not apply boundary
 conditions or SYNC calls. They can thus be used if one can compute the required
 metric/shift/lapse easily in a pointwise manner and would like to have exact
 (non-prolongated) data in the buffer zones.

File Changes:

Directory: /trunk/
==================

File [modified]: param.ccl
Delta lines: +16 -6
===================================================================
--- trunk/param.ccl	2014-05-21 15:47:55 UTC (rev 79)
+++ trunk/param.ccl	2014-05-27 15:11:27 UTC (rev 80)
@@ -35,28 +35,38 @@
 
 KEYWORD evolution_method "The metric an extrinsic curvature evolution method"
 {
-  "none"   :: "The metric and extrinsic curvature are not evolved"
-  "static" :: "The metric and extrinsic curvature are not evolved"
+  "none"       :: "The metric and extrinsic curvature are not evolved"
+  "static"     :: "The metric and extrinsic curvature are not evolved"
+  "ID-apply-regrid" :: "The metric and extrinsic curvature are not evolved and initial data is used to fill in new grid points after regridding"
+  "ID-apply-always" :: "The metric and extrinsic curvature are not evolved and initial data is used to fill in new grid points before each step and after grid changes"
 } "static"
 
 KEYWORD lapse_evolution_method "The lapse evolution method"
 {
-  "static" :: "lapse is not evolved"
+  "static"     :: "lapse is not evolved"
+  "ID-apply-regrid" :: "lapse is not evolved and initial data is used to fill in new grid points after regridding"
+  "ID-apply-always" :: "lapse is not evolved and initial data is used to fill in new grid points before each step and after grid changes"
 } "static"
 
 KEYWORD shift_evolution_method "The shift evolution method"
 { 
-  "static" :: "shift is not evolved"
+  "static"     :: "shift is not evolved"
+  "ID-apply-regrid" :: "shift is not evolved and initial data is used to fill in new grid points after regridding"
+  "ID-apply-always" :: "shift is not evolved and initial data is used to fill in new grid points before each step and after grid changes"
 } "static"
 
 KEYWORD dtlapse_evolution_method "The dtlapse evolution method"
 {
-  "static" :: "dtlapse is not evolved"
+  "static"     :: "dtlapse is not evolved"
+  "ID-apply-regrid" :: "dtlapse is not evolved and initial data is used to fill in new grid points after regridding"
+  "ID-apply-always" :: "dtlapse is not evolved and initial data is used to fill in new grid points before each step and after grid changes"
 } "static"
 
 KEYWORD dtshift_evolution_method "The dtshift evolution method"
 { 
-  "static" :: "shift is not evolved"
+  "static"     :: "shift is not evolved"
+  "ID-apply-regrid" :: "dtshift is not evolved and initial data is used to fill in new grid points after regridding"
+  "ID-apply-always" :: "dtshift is not evolved and initial data is used to fill in new grid points before each step and after grid changes"
 } "static"
 
 

File [modified]: schedule.ccl
Delta lines: +37 -3
===================================================================
--- trunk/schedule.ccl	2014-05-21 15:47:55 UTC (rev 79)
+++ trunk/schedule.ccl	2014-05-27 15:11:27 UTC (rev 80)
@@ -196,7 +196,8 @@
 
 
 
-if (CCTK_Equals(lapse_evolution_method, "static"))
+if (CCTK_Equals(lapse_evolution_method, "static") ||
+    CCTK_Equals(lapse_evolution_method, "ID-apply-always"))
 {
   SCHEDULE ADMBase_LapseStatic in CCTK_PRESTEP
   {
@@ -204,7 +205,8 @@
   } "Copy the lapse to the current time level"
 }
 
-if (CCTK_Equals(shift_evolution_method, "static"))
+if (CCTK_Equals(shift_evolution_method, "static") ||
+    CCTK_Equals(shift_evolution_method, "ID-apply-always"))
 {
   SCHEDULE ADMBase_ShiftStatic in CCTK_PRESTEP
   {
@@ -212,7 +214,9 @@
   } "Copy the shift to the current time level"
 }
 
-if (CCTK_Equals(evolution_method, "static") || CCTK_Equals(evolution_method, "none"))
+if (CCTK_Equals(evolution_method, "static") ||
+    CCTK_Equals(evolution_method, "none") ||
+    CCTK_Equals(evolution_method, "ID-apply-always"))
 {
   SCHEDULE ADMBase_Static in CCTK_PRESTEP
   {
@@ -248,6 +252,36 @@
 
 }
 
+if (CCTK_Equals(evolution_method, "ID-apply-regrid") ||
+    CCTK_Equals(evolution_method, "ID-apply-always"))
+{
+  SCHEDULE group ADMBase_InitialData at CCTK_POSTREGRID
+  {
+  } "Schedule group for calculating ADM initial data"
+
+  SCHEDULE group ADMBase_InitialData at CCTK_POSTREGRIDINITIAL
+  {
+  } "Schedule group for calculating ADM initial data"
+}
+
+if (CCTK_Equals(lapse_evolution_method, "ID-apply-regrid") ||
+    CCTK_Equals(shift_evolution_method, "ID-apply-regrid") ||
+    CCTK_Equals(dtlapse_evolution_method, "ID-apply-regrid") ||
+    CCTK_Equals(dtshift_evolution_method, "ID-apply-regrid") ||
+    CCTK_Equals(lapse_evolution_method, "ID-apply-always") ||
+    CCTK_Equals(shift_evolution_method, "ID-apply-always") ||
+    CCTK_Equals(dtlapse_evolution_method, "ID-apply-always") ||
+    CCTK_Equals(dtshift_evolution_method, "ID-apply-always"))
+{
+  SCHEDULE group ADMBase_InitialGauge at CCTK_POSTREGRID after ADMBase_InitialData BEFORE MoL_PostStep
+  {
+  } "Schedule group for the ADM initial gauge condition"
+
+  SCHEDULE group ADMBase_InitialGauge at CCTK_POSTREGRIDINITIAL after ADMBase_InitialData BEFORE MoL_PostStep
+  {
+  } "Schedule group for the ADM initial gauge condition"
+}
+
 # TODO: Rename this group to "ADMBase_HaveBeenSet"?
 SCHEDULE GROUP ADMBase_SetADMVars IN MoL_PostStep
 {



More information about the Commits mailing list