From 1851e24ae0affcdfa3b682319b05c92c0829f597 Mon Sep 17 00:00:00 2001 From: yye00 Date: Mon, 26 May 2008 00:47:47 +0000 Subject: fixing wrong commit git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/CartGrid3D/trunk@243 c78560ca-4b45-4335-b268-5f3340f3cb52 --- interface.ccl | 49 ++++++++++++++--- param.ccl | 165 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 206 insertions(+), 8 deletions(-) diff --git a/interface.ccl b/interface.ccl index 655fa55..f494d3a 100644 --- a/interface.ccl +++ b/interface.ccl @@ -1,10 +1,10 @@ -# Interface definition for thorn CartGrid2D +# Interface definition for thorn CartGrid3D # $Header$ implements: grid inherits: coordbase -#INCLUDE HEADER: Symmetry.h in Symmetry.h +INCLUDE HEADER: Symmetry.h in Symmetry.h uses include header: CoordBase.h # The overall size of the domain @@ -30,6 +30,41 @@ CCTK_INT FUNCTION ConvertFromPhysicalBoundary \ CCTK_REAL IN ARRAY spacing) USES FUNCTION ConvertFromPhysicalBoundary + + +CCTK_INT FUNCTION \ + MultiPatch_GetMap \ + (CCTK_POINTER_TO_CONST IN cctkGH) +USES FUNCTION MultiPatch_GetMap + +CCTK_INT FUNCTION \ + MultiPatch_GetDomainSpecification \ + (CCTK_INT IN map, \ + CCTK_INT IN size, \ + CCTK_REAL OUT ARRAY physical_min, \ + CCTK_REAL OUT ARRAY physical_max, \ + CCTK_REAL OUT ARRAY interior_min, \ + CCTK_REAL OUT ARRAY interior_max, \ + CCTK_REAL OUT ARRAY exterior_min, \ + CCTK_REAL OUT ARRAY exterior_max, \ + CCTK_REAL OUT ARRAY spacing) +USES FUNCTION MultiPatch_GetDomainSpecification + +CCTK_INT FUNCTION \ + MultiPatch_ConvertFromPhysicalBoundary \ + (CCTK_INT IN map, \ + CCTK_INT IN size, \ + CCTK_REAL IN ARRAY physical_min, \ + CCTK_REAL IN ARRAY physical_max, \ + CCTK_REAL OUT ARRAY interior_min, \ + CCTK_REAL OUT ARRAY interior_max, \ + CCTK_REAL OUT ARRAY exterior_min, \ + CCTK_REAL OUT ARRAY exterior_max, \ + CCTK_REAL IN ARRAY spacing) +USES FUNCTION MultiPatch_ConvertFromPhysicalBoundary + + + # Register the symmetry boundaries CCTK_INT FUNCTION SymmetryRegister (CCTK_STRING IN sym_name) USES FUNCTION SymmetryRegister @@ -61,10 +96,12 @@ public: REAL gridspacings type=SCALAR tags='Checkpoint="no"' { - coarse_dx, coarse_dy -} "2D Cartesian grid spacings" + coarse_dx, coarse_dy, coarse_dz +} "3D Cartesian grid spacings" REAL coordinates type=GF tags='Prolongation="None" Checkpoint="no"' { - x, y, r -} "2D Cartesian grid coordinates" + x, y, z, r +# will become: +# coord_x, coord_y, coord_z +} "3D Cartesian grid coordinates" diff --git a/param.ccl b/param.ccl index 7ab90f5..ef99355 100644 --- a/param.ccl +++ b/param.ccl @@ -6,19 +6,92 @@ shares: driver USES BOOLEAN periodic USES BOOLEAN periodic_x USES BOOLEAN periodic_y +USES BOOLEAN periodic_z + private: +BOOLEAN no_origin "DEPRECATED: Don't place grid points on the coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN no_originx "DEPRECATED: Don't place grid points on the x-coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN no_originy "DEPRECATED: Don't place grid points on the y-coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN no_originz "DEPRECATED: Don't place grid points on the z-coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN avoid_originx "Don't place grid points on the x-coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN avoid_originy "Don't place grid points on the y-coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN avoid_originz "Don't place grid points on the z-coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN avoid_origin "Don't place grid points on the coordinate origin/axes" +{ + : :: "" +} "yes" + +BOOLEAN register_default_coordinate_systems "register cartnd as the default coordinate systems" +{ +} "yes" + restricted: +REAL dx "Coarse grid spacing in x-direction" +{ + 0:* :: "Positive" +} 0.3 +REAL dy "Coarse grid spacing in y-direction" +{ + 0:* :: "Positive" +} 0.3 +REAL dz "Coarse grid spacing in z-direction" +{ + 0:* :: "Positive" +} 0.3 +REAL dxyz "Coarse grid spacing in x,y,z-directions" +{ + 0:* :: "Positive" +} 0.0 + + REAL xmin "Coordinate minimum in x-direction" { : :: "Anything" -} 0.0 +} -1.0 REAL ymin "Coordinate minimum in y-direction" { : :: "Anything" -} 0.0 +} -1.0 +REAL zmin "Coordinate minimum in z-direction" +{ + : :: "Anything" +} -1.0 +REAL xyzmin "Coordinate minimum in x,y,z-directions" +{ + : :: "Anything" +} -424242 + REAL xmax "Coordinate maximum in x-direction" { @@ -28,4 +101,92 @@ REAL ymax "Coordinate maximum in y-direction" { : :: "Anything" } 1.0 +REAL zmax "Coordinate maximum in z-direction" +{ + : :: "Anything" +} 1.0 +REAL xyzmax "Coordinate maximum in xyz-directions" +{ + : :: "Anything" +} -424242 + + +KEYWORD type "Grid type" +{ + "box" :: "Box grid from -0.5 to 0.5" + "byrange" :: "Specify min and max values" + "byspacing" :: "Specify grid spacings" + "coordbase" :: "Get specification from CoordBase" + "multipatch" :: "Get specification from MultiPatch" +} "box" + +KEYWORD domain "Domain type" +{ + "octant" :: "Use an octant about the origin" + "quadrant" :: "Use a quadrant in x-y plane" + "quadrant_reflect_rotate" :: "Use a quadrant with rotation symmetry about an axis" + "bitant" :: "Use a bitant about the x-y plane" + "bitant_rotate" :: "Use a bitant with rotation symmetry about an axis" + "full" :: "Use the full domain" +} "full" + +KEYWORD bitant_plane "Plane defining bitant domain" +{ + "xy" :: "xy-plane" + "xz" :: "xz-plane" + "yz" :: "yz-plane" +} "xy" + +KEYWORD quadrant_direction "Direction defining quadrant domain" +{ + "x" :: "x-direction" + "y" :: "y-direction" + "z" :: "z-direction" +} "z" + +KEYWORD rotation_axis "Axis about which the rotation symmetry is to be applied" +{ + "x" :: "x-axis" + "y" :: "y-axis" + "z" :: "z-axis" +} "z" + +BOOLEAN symmetry_xmin "Symmetry boundary condition on lower x boundary" +{ + : :: "Logical" +} "no" + +BOOLEAN symmetry_ymin "Symmetry boundary condition on lower y boundary" +{ + : :: "Logical" +} "no" + +BOOLEAN symmetry_zmin "Symmetry boundary condition on lower z boundary" +{ + : :: "Logical" +} "no" + +BOOLEAN symmetry_xmax "Symmetry boundary condition on upper x boundary" +{ + : :: "Logical" +} "no" + +BOOLEAN symmetry_ymax "Symmetry boundary condition on upper y boundary" +{ + : :: "Logical" +} "no" + +BOOLEAN symmetry_zmax "Symmetry boundary condition on upper z boundary" +{ + : :: "Logical" +} "no" + +private: + +KEYWORD set_coordinate_ranges_on "On which grids to set the coordinate ranges" +{ + "all grids" :: "set ranges in local mode, on the coarsest level" + "all maps" :: "set ranges in singlemap mode, on the coarsest level" + "first level" :: "set ranges in level mode, on the first level" +} "all grids" -- cgit v1.2.3