4XINJDIDVO5S6FEOHHJ2NLLONV5QFEENARS5MYR2HAPXZY5N5JHQC
B7Y552HZXBV2PD22T7ZXGFJKUYU23A7XDWV4XZK46SGQKX7U45PQC
NUOLOGCKMF5UOBGBYEOX4O7NQ5AEVVLCH6KRBQRJQXIRDNJ2C2ZQC
DTKQAPJB6JCJZYLQ4MOFA5QHDCCIQ3KG5ED6PVF5PGEH33YSJFBAC
FEMASUBNU32NSG4DNXZX54CGCA57PVRGYO46L3A6F2EJ4BCSJ3SAC
U4IDI3M3RBNIQIY43PFKMPBHVCKG37FI5ARJ4GOKY7KKCD2DILWAC
YIQN7NJTGEVKW7JZHL6CTH6EPCIXCNBYNURIGXPYZAOUX3VAJQMAC
BVR7DVINVPQG7PA6Z7QYVYNQ43YZL7XCC6AOMSMWMGAAB2Q43STAC
TVBD244E7Q7WV44CRBTFST535NUP3JAZH6OLL4IKDR3OWEXSU7HAC
KG47IF4CPCUT3BHS34WDRHTH5HYMBTY4OSTB3X7APR2E5ZJ32IYQC
RTNZAS3UPI6GG3KY4Z5WVXJ4R2YF5427BB6WAV3GHRS5W7XPOSUQC
2DKSL6DKZAIYQUJGDULORCKU5K4Z5Z3W4RIKQYDSLKMCNQNDZFBAC
WASO7G5FJXRXWNH2U2FLUNEKU6VE63OI3HUYP64BVD4LMD6KE7OQC
USPPNUMNL5HU5WEOIWJMIFAX6TBZERVAV67XJUJQ6KSNLG55JAGQC
AEVGZIZEUIC52MCK3J4V547YEV2R4YQL3JUJW7FSP4R34PSZ43DAC
3HNJG5IS4BVIRA47H3KYFWIKVWG5VIDOC776ZJGPZMPSZNOPMVAAC
BPRNUTY7MHK7LK4EY5MY5OFFG3ABOL7LWXD574L35M74YSQPULFAC
const CCTK_REAL x = x0[0] + (lbnd[0] + i + CCTK_REAL(CI - 1) / 2) * dx[0];
const CCTK_REAL y = x0[1] + (lbnd[1] + j + CCTK_REAL(CJ - 1) / 2) * dx[1];
const CCTK_REAL z = x0[2] + (lbnd[2] + k + CCTK_REAL(CK - 1) / 2) * dx[2];
const CCTK_REAL x = x0[0] + (lbnd[0] + i + CCTK_REAL(CI) / 2) * dx[0];
const CCTK_REAL y = x0[1] + (lbnd[1] + j + CCTK_REAL(CJ) / 2) * dx[1];
const CCTK_REAL z = x0[2] + (lbnd[2] + k + CCTK_REAL(CK) / 2) * dx[2];
const CCTK_REAL *restrict x0 = geom.ProbLo();
const CCTK_REAL *restrict dx = geom.CellSize();
const CCTK_REAL *restrict const x0 = geom.ProbLo();
const CCTK_REAL *restrict const dx = geom.CellSize();
// The refinement factor over the top level (coarsest) grid
for (int d = 0; d < dim; ++d)
cctkGH->cctk_levfac[d] = 1 << leveldata.level;
// Offset between this level's and the coarsest level's origin as multiple
// of the grid spacing
const amrex::Geometry &geom = ghext->amrcore->Geom(0);
const CCTK_REAL *restrict const global_x0 = geom.ProbLo();
const CCTK_REAL *restrict const global_dx = geom.CellSize();
cctkGH->cctk_levoff[d] = 1 - 2 * cctkGH->cctk_nghostzones[d];
cctkGH->cctk_levoffdenom[d] = 2;
// The refinement factor over the top level (coarsest) grid
const int levfac = 1 << leveldata.level;
cctkGH->cctk_levfac[d] = levfac;
// Offset between this level's and the coarsest level's origin as multiple
// of the grid spacing
const int levoff = 1 - 2 * cctkGH->cctk_nghostzones[d];
const int levoffdenom = 2;
cctkGH->cctk_levoff[d] = levoff;
cctkGH->cctk_levoffdenom[d] = levoffdenom;
// Coordinates
const CCTK_REAL origin_space =
global_x0[d] +
(1 - cctkGH->cctk_nghostzones[d] + CCTK_REAL(1) / 2) * global_dx[d];
const CCTK_REAL delta_space = global_dx[d];
cctkGH->cctk_delta_space[d] = delta_space / levfac;
cctkGH->cctk_origin_space[d] =
origin_space + cctkGH->cctk_delta_space[d] * levoff / levoffdenom;