summaryrefslogtreecommitdiff
path: root/src/main/make.code.defn
Commit message (Collapse)AuthorAge
* Introduce cctk_ash, retire cctk_lssheschnett2012-07-04
| | | | | | | | | | | | Introduce cctk_ash, describing the process-local array shape that has been allocated. This may be larger than cctk_lsh, the process-local shape that should be used. Retire cctk_lssh and related infrastructure to handle staggered grid functions. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4841 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added new source file DebugDefines.c which provides some debugging supporttradke2001-07-03
| | | | | | | | routines for Cactus. So far it defines all the CCTK_GFINDEX?D() routines for debug configurations. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2265 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Routines for handling termination conditions, only basic stuff for now.allen2001-03-16
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@2079 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Made CCTK_MainLoopIndex and CCTK_SetMainLoopIndex overloadable, and addedallen2000-10-04
| | | | | | | routines that were originally there as defaults git-svn-id: http://svn.cactuscode.org/flesh/trunk@1852 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Changes to CCTK_MainLoopIndex and CCTK_SetMainLoopIndex (which now returns ↵allen2000-06-26
| | | | | | what the index is set to) git-svn-id: http://svn.cactuscode.org/flesh/trunk@1705 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Removed last vestiges of rfr.goodale2000-04-17
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1554 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New routines to store group and variable numbers in hash tables associatedgoodale2000-03-09
| | | | | | | | | with their names. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1453 17b73243-c579-4c4c-a9d2-2d5706c11dac
* memtrace renaminglanfer2000-03-08
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1443 17b73243-c579-4c4c-a9d2-2d5706c11dac
* MemAllocate addedlanfer2000-03-07
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1428 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Removing Functions.c and related files. This is probably the wronggoodale2000-01-23
| | | | | | | | | approach for what I wanted to do, but may be resurrected at some point. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1281 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New function registration stuff.goodale2000-01-21
| | | | | | | | | | | | | Basically can register functions which return void CCTK_INT or CCTK_REAL and take up to CCTK_MAX_ARGS (currently 255) void * arguments. The CCTK_FunctionCall function can then be used to call this function, timing its execution. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1279 17b73243-c579-4c4c-a9d2-2d5706c11dac
* stagger supportlanfer2000-01-14
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1256 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added Gab's complex number stuff.goodale1999-12-14
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1190 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New cache alignment stuff.goodale1999-11-30
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1178 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Some new timer stuff. Compiles and links under linux and NT, butgoodale1999-10-20
| | | | | | | | | | | untested as yet. Still need to put in MPI time and the windows time stuff, as well as hardware counters, and still need to wrap schedule stuff with timers. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1074 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Ordering routines in alphabetical order (!)allen1999-10-18
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1055 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Removed Startup.callen1999-10-14
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1036 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New schedule stuff.goodale1999-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* New parameter stuff.goodale1999-08-26
| | | | | | | | | | | Now a non-active thorn's extensions to parameters shouldn't be valid, range checking is now done, even for strings, which must conform to a regular expression. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@859 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Mainly changes to get redirection of stdout to work.goodale1999-07-23
| | | | | | | | | | | | | | | Now the defaults for overloaded functions are setup before anything else, and the the Overloading functions count the number of times they are called and don't allow the thing to be overloaded more than twice - once for the default, and once for people actually wanting to overload it. Redirection now works - output is put into files like CCTK_Proc<x> where x is the process number. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@773 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New files addedallen1999-07-18
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@723 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Stuff for the ActiveThorns parameter.goodale1999-07-04
| | | | | | | | | | | | | | | | Now need to specify ActiveThorns before any other parameters to list those thorns which are active. No parameters or startup or rfr routines are available from inactive thorns. Note that this isn't quite working yet but I hope to track it down by morning. In the meantime either don't update or be prepared for things to be slightly broken. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@645 17b73243-c579-4c4c-a9d2-2d5706c11dac
* More changes from Joan and his NT nightmares.jmasso1999-06-03
| | | | | | | Please try this on a reasonable OS. git-svn-id: http://svn.cactuscode.org/flesh/trunk@543 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Including coordinate fileallen1999-04-22
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@493 17b73243-c579-4c4c-a9d2-2d5706c11dac
* File name change, and added some GH group functions.allen1999-04-07
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@452 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added new files CactusDefaultShutdown.c and ProcessEnvironment.cgoodale1999-02-27
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@358 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Moved GHExtensions from the comm directory to the main directory.goodale1999-02-21
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@323 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added warning level and command line argument source files.goodale1999-02-17
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@294 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Removed Variables.c.goodale1999-02-08
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@226 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Reorganised group stuff.goodale1999-02-08
| | | | | | | | | Now all in Groups.c Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@225 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Rationalised the overloading of functions. Goodbye RegisterKeyedFunction,goodale1999-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* New file rfrInterface.c which contains the stuff the flesh needsgoodale1999-02-03
| | | | | | | | | when dealing with the rfr. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@195 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added Dummies.c to source files.goodale1999-02-02
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@189 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added variables.callen1999-02-02
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@180 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Put in lots of calls to the rfr.goodale1999-02-01
| | | | | | | | | | 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
* Now make will recurse into subdirectories of a thorn.goodale1999-01-18
In your make.code.defn file put lines SRCS = <sources in this directory> SUBDIRS= <all subdirectories - e.g. what find . -type d would give you> then in each subdirectory put a make.code.defn containing SRCS = <sources in this directory> (N.B. you cannot currently put a SUBDIRS line here) along with make.code.deps files in all the directories. Make will then go into the relevant subdirectory and make the object files there before updating the library file. The first time it does this you will get errors of the form cannot find <subdir-name>/make.identity you should ignore these errors, as the make system then creates the files. If I find a way to do this without the errors, I'll be happy 8-) The files are used to keep track of the subdirectory filenames. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@66 17b73243-c579-4c4c-a9d2-2d5706c11dac