From 4c1fd0811071d8e9178a9ba1850fd6eda640fa4e Mon Sep 17 00:00:00 2001 From: schnetter Date: Thu, 17 Jun 2004 11:42:30 +0000 Subject: Recalculate the coordinate grid functions in the postregrid bin. git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/CartGrid3D/trunk@206 c78560ca-4b45-4335-b268-5f3340f3cb52 --- src/CartGrid3D.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'src') 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])); + } + } + } + +} -- cgit v1.2.3