diff options
author | schnetter <> | 2001-07-04 10:29:00 +0000 |
---|---|---|
committer | schnetter <> | 2001-07-04 10:29:00 +0000 |
commit | f1aa84c14ac110f5802603b4bf9ceb7923c5b471 (patch) | |
tree | 6a45cd17c5c96c90307302e699f521d2c80bd79f /Carpet/CarpetTest | |
parent | e1cce75b6dc96e7c88ccebff3ee4e03e8fdfc28e (diff) |
Broke the file "carpet.cc" into several files.
Broke the file "carpet.cc" into several files.
Simplified support for arrays with a dimension different from 3.
Added a testing thorn.
darcs-hash:20010704102946-07bb3-82132f0c643e91f0de33bbaef93f9c693ce7227f.gz
Diffstat (limited to 'Carpet/CarpetTest')
-rw-r--r-- | Carpet/CarpetTest/interface.ccl | 7 | ||||
-rw-r--r-- | Carpet/CarpetTest/schedule.ccl | 6 | ||||
-rw-r--r-- | Carpet/CarpetTest/src/carpettest_check_arguments.F77 | 38 | ||||
-rw-r--r-- | Carpet/CarpetTest/src/carpettest_check_sizes.c | 181 | ||||
-rw-r--r-- | Carpet/CarpetTest/test/arraysizes.par | 27 |
5 files changed, 115 insertions, 144 deletions
diff --git a/Carpet/CarpetTest/interface.ccl b/Carpet/CarpetTest/interface.ccl index 55cd937c5..eb5323639 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.2 2001/07/09 09:00:26 schnetter Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/interface.ccl,v 1.1 2001/07/04 12:29:53 schnetter Exp $ implements: CarpetTest @@ -22,8 +22,3 @@ CCTK_REAL arrg1 type=ARRAY dim=1 size=i8 { arr1 } "1D array" - -CCTK_REAL scg type=SCALAR -{ - sc -} "scalar" diff --git a/Carpet/CarpetTest/schedule.ccl b/Carpet/CarpetTest/schedule.ccl index 1ade016b9..49b161fba 100644 --- a/Carpet/CarpetTest/schedule.ccl +++ b/Carpet/CarpetTest/schedule.ccl @@ -1,14 +1,14 @@ # Schedule definitions for thorn CarpetTest -# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/schedule.ccl,v 1.3 2003/11/05 16:18:39 schnetter Exp $ - -STORAGE: gfg arrg1 arrg2 arrg3 +# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/schedule.ccl,v 1.1 2001/07/04 12:29:54 schnetter Exp $ schedule carpettest_check_sizes AT initial { LANG: C + STORAGE: gfg arrg1 arrg2 arrg3 } "Check grid function and grid array sizes" schedule carpettest_check_arguments AT initial { LANG: Fortran + STORAGE: gfg arrg1 arrg2 arrg3 } "Check grid function and grid array arguments" diff --git a/Carpet/CarpetTest/src/carpettest_check_arguments.F77 b/Carpet/CarpetTest/src/carpettest_check_arguments.F77 index 297e38977..7c4fab201 100644 --- a/Carpet/CarpetTest/src/carpettest_check_arguments.F77 +++ b/Carpet/CarpetTest/src/carpettest_check_arguments.F77 @@ -1,44 +1,16 @@ -c -*-Fortran-*- -c $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_arguments.F77,v 1.5 2004/01/25 14:57:31 schnetter Exp $ +c $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_arguments.F77,v 1.1 2001/07/04 12:29:54 schnetter Exp $ #include "cctk.h" #include "cctk_Arguments.h" -#include "cctk_Functions.h" #include "cctk_Parameters.h" subroutine carpettest_check_arguments (CCTK_ARGUMENTS) implicit none DECLARE_CCTK_ARGUMENTS - DECLARE_CCTK_FUNCTIONS DECLARE_CCTK_PARAMETERS - integer i,j,k - print *, "Xgfg ", Xgfg0, Xgfg1, Xgfg2 - print *, "Xarrg3 ", Xarrg30, Xarrg31, Xarrg32 - print *, "Xarrg2 ", Xarrg20, Xarrg21 - print *, "Xarrg1 ", Xarrg10 - print *, "Xscg" + print *, "gfg ", gfg0, gfg1, gfg2 + print *, "arrg3 ", arrg30, arrg31, arrg32 + print *, "arrg2 ", arrg20, arrg21 + print *, "arrg1 ", arrg10 print * - do k=1,Xgfg2 - do j=1,Xgfg1 - do i=1,Xgfg0 - gf(i,j,k) = i*10000 + j*100 + k - end do - end do - end do - do k=1,Xarrg32 - do j=1,Xarrg31 - do i=1,Xarrg30 - arr3(i,j,k) = i*10000 + j*100 + k - end do - end do - end do - do j=1,Xarrg21 - do i=1,Xarrg20 - arr2(i,j) = i*100 + j - end do - end do - do i=1,Xarrg10 - 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 c4e17baf7..79ca08929 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.2 2001/07/09 09:00:27 schnetter Exp $ */ +/* $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/src/carpettest_check_sizes.c,v 1.1 2001/07/04 12:29:54 schnetter Exp $ */ #include <assert.h> #include <stdio.h> @@ -10,98 +10,125 @@ 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; - cGroup data; - cGroupDynamicData dyndata; + CCTK_INT **sizes, **ghostsizes; + int d; + int gsh[3], lsh[3], lbnd[3], ubnd[3]; + const int *cip; + int size[3]; - 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); + 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); printf ("\n"); +#if 0 for (group=0; group<CCTK_NumGroups(); ++group) { - CCTK_GroupData (group, &data); - CCTK_GroupDynamicData (cctkGH, group, &dyndata); + 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); - print_scalar_descr ("group", group, CCTK_GroupName(group)); + 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); - 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 -} - - - -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"; + 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"); } - return "[illegal distribution type]"; + } diff --git a/Carpet/CarpetTest/test/arraysizes.par b/Carpet/CarpetTest/test/arraysizes.par index 81647fe42..9660c8e36 100644 --- a/Carpet/CarpetTest/test/arraysizes.par +++ b/Carpet/CarpetTest/test/arraysizes.par @@ -1,28 +1,5 @@ -# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/test/arraysizes.par,v 1.5 2004/03/23 12:01:59 schnetter Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetTest/test/arraysizes.par,v 1.1 2001/07/04 12:29:55 schnetter Exp $ !DESC "Check array sizes" -ActiveThorns = "Carpet CarpetLib CarpetSlab Cart3d IOUtil CarpetIOASCII CarpetTest" - -Cactus::cctk_itlast = 0 - -IO::out_dir = "arraysizes" - -IOASCII::out1D_every = 1 -IOASCII::out2D_every = 1 -IOASCII::out3D_every = 1 - -IOASCII::out1D_xline_yi = 0 -IOASCII::out1D_xline_zi = 0 -IOASCII::out1D_yline_xi = 0 -IOASCII::out1D_yline_zi = 0 -IOASCII::out1D_zline_xi = 0 -IOASCII::out1D_zline_yi = 0 - -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 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" +ActiveThorns = "Carpet CarpetLib CarpetTest" |