diff options
author | schnetter <schnetter@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2005-05-25 16:36:03 +0000 |
---|---|---|
committer | schnetter <schnetter@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2005-05-25 16:36:03 +0000 |
commit | 305996fd427742551c60d214db0551d495383247 (patch) | |
tree | 068d19ba2abc356ebaef2e03ad76f5a99e647f91 /Makefile | |
parent | 1c8bfdb31bcdb2b5cd30cd14a3fd8d95030703ea (diff) |
Correct a severe error in handling sync statements in scheduling
groups.
Whether the synchronisation was done by CCTK_CallFunction or not was
stored in the "synchronised" flag of a t_sched_data object. This
object exists only once for the simulation, and not once for each
recursive call of the scheduler when it traverses groups. Thus the
information was correct only for the innermost schedule item, namely
functions, and incorrect for schedule groups.
Because PUGH does not overload CCTK_CallFunction, and thus this flag
always stays false, I assume that this error does not occur with PUGH
simulations. It does occur with Carpet simulations.
As a quick solution, I moved the "synchronised" flag from the
t_sched_data structure into the t_attribute structure. This does not
work for recursive calls.
It may be that the t_attribute structure is meant for unchanging
information. In that case, it is necessary to construct a stack of
t_sched_data objects.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4060 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'Makefile')
0 files changed, 0 insertions, 0 deletions