[ET Trac] [Einstein Toolkit] #620: Simplify timelevel handling for Cactus thorn writers

Einstein Toolkit trac-noreply at einsteintoolkit.org
Thu Oct 13 20:16:48 CDT 2011


#620: Simplify timelevel handling for Cactus thorn writers
-------------------------+--------------------------------------------------
 Reporter:  hinder       |       Owner:     
     Type:  enhancement  |      Status:  new
 Priority:  major        |   Milestone:     
Component:  Cactus       |     Version:     
 Keywords:               |  
-------------------------+--------------------------------------------------
 Currently, a thorn writer must declare the maximum number of timelevels
 for a variable in the interface.ccl file, then allocate a specific number
 of timelevels for which storage is allocated in the schedule.ccl file.
 There are rules for how many timelevels a variable should have.  For
 example, to evolve using MoL I think you need at least two, whereas to
 evolve using mesh refinement with time prolongation order 2 you need
 three.

 The problem is that the person writing the thorn shouldn't have to know
 how it is going to be used.  If I write an evolution thorn, I should not
 care whether it is used with mesh refinement or not.  I certainly
 shouldn't have to care what prolongation order is going to be used.

 Would it be possible for Cactus to automatically determine the number of
 timelevels needed for a given variable?  My proposal is that it should not
 be necessary for the user to specify the number of timelevels in the
 interface.ccl or schedule.ccl file for variables declared in that thorn.
 The only time a thorn writer should have to do that is if that thorn
 specifically uses the other timelevels.  For example, a thorn which
 couples to MoL will probably only ever read or write to the current
 timelevel.  MoL, on the other hand, could tell Cactus that it needs a
 certain number of timelevels at runtime for those variables.  Similarly
 for mesh refinement.

 This goes along with the planned changes to the scheduling system to make
 it easier to program Cactus thorns and make it harder to make errors.

-- 
Ticket URL: <https://trac.einsteintoolkit.org/ticket/620>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit


More information about the Trac mailing list