[Users] Toward an Extensible Volume Integration Thorn

Erik Schnetter schnetter at cct.lsu.edu
Tue May 19 14:18:15 CDT 2015


Zach

Instead of describing a complex schedule in a schedule.ccl file, you can
write a C++ code that calls the respective schedule items. In this C++
code, you can freely switch between global/local mode, iterate over
refinement levels and components, iterate over variables, etc. This may be
easier and more efficient.

-erik


On Tue, May 19, 2015 at 12:16 PM, Zach Etienne <zachetie at gmail.com> wrote:

> Hi all,
>
> Back when I was at Illinois, I wrote a decent volume integration thorn,
> which was nicely extensible, but required a very messy schedule.ccl to
> perform all the ~40 integrations we used, with basically no options in
> [].par files to modify or reduce the list of volume integrals (because it
> would have made the schedule.ccl file *even* messier).
>
> I am now trying to write a new version, which I would like to contribute,
> open-sourced, to the ET. In this version, the schedule.ccl file is very
> simple, and by simply specifying desired volume integrals in the [].par
> file, the scheduling of these volume integrals is *supposed* to be done
> automatically. Easier said than done.
>
> Here's the output from the scheduling when the code is run:
>
>         while (VolumeIntegrals::IntegralCounter)
>           GROUP VolumeIntegralGroup: Evaluate all volume integrals
>             GROUP VolumeIntegrandGroup: Evaluate all volume integrands
>               VolumeIntegrals::ComputeIntegrand: [local] Compute Integrand
>             GROUP VolumeIntegralSumGroup: Evaluate all volume integral sums
>               VolumeIntegrals::DoSum: [global] Do Sum
>             VolumeIntegrals::DecrementIntegralCounter: Decrement
> IntegralCounter variable
>         end while
>
> Contrary to what is indicated above, the code in the loop actually
> evaluates only the function in the [local] context, ignoring my [global]
> requests, and giving a segfault (see full output from this loop below my
> sig). Is there any way I can make this work, or am I doomed to repeat the
> messy schedule.ccl of the past?
>
> -Zach
>
> *     *     *
> Zachariah Etienne
> Assistant Professor of Mathematics
> West Virginia University
>
> INFO (Carpet): [ml=0][rl=3][m=0][c=0,lc=0][tl=0] Local mode call at
> CCTK_ANALYSIS to VolumeIntegrals::InitializeIntegralCounter
> INFO (Carpet): [ml=0][rl=3][m=0][c=0,lc=0][tl=0] Leaving local mode
> INFO (Carpet): [ml=0][rl=3][m=0][tl=0] Leaving singlemap mode
> INFO (Carpet): [ml=0][rl=3][tl=0] Entering singlemap mode
> INFO (Carpet): [ml=0][rl=3][m=0][tl=0] Entering local mode
> INFO (Carpet): [ml=0][rl=3][m=0][c=0,lc=0][tl=0] Local mode call at
> VolumeIntegrandGroup to VolumeIntegrals::ComputeIntegrand
> INFO (Carpet): [ml=0][rl=3][m=0][c=0,lc=0][tl=0] Leaving local mode
> INFO (Carpet): [ml=0][rl=3][m=0][tl=0] Leaving singlemap mode
> INFO (Carpet): [ml=0][rl=3][tl=0] Leaving level mode
> INFO (Carpet): [ml=0][tl=0] Global mode call at VolumeIntegralSumGroup to
> VolumeIntegrals::DoSum
> INFO (Carpet): [ml=0][tl=0] Entering level mode
> INFO (Carpet): [ml=0][rl=0][tl=0] Entering singlemap mode
> INFO (Carpet): [ml=0][rl=0][m=0][tl=0] Entering local mode
> INFO (Carpet): [ml=0][rl=0][m=0][c=0,lc=0][tl=0] Leaving local mode
> INFO (Carpet): [ml=0][rl=0][m=0][tl=0] Leaving singlemap mode
> INFO (Carpet): [ml=0][rl=0][tl=0] Leaving level mode
> INFO (Carpet): [ml=0][tl=0] Entering level mode
> INFO (Carpet): [ml=0][rl=1][tl=0] Entering singlemap mode
> INFO (Carpet): [ml=0][rl=1][m=0][tl=0] Entering local mode
> INFO (Carpet): [ml=0][rl=1][m=0][c=0,lc=0][tl=0] Leaving local mode
> INFO (Carpet): [ml=0][rl=1][m=0][tl=0] Leaving singlemap mode
> INFO (Carpet): [ml=0][rl=1][tl=0] Leaving level mode
> INFO (Carpet): [ml=0][tl=0] Entering level mode
> INFO (Carpet): [ml=0][rl=2][tl=0] Entering singlemap mode
> INFO (Carpet): [ml=0][rl=2][m=0][tl=0] Entering local mode
> INFO (Carpet): [ml=0][rl=2][m=0][c=0,lc=0][tl=0] Leaving local mode
> INFO (Carpet): [ml=0][rl=2][m=0][tl=0] Leaving singlemap mode
> INFO (Carpet): [ml=0][rl=2][tl=0] Leaving level mode
> INFO (Carpet): [ml=0][tl=0] Entering level mode
> INFO (Carpet): [ml=0][rl=3][tl=0] Entering singlemap mode
> INFO (Carpet): [ml=0][rl=3][m=0][tl=0] Entering local mode
> INFO (Carpet): [ml=0][rl=3][m=0][c=0,lc=0][tl=0] Leaving local mode
> INFO (Carpet): [ml=0][rl=3][m=0][tl=0] Leaving singlemap mode
> INFO (Carpet): [ml=0][rl=3][tl=0] Leaving level mode
> APPLICATION TERMINATED WITH THE EXIT STRING: Segmentation fault (signal 11)
>
>
>
> _______________________________________________
> Users mailing list
> Users at einsteintoolkit.org
> http://lists.einsteintoolkit.org/mailman/listinfo/users
>
>


-- 
Erik Schnetter <schnetter at cct.lsu.edu>
http://www.perimeterinstitute.ca/personal/eschnetter/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.einsteintoolkit.org/pipermail/users/attachments/20150519/aab0d717/attachment.html 


More information about the Users mailing list