Hello,
I have a question about CactusNumerical/Cartoon2D.
In the source file ApplyCartoon.c, there is a condition for the grid setup:
if(cctk_gsh[1] != 2*cctk_nghostzones[1]+1) { CCTK_WARN(0, "Grid size in y direction inappropriate."); }
As far as I could tell, this is generally violated in multilevel Carpet (CarpetRegrid2) runs, with standard settings that determine the minimum extension of the refined grids, like Carpet::use_buffer_zones = yes mol::ode_method = rk4
That condition for Cartoon2D can be achieved on the coarsest level by setting CoordBase::ymax equal to the spacing dy and CoordBase::ymin equal to -dy. But it cannot be set for refined levels, because CarpetRegrid2 adds as many points as required for the buffer zones. Indeed, Carpet adds enough buffer points for its own purposes that Cartoon2D seems to work fine.
Should the above condition be changed to
if(cctk_gsh[1] >= 2*cctk_nghostzones[1]+1)
?
Yours, Luca
Luca
This check ensures that there is one active grid point in the y direction, and that the number of symmetry (i.e. boundary) points is the same as the number of ghost points.
This needs to hold independent of Carpet. If CarpetRegrid2 chooses a different domain size, then this is wrong, and you will need to correct the parameter file.
I have just added a test file to Cartoon2D. Look in particular at the CoordBase parameters there.
-erik
On Thu, May 28, 2015 at 3:26 AM, Luca Baiotti < baiotti@ipc.phys.sci.osaka-u.ac.jp> wrote:
Hello,
I have a question about CactusNumerical/Cartoon2D.
In the source file ApplyCartoon.c, there is a condition for the grid setup:
if(cctk_gsh[1] != 2*cctk_nghostzones[1]+1) { CCTK_WARN(0, "Grid size in y direction inappropriate."); }
As far as I could tell, this is generally violated in multilevel Carpet (CarpetRegrid2) runs, with standard settings that determine the minimum extension of the refined grids, like Carpet::use_buffer_zones = yes mol::ode_method = rk4
That condition for Cartoon2D can be achieved on the coarsest level by setting CoordBase::ymax equal to the spacing dy and CoordBase::ymin equal to -dy. But it cannot be set for refined levels, because CarpetRegrid2 adds as many points as required for the buffer zones. Indeed, Carpet adds enough buffer points for its own purposes that Cartoon2D seems to work fine.
Should the above condition be changed to
if(cctk_gsh[1] >= 2*cctk_nghostzones[1]+1)
?
Yours, Luca _______________________________________________ Users mailing list Users@einsteintoolkit.org http://lists.einsteintoolkit.org/mailman/listinfo/users
Hi Erik,
thanks for adding the example parameter file.
Luca
On 5/29/15 12:45 AM, Erik Schnetter wrote:
Luca
This check ensures that there is one active grid point in the y direction, and that the number of symmetry (i.e. boundary) points is the same as the number of ghost points.
This needs to hold independent of Carpet. If CarpetRegrid2 chooses a different domain size, then this is wrong, and you will need to correct the parameter file.
I have just added a test file to Cartoon2D. Look in particular at the CoordBase parameters there.
-erik
On Thu, May 28, 2015 at 3:26 AM, Luca Baiotti <baiotti@ipc.phys.sci.osaka-u.ac.jp mailto:baiotti@ipc.phys.sci.osaka-u.ac.jp> wrote:
Hello, I have a question about CactusNumerical/Cartoon2D. In the source file ApplyCartoon.c, there is a condition for the grid setup: if(cctk_gsh[1] != 2*cctk_nghostzones[1]+1) { CCTK_WARN(0, "Grid size in y direction inappropriate."); } As far as I could tell, this is generally violated in multilevel Carpet (CarpetRegrid2) runs, with standard settings that determine the minimum extension of the refined grids, like Carpet::use_buffer_zones = yes mol::ode_method = rk4 That condition for Cartoon2D can be achieved on the coarsest level by setting CoordBase::ymax equal to the spacing dy and CoordBase::ymin equal to -dy. But it cannot be set for refined levels, because CarpetRegrid2 adds as many points as required for the buffer zones. Indeed, Carpet adds enough buffer points for its own purposes that Cartoon2D seems to work fine. Should the above condition be changed to if(cctk_gsh[1] >= 2*cctk_nghostzones[1]+1) ? Yours, Luca _______________________________________________ Users mailing list Users@einsteintoolkit.org <mailto:Users@einsteintoolkit.org> http://lists.einsteintoolkit.org/mailman/listinfo/users-- Erik Schnetter <schnetter@cct.lsu.edu mailto:schnetter@cct.lsu.edu> http://www.perimeterinstitute.ca/personal/eschnetter/
On Thu, May 28, 2015 at 11:45:47AM -0400, Erik Schnetter wrote:
I have just added a test file to Cartoon2D. Look in particular at the CoordBase parameters there.
Hi,
This test seems to fail on 2 processes. Can you please take a look?
https://build.barrywardell.net/job/EinsteinToolkit/508/
Frank
Done.
-erik
On Fri, Jun 5, 2015 at 2:16 PM, Frank Loeffler knarf@cct.lsu.edu wrote:
On Thu, May 28, 2015 at 11:45:47AM -0400, Erik Schnetter wrote:
I have just added a test file to Cartoon2D. Look in particular at the CoordBase parameters there.
Hi,
This test seems to fail on 2 processes. Can you please take a look?
https://build.barrywardell.net/job/EinsteinToolkit/508/
Frank
users@lists.einsteintoolkit.org