[cig-commits] r13588 - cs/cigma/trunk
luis at geodynamics.org
luis at geodynamics.org
Tue Dec 9 18:15:17 PST 2008
Author: luis
Date: 2008-12-09 18:15:16 -0800 (Tue, 09 Dec 2008)
New Revision: 13588
Added:
cs/cigma/trunk/compare.py
cs/cigma/trunk/quick.sh
cs/cigma/trunk/rules.py
Log:
Canonical tests (later, move these to tests/system/ directory)
Added: cs/cigma/trunk/compare.py
===================================================================
--- cs/cigma/trunk/compare.py (rev 0)
+++ cs/cigma/trunk/compare.py 2008-12-10 02:15:16 UTC (rev 13588)
@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+
+import numpy
+import tables
+
+from _cigma import *
+
+
+def compare(a,b,**kw):
+ raise NotImplementedError('Need compare(a,b)')
+
+
+# first function
+nc1 = nc_array(nno1, ndim)
+eb1 = eb_array(nel1, ndofs1)
+cell1 = CellType.HEX8
+mesh1 = MeshPart(nc1, eb1, cell1)
+dosf1 = dofs_array(nno1, ndofs1)
+field1 = Field(dofs1, mesh1)
+
+# second function
+nc2 = nc_array(nno2, ndim)
+eb2 = eb_array(nel2, ndofs2)
+cell2 = CellType.TET4
+mesh2 = MeshPart(nc2, eb2, cell2)
+dofs2 = dofs_array(nno2, ndofs2)
+field2 = Field(dofs2, mesh2)
+
+# integration mesh
+nc = nc_array(nno, ndim)
+eb = eb_array(nel, ndofs)
+cell = CellType.HEX8
+mesh = MeshPart(nc, eb, cell)
+
+# Compare first and second
+op = CompareOp()
+op.first = field1
+op.second = field2
+op.run()
+eps = op.residuals
+
Added: cs/cigma/trunk/quick.sh
===================================================================
--- cs/cigma/trunk/quick.sh (rev 0)
+++ cs/cigma/trunk/quick.sh 2008-12-10 02:15:16 UTC (rev 13588)
@@ -0,0 +1,305 @@
+#!/bin/bash
+#
+# Quick test for ./cigma cli behavior
+#
+
+
+###############################################################################
+
+C=$HOME/cigma
+T=$C/tests
+D=$T/data
+
+A=$D/brick1
+B=$D/brick2
+
+a=$A/brick1.h5
+b=$B/brick2.h5
+m=$A/brick1.h5
+
+t=0
+
+
+###############################################################################
+
+while getopts 'ht:' OPTION; do
+
+ case $OPTION in
+ h) printf "Usage: %s [-t <TEST-ID>] -- <TEST-OPTS>\n" $(basename $0) >&2
+ exit 255
+ ;;
+ t) t="$OPTARG" ;;
+ *) ;;
+ esac
+done
+
+shift $(($OPTIND - 1))
+
+if true; then
+ echo A=$A
+ echo B=$B
+ echo "t=$t"
+fi
+
+
+###############################################################################
+
+#t=1000
+if [ $t = 1000 ]; then
+ set -x
+ cigma extract \
+ --mesh $A/brick1.h5 \
+ --mesh-cell hex8 \
+ --output qpts.h5 \
+ $*
+ exit $?
+fi
+
+#t=1001
+if [ $t = 1001 ]; then
+ set -x
+ cigma extract \
+ --mesh $A/brick1.h5 \
+ --mesh-cell hex8 \
+ --rule $D/qr/hex8_qr3.dat \
+ --output qpts2.h5 \
+ $*
+ exit $?
+fi
+
+
+###############################################################################
+
+#t=2000
+if [ $t = 2000 ]; then
+ set -x
+ cigma eval \
+ --function 'test.cube' \
+ --points brick1.h5:/coordinates \
+ --output values.h5:/values \
+ $*
+ exit $?
+fi
+
+#t=2001
+if [ $t = 2001 ]; then
+ set -x
+ cigma eval \
+ --function 'test.cube' \
+ --points qpts.h5:/points \
+ --output qvals.h5:/values \
+ $*
+ exit $?
+fi
+
+
+###############################################################################
+
+#t=3000
+if [ $t = 3000 ]; then
+ set -x
+ cigma compare \
+ --first $A/CubeFn.dat \
+ --first-mesh-coords $A/coords.dat \
+ --first-mesh-connect $A/connect.dat \
+ --first-mesh-cell hex8 \
+ --second $B/CubeFn.dat \
+ --second-mesh-coords $B/coords.dat \
+ --second-mesh-connect $B/connect.dat \
+ --second-mesh-cell tet4 \
+ --mesh-coords $A/coords.dat \
+ --mesh-connect $A/connect.dat \
+ --mesh-cell hex8 \
+ --output CubeFn.dat \
+ $*
+ exit $?
+fi
+
+#t=3001
+if [ $t = 3001 ]; then
+ set -x
+ cigma compare \
+ --first $A/CubeFn.dat \
+ --first-mesh-coords $A/coords.dat \
+ --first-mesh-connect $A/connect.dat \
+ --first-mesh-cell hex8 \
+ --second $B/CubeFn.dat \
+ --second-mesh-coords $B/coords.dat \
+ --second-mesh-connect $B/connect.dat \
+ --second-mesh-cell tet4 \
+ --output CubeFn.dat \
+ $*
+ exit $?
+fi
+
+###############################################################################
+
+#t=3100
+if [ $t = 3100 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.h5:/CubeFn \
+ --first-mesh-coords $A/brick1.h5:/coordinates \
+ --first-mesh-connect $A/brick1.h5:/connectivity \
+ --first-mesh-cell hex8 \
+ --second $B/Data.h5:/CubeFn \
+ --second-mesh-coords $B/brick2.h5:/coordinates \
+ --second-mesh-connect $B/brick2.h5:/connectivity \
+ --second-mesh-cell tet4 \
+ --output CubeFn.h5 \
+ $*
+ exit $?
+fi
+
+#t=3101
+if [ $t = 3101 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.h5:/CubeFn \
+ --first-mesh $A/brick1.h5 \
+ --first-mesh-cell hex8 \
+ --second $B/Data.h5:/CubeFn \
+ --second-mesh $B/brick1.h5 \
+ --second-mesh-cell tet4 \
+ --output CubeFn.h5 \
+ $*
+ exit $?
+fi
+
+#t=3102
+if [ $t = 3102 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.h5:/Var/step0 \
+ --first-mesh $A/brick1.h5 \
+ --second $B/Data.h5:/Var/step0 \
+ --second-mesh $B/brick1.h5 \
+ --output CubeFn.h5 \
+ $*
+ exit $?
+fi
+
+#t=3103
+if [ $t = 3103 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.h5:/Var/step0 \
+ --second $B/Data.h5:/Var/step0 \
+ --output CubeFn.h5 \
+ $*
+ exit $?
+fi
+
+#t=3104
+if [ $t = 3104 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.h5:/Var/step0 \
+ --second $B/Data.h5:/Var/step0 \
+ --output Compare.h5:/B1-B2/step0 \
+ $*
+ exit $?
+fi
+
+###############################################################################
+
+
+#t=3200
+if [ $t = 3200 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.vtk:/Var0 \
+ --second $B/Data.vtk:/Var0 \
+ --output B12.vtk \
+ $*
+ exit $?
+fi
+
+#t=3201
+if [ $t = 3201 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.vtk:/Var0 \
+ --second $B/Data.vtk:/Var0 \
+ --mesh $m \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+#t=3202
+if [ $t = 3202 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.vtu:/Var0 \
+ --second $B/Data.vtu:/Var0 \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+#t=3203
+if [ $t = 3203 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.vtr:/Var0 \
+ --second $B/Data.vtr:/Var0 \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+#t=3204
+if [ $t = 3204 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.vts:/Var0 \
+ --second $B/Data.vts:/Var0 \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+#t=3205
+if [ $t = 3205 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.pvtu:/Var0 \
+ --second $B/Data.pvtu:/Var0 \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+#t=3206
+if [ $t = 3206 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.pvtr:/Var0 \
+ --second $B/Data.pvtr:/Var0 \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+#t=3207
+if [ $t = 3207 ]; then
+ set -x
+ cigma compare \
+ --first $A/Data.pvts:/Var0 \
+ --second $B/Data.pvts:/Var0 \
+ --output B12.vtk:res0 \
+ $*
+ exit $?
+fi
+
+
+
+###############################################################################
+###############################################################################
+
+
+if true; then
+ set -x
+ exit 123
+fi
Property changes on: cs/cigma/trunk/quick.sh
___________________________________________________________________
Name: svn:executable
+ *
Added: cs/cigma/trunk/rules.py
===================================================================
--- cs/cigma/trunk/rules.py (rev 0)
+++ cs/cigma/trunk/rules.py 2008-12-10 02:15:16 UTC (rev 13588)
@@ -0,0 +1,16 @@
+#!/usr/bin/env python
+
+from _cigma import *
+
+hex8 = _cigma.hex8()
+tet4 = _cigma.tet4()
+tri3 = _cigma.tri3()
+quad4 = _cgma.quad4()
+
+rules = {
+ 'hex8': hex8.default_rule(),
+ 'tet4': tet4.default_rule(),
+ 'tri3': tri3.default_rule(),
+ 'quad4': quad4.default_rule(),
+}
+
More information about the CIG-COMMITS
mailing list