[Developers] Infrastructure for initial data setup

Erik Schnetter schnetter at cct.lsu.edu
Fri Jul 6 07:57:24 CDT 2007


There is currently no infrastructure in Cactus which helps decide how  
to set up initial data.  With mesh refinement, there are several  
incompatible ways in which initial data thorns can set up initial  
data.  Depending on this, evolution thorns may have to adapt, or mesh  
refinement drivers may schedule evolution differently.

This lack of infrastructure leads to problems, since initial data  
thorns, evolution methods, and the Carpet mesh refinement driver are  
not well coordinated.  The user who writes parameter files has to  
know the behaviour of each of these, and then choose parameters so  
that these pieces work together correctly.  There is no entity in  
Cactus which knows how initial data should be set up, and which could  
provide error checking.  This leads to inconsistencies which are  
difficult to detect.

I suggest to create a new thorn CactusBase/InitBase.  It would  
contain the following README:

----------------------------------------
Specify how initial data are to be set up.  There are three
possibilities:

1. The initial data thorn sets up data on one time level, while other
    time levels are scratch space.  The time evolution method must
    start up from a single time level.  (This is the default.)

2. The initial data thorn sets up data on exactly one time level, and
    is called once for each active time level.  (This means that the
    initial data thorn can only access the current time level.)

3. The initial data thorn sets up data on all active time levels.
    (This makes it necessary that the initial data thorn checks the
    number of active time levels.)
----------------------------------------

Apart from this README, thorn InitBase would contain one restricted  
parameter "initial_data_setup_method" which allows users to choose  
the desired behaviour in the parameter file.  All initial data  
thorns, evolution methods, and drivers then have to check the value  
of this parameter, and either adapt their behaviour or signal an error.

-erik

-- 
Erik Schnetter <schnetter at cct.lsu.edu>

My email is as private as my paper mail.  I therefore support encrypting
and signing email messages.  Get my PGP key from www.keyserver.net.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: InitBase.tar.gz
Type: application/x-gzip
Size: 2996 bytes
Desc: not available
Url : http://www.cactuscode.org/pipermail/developers/attachments/20070706/090713e5/attachment-0001.gz 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : http://www.cactuscode.org/pipermail/developers/attachments/20070706/090713e5/attachment-0001.bin 


More information about the Developers mailing list