diff options
author | allen <allen@b61c5cb5-eaca-4651-9a7a-d64986f99364> | 2001-04-18 20:31:17 +0000 |
---|---|---|
committer | allen <allen@b61c5cb5-eaca-4651-9a7a-d64986f99364> | 2001-04-18 20:31:17 +0000 |
commit | 0e12453d9c666cd8a5b2d3f7e0b99df7461dfe06 (patch) | |
tree | 7b1ef3e04d89f805b581065d9d11edf7ca30505e /src/Evolve.c | |
parent | 69b22218e428b18d0fe0dfbf5640081262c7c997 (diff) |
Change to calling order for evolution affecting point at which timelevels
are rotated, and point at which the time is updated, the calling order now is
initial
poststep
analysis
loop:
rotate
t=t+dt
it=it+1
prestep
evolve
poststep
analysis
git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGH/PUGH/trunk@315 b61c5cb5-eaca-4651-9a7a-d64986f99364
Diffstat (limited to 'src/Evolve.c')
-rw-r--r-- | src/Evolve.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/Evolve.c b/src/Evolve.c index 14a8b9c..51d73cd 100644 --- a/src/Evolve.c +++ b/src/Evolve.c @@ -87,30 +87,31 @@ int PUGH_Evolve(tFleshConfig *config) while (! DoneMainLoop (config->GH[0],config->GH[0]->cctk_time, iteration)) { - iteration = CCTK_SetMainLoopIndex(++iteration); - - /* Step each convergence level */ ForallConvLevels(iteration, convergence_level) { - StepGH(config->GH[convergence_level]); + RotateTimeLevelsGH(config->GH[convergence_level]); /* CCTK_InfoOutput(config->GH[convergence_level], convergence_level); */ } EndForallConvLevels; - + + iteration = CCTK_SetMainLoopIndex(++iteration); + + /* Step each convergence level */ + ForallConvLevels(iteration, convergence_level) { - RotateTimeLevelsGH(config->GH[convergence_level]); + StepGH(config->GH[convergence_level]); /* CCTK_InfoOutput(config->GH[convergence_level], convergence_level); */ } EndForallConvLevels; - + /* Dump out checkpoint data on all levels */ ForallConvLevels(iteration, convergence_level) { @@ -183,16 +184,11 @@ static int StepGH(cGH *GH) { /* Advance GH->iteration BEFORE evolving */ + GH->cctk_time = GH->cctk_time + GH->cctk_delta_time; GH->cctk_iteration++; CCTK_Traverse(GH, "CCTK_PRESTEP"); CCTK_Traverse(GH, "CCTK_EVOL"); - - - /* Advance GH->time AFTER evolving */ - - GH->cctk_time = GH->cctk_time + GH->cctk_delta_time; - CCTK_Traverse(GH, "CCTK_POSTSTEP"); return 0; |