diff options
author | schnetter <> | 2001-07-09 07:00:00 +0000 |
---|---|---|
committer | schnetter <> | 2001-07-09 07:00:00 +0000 |
commit | 4f9bcd9dfec80121a7d5d2eb32636aadbd5851bd (patch) | |
tree | d0e03dbe5c495cc705b0e961c43fb08f935992f8 /Carpet/CarpetTest | |
parent | 7d15598e09630796312a5cdac178eb9658a44dd0 (diff) |
Changed handling of scalars. Scalars are now zero-dimensional arrays.
Changed handling of scalars. Scalars are now zero-dimensional arrays.
Now handling CCTK_GroupDynamicData correctly.
Now using "include header".
Added results of test case.
darcs-hash:20010709070002-07bb3-ba0f4339acb8652e35a884fbdf7e8482b7236f8e.gz
Diffstat (limited to 'Carpet/CarpetTest')
-rw-r--r-- | Carpet/CarpetTest/interface.ccl | 7 | ||||
-rw-r--r-- | Carpet/CarpetTest/src/carpettest_check_arguments.F77 | 5 | ||||
-rw-r--r-- | Carpet/CarpetTest/src/carpettest_check_sizes.c | 181 | ||||
-rw-r--r-- | Carpet/CarpetTest/test/arraysizes.par | 8 |
4 files changed, 91 insertions, 110 deletions
diff --git a/Carpet/CarpetTest/interface.ccl b/Carpet/CarpetTest/interface.ccl index eb5323639..55cd937c5 100644 --- a/Carpet/CarpetTest/interface.ccl +++ b/Carpet/CarpetTest/interface.ccl @@ -1,5 +1,5 @@ # Interface definition for thorn CarpetTest -# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/interface.ccl,v 1.1 2001/07/04 12:29:53 schnetter Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/interface.ccl,v 1.2 2001/07/09 09:00:26 schnetter Exp $ implements: CarpetTest @@ -22,3 +22,8 @@ CCTK_REAL arrg1 type=ARRAY dim=1 size=i8 { arr1 } "1D array" + +CCTK_REAL scg type=SCALAR +{ + sc +} "scalar" diff --git a/Carpet/CarpetTest/src/carpettest_check_arguments.F77 b/Carpet/CarpetTest/src/carpettest_check_arguments.F77 index d24f2a391..9a3a08351 100644 --- a/Carpet/CarpetTest/src/carpettest_check_arguments.F77 +++ b/Carpet/CarpetTest/src/carpettest_check_arguments.F77 @@ -1,4 +1,5 @@ -c $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_arguments.F77,v 1.2 2001/07/04 13:55:25 schnetter Exp $ +c -*-Fortran-*- +c $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_arguments.F77,v 1.3 2001/07/09 09:00:27 schnetter Exp $ #include "cctk.h" #include "cctk_Arguments.h" @@ -13,6 +14,7 @@ c $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_c print *, "arrg3 ", arrg30, arrg31, arrg32 print *, "arrg2 ", arrg20, arrg21 print *, "arrg1 ", arrg10 + print *, "scg" print * do k=1,gfg2 do j=1,gfg1 @@ -36,4 +38,5 @@ c $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_c do i=1,arrg10 arr1(i) = i end do + sc = 42 end diff --git a/Carpet/CarpetTest/src/carpettest_check_sizes.c b/Carpet/CarpetTest/src/carpettest_check_sizes.c index 79ca08929..c4e17baf7 100644 --- a/Carpet/CarpetTest/src/carpettest_check_sizes.c +++ b/Carpet/CarpetTest/src/carpettest_check_sizes.c @@ -1,4 +1,4 @@ -/* $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_sizes.c,v 1.1 2001/07/04 12:29:54 schnetter Exp $ */ +/* $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_sizes.c,v 1.2 2001/07/09 09:00:27 schnetter Exp $ */ #include <assert.h> #include <stdio.h> @@ -10,125 +10,98 @@ void carpettest_check_sizes (CCTK_ARGUMENTS); +static void print_scalar (const char *name, int sc); +static void print_scalar_descr (const char *name, int sc, const char *descr); +static void print_array (const char *name, int dim, const int *arr); + +static const char *grouptype_string (int grouptype); +static const char *disttype_string (int disttype); + void carpettest_check_sizes (CCTK_ARGUMENTS) { DECLARE_CCTK_ARGUMENTS DECLARE_CCTK_PARAMETERS - char msg[1000]; int group; - int var; int dim; - CCTK_INT **sizes, **ghostsizes; - int d; - int gsh[3], lsh[3], lbnd[3], ubnd[3]; - const int *cip; - int size[3]; + cGroup data; + cGroupDynamicData dyndata; - sprintf (msg, "gsh: %d %d %d\n", cctk_gsh[0], cctk_gsh[1], cctk_gsh[2]); - printf (msg); - sprintf (msg, "lsh: %d %d %d\n", cctk_lsh[0], cctk_lsh[1], cctk_lsh[2]); - printf (msg); - sprintf (msg, "lbnd: %d %d %d\n", cctk_lbnd[0], cctk_lbnd[1], cctk_lbnd[2]); - printf (msg); - sprintf (msg, "ubnd: %d %d %d\n", cctk_ubnd[0], cctk_ubnd[1], cctk_ubnd[2]); - printf (msg); + dim = cctk_dim; + print_scalar ("cctk_dim", cctk_dim); + print_array ("cctk_gsh", dim, cctk_gsh); + print_array ("cctk_lsh", dim, cctk_lsh); + print_array ("cctk_lbnd", dim, cctk_lbnd); + print_array ("cctk_ubnd", dim, cctk_ubnd); + print_array ("cctk_bbox", 2*dim, cctk_bbox); + print_array ("cctk_nghostzones", dim, cctk_nghostzones); printf ("\n"); -#if 0 for (group=0; group<CCTK_NumGroups(); ++group) { - var = CCTK_FirstVarIndexI(group); - sprintf (msg, "group: %d %s\n", group, CCTK_GroupNameFromVarI(var)); - printf (msg); - - dim = CCTK_GroupDimI(group); - sprintf (msg, "dim: %d\n", CCTK_GroupDimI(group)); - printf (msg); - - sizes = CCTK_GroupSizesI(group); - sprintf (msg, "sizes:"); - if (sizes) { - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, (*sizes)[d]); - } - } else { - sprintf (msg, "%s (no sizes)", msg); - } - sprintf (msg, "%s\n", msg); - printf (msg); + CCTK_GroupData (group, &data); + CCTK_GroupDynamicData (cctkGH, group, &dyndata); - ghostsizes = CCTK_GroupGhostsizesI(group); - sprintf (msg, "ghostsizes:"); - if (ghostsizes) { - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, (*ghostsizes)[d]); - } - } else { - sprintf (msg, "%s (no ghostsizes)", msg); - } - sprintf (msg, "%s\n", msg); - printf (msg); - - CCTK_GroupgshGI (cctkGH, dim, gsh, group); - sprintf (msg, "gsh:"); - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, gsh[d]); - } - sprintf (msg, "%s\n", msg); - printf (msg); - - CCTK_GrouplshGI (cctkGH, dim, lsh, group); - sprintf (msg, "lsh:"); - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, lsh[d]); - } - sprintf (msg, "%s\n", msg); - printf (msg); - - CCTK_GrouplbndGI (cctkGH, dim, lbnd, group); - sprintf (msg, "lbnd:"); - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, lbnd[d]); - } - sprintf (msg, "%s\n", msg); - printf (msg); - - CCTK_GroupubndGI (cctkGH, dim, ubnd, group); - sprintf (msg, "ubnd:"); - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, ubnd[d]); - } - sprintf (msg, "%s\n", msg); - printf (msg); + print_scalar_descr ("group", group, CCTK_GroupName(group)); + dim = data.dim; + print_scalar ("dim", data.dim); + print_scalar_descr ("grouptype", data.grouptype, grouptype_string(data.grouptype)); + print_scalar_descr ("vartype", data.vartype, CCTK_VarTypeName(data.vartype)); + print_scalar_descr ("disttype", data.disttype, disttype_string(data.disttype)); + print_scalar ("stagtype", data.stagtype); + print_scalar ("numvars", data.numvars); + print_scalar ("numtimelevels", data.numtimelevels); + print_array ("gsh", dim, dyndata.gsh); + print_array ("lsh", dim, dyndata.lsh); + print_array ("lbnd", dim, dyndata.lbnd); + print_array ("ubnd", dim, dyndata.ubnd); + print_array ("bbox", 2*dim, dyndata.bbox); + print_array ("nghostzones", dim, dyndata.nghostzones); printf ("\n"); } -#endif - for (group=0; group<CCTK_NumGroups(); ++group) { - var = CCTK_FirstVarIndexI(group); - sprintf (msg, "group: %d %s\n", group, CCTK_GroupNameFromVarI(var)); - printf (msg); - - dim = CCTK_GroupDimI(group); - sprintf (msg, "dim: %d\n", CCTK_GroupDimI(group)); - printf (msg); - - for (d=0; d<dim; ++d) { - cip = CCTK_ArrayGroupSizeI(cctkGH, d, group); - assert (cip); - size[d] = *cip; - } - - sprintf (msg, "size:"); - for (d=0; d<dim; ++d) { - sprintf (msg, "%s %d", msg, size[d]); - } - sprintf (msg, "%s\n", msg); - printf (msg); - - printf ("\n"); +} + + + +static void print_scalar (const char *name, int sc) +{ + printf ("%-15s: %3d\n", name, sc); +} + +static void print_scalar_descr (const char *name, int sc, const char *descr) +{ + printf ("%-15s: %3d %s\n", name, sc, descr); +} + +static void print_array (const char *name, int dim, const int *arr) +{ + int d; + printf ("%-15s:", name); + for (d=0; d<dim; ++d) { + printf (" %3d", arr[d]); } - + printf ("\n"); +} + + + +static const char *grouptype_string (int grouptype) +{ + switch (grouptype) { + case CCTK_SCALAR: return "CCTK_SCALAR"; + case CCTK_GF: return "CCTK_GF"; + case CCTK_ARRAY: return "CCTK_ARRAY"; + } + return "[illegal group type]"; +} + +static const char *disttype_string (int disttype) +{ + switch (disttype) { + case CCTK_DISTRIB_CONSTANT: return "CCTK_DISTRIB_CONSTANT"; + case CCTK_DISTRIB_DEFAULT: return "CCTK_DISTRIB_DEFAULT"; + } + return "[illegal distribution type]"; } diff --git a/Carpet/CarpetTest/test/arraysizes.par b/Carpet/CarpetTest/test/arraysizes.par index 416bc883c..769cbb5c9 100644 --- a/Carpet/CarpetTest/test/arraysizes.par +++ b/Carpet/CarpetTest/test/arraysizes.par @@ -1,4 +1,4 @@ -# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/test/arraysizes.par,v 1.2 2001/07/04 13:55:25 schnetter Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/test/arraysizes.par,v 1.3 2001/07/09 09:00:29 schnetter Exp $ !DESC "Check array sizes" @@ -23,6 +23,6 @@ IOASCII::out2D_xyplane_zi = 0 IOASCII::out2D_xzplane_yi = 0 IOASCII::out2D_yzplane_xi = 0 -IOASCII::out1D_vars = "CarpetTest::gfg CarpetTest::arrg3 CarpetTest::arrg2 CarpetTest::arrg1" -IOASCII::out2D_vars = "CarpetTest::gfg CarpetTest::arrg3 CarpetTest::arrg2 CarpetTest::arrg1" -IOASCII::out3D_vars = "CarpetTest::gfg CarpetTest::arrg3 CarpetTest::arrg2 CarpetTest::arrg1" +IOASCII::out1D_vars = "CarpetTest::gfg CarpetTest::arrg3 CarpetTest::arrg2 CarpetTest::arrg1 CarpetTest::scg" +IOASCII::out2D_vars = "CarpetTest::gfg CarpetTest::arrg3 CarpetTest::arrg2 CarpetTest::arrg1 CarpetTest::scg" +IOASCII::out3D_vars = "CarpetTest::gfg CarpetTest::arrg3 CarpetTest::arrg2 CarpetTest::arrg1 CarpetTest::scg" |