[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