ADMBase: checksum mismatch when calling ADMBase_add_noise

Issue #9 new
Cheng-Hsin Cheng created an issue

I am trying to set up Cartesian Minkowski initial data with random noise in ADMBase, but when testing it out with ADMBase_add_noise I get a checkum mismatch error:

-> CallFunction iteration 0 ADMBase_PostInitial: ADMBase::ADMBase_add_noise checking output: Checksum mismatch: variable ADMBASE::gxy, tile tiletag_t{patch:0,level:0,tilebox:((24,24,24) (39,39,39) (0,0,0)),gi:0,vi:1,tl:0}, int:0,outer:1,ghosts:1, old checksum checksum_t{where:[int:INV,outer:VAL,ghosts:VAL],crc:0xf02900e8}, new checksum checksum_t{where:[int:INV,outer:VAL,ghosts:VAL],crc:0x6218b2ee}

From schedule.ccl the grid functions are read and written only in the interior without syncing, whereas in the routine in src/noise.cxx the grid functions are looped over all of the points, which is inconsistent. For now I can get around this by making the READS and WRITES everywhere, but the initial data would be inconsistent between coarse/fine grids without syncing, and I’m not sure if a simple SYNC will be sufficient here.

Comments (1)

  1. Log in to comment