diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2008-02-19 04:53:00 +0000 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2008-02-19 04:53:00 +0000 |
commit | 9a1abf1aebcbdcfbdc98b9c9db4e5d1e78cf769c (patch) | |
tree | 7b18bfb73cd58d465b1ac2cf0a7efd34c930048c /Carpet/Carpet/src/Cycle.cc | |
parent | e02c16f01f61922c87fc8d1199783f30f7334ece (diff) |
Carpet: Adapt to recent CarpetLib::ggf API change
darcs-hash:20080219045359-dae7b-1af68020f9025b7527c42e5f647acbdb17e078ad.gz
Diffstat (limited to 'Carpet/Carpet/src/Cycle.cc')
-rw-r--r-- | Carpet/Carpet/src/Cycle.cc | 82 |
1 files changed, 40 insertions, 42 deletions
diff --git a/Carpet/Carpet/src/Cycle.cc b/Carpet/Carpet/src/Cycle.cc index 3901b7753..1a2931dd0 100644 --- a/Carpet/Carpet/src/Cycle.cc +++ b/Carpet/Carpet/src/Cycle.cc @@ -29,9 +29,8 @@ namespace Carpet { assert (reflevel>=0 and reflevel<reflevels); for (int m=0; m<(int)arrdata.at(group).size(); ++m) { for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { - for (int c=0; c<arrdata.at(group).at(m).hh->components(reflevel); ++c) { - arrdata.at(group).at(m).data.at(var)->cycle (reflevel, c, mglevel); - } + arrdata.at(group).at(m).data.at(var)-> + cycle_all (reflevel, mglevel); } } break; @@ -42,9 +41,7 @@ namespace Carpet { int const numtimelevels = CCTK_NumTimeLevelsI (group); int const firstvarindex = CCTK_FirstVarIndexI (group); for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { - for (int c=0; c<arrdata.at(group).at(0).hh->components(0); ++c) { - arrdata.at(group).at(0).data.at(var)->cycle (0, c, mglevel); - } + arrdata.at(group).at(0).data.at(var)->cycle_all (0, mglevel); { int const varindex = firstvarindex + var; int const c = CCTK_MyProc(cgh); @@ -76,39 +73,43 @@ namespace Carpet { for (int group=0; group<CCTK_NumGroups(); ++group) { if (CCTK_QueryGroupStorageI(cgh, group)) { - const int num_vars = CCTK_NumVarsInGroupI(group); - if (num_vars>0) { - const int var0 = CCTK_FirstVarIndexI(group); - assert (var0>=0); + switch (CCTK_GroupTypeI(group)) { - switch (CCTK_GroupTypeI(group)) { - - case CCTK_GF: - for (int m=0; m<(int)arrdata.at(group).size(); ++m) { - for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { - for (int c=0; c<arrdata.at(group).at(m).hh->components(reflevel); ++c) { - arrdata.at(group).at(m).data.at(var)->flip (reflevel, c, mglevel); - } - } + case CCTK_GF: + assert (reflevel>=0 and reflevel<reflevels); + for (int m=0; m<(int)arrdata.at(group).size(); ++m) { + for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { + arrdata.at(group).at(m).data.at(var)-> + flip_all (reflevel, mglevel); } - break; - - case CCTK_SCALAR: - case CCTK_ARRAY: - if (do_global_mode) { - for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { - for (int c=0; c<arrdata.at(group).at(0).hh->components(0); ++c) { - arrdata.at(group).at(0).data.at(var)->flip (0, c, mglevel); - } - } + } + break; + + case CCTK_SCALAR: + case CCTK_ARRAY: + if (do_global_mode) { + int const numtimelevels = CCTK_NumTimeLevelsI (group); + int const firstvarindex = CCTK_FirstVarIndexI (group); + for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { + arrdata.at(group).at(0).data.at(var)->flip_all (0, mglevel); + { + int const varindex = firstvarindex + var; + int const c = CCTK_MyProc(cgh); + for (int tl=0; tl<numtimelevels; ++tl) { + cgh->data[varindex][tl] + = (tl < groupdata.at(group).info.activetimelevels + ? ((*arrdata.at(group).at(0).data.at(var)) + (tl, 0, c, 0)->storage()) + : NULL); + } + } } - break; - - default: - assert (0); - } // switch grouptype + } + break; - } // if num_vars>0 + default: + assert (0); + } // switch grouptype } // if storage } // for group } @@ -117,7 +118,7 @@ namespace Carpet { void FillTimeLevels (const cGH* cgh) { - Checkpoint ("CopyTimeLevels"); + Checkpoint ("FillTimeLevels"); assert (is_level_mode()); for (int group=0; group<CCTK_NumGroups(); ++group) { @@ -128,9 +129,8 @@ namespace Carpet { assert (reflevel>=0 and reflevel<reflevels); for (int m=0; m<(int)arrdata.at(group).size(); ++m) { for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { - for (int c=0; c<arrdata.at(group).at(m).hh->components(reflevel); ++c) { - arrdata.at(group).at(m).data.at(var)->fill (reflevel, c, mglevel); - } + arrdata.at(group).at(m).data.at(var)-> + fill_all (reflevel, mglevel); } } break; @@ -139,9 +139,7 @@ namespace Carpet { case CCTK_ARRAY: if (do_global_mode) { for (int var=0; var<CCTK_NumVarsInGroupI(group); ++var) { - for (int c=0; c<arrdata.at(group).at(0).hh->components(0); ++c) { - arrdata.at(group).at(0).data.at(var)->fill (0, c, mglevel); - } + arrdata.at(group).at(0).data.at(var)->fill_all (0, mglevel); } } break; |