diff options
Diffstat (limited to 'src/CartGrid3D.c')
-rw-r--r-- | src/CartGrid3D.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/CartGrid3D.c b/src/CartGrid3D.c index bcd2223..a9a5398 100644 --- a/src/CartGrid3D.c +++ b/src/CartGrid3D.c @@ -450,3 +450,43 @@ void CartGrid3D(CCTK_ARGUMENTS) "GAINDEX"); ierr += Util_TableSetReal (coord_handle, cctk_delta_space[0], "DELTA"); } + + + /*@@ + @routine CartGrid3D_SetCoordinates + @date 2004-06-17 + @author Christian Ott + @desc + Sets up Cartesian coordinates. + @enddesc + @var CCTK_ARGUMENTS + @vdesc Cactus argument list + @vtype + @vio in/out + @endvar +@@*/ +void CartGrid3D_SetCoordinates(CCTK_ARGUMENTS) +{ + int i, j, k, idx; + + DECLARE_CCTK_ARGUMENTS; + DECLARE_CCTK_PARAMETERS; + + CCTK_VInfo(CCTK_THORNSTRING,"Resetting coordinates after regridding."); + + for(k=0; k < cctk_lsh[2]; k++) + { + for(j=0; j < cctk_lsh[1]; j++) + { + for(i=0; i < cctk_lsh[0]; i++) + { + idx = CCTK_GFINDEX3D (cctkGH, i, j, k); + x[idx] = CCTK_DELTA_SPACE(0)*(i+cctk_lbnd[0]) + CCTK_ORIGIN_SPACE(0); + y[idx] = CCTK_DELTA_SPACE(1)*(j+cctk_lbnd[1]) + CCTK_ORIGIN_SPACE(1); + z[idx] = CCTK_DELTA_SPACE(2)*(k+cctk_lbnd[2]) + CCTK_ORIGIN_SPACE(2); + r[idx] = sqrt(SQR(x[idx]) + SQR(y[idx]) + SQR(z[idx])); + } + } + } + +} |