[Developers] Infrastructure for initial data setup

Luca Baiotti baiotti at aei.mpg.de
Fri Jul 6 10:48:33 CDT 2007


Hi,

your proposal seems a good idea to me.

Luca.


Erik Schnetter wrote:
> 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



More information about the Developers mailing list