| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
CCTK_POST_RECOVER_VARIABLES only if this is a recovery run.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3487 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3384 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
This closes PR Cactus/1439.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3172 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3029 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is evaluated during recovery and can be set to
- 'strict' meaning all CCTK variables must be recovered successfully,
and no INITIAL timebins will be scheduled
This is the default.
- 'relaxed' saying: recover variables if possible,
and schedule INITIAL timebins afterwards
Also added a new scheduling bin CCTK_POST_RECOVER_VARIABLES at which
routines can be scheduling which want to modify (recovered) initial data.
This closes PR Cactus/629, Cactus/893, Cactus/921.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2653 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
Now POSTSTEP routines aren't run anymore twice on the same timestep after
recovery.
Closes PR Cactus-824 and Cactus-826.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2512 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2442 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2159 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1769 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1684 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1605 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1554 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tidied include files a bit, removing a few cctk.h's, so I've introduced a few more warnings to fix
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1550 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1505 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1334 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
called at the bottm of a schedule traverse, and changed the flesh to
use the new calls. rfrTraverse is now obsolete and will be removed
soon.
Drivers may now call
int CCTK_RegisterGHExtensionScheduleTraverseGH(int handle,
int (*func)(cGH *, const char *))
to register a ScheduleTraverse function. This is precisely
equivalent to the deprecated CCTK_RegisterGHExtensionrfrTraverseGH
except the registered function now takes a string and not a
constant.
The registered function should then fill out the cGH as per normal,
and call
int CCTK_ScheduleTraverse(const char *where,
void *GH,
int (*CallFunction)(void *, cFunctionData *, void *))
with the string and GH passed in, and either NULL or a function
which takes a function pointer, a cFunctionData data structure, and a cGH.
This function, in turn, may call
int CCTK_CallFunction(void *function,
cFunctionData *fdata,
void *data)
with these arguments, or may call the function in some other way if it
desires.
This allows a driver to loop over all sub-grids at a particular level
filling out the cGH at this level of the schedule tree rather than at
the top, which was the only option available before. Unigrid
drivers should probably still fill out at the top and pass NULL down
as it's more efficient to fill out the cGH only once, but AMR or
multi-block/patch drivers can now use this mechanism.
The old CCTK_rfrTraverse routine has similarly been replaced by
int CCTK_Traverse(cGH *GH, const char *where)
which loops over all GH extensions calling their registered
ScheduleTraverseGH routines.
Tom
NB these names may change at the next naming meeting, but the
functionality should remain.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1317 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1297 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1235 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
| |
Currently have #if 0ed out all references to old timers in
thorns and flesh to act as placeholders for new timer stuff.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1079 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1035 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@981 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
IMPORTANT: if you don't have a src/schedule directory, please
do an "update -d" or your code won't compile!
You can now create schedule groups and schedule items (other groups
or functions) IN a group. You may then schedule a group AT a
particular CCTK entry point, or inside another group.
There is a new keyword WHILE in the schedule specification. The
argument(s) to this are the full names of integer scalars, and the
item which is scheduled WHILE will be executed while this integer, or
these integers, are non-zero. Note that currently there is little
checking of the type of these scalars, 'though this will be coming
soon.
BEFORE, AFTER, or WHILE can take a list of arguments of the form
(a,b,c) to stop you having to do something like
BEFORE a BEFORE b BEFORE c
So the full format of a schedule statement is
SCHEDULE [GROUP] <name> <AT entrypoint | IN group> [BEFORE|AFTER <item | (item...)>] [WHILE <integer gridscalar>]
{
[LANG: <language>]
[COMM: <group(s)>]
[STORAGE: <groups(s)]
[TRIGGERS: <groups(s)]
} "<description>"
Note that even for a group you need to provide
{
} "<description>"
'though that may be relaxed soon.
Also TRIGGERS are now on a group basis, not on a variable basis.
So, for example, to test this I had
--------------------------------------
SCHEDULE TEST1_InitialData AT INITIAL
{
LANG: Fortran
} "Initialise"
SCHEDULE TEST1_InitialData AT EVOL
{
LANG: Fortran
} "Initialise"
SCHEDULE TEST1_Evolve IN testit
{
LANG: Fortran
} "Evolution routine"
SCHEDULE GROUP testit WHILE test1::foo_int_scalar AT EVOL AFTER TEST1_InitialData
{
} "Test a group within a group. "
---------------------------------------
where the initialisation routine set test1::foo_int_scalar to 4 and
the evolution routine decremented it. The group "testit" is redundant here
as only one thing is scheduled in it, the WHILE and AFTER could have gone
directly onto the scheduling of TEST1_Evolve.
Apart from the checking of the while stuff, the perl does a fair amount of
checking that groups exist. It doesn't yet check that a group you
are scheduling at or in exists, and neither does the C, so please check the
screen output of the final schedule tree. Checks for this an for
unreachable groups will go in, but perhaps not in the next week.
There's also some tidying up which needs to go in, but this stuff
passes all the tests that the unmodified code does.
I have also tried to make the output of the CST a bit more useful, 'though
now it's a wee bit long-winded.
Please send me comments if you want more output of various things, or would
like the current output, or how the WHILE stuff works, changed.
Tom
IMPORTANT: if you don't have a src/schedule directory, please
do an "update -d" or your code won't compile!
git-svn-id: http://svn.cactuscode.org/flesh/trunk@966 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
from drivers.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@907 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@846 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@830 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@818 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
after to work properly, so the testsuite works on linux.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@783 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@781 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
Internal functions are CCTKi_
Utility functions are Util_
git-svn-id: http://svn.cactuscode.org/flesh/trunk@777 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@726 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@663 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@605 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@595 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@587 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@571 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will be removed really soon. In the meantime if you are compiling
with the grace thorn, please comment out the line saying #define PUGH.
Soon the initialisation stuff should be tidied up.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@565 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
warnings when all warnings switched on (also better style 8-).
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@542 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@530 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@518 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@419 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Adding rfr entry point to paramcheck before INITIAL
git-svn-id: http://svn.cactuscode.org/flesh/trunk@405 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@395 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@367 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@354 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
the dummy ones. All these functions are now in rfrInterface.c
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@240 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
hello Overloadable !
Now each subdirectory has one header file (in the include dir) which
defines the overloadable functions. Macros are then applied to the
header file to produce functions of the form
CCTK_OverloadFoo(... (*func)(...))
to overload the function, and to create prototypes, dummy functions, and
if statements which can be used to assign dummy (or other default) functions
to any overloadable function which hasn't been assigned.
The resulting functions have names of the form CCTK_Foo()
As a byproduct of this the communication layer should work, 'though it's
all dummy functions there at the moment, but at least you can call the functions.
I've put OutputGH and OutputGroup in the IO layer, but can't remember
precisely what we had decided as the canonical set of overloadable functions
for IO.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@206 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@196 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
Uses rfrInitTree to setup a new rfr tree.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@184 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
| |
Added Groups.c which should contain the master functions for dealing with
Groups.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@162 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
Just committing to allow me to continue on skuld.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@158 17b73243-c579-4c4c-a9d2-2d5706c11dac
|