aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetTest
diff options
context:
space:
mode:
authorschnetter <>2001-07-09 07:00:00 +0000
committerschnetter <>2001-07-09 07:00:00 +0000
commit4f9bcd9dfec80121a7d5d2eb32636aadbd5851bd (patch)
treed0e03dbe5c495cc705b0e961c43fb08f935992f8 /Carpet/CarpetTest
parent7d15598e09630796312a5cdac178eb9658a44dd0 (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.ccl7
-rw-r--r--Carpet/CarpetTest/src/carpettest_check_arguments.F775
-rw-r--r--Carpet/CarpetTest/src/carpettest_check_sizes.c181
-rw-r--r--Carpet/CarpetTest/test/arraysizes.par8
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"