[ET Trac] #2601: Add four more parameters for carpet

Roland Haas trac-noreply at einsteintoolkit.org
Sat Jun 18 20:27:42 CDT 2022


#2601: Add four more parameters for carpet

 Reporter: Liwei Ji
   Status: new
Milestone: 
  Version: development version
     Type: enhancement
 Priority: major
Component: Carpet

Comment (by Roland Haas):

So I have trouble coming up with a test parfile that passes. This one:

```
ActiveThorns = "
        Boundary
        Carpet
        CarpetIOASCII
        CarpetLib
        CarpetRegrid2
        CartGrid3D
        CoordBase
        IOUtil
        InitBase
        MoL
        SymBase
"

$ghost_size = 1
$boundary_size = 1
$num_levels = 1

IOASCII::out1D_vars = "
        grid::x
"

IO::out_dir       = $parfile
IO::out_fileinfo  = "none"
IO::parfile_write = no

IOASCII::out1D_every = 1
IOASCII::out1D_d     = no
IOASCII::out1D_y     = no
IOASCII::out1D_z     = no

Carpet::max_refinement_levels    = 2
Carpet::use_buffer_zones         = yes
Carpet::prolongation_order_space =  1
Carpet::prolongation_order_time  =  1

Carpet::init_fill_timelevels = yes

CartGrid3D::type         = "CoordBase"
CartGrid3D::domain       = "full"
CartGrid3D::avoid_origin = no

CoordBase::xmin = -1.
CoordBase::xmax = +1 - 0.125

CoordBase::ymin = -0.125
CoordBase::ymax = +0.125
CoordBase::zmin = -0.125
CoordBase::zmax = +0.125
CoordBase::dx   =  0.125
CoordBase::dy   =  0.125
CoordBase::dz   =  0.125

driver::ghost_size  = $ghost_size
Cactus::cctk_itlast = 0

Carpet::domain_from_CoordBase = yes
Carpet::split_interior_points_x = yes
Carpet::processor_topology = "manual"
Carpet::processor_topology_3d_x = 4
Carpet::processor_topology_3d_y = 1
Carpet::processor_topology_3d_z = 1

CoordBase::boundary_size_x_lower = $boundary_size
CoordBase::boundary_size_y_lower = $boundary_size
CoordBase::boundary_size_z_lower = $boundary_size
CoordBase::boundary_size_x_upper = $boundary_size
CoordBase::boundary_size_y_upper = $boundary_size
CoordBase::boundary_size_z_upper = $boundary_size

CarpetRegrid2::regrid_every   = 0
CarpetRegrid2::verbose        = yes

CarpetRegrid2::num_centres  = 1
CarpetRegrid2::num_levels_1 = $num_levels
CarpetRegrid2::position_x_1 = 0.0
CarpetRegrid2::radius_1[1]  = 0.2
```

fails with `assert` failures on cub \(essentially\). Namely \(adding some debug code\):  

```
ipos [0,0,0] nprocs_dir [4,1,1] cub [9,6,6] rub0 [32,6,6]
ipos [1,0,0] nprocs_dir [4,1,1] cub [17,6,6] rub0 [32,6,6]
ipos [2,0,0] nprocs_dir [4,1,1] cub [23,6,6] rub0 [32,6,6]
ipos [3,0,0] nprocs_dir [4,1,1] cub [30,6,6] rub0 [32,6,6]
cactus_sim: /home/rhaas/postdoc/gr/cactus/ET_trunk/arrangements/Carpet/Carpet/src/Recompose.cc:1246: void Carpet::SplitRegions_AsSpecified(const cGH*, std::vector<CarpetLib::region_t>&, std::vector<CarpetLib::region_t>&): Assertion `all(not(ipos == nprocs_dir - 1) or cub == rub0)' failed.
```

when run on the minimum number of MPI ranks \(4\) that is supports.

Could you provide a working parfile as a testcase?

--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2601/add-four-more-parameters-for-carpet
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.einsteintoolkit.org/pipermail/trac/attachments/20220619/4979c316/attachment.html 


More information about the Trac mailing list