aboutsummaryrefslogtreecommitdiff
path: root/src/CartGrid3D.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/CartGrid3D.c')
-rw-r--r--src/CartGrid3D.c40
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]));
+ }
+ }
+ }
+
+}