diff options
author | hawke <hawke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2006-08-24 11:44:49 +0000 |
---|---|---|
committer | hawke <hawke@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2006-08-24 11:44:49 +0000 |
commit | 8b15c1ee0334cd9008376280b91c8e40723f3c7f (patch) | |
tree | d5a9a3ee63cd4c1d8dcf2de0abc16cd05685144a | |
parent | 0c24479a37cedb85ebd07c03fc3410359d3505c0 (diff) |
Correct the problem with scheduling the "Old Style" Boundaries by running various routines in LEVEL mode.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@119 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
-rw-r--r-- | schedule.ccl | 18 | ||||
-rw-r--r-- | src/SetTime.c | 27 |
2 files changed, 42 insertions, 3 deletions
diff --git a/schedule.ccl b/schedule.ccl index cf0d358..e7c485c 100644 --- a/schedule.ccl +++ b/schedule.ccl @@ -417,11 +417,9 @@ schedule MoL_SetCounter IN MoL_StartStep } "Set the counter for the ODE method to loop over" ######################################################## -### Note that the option GLOBAL here is to ensure ### +### Note that the option LEVEL here is to ensure ### ### that the time is set once per refinement level ### ### and not once overall. ### -### I think with current implementations this is ### -### not required. ### ######################################################## schedule MoL_SetTime IN MoL_StartStep @@ -430,6 +428,18 @@ schedule MoL_SetTime IN MoL_StartStep OPTIONS: LEVEL } "Ensure the correct time and timestep are used" +##################################################### +### A truncated version of the above routine to ### +### ensure that all is correct for the OldBdry ### +### wrapper routines when run in POSTINITIAL. ### +##################################################### + +schedule MoL_SetInitialTime AT INITIAL +{ + LANG: C + OPTIONS: LEVEL +} "Ensure the correct time and timestep are used - initial" + ################################################################# ### PreStep is where physics thorns can do their own setup. ### ### This would include scheduling the function calls to ### @@ -648,11 +658,13 @@ schedule GROUP MoL_OldStyleBoundaries in MoL_OldBdry_Wrap schedule MoL_OldBdry_SetDt IN MoL_OldBdry_Wrap BEFORE MoL_OldStyleBoundaries { LANGUAGE: C + OPTIONS: LEVEL } "Store and change dt" schedule MoL_OldBdry_ResetDt IN MoL_OldBdry_Wrap AFTER MoL_OldStyleBoundaries { LANGUAGE: C + OPTIONS: LEVEL } "Reset dt" ################################################# diff --git a/src/SetTime.c b/src/SetTime.c index 5149eb2..5866d0d 100644 --- a/src/SetTime.c +++ b/src/SetTime.c @@ -101,6 +101,33 @@ static const CCTK_REAL alpha_array65[8] = { ********************************************************************/ /*@@ + @routine MoL_SetInitialTime + @date Mon Aug 14 09:33:45 2006 + @author Ian Hawke + @desc + Set the Original_Time and Original_Delta_Time variables correctly + (as the IndexArrays routine may be run too soon). + @enddesc + @calls + @calledby + @history + + @endhistory + +@@*/ + +int MoL_SetInitialTime(CCTK_ARGUMENTS) +{ + + DECLARE_CCTK_ARGUMENTS; + + *Original_Time = cctkGH->cctk_time; + *Original_Delta_Time = cctkGH->cctk_delta_time; + + return 0; +} + + /*@@ @routine MoL_SetTime @date Mon May 20 09:48:55 2002 @author Ian Hawke |