/[escript]/trunk/escript/py_src/test_util_slicing_with_tagged_data.py
ViewVC logotype

Diff of /trunk/escript/py_src/test_util_slicing_with_tagged_data.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 620 by elspeth, Wed Mar 22 01:37:07 2006 UTC revision 621 by gross, Wed Mar 22 07:44:18 2006 UTC
# Line 5509  class Test_util_slicing_with_tagged_data Line 5509  class Test_util_slicing_with_tagged_data
5509     def test_setslice_taggedData_rank1_expandedData_L(self):     def test_setslice_taggedData_rank1_expandedData_L(self):
5510        arg=Data(numarray.array([3.0, 6.0, 8.0]),self.functionspace)        arg=Data(numarray.array([3.0, 6.0, 8.0]),self.functionspace)
5511        arg.setTaggedValue(1,numarray.array([7.0, 8.0, 6.0]))        arg.setTaggedValue(1,numarray.array([7.0, 8.0, 6.0]))
5512        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5513        val=msk_val*numarray.array([1.0])+(1.-msk_val)*numarray.array([7.0])        val=msk_val*numarray.array([1.0])+(1.-msk_val)*numarray.array([7.0])
5514        arg[2:]=val        arg[2:]=val
5515        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5547  class Test_util_slicing_with_tagged_data Line 5547  class Test_util_slicing_with_tagged_data
5547     def test_setslice_taggedData_rank1_expandedData_U(self):     def test_setslice_taggedData_rank1_expandedData_U(self):
5548        arg=Data(numarray.array([5.0, 2.0, 3.0]),self.functionspace)        arg=Data(numarray.array([5.0, 2.0, 3.0]),self.functionspace)
5549        arg.setTaggedValue(1,numarray.array([2.0, 7.0, 5.0]))        arg.setTaggedValue(1,numarray.array([2.0, 7.0, 5.0]))
5550        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5551        val=msk_val*numarray.array([5.0, 7.0])+(1.-msk_val)*numarray.array([4.0, 2.0])        val=msk_val*numarray.array([5.0, 7.0])+(1.-msk_val)*numarray.array([4.0, 2.0])
5552        arg[:2]=val        arg[:2]=val
5553        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5583  class Test_util_slicing_with_tagged_data Line 5583  class Test_util_slicing_with_tagged_data
5583     def test_setslice_taggedData_rank1_expandedData_C(self):     def test_setslice_taggedData_rank1_expandedData_C(self):
5584        arg=Data(numarray.array([4.0, 8.0, 3.0]),self.functionspace)        arg=Data(numarray.array([4.0, 8.0, 3.0]),self.functionspace)
5585        arg.setTaggedValue(1,numarray.array([7.0, 7.0, 4.0]))        arg.setTaggedValue(1,numarray.array([7.0, 7.0, 4.0]))
5586        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5587        val=msk_val*numarray.array([6.0, 6.0, 7.0])+(1.-msk_val)*numarray.array([7.0, 7.0, 5.0])        val=msk_val*numarray.array([6.0, 6.0, 7.0])+(1.-msk_val)*numarray.array([7.0, 7.0, 5.0])
5588        arg[:]=val        arg[:]=val
5589        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5621  class Test_util_slicing_with_tagged_data Line 5621  class Test_util_slicing_with_tagged_data
5621     def test_setslice_taggedData_rank1_expandedData_R(self):     def test_setslice_taggedData_rank1_expandedData_R(self):
5622        arg=Data(numarray.array([3.0, 5.0, 2.0]),self.functionspace)        arg=Data(numarray.array([3.0, 5.0, 2.0]),self.functionspace)
5623        arg.setTaggedValue(1,numarray.array([2.0, 4.0, 1.0]))        arg.setTaggedValue(1,numarray.array([2.0, 4.0, 1.0]))
5624        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5625        val=msk_val*numarray.array([1.0])+(1.-msk_val)*numarray.array([2.0])        val=msk_val*numarray.array([1.0])+(1.-msk_val)*numarray.array([2.0])
5626        arg[1:2]=val        arg[1:2]=val
5627        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5659  class Test_util_slicing_with_tagged_data Line 5659  class Test_util_slicing_with_tagged_data
5659     def test_setslice_taggedData_rank1_expandedData_P(self):     def test_setslice_taggedData_rank1_expandedData_P(self):
5660        arg=Data(numarray.array([3.0, 7.0, 2.0]),self.functionspace)        arg=Data(numarray.array([3.0, 7.0, 2.0]),self.functionspace)
5661        arg.setTaggedValue(1,numarray.array([2.0, 2.0, 4.0]))        arg.setTaggedValue(1,numarray.array([2.0, 2.0, 4.0]))
5662        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5663        val=(1.-msk_val)*(1.0)+msk_val*(1.0)        val=(1.-msk_val)*(1.0)+msk_val*(1.0)
5664        arg[1]=val        arg[1]=val
5665        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5697  class Test_util_slicing_with_tagged_data Line 5697  class Test_util_slicing_with_tagged_data
5697     def test_setslice_taggedData_rank2_expandedData_UR(self):     def test_setslice_taggedData_rank2_expandedData_UR(self):
5698        arg=Data(numarray.array([[3.0, 6.0, 7.0, 3.0], [2.0, 2.0, 1.0, 8.0], [1.0, 2.0, 7.0, 4.0]]),self.functionspace)        arg=Data(numarray.array([[3.0, 6.0, 7.0, 3.0], [2.0, 2.0, 1.0, 8.0], [1.0, 2.0, 7.0, 4.0]]),self.functionspace)
5699        arg.setTaggedValue(1,numarray.array([[8.0, 8.0, 1.0, 4.0], [5.0, 4.0, 3.0, 6.0], [8.0, 2.0, 4.0, 7.0]]))        arg.setTaggedValue(1,numarray.array([[8.0, 8.0, 1.0, 4.0], [5.0, 4.0, 3.0, 6.0], [8.0, 2.0, 4.0, 7.0]]))
5700        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5701        val=msk_val*numarray.array([[1.0, 7.0], [6.0, 4.0]])+(1.-msk_val)*numarray.array([[6.0, 8.0], [8.0, 8.0]])        val=msk_val*numarray.array([[1.0, 7.0], [6.0, 4.0]])+(1.-msk_val)*numarray.array([[6.0, 8.0], [8.0, 8.0]])
5702        arg[:2,1:3]=val        arg[:2,1:3]=val
5703        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5735  class Test_util_slicing_with_tagged_data Line 5735  class Test_util_slicing_with_tagged_data
5735     def test_setslice_taggedData_rank2_expandedData_PU(self):     def test_setslice_taggedData_rank2_expandedData_PU(self):
5736        arg=Data(numarray.array([[3.0, 8.0, 2.0, 4.0], [1.0, 7.0, 1.0, 6.0], [1.0, 2.0, 5.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[3.0, 8.0, 2.0, 4.0], [1.0, 7.0, 1.0, 6.0], [1.0, 2.0, 5.0, 3.0]]),self.functionspace)
5737        arg.setTaggedValue(1,numarray.array([[2.0, 2.0, 6.0, 6.0], [6.0, 2.0, 2.0, 8.0], [3.0, 6.0, 8.0, 2.0]]))        arg.setTaggedValue(1,numarray.array([[2.0, 2.0, 6.0, 6.0], [6.0, 2.0, 2.0, 8.0], [3.0, 6.0, 8.0, 2.0]]))
5738        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5739        val=msk_val*numarray.array([8.0, 2.0, 7.0])+(1.-msk_val)*numarray.array([7.0, 4.0, 2.0])        val=msk_val*numarray.array([8.0, 2.0, 7.0])+(1.-msk_val)*numarray.array([7.0, 4.0, 2.0])
5740        arg[1,:3]=val        arg[1,:3]=val
5741        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5773  class Test_util_slicing_with_tagged_data Line 5773  class Test_util_slicing_with_tagged_data
5773     def test_setslice_taggedData_rank2_expandedData_UU(self):     def test_setslice_taggedData_rank2_expandedData_UU(self):
5774        arg=Data(numarray.array([[3.0, 5.0, 2.0, 8.0], [1.0, 8.0, 6.0, 8.0], [7.0, 4.0, 4.0, 4.0]]),self.functionspace)        arg=Data(numarray.array([[3.0, 5.0, 2.0, 8.0], [1.0, 8.0, 6.0, 8.0], [7.0, 4.0, 4.0, 4.0]]),self.functionspace)
5775        arg.setTaggedValue(1,numarray.array([[6.0, 3.0, 4.0, 1.0], [2.0, 8.0, 2.0, 4.0], [4.0, 1.0, 2.0, 8.0]]))        arg.setTaggedValue(1,numarray.array([[6.0, 3.0, 4.0, 1.0], [2.0, 8.0, 2.0, 4.0], [4.0, 1.0, 2.0, 8.0]]))
5776        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5777        val=msk_val*numarray.array([[8.0, 2.0, 1.0], [5.0, 1.0, 5.0]])+(1.-msk_val)*numarray.array([[8.0, 5.0, 6.0], [2.0, 5.0, 6.0]])        val=msk_val*numarray.array([[8.0, 2.0, 1.0], [5.0, 1.0, 5.0]])+(1.-msk_val)*numarray.array([[8.0, 5.0, 6.0], [2.0, 5.0, 6.0]])
5778        arg[:2,:3]=val        arg[:2,:3]=val
5779        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5811  class Test_util_slicing_with_tagged_data Line 5811  class Test_util_slicing_with_tagged_data
5811     def test_setslice_taggedData_rank2_expandedData_RL(self):     def test_setslice_taggedData_rank2_expandedData_RL(self):
5812        arg=Data(numarray.array([[7.0, 1.0, 4.0, 1.0], [7.0, 8.0, 7.0, 3.0], [5.0, 6.0, 8.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[7.0, 1.0, 4.0, 1.0], [7.0, 8.0, 7.0, 3.0], [5.0, 6.0, 8.0, 3.0]]),self.functionspace)
5813        arg.setTaggedValue(1,numarray.array([[1.0, 6.0, 6.0, 5.0], [5.0, 5.0, 5.0, 1.0], [1.0, 4.0, 1.0, 8.0]]))        arg.setTaggedValue(1,numarray.array([[1.0, 6.0, 6.0, 5.0], [5.0, 5.0, 5.0, 1.0], [1.0, 4.0, 1.0, 8.0]]))
5814        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5815        val=msk_val*numarray.array([[6.0, 6.0]])+(1.-msk_val)*numarray.array([[5.0, 1.0]])        val=msk_val*numarray.array([[6.0, 6.0]])+(1.-msk_val)*numarray.array([[5.0, 1.0]])
5816        arg[1:2,2:]=val        arg[1:2,2:]=val
5817        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5849  class Test_util_slicing_with_tagged_data Line 5849  class Test_util_slicing_with_tagged_data
5849     def test_setslice_taggedData_rank2_expandedData_PL(self):     def test_setslice_taggedData_rank2_expandedData_PL(self):
5850        arg=Data(numarray.array([[2.0, 6.0, 6.0, 8.0], [4.0, 8.0, 1.0, 7.0], [3.0, 8.0, 7.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[2.0, 6.0, 6.0, 8.0], [4.0, 8.0, 1.0, 7.0], [3.0, 8.0, 7.0, 3.0]]),self.functionspace)
5851        arg.setTaggedValue(1,numarray.array([[7.0, 7.0, 4.0, 3.0], [5.0, 5.0, 3.0, 4.0], [1.0, 2.0, 6.0, 8.0]]))        arg.setTaggedValue(1,numarray.array([[7.0, 7.0, 4.0, 3.0], [5.0, 5.0, 3.0, 4.0], [1.0, 2.0, 6.0, 8.0]]))
5852        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5853        val=msk_val*numarray.array([8.0, 6.0])+(1.-msk_val)*numarray.array([5.0, 1.0])        val=msk_val*numarray.array([8.0, 6.0])+(1.-msk_val)*numarray.array([5.0, 1.0])
5854        arg[1,2:]=val        arg[1,2:]=val
5855        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5887  class Test_util_slicing_with_tagged_data Line 5887  class Test_util_slicing_with_tagged_data
5887     def test_setslice_taggedData_rank2_expandedData_CP(self):     def test_setslice_taggedData_rank2_expandedData_CP(self):
5888        arg=Data(numarray.array([[4.0, 1.0, 2.0, 3.0], [7.0, 5.0, 5.0, 6.0], [4.0, 6.0, 6.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[4.0, 1.0, 2.0, 3.0], [7.0, 5.0, 5.0, 6.0], [4.0, 6.0, 6.0, 3.0]]),self.functionspace)
5889        arg.setTaggedValue(1,numarray.array([[7.0, 3.0, 1.0, 1.0], [6.0, 1.0, 3.0, 3.0], [4.0, 3.0, 6.0, 3.0]]))        arg.setTaggedValue(1,numarray.array([[7.0, 3.0, 1.0, 1.0], [6.0, 1.0, 3.0, 3.0], [4.0, 3.0, 6.0, 3.0]]))
5890        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5891        val=msk_val*numarray.array([4.0, 5.0, 4.0])+(1.-msk_val)*numarray.array([1.0, 6.0, 6.0])        val=msk_val*numarray.array([4.0, 5.0, 4.0])+(1.-msk_val)*numarray.array([1.0, 6.0, 6.0])
5892        arg[:,2]=val        arg[:,2]=val
5893        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5923  class Test_util_slicing_with_tagged_data Line 5923  class Test_util_slicing_with_tagged_data
5923     def test_setslice_taggedData_rank2_expandedData_CC(self):     def test_setslice_taggedData_rank2_expandedData_CC(self):
5924        arg=Data(numarray.array([[7.0, 5.0, 4.0, 4.0], [8.0, 6.0, 5.0, 5.0], [6.0, 7.0, 3.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[7.0, 5.0, 4.0, 4.0], [8.0, 6.0, 5.0, 5.0], [6.0, 7.0, 3.0, 3.0]]),self.functionspace)
5925        arg.setTaggedValue(1,numarray.array([[4.0, 1.0, 1.0, 1.0], [8.0, 3.0, 6.0, 6.0], [2.0, 2.0, 4.0, 1.0]]))        arg.setTaggedValue(1,numarray.array([[4.0, 1.0, 1.0, 1.0], [8.0, 3.0, 6.0, 6.0], [2.0, 2.0, 4.0, 1.0]]))
5926        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5927        val=msk_val*numarray.array([[8.0, 3.0, 4.0, 7.0], [4.0, 5.0, 1.0, 4.0], [4.0, 7.0, 8.0, 4.0]])+(1.-msk_val)*numarray.array([[5.0, 5.0, 7.0, 2.0], [4.0, 6.0, 1.0, 5.0], [5.0, 4.0, 6.0, 7.0]])        val=msk_val*numarray.array([[8.0, 3.0, 4.0, 7.0], [4.0, 5.0, 1.0, 4.0], [4.0, 7.0, 8.0, 4.0]])+(1.-msk_val)*numarray.array([[5.0, 5.0, 7.0, 2.0], [4.0, 6.0, 1.0, 5.0], [5.0, 4.0, 6.0, 7.0]])
5928        arg[:,:]=val        arg[:,:]=val
5929        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5961  class Test_util_slicing_with_tagged_data Line 5961  class Test_util_slicing_with_tagged_data
5961     def test_setslice_taggedData_rank2_expandedData_RR(self):     def test_setslice_taggedData_rank2_expandedData_RR(self):
5962        arg=Data(numarray.array([[3.0, 1.0, 5.0, 7.0], [5.0, 1.0, 1.0, 1.0], [4.0, 1.0, 5.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[3.0, 1.0, 5.0, 7.0], [5.0, 1.0, 1.0, 1.0], [4.0, 1.0, 5.0, 3.0]]),self.functionspace)
5963        arg.setTaggedValue(1,numarray.array([[5.0, 2.0, 5.0, 6.0], [4.0, 8.0, 8.0, 4.0], [6.0, 1.0, 1.0, 8.0]]))        arg.setTaggedValue(1,numarray.array([[5.0, 2.0, 5.0, 6.0], [4.0, 8.0, 8.0, 4.0], [6.0, 1.0, 1.0, 8.0]]))
5964        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
5965        val=msk_val*numarray.array([[4.0, 3.0]])+(1.-msk_val)*numarray.array([[7.0, 3.0]])        val=msk_val*numarray.array([[4.0, 3.0]])+(1.-msk_val)*numarray.array([[7.0, 3.0]])
5966        arg[1:2,1:3]=val        arg[1:2,1:3]=val
5967        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 5997  class Test_util_slicing_with_tagged_data Line 5997  class Test_util_slicing_with_tagged_data
5997     def test_setslice_taggedData_rank2_expandedData_CN(self):     def test_setslice_taggedData_rank2_expandedData_CN(self):
5998        arg=Data(numarray.array([[2.0, 5.0, 2.0, 5.0], [4.0, 7.0, 4.0, 5.0], [5.0, 4.0, 1.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[2.0, 5.0, 2.0, 5.0], [4.0, 7.0, 4.0, 5.0], [5.0, 4.0, 1.0, 3.0]]),self.functionspace)
5999        arg.setTaggedValue(1,numarray.array([[8.0, 5.0, 8.0, 3.0], [1.0, 7.0, 1.0, 1.0], [7.0, 2.0, 6.0, 2.0]]))        arg.setTaggedValue(1,numarray.array([[8.0, 5.0, 8.0, 3.0], [1.0, 7.0, 1.0, 1.0], [7.0, 2.0, 6.0, 2.0]]))
6000        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6001        val=msk_val*numarray.array([[7.0, 4.0, 4.0, 6.0], [2.0, 8.0, 5.0, 8.0], [2.0, 3.0, 8.0, 1.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0, 5.0, 1.0], [3.0, 3.0, 8.0, 3.0], [5.0, 1.0, 8.0, 1.0]])        val=msk_val*numarray.array([[7.0, 4.0, 4.0, 6.0], [2.0, 8.0, 5.0, 8.0], [2.0, 3.0, 8.0, 1.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0, 5.0, 1.0], [3.0, 3.0, 8.0, 3.0], [5.0, 1.0, 8.0, 1.0]])
6002        arg[:]=val        arg[:]=val
6003        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6035  class Test_util_slicing_with_tagged_data Line 6035  class Test_util_slicing_with_tagged_data
6035     def test_setslice_taggedData_rank2_expandedData_PR(self):     def test_setslice_taggedData_rank2_expandedData_PR(self):
6036        arg=Data(numarray.array([[6.0, 3.0, 1.0, 1.0], [2.0, 5.0, 3.0, 8.0], [7.0, 6.0, 1.0, 6.0]]),self.functionspace)        arg=Data(numarray.array([[6.0, 3.0, 1.0, 1.0], [2.0, 5.0, 3.0, 8.0], [7.0, 6.0, 1.0, 6.0]]),self.functionspace)
6037        arg.setTaggedValue(1,numarray.array([[5.0, 2.0, 7.0, 2.0], [3.0, 2.0, 6.0, 7.0], [5.0, 7.0, 1.0, 2.0]]))        arg.setTaggedValue(1,numarray.array([[5.0, 2.0, 7.0, 2.0], [3.0, 2.0, 6.0, 7.0], [5.0, 7.0, 1.0, 2.0]]))
6038        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6039        val=msk_val*numarray.array([7.0, 8.0])+(1.-msk_val)*numarray.array([1.0, 5.0])        val=msk_val*numarray.array([7.0, 8.0])+(1.-msk_val)*numarray.array([1.0, 5.0])
6040        arg[1,1:3]=val        arg[1,1:3]=val
6041        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6073  class Test_util_slicing_with_tagged_data Line 6073  class Test_util_slicing_with_tagged_data
6073     def test_setslice_taggedData_rank2_expandedData_UL(self):     def test_setslice_taggedData_rank2_expandedData_UL(self):
6074        arg=Data(numarray.array([[2.0, 5.0, 7.0, 2.0], [7.0, 7.0, 4.0, 2.0], [2.0, 7.0, 4.0, 8.0]]),self.functionspace)        arg=Data(numarray.array([[2.0, 5.0, 7.0, 2.0], [7.0, 7.0, 4.0, 2.0], [2.0, 7.0, 4.0, 8.0]]),self.functionspace)
6075        arg.setTaggedValue(1,numarray.array([[2.0, 4.0, 1.0, 4.0], [7.0, 4.0, 4.0, 6.0], [7.0, 8.0, 4.0, 4.0]]))        arg.setTaggedValue(1,numarray.array([[2.0, 4.0, 1.0, 4.0], [7.0, 4.0, 4.0, 6.0], [7.0, 8.0, 4.0, 4.0]]))
6076        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6077        val=msk_val*numarray.array([[7.0, 6.0], [4.0, 4.0]])+(1.-msk_val)*numarray.array([[3.0, 2.0], [2.0, 6.0]])        val=msk_val*numarray.array([[7.0, 6.0], [4.0, 4.0]])+(1.-msk_val)*numarray.array([[3.0, 2.0], [2.0, 6.0]])
6078        arg[:2,2:]=val        arg[:2,2:]=val
6079        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6111  class Test_util_slicing_with_tagged_data Line 6111  class Test_util_slicing_with_tagged_data
6111     def test_setslice_taggedData_rank2_expandedData_LN(self):     def test_setslice_taggedData_rank2_expandedData_LN(self):
6112        arg=Data(numarray.array([[3.0, 7.0, 7.0, 5.0], [1.0, 4.0, 8.0, 8.0], [4.0, 4.0, 5.0, 8.0]]),self.functionspace)        arg=Data(numarray.array([[3.0, 7.0, 7.0, 5.0], [1.0, 4.0, 8.0, 8.0], [4.0, 4.0, 5.0, 8.0]]),self.functionspace)
6113        arg.setTaggedValue(1,numarray.array([[6.0, 6.0, 6.0, 6.0], [2.0, 1.0, 7.0, 5.0], [5.0, 4.0, 6.0, 4.0]]))        arg.setTaggedValue(1,numarray.array([[6.0, 6.0, 6.0, 6.0], [2.0, 1.0, 7.0, 5.0], [5.0, 4.0, 6.0, 4.0]]))
6114        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6115        val=msk_val*numarray.array([[8.0, 3.0, 2.0, 2.0]])+(1.-msk_val)*numarray.array([[7.0, 4.0, 4.0, 7.0]])        val=msk_val*numarray.array([[8.0, 3.0, 2.0, 2.0]])+(1.-msk_val)*numarray.array([[7.0, 4.0, 4.0, 7.0]])
6116        arg[2:]=val        arg[2:]=val
6117        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6149  class Test_util_slicing_with_tagged_data Line 6149  class Test_util_slicing_with_tagged_data
6149     def test_setslice_taggedData_rank2_expandedData_PN(self):     def test_setslice_taggedData_rank2_expandedData_PN(self):
6150        arg=Data(numarray.array([[1.0, 3.0, 3.0, 5.0], [2.0, 3.0, 8.0, 6.0], [1.0, 2.0, 2.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[1.0, 3.0, 3.0, 5.0], [2.0, 3.0, 8.0, 6.0], [1.0, 2.0, 2.0, 3.0]]),self.functionspace)
6151        arg.setTaggedValue(1,numarray.array([[3.0, 5.0, 1.0, 2.0], [5.0, 8.0, 2.0, 8.0], [8.0, 7.0, 6.0, 8.0]]))        arg.setTaggedValue(1,numarray.array([[3.0, 5.0, 1.0, 2.0], [5.0, 8.0, 2.0, 8.0], [8.0, 7.0, 6.0, 8.0]]))
6152        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6153        val=msk_val*numarray.array([7.0, 4.0, 1.0, 5.0])+(1.-msk_val)*numarray.array([8.0, 8.0, 7.0, 6.0])        val=msk_val*numarray.array([7.0, 4.0, 1.0, 5.0])+(1.-msk_val)*numarray.array([8.0, 8.0, 7.0, 6.0])
6154        arg[1]=val        arg[1]=val
6155        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6187  class Test_util_slicing_with_tagged_data Line 6187  class Test_util_slicing_with_tagged_data
6187     def test_setslice_taggedData_rank2_expandedData_CR(self):     def test_setslice_taggedData_rank2_expandedData_CR(self):
6188        arg=Data(numarray.array([[4.0, 1.0, 5.0, 6.0], [6.0, 2.0, 6.0, 7.0], [3.0, 1.0, 2.0, 5.0]]),self.functionspace)        arg=Data(numarray.array([[4.0, 1.0, 5.0, 6.0], [6.0, 2.0, 6.0, 7.0], [3.0, 1.0, 2.0, 5.0]]),self.functionspace)
6189        arg.setTaggedValue(1,numarray.array([[6.0, 1.0, 6.0, 2.0], [1.0, 3.0, 8.0, 8.0], [1.0, 6.0, 8.0, 1.0]]))        arg.setTaggedValue(1,numarray.array([[6.0, 1.0, 6.0, 2.0], [1.0, 3.0, 8.0, 8.0], [1.0, 6.0, 8.0, 1.0]]))
6190        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6191        val=msk_val*numarray.array([[2.0, 3.0], [3.0, 3.0], [2.0, 4.0]])+(1.-msk_val)*numarray.array([[8.0, 3.0], [7.0, 7.0], [6.0, 8.0]])        val=msk_val*numarray.array([[2.0, 3.0], [3.0, 3.0], [2.0, 4.0]])+(1.-msk_val)*numarray.array([[8.0, 3.0], [7.0, 7.0], [6.0, 8.0]])
6192        arg[:,1:3]=val        arg[:,1:3]=val
6193        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6225  class Test_util_slicing_with_tagged_data Line 6225  class Test_util_slicing_with_tagged_data
6225     def test_setslice_taggedData_rank2_expandedData_CU(self):     def test_setslice_taggedData_rank2_expandedData_CU(self):
6226        arg=Data(numarray.array([[1.0, 6.0, 8.0, 1.0], [8.0, 3.0, 6.0, 2.0], [7.0, 6.0, 5.0, 5.0]]),self.functionspace)        arg=Data(numarray.array([[1.0, 6.0, 8.0, 1.0], [8.0, 3.0, 6.0, 2.0], [7.0, 6.0, 5.0, 5.0]]),self.functionspace)
6227        arg.setTaggedValue(1,numarray.array([[2.0, 5.0, 3.0, 6.0], [8.0, 6.0, 5.0, 2.0], [5.0, 6.0, 6.0, 8.0]]))        arg.setTaggedValue(1,numarray.array([[2.0, 5.0, 3.0, 6.0], [8.0, 6.0, 5.0, 2.0], [5.0, 6.0, 6.0, 8.0]]))
6228        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6229        val=msk_val*numarray.array([[6.0, 8.0, 3.0], [4.0, 4.0, 1.0], [3.0, 3.0, 1.0]])+(1.-msk_val)*numarray.array([[3.0, 2.0, 8.0], [1.0, 6.0, 1.0], [3.0, 8.0, 3.0]])        val=msk_val*numarray.array([[6.0, 8.0, 3.0], [4.0, 4.0, 1.0], [3.0, 3.0, 1.0]])+(1.-msk_val)*numarray.array([[3.0, 2.0, 8.0], [1.0, 6.0, 1.0], [3.0, 8.0, 3.0]])
6230        arg[:,:3]=val        arg[:,:3]=val
6231        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6263  class Test_util_slicing_with_tagged_data Line 6263  class Test_util_slicing_with_tagged_data
6263     def test_setslice_taggedData_rank2_expandedData_LC(self):     def test_setslice_taggedData_rank2_expandedData_LC(self):
6264        arg=Data(numarray.array([[7.0, 1.0, 6.0, 3.0], [8.0, 6.0, 6.0, 6.0], [5.0, 3.0, 5.0, 4.0]]),self.functionspace)        arg=Data(numarray.array([[7.0, 1.0, 6.0, 3.0], [8.0, 6.0, 6.0, 6.0], [5.0, 3.0, 5.0, 4.0]]),self.functionspace)
6265        arg.setTaggedValue(1,numarray.array([[5.0, 3.0, 5.0, 8.0], [5.0, 2.0, 5.0, 7.0], [7.0, 7.0, 5.0, 3.0]]))        arg.setTaggedValue(1,numarray.array([[5.0, 3.0, 5.0, 8.0], [5.0, 2.0, 5.0, 7.0], [7.0, 7.0, 5.0, 3.0]]))
6266        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6267        val=msk_val*numarray.array([[3.0, 3.0, 7.0, 6.0]])+(1.-msk_val)*numarray.array([[3.0, 1.0, 2.0, 1.0]])        val=msk_val*numarray.array([[3.0, 3.0, 7.0, 6.0]])+(1.-msk_val)*numarray.array([[3.0, 1.0, 2.0, 1.0]])
6268        arg[2:,:]=val        arg[2:,:]=val
6269        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6301  class Test_util_slicing_with_tagged_data Line 6301  class Test_util_slicing_with_tagged_data
6301     def test_setslice_taggedData_rank2_expandedData_UN(self):     def test_setslice_taggedData_rank2_expandedData_UN(self):
6302        arg=Data(numarray.array([[3.0, 7.0, 7.0, 8.0], [7.0, 5.0, 6.0, 7.0], [3.0, 4.0, 7.0, 3.0]]),self.functionspace)        arg=Data(numarray.array([[3.0, 7.0, 7.0, 8.0], [7.0, 5.0, 6.0, 7.0], [3.0, 4.0, 7.0, 3.0]]),self.functionspace)
6303        arg.setTaggedValue(1,numarray.array([[3.0, 1.0, 6.0, 4.0], [4.0, 1.0, 6.0, 5.0], [7.0, 2.0, 4.0, 7.0]]))        arg.setTaggedValue(1,numarray.array([[3.0, 1.0, 6.0, 4.0], [4.0, 1.0, 6.0, 5.0], [7.0, 2.0, 4.0, 7.0]]))
6304        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6305        val=msk_val*numarray.array([[6.0, 5.0, 6.0, 1.0], [4.0, 7.0, 7.0, 2.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0, 1.0, 2.0], [5.0, 8.0, 4.0, 8.0]])        val=msk_val*numarray.array([[6.0, 5.0, 6.0, 1.0], [4.0, 7.0, 7.0, 2.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0, 1.0, 2.0], [5.0, 8.0, 4.0, 8.0]])
6306        arg[:2]=val        arg[:2]=val
6307        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6339  class Test_util_slicing_with_tagged_data Line 6339  class Test_util_slicing_with_tagged_data
6339     def test_setslice_taggedData_rank2_expandedData_LL(self):     def test_setslice_taggedData_rank2_expandedData_LL(self):
6340        arg=Data(numarray.array([[6.0, 3.0, 8.0, 2.0], [1.0, 8.0, 2.0, 2.0], [8.0, 8.0, 1.0, 7.0]]),self.functionspace)        arg=Data(numarray.array([[6.0, 3.0, 8.0, 2.0], [1.0, 8.0, 2.0, 2.0], [8.0, 8.0, 1.0, 7.0]]),self.functionspace)
6341        arg.setTaggedValue(1,numarray.array([[5.0, 4.0, 7.0, 3.0], [4.0, 8.0, 5.0, 7.0], [7.0, 6.0, 2.0, 7.0]]))        arg.setTaggedValue(1,numarray.array([[5.0, 4.0, 7.0, 3.0], [4.0, 8.0, 5.0, 7.0], [7.0, 6.0, 2.0, 7.0]]))
6342        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6343        val=msk_val*numarray.array([[2.0, 2.0]])+(1.-msk_val)*numarray.array([[4.0, 1.0]])        val=msk_val*numarray.array([[2.0, 2.0]])+(1.-msk_val)*numarray.array([[4.0, 1.0]])
6344        arg[2:,2:]=val        arg[2:,2:]=val
6345        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6377  class Test_util_slicing_with_tagged_data Line 6377  class Test_util_slicing_with_tagged_data
6377     def test_setslice_taggedData_rank2_expandedData_RN(self):     def test_setslice_taggedData_rank2_expandedData_RN(self):
6378        arg=Data(numarray.array([[8.0, 6.0, 2.0, 1.0], [3.0, 6.0, 8.0, 5.0], [2.0, 1.0, 7.0, 6.0]]),self.functionspace)        arg=Data(numarray.array([[8.0, 6.0, 2.0, 1.0], [3.0, 6.0, 8.0, 5.0], [2.0, 1.0, 7.0, 6.0]]),self.functionspace)
6379        arg.setTaggedValue(1,numarray.array([[1.0, 4.0, 5.0, 2.0], [1.0, 6.0, 6.0, 5.0], [2.0, 6.0, 7.0, 2.0]]))        arg.setTaggedValue(1,numarray.array([[1.0, 4.0, 5.0, 2.0], [1.0, 6.0, 6.0, 5.0], [2.0, 6.0, 7.0, 2.0]]))
6380        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6381        val=msk_val*numarray.array([[7.0, 3.0, 5.0, 3.0]])+(1.-msk_val)*numarray.array([[7.0, 8.0, 8.0, 2.0]])        val=msk_val*numarray.array([[7.0, 3.0, 5.0, 3.0]])+(1.-msk_val)*numarray.array([[7.0, 8.0, 8.0, 2.0]])
6382        arg[1:2]=val        arg[1:2]=val
6383        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6415  class Test_util_slicing_with_tagged_data Line 6415  class Test_util_slicing_with_tagged_data
6415     def test_setslice_taggedData_rank2_expandedData_PP(self):     def test_setslice_taggedData_rank2_expandedData_PP(self):
6416        arg=Data(numarray.array([[2.0, 5.0, 5.0, 2.0], [5.0, 2.0, 7.0, 2.0], [3.0, 2.0, 5.0, 6.0]]),self.functionspace)        arg=Data(numarray.array([[2.0, 5.0, 5.0, 2.0], [5.0, 2.0, 7.0, 2.0], [3.0, 2.0, 5.0, 6.0]]),self.functionspace)
6417        arg.setTaggedValue(1,numarray.array([[3.0, 1.0, 1.0, 6.0], [3.0, 8.0, 3.0, 1.0], [8.0, 7.0, 6.0, 7.0]]))        arg.setTaggedValue(1,numarray.array([[3.0, 1.0, 1.0, 6.0], [3.0, 8.0, 3.0, 1.0], [8.0, 7.0, 6.0, 7.0]]))
6418        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6419        val=(1.-msk_val)*(1.0)+msk_val*(1.0)        val=(1.-msk_val)*(1.0)+msk_val*(1.0)
6420        arg[1,2]=val        arg[1,2]=val
6421        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6453  class Test_util_slicing_with_tagged_data Line 6453  class Test_util_slicing_with_tagged_data
6453     def test_setslice_taggedData_rank3_expandedData_PCN(self):     def test_setslice_taggedData_rank3_expandedData_PCN(self):
6454        arg=Data(numarray.array([[[3.0, 7.0, 5.0], [6.0, 2.0, 4.0], [5.0, 5.0, 6.0], [7.0, 2.0, 3.0]], [[5.0, 3.0, 6.0], [6.0, 5.0, 7.0], [5.0, 2.0, 5.0], [6.0, 8.0, 5.0]], [[2.0, 4.0, 8.0], [7.0, 2.0, 2.0], [7.0, 5.0, 1.0], [7.0, 6.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 7.0, 5.0], [6.0, 2.0, 4.0], [5.0, 5.0, 6.0], [7.0, 2.0, 3.0]], [[5.0, 3.0, 6.0], [6.0, 5.0, 7.0], [5.0, 2.0, 5.0], [6.0, 8.0, 5.0]], [[2.0, 4.0, 8.0], [7.0, 2.0, 2.0], [7.0, 5.0, 1.0], [7.0, 6.0, 4.0]]]),self.functionspace)
6455        arg.setTaggedValue(1,numarray.array([[[4.0, 6.0, 1.0], [5.0, 8.0, 2.0], [1.0, 7.0, 7.0], [3.0, 5.0, 5.0]], [[8.0, 7.0, 6.0], [5.0, 5.0, 2.0], [7.0, 5.0, 6.0], [6.0, 1.0, 4.0]], [[5.0, 3.0, 4.0], [6.0, 7.0, 8.0], [7.0, 2.0, 5.0], [6.0, 4.0, 6.0]]]))        arg.setTaggedValue(1,numarray.array([[[4.0, 6.0, 1.0], [5.0, 8.0, 2.0], [1.0, 7.0, 7.0], [3.0, 5.0, 5.0]], [[8.0, 7.0, 6.0], [5.0, 5.0, 2.0], [7.0, 5.0, 6.0], [6.0, 1.0, 4.0]], [[5.0, 3.0, 4.0], [6.0, 7.0, 8.0], [7.0, 2.0, 5.0], [6.0, 4.0, 6.0]]]))
6456        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6457        val=msk_val*numarray.array([[5.0, 4.0, 5.0], [7.0, 2.0, 8.0], [1.0, 2.0, 1.0], [8.0, 5.0, 5.0]])+(1.-msk_val)*numarray.array([[2.0, 6.0, 5.0], [4.0, 7.0, 2.0], [3.0, 2.0, 6.0], [6.0, 5.0, 8.0]])        val=msk_val*numarray.array([[5.0, 4.0, 5.0], [7.0, 2.0, 8.0], [1.0, 2.0, 1.0], [8.0, 5.0, 5.0]])+(1.-msk_val)*numarray.array([[2.0, 6.0, 5.0], [4.0, 7.0, 2.0], [3.0, 2.0, 6.0], [6.0, 5.0, 8.0]])
6458        arg[1,:]=val        arg[1,:]=val
6459        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6491  class Test_util_slicing_with_tagged_data Line 6491  class Test_util_slicing_with_tagged_data
6491     def test_setslice_taggedData_rank3_expandedData_UCL(self):     def test_setslice_taggedData_rank3_expandedData_UCL(self):
6492        arg=Data(numarray.array([[[4.0, 3.0, 2.0], [2.0, 8.0, 3.0], [6.0, 8.0, 1.0], [6.0, 6.0, 2.0]], [[2.0, 7.0, 3.0], [6.0, 4.0, 8.0], [4.0, 6.0, 5.0], [3.0, 7.0, 4.0]], [[7.0, 4.0, 4.0], [7.0, 8.0, 5.0], [7.0, 7.0, 3.0], [8.0, 2.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 3.0, 2.0], [2.0, 8.0, 3.0], [6.0, 8.0, 1.0], [6.0, 6.0, 2.0]], [[2.0, 7.0, 3.0], [6.0, 4.0, 8.0], [4.0, 6.0, 5.0], [3.0, 7.0, 4.0]], [[7.0, 4.0, 4.0], [7.0, 8.0, 5.0], [7.0, 7.0, 3.0], [8.0, 2.0, 7.0]]]),self.functionspace)
6493        arg.setTaggedValue(1,numarray.array([[[1.0, 4.0, 1.0], [6.0, 1.0, 5.0], [5.0, 8.0, 6.0], [5.0, 2.0, 2.0]], [[3.0, 8.0, 1.0], [8.0, 7.0, 8.0], [6.0, 8.0, 5.0], [7.0, 1.0, 3.0]], [[3.0, 7.0, 2.0], [4.0, 6.0, 4.0], [5.0, 7.0, 8.0], [8.0, 5.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 4.0, 1.0], [6.0, 1.0, 5.0], [5.0, 8.0, 6.0], [5.0, 2.0, 2.0]], [[3.0, 8.0, 1.0], [8.0, 7.0, 8.0], [6.0, 8.0, 5.0], [7.0, 1.0, 3.0]], [[3.0, 7.0, 2.0], [4.0, 6.0, 4.0], [5.0, 7.0, 8.0], [8.0, 5.0, 4.0]]]))
6494        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6495        val=msk_val*numarray.array([[[1.0], [6.0], [5.0], [2.0]], [[1.0], [8.0], [3.0], [5.0]]])+(1.-msk_val)*numarray.array([[[2.0], [7.0], [8.0], [3.0]], [[2.0], [8.0], [7.0], [3.0]]])        val=msk_val*numarray.array([[[1.0], [6.0], [5.0], [2.0]], [[1.0], [8.0], [3.0], [5.0]]])+(1.-msk_val)*numarray.array([[[2.0], [7.0], [8.0], [3.0]], [[2.0], [8.0], [7.0], [3.0]]])
6496        arg[:2,:,2:]=val        arg[:2,:,2:]=val
6497        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6529  class Test_util_slicing_with_tagged_data Line 6529  class Test_util_slicing_with_tagged_data
6529     def test_setslice_taggedData_rank3_expandedData_LCL(self):     def test_setslice_taggedData_rank3_expandedData_LCL(self):
6530        arg=Data(numarray.array([[[1.0, 1.0, 5.0], [6.0, 1.0, 6.0], [8.0, 3.0, 1.0], [8.0, 3.0, 4.0]], [[7.0, 4.0, 6.0], [2.0, 4.0, 4.0], [7.0, 3.0, 7.0], [3.0, 7.0, 3.0]], [[3.0, 3.0, 3.0], [4.0, 5.0, 6.0], [2.0, 6.0, 7.0], [3.0, 8.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 1.0, 5.0], [6.0, 1.0, 6.0], [8.0, 3.0, 1.0], [8.0, 3.0, 4.0]], [[7.0, 4.0, 6.0], [2.0, 4.0, 4.0], [7.0, 3.0, 7.0], [3.0, 7.0, 3.0]], [[3.0, 3.0, 3.0], [4.0, 5.0, 6.0], [2.0, 6.0, 7.0], [3.0, 8.0, 6.0]]]),self.functionspace)
6531        arg.setTaggedValue(1,numarray.array([[[7.0, 3.0, 4.0], [4.0, 6.0, 1.0], [5.0, 7.0, 4.0], [4.0, 1.0, 3.0]], [[3.0, 3.0, 7.0], [7.0, 1.0, 8.0], [3.0, 6.0, 2.0], [4.0, 7.0, 3.0]], [[7.0, 5.0, 3.0], [5.0, 5.0, 5.0], [8.0, 1.0, 5.0], [4.0, 7.0, 7.0]]]))        arg.setTaggedValue(1,numarray.array([[[7.0, 3.0, 4.0], [4.0, 6.0, 1.0], [5.0, 7.0, 4.0], [4.0, 1.0, 3.0]], [[3.0, 3.0, 7.0], [7.0, 1.0, 8.0], [3.0, 6.0, 2.0], [4.0, 7.0, 3.0]], [[7.0, 5.0, 3.0], [5.0, 5.0, 5.0], [8.0, 1.0, 5.0], [4.0, 7.0, 7.0]]]))
6532        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6533        val=msk_val*numarray.array([[[8.0], [2.0], [6.0], [2.0]]])+(1.-msk_val)*numarray.array([[[7.0], [3.0], [4.0], [6.0]]])        val=msk_val*numarray.array([[[8.0], [2.0], [6.0], [2.0]]])+(1.-msk_val)*numarray.array([[[7.0], [3.0], [4.0], [6.0]]])
6534        arg[2:,:,2:]=val        arg[2:,:,2:]=val
6535        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6567  class Test_util_slicing_with_tagged_data Line 6567  class Test_util_slicing_with_tagged_data
6567     def test_setslice_taggedData_rank3_expandedData_LUN(self):     def test_setslice_taggedData_rank3_expandedData_LUN(self):
6568        arg=Data(numarray.array([[[8.0, 6.0, 3.0], [8.0, 3.0, 5.0], [4.0, 3.0, 2.0], [8.0, 6.0, 8.0]], [[1.0, 4.0, 1.0], [2.0, 3.0, 3.0], [3.0, 5.0, 6.0], [3.0, 3.0, 5.0]], [[1.0, 4.0, 7.0], [6.0, 1.0, 7.0], [7.0, 1.0, 5.0], [5.0, 2.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 6.0, 3.0], [8.0, 3.0, 5.0], [4.0, 3.0, 2.0], [8.0, 6.0, 8.0]], [[1.0, 4.0, 1.0], [2.0, 3.0, 3.0], [3.0, 5.0, 6.0], [3.0, 3.0, 5.0]], [[1.0, 4.0, 7.0], [6.0, 1.0, 7.0], [7.0, 1.0, 5.0], [5.0, 2.0, 2.0]]]),self.functionspace)
6569        arg.setTaggedValue(1,numarray.array([[[3.0, 2.0, 2.0], [6.0, 5.0, 8.0], [4.0, 7.0, 7.0], [8.0, 2.0, 2.0]], [[7.0, 5.0, 4.0], [5.0, 2.0, 8.0], [3.0, 2.0, 8.0], [4.0, 2.0, 6.0]], [[6.0, 7.0, 3.0], [3.0, 3.0, 6.0], [6.0, 3.0, 1.0], [3.0, 8.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 2.0, 2.0], [6.0, 5.0, 8.0], [4.0, 7.0, 7.0], [8.0, 2.0, 2.0]], [[7.0, 5.0, 4.0], [5.0, 2.0, 8.0], [3.0, 2.0, 8.0], [4.0, 2.0, 6.0]], [[6.0, 7.0, 3.0], [3.0, 3.0, 6.0], [6.0, 3.0, 1.0], [3.0, 8.0, 8.0]]]))
6570        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6571        val=msk_val*numarray.array([[[5.0, 6.0, 5.0], [5.0, 1.0, 8.0], [1.0, 3.0, 5.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 7.0], [5.0, 7.0, 3.0], [3.0, 4.0, 3.0]]])        val=msk_val*numarray.array([[[5.0, 6.0, 5.0], [5.0, 1.0, 8.0], [1.0, 3.0, 5.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 7.0], [5.0, 7.0, 3.0], [3.0, 4.0, 3.0]]])
6572        arg[2:,:3]=val        arg[2:,:3]=val
6573        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6605  class Test_util_slicing_with_tagged_data Line 6605  class Test_util_slicing_with_tagged_data
6605     def test_setslice_taggedData_rank3_expandedData_UUR(self):     def test_setslice_taggedData_rank3_expandedData_UUR(self):
6606        arg=Data(numarray.array([[[4.0, 8.0, 2.0], [7.0, 6.0, 7.0], [4.0, 8.0, 6.0], [6.0, 6.0, 4.0]], [[3.0, 8.0, 7.0], [4.0, 5.0, 1.0], [6.0, 5.0, 1.0], [7.0, 7.0, 2.0]], [[8.0, 5.0, 4.0], [2.0, 8.0, 5.0], [1.0, 1.0, 6.0], [6.0, 7.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 8.0, 2.0], [7.0, 6.0, 7.0], [4.0, 8.0, 6.0], [6.0, 6.0, 4.0]], [[3.0, 8.0, 7.0], [4.0, 5.0, 1.0], [6.0, 5.0, 1.0], [7.0, 7.0, 2.0]], [[8.0, 5.0, 4.0], [2.0, 8.0, 5.0], [1.0, 1.0, 6.0], [6.0, 7.0, 2.0]]]),self.functionspace)
6607        arg.setTaggedValue(1,numarray.array([[[3.0, 4.0, 2.0], [8.0, 1.0, 1.0], [7.0, 3.0, 1.0], [3.0, 5.0, 5.0]], [[7.0, 2.0, 8.0], [4.0, 5.0, 3.0], [3.0, 6.0, 5.0], [3.0, 3.0, 4.0]], [[2.0, 6.0, 8.0], [3.0, 3.0, 1.0], [6.0, 8.0, 8.0], [2.0, 8.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 4.0, 2.0], [8.0, 1.0, 1.0], [7.0, 3.0, 1.0], [3.0, 5.0, 5.0]], [[7.0, 2.0, 8.0], [4.0, 5.0, 3.0], [3.0, 6.0, 5.0], [3.0, 3.0, 4.0]], [[2.0, 6.0, 8.0], [3.0, 3.0, 1.0], [6.0, 8.0, 8.0], [2.0, 8.0, 3.0]]]))
6608        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6609        val=msk_val*numarray.array([[[3.0], [7.0], [3.0]], [[6.0], [4.0], [8.0]]])+(1.-msk_val)*numarray.array([[[5.0], [6.0], [6.0]], [[4.0], [1.0], [6.0]]])        val=msk_val*numarray.array([[[3.0], [7.0], [3.0]], [[6.0], [4.0], [8.0]]])+(1.-msk_val)*numarray.array([[[5.0], [6.0], [6.0]], [[4.0], [1.0], [6.0]]])
6610        arg[:2,:3,1:2]=val        arg[:2,:3,1:2]=val
6611        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6643  class Test_util_slicing_with_tagged_data Line 6643  class Test_util_slicing_with_tagged_data
6643     def test_setslice_taggedData_rank3_expandedData_PRC(self):     def test_setslice_taggedData_rank3_expandedData_PRC(self):
6644        arg=Data(numarray.array([[[8.0, 2.0, 2.0], [3.0, 7.0, 8.0], [7.0, 3.0, 8.0], [8.0, 3.0, 4.0]], [[5.0, 7.0, 4.0], [4.0, 1.0, 3.0], [5.0, 2.0, 2.0], [5.0, 4.0, 1.0]], [[6.0, 3.0, 7.0], [8.0, 4.0, 4.0], [2.0, 3.0, 3.0], [1.0, 8.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 2.0, 2.0], [3.0, 7.0, 8.0], [7.0, 3.0, 8.0], [8.0, 3.0, 4.0]], [[5.0, 7.0, 4.0], [4.0, 1.0, 3.0], [5.0, 2.0, 2.0], [5.0, 4.0, 1.0]], [[6.0, 3.0, 7.0], [8.0, 4.0, 4.0], [2.0, 3.0, 3.0], [1.0, 8.0, 1.0]]]),self.functionspace)
6645        arg.setTaggedValue(1,numarray.array([[[6.0, 4.0, 4.0], [5.0, 1.0, 4.0], [5.0, 8.0, 3.0], [1.0, 3.0, 3.0]], [[2.0, 7.0, 1.0], [6.0, 2.0, 2.0], [2.0, 6.0, 1.0], [1.0, 4.0, 1.0]], [[2.0, 8.0, 3.0], [1.0, 7.0, 8.0], [8.0, 1.0, 6.0], [8.0, 7.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 4.0, 4.0], [5.0, 1.0, 4.0], [5.0, 8.0, 3.0], [1.0, 3.0, 3.0]], [[2.0, 7.0, 1.0], [6.0, 2.0, 2.0], [2.0, 6.0, 1.0], [1.0, 4.0, 1.0]], [[2.0, 8.0, 3.0], [1.0, 7.0, 8.0], [8.0, 1.0, 6.0], [8.0, 7.0, 8.0]]]))
6646        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6647        val=msk_val*numarray.array([[1.0, 6.0, 3.0], [4.0, 5.0, 3.0]])+(1.-msk_val)*numarray.array([[1.0, 4.0, 1.0], [3.0, 4.0, 8.0]])        val=msk_val*numarray.array([[1.0, 6.0, 3.0], [4.0, 5.0, 3.0]])+(1.-msk_val)*numarray.array([[1.0, 4.0, 1.0], [3.0, 4.0, 8.0]])
6648        arg[1,1:3,:]=val        arg[1,1:3,:]=val
6649        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6681  class Test_util_slicing_with_tagged_data Line 6681  class Test_util_slicing_with_tagged_data
6681     def test_setslice_taggedData_rank3_expandedData_UUN(self):     def test_setslice_taggedData_rank3_expandedData_UUN(self):
6682        arg=Data(numarray.array([[[4.0, 2.0, 4.0], [8.0, 6.0, 2.0], [7.0, 7.0, 6.0], [2.0, 8.0, 1.0]], [[4.0, 1.0, 4.0], [1.0, 6.0, 3.0], [6.0, 2.0, 3.0], [7.0, 3.0, 3.0]], [[7.0, 8.0, 3.0], [3.0, 1.0, 7.0], [7.0, 6.0, 5.0], [1.0, 2.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 2.0, 4.0], [8.0, 6.0, 2.0], [7.0, 7.0, 6.0], [2.0, 8.0, 1.0]], [[4.0, 1.0, 4.0], [1.0, 6.0, 3.0], [6.0, 2.0, 3.0], [7.0, 3.0, 3.0]], [[7.0, 8.0, 3.0], [3.0, 1.0, 7.0], [7.0, 6.0, 5.0], [1.0, 2.0, 2.0]]]),self.functionspace)
6683        arg.setTaggedValue(1,numarray.array([[[6.0, 6.0, 3.0], [6.0, 3.0, 2.0], [3.0, 7.0, 6.0], [2.0, 4.0, 3.0]], [[7.0, 3.0, 4.0], [8.0, 1.0, 4.0], [6.0, 8.0, 7.0], [7.0, 2.0, 2.0]], [[7.0, 6.0, 7.0], [1.0, 8.0, 7.0], [8.0, 8.0, 1.0], [2.0, 3.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 6.0, 3.0], [6.0, 3.0, 2.0], [3.0, 7.0, 6.0], [2.0, 4.0, 3.0]], [[7.0, 3.0, 4.0], [8.0, 1.0, 4.0], [6.0, 8.0, 7.0], [7.0, 2.0, 2.0]], [[7.0, 6.0, 7.0], [1.0, 8.0, 7.0], [8.0, 8.0, 1.0], [2.0, 3.0, 2.0]]]))
6684        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6685        val=msk_val*numarray.array([[[4.0, 6.0, 7.0], [7.0, 8.0, 1.0], [1.0, 5.0, 3.0]], [[4.0, 3.0, 7.0], [7.0, 2.0, 7.0], [7.0, 1.0, 1.0]]])+(1.-msk_val)*numarray.array([[[7.0, 3.0, 2.0], [5.0, 4.0, 6.0], [4.0, 6.0, 6.0]], [[1.0, 2.0, 3.0], [5.0, 7.0, 5.0], [4.0, 8.0, 7.0]]])        val=msk_val*numarray.array([[[4.0, 6.0, 7.0], [7.0, 8.0, 1.0], [1.0, 5.0, 3.0]], [[4.0, 3.0, 7.0], [7.0, 2.0, 7.0], [7.0, 1.0, 1.0]]])+(1.-msk_val)*numarray.array([[[7.0, 3.0, 2.0], [5.0, 4.0, 6.0], [4.0, 6.0, 6.0]], [[1.0, 2.0, 3.0], [5.0, 7.0, 5.0], [4.0, 8.0, 7.0]]])
6686        arg[:2,:3]=val        arg[:2,:3]=val
6687        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6719  class Test_util_slicing_with_tagged_data Line 6719  class Test_util_slicing_with_tagged_data
6719     def test_setslice_taggedData_rank3_expandedData_LCC(self):     def test_setslice_taggedData_rank3_expandedData_LCC(self):
6720        arg=Data(numarray.array([[[7.0, 6.0, 3.0], [3.0, 5.0, 8.0], [5.0, 4.0, 2.0], [5.0, 4.0, 4.0]], [[5.0, 8.0, 6.0], [4.0, 1.0, 1.0], [7.0, 8.0, 8.0], [5.0, 5.0, 2.0]], [[1.0, 1.0, 5.0], [1.0, 3.0, 1.0], [2.0, 5.0, 8.0], [1.0, 8.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 6.0, 3.0], [3.0, 5.0, 8.0], [5.0, 4.0, 2.0], [5.0, 4.0, 4.0]], [[5.0, 8.0, 6.0], [4.0, 1.0, 1.0], [7.0, 8.0, 8.0], [5.0, 5.0, 2.0]], [[1.0, 1.0, 5.0], [1.0, 3.0, 1.0], [2.0, 5.0, 8.0], [1.0, 8.0, 4.0]]]),self.functionspace)
6721        arg.setTaggedValue(1,numarray.array([[[3.0, 3.0, 8.0], [4.0, 4.0, 1.0], [2.0, 4.0, 4.0], [2.0, 1.0, 1.0]], [[6.0, 5.0, 8.0], [6.0, 7.0, 4.0], [6.0, 6.0, 4.0], [1.0, 6.0, 6.0]], [[6.0, 6.0, 1.0], [4.0, 1.0, 4.0], [2.0, 1.0, 4.0], [3.0, 4.0, 6.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 3.0, 8.0], [4.0, 4.0, 1.0], [2.0, 4.0, 4.0], [2.0, 1.0, 1.0]], [[6.0, 5.0, 8.0], [6.0, 7.0, 4.0], [6.0, 6.0, 4.0], [1.0, 6.0, 6.0]], [[6.0, 6.0, 1.0], [4.0, 1.0, 4.0], [2.0, 1.0, 4.0], [3.0, 4.0, 6.0]]]))
6722        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6723        val=msk_val*numarray.array([[[3.0, 6.0, 2.0], [3.0, 3.0, 4.0], [4.0, 8.0, 8.0], [8.0, 1.0, 6.0]]])+(1.-msk_val)*numarray.array([[[4.0, 7.0, 6.0], [4.0, 4.0, 7.0], [3.0, 1.0, 2.0], [1.0, 5.0, 3.0]]])        val=msk_val*numarray.array([[[3.0, 6.0, 2.0], [3.0, 3.0, 4.0], [4.0, 8.0, 8.0], [8.0, 1.0, 6.0]]])+(1.-msk_val)*numarray.array([[[4.0, 7.0, 6.0], [4.0, 4.0, 7.0], [3.0, 1.0, 2.0], [1.0, 5.0, 3.0]]])
6724        arg[2:,:,:]=val        arg[2:,:,:]=val
6725        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6757  class Test_util_slicing_with_tagged_data Line 6757  class Test_util_slicing_with_tagged_data
6757     def test_setslice_taggedData_rank3_expandedData_LPR(self):     def test_setslice_taggedData_rank3_expandedData_LPR(self):
6758        arg=Data(numarray.array([[[6.0, 6.0, 5.0], [3.0, 7.0, 8.0], [2.0, 5.0, 1.0], [6.0, 8.0, 8.0]], [[5.0, 3.0, 3.0], [8.0, 8.0, 6.0], [1.0, 5.0, 1.0], [8.0, 5.0, 8.0]], [[2.0, 5.0, 6.0], [2.0, 4.0, 2.0], [8.0, 2.0, 4.0], [8.0, 6.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[6.0, 6.0, 5.0], [3.0, 7.0, 8.0], [2.0, 5.0, 1.0], [6.0, 8.0, 8.0]], [[5.0, 3.0, 3.0], [8.0, 8.0, 6.0], [1.0, 5.0, 1.0], [8.0, 5.0, 8.0]], [[2.0, 5.0, 6.0], [2.0, 4.0, 2.0], [8.0, 2.0, 4.0], [8.0, 6.0, 4.0]]]),self.functionspace)
6759        arg.setTaggedValue(1,numarray.array([[[8.0, 1.0, 7.0], [6.0, 4.0, 4.0], [2.0, 5.0, 4.0], [4.0, 7.0, 8.0]], [[6.0, 5.0, 8.0], [1.0, 1.0, 5.0], [1.0, 4.0, 2.0], [8.0, 3.0, 8.0]], [[5.0, 8.0, 3.0], [1.0, 4.0, 4.0], [5.0, 8.0, 6.0], [1.0, 7.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 1.0, 7.0], [6.0, 4.0, 4.0], [2.0, 5.0, 4.0], [4.0, 7.0, 8.0]], [[6.0, 5.0, 8.0], [1.0, 1.0, 5.0], [1.0, 4.0, 2.0], [8.0, 3.0, 8.0]], [[5.0, 8.0, 3.0], [1.0, 4.0, 4.0], [5.0, 8.0, 6.0], [1.0, 7.0, 8.0]]]))
6760        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6761        val=msk_val*numarray.array([[2.0]])+(1.-msk_val)*numarray.array([[7.0]])        val=msk_val*numarray.array([[2.0]])+(1.-msk_val)*numarray.array([[7.0]])
6762        arg[2:,2,1:2]=val        arg[2:,2,1:2]=val
6763        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6795  class Test_util_slicing_with_tagged_data Line 6795  class Test_util_slicing_with_tagged_data
6795     def test_setslice_taggedData_rank3_expandedData_RRN(self):     def test_setslice_taggedData_rank3_expandedData_RRN(self):
6796        arg=Data(numarray.array([[[7.0, 7.0, 7.0], [4.0, 5.0, 6.0], [6.0, 4.0, 4.0], [5.0, 8.0, 1.0]], [[3.0, 2.0, 2.0], [4.0, 7.0, 5.0], [8.0, 3.0, 5.0], [6.0, 5.0, 6.0]], [[5.0, 8.0, 4.0], [4.0, 5.0, 5.0], [1.0, 4.0, 4.0], [1.0, 1.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 7.0, 7.0], [4.0, 5.0, 6.0], [6.0, 4.0, 4.0], [5.0, 8.0, 1.0]], [[3.0, 2.0, 2.0], [4.0, 7.0, 5.0], [8.0, 3.0, 5.0], [6.0, 5.0, 6.0]], [[5.0, 8.0, 4.0], [4.0, 5.0, 5.0], [1.0, 4.0, 4.0], [1.0, 1.0, 4.0]]]),self.functionspace)
6797        arg.setTaggedValue(1,numarray.array([[[3.0, 7.0, 7.0], [8.0, 4.0, 3.0], [1.0, 7.0, 7.0], [3.0, 7.0, 7.0]], [[6.0, 6.0, 5.0], [8.0, 5.0, 2.0], [3.0, 4.0, 1.0], [1.0, 2.0, 4.0]], [[3.0, 6.0, 8.0], [5.0, 8.0, 7.0], [6.0, 4.0, 1.0], [4.0, 5.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 7.0, 7.0], [8.0, 4.0, 3.0], [1.0, 7.0, 7.0], [3.0, 7.0, 7.0]], [[6.0, 6.0, 5.0], [8.0, 5.0, 2.0], [3.0, 4.0, 1.0], [1.0, 2.0, 4.0]], [[3.0, 6.0, 8.0], [5.0, 8.0, 7.0], [6.0, 4.0, 1.0], [4.0, 5.0, 2.0]]]))
6798        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6799        val=msk_val*numarray.array([[[6.0, 4.0, 5.0], [1.0, 1.0, 7.0]]])+(1.-msk_val)*numarray.array([[[2.0, 4.0, 6.0], [8.0, 6.0, 2.0]]])        val=msk_val*numarray.array([[[6.0, 4.0, 5.0], [1.0, 1.0, 7.0]]])+(1.-msk_val)*numarray.array([[[2.0, 4.0, 6.0], [8.0, 6.0, 2.0]]])
6800        arg[1:2,1:3]=val        arg[1:2,1:3]=val
6801        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6833  class Test_util_slicing_with_tagged_data Line 6833  class Test_util_slicing_with_tagged_data
6833     def test_setslice_taggedData_rank3_expandedData_URC(self):     def test_setslice_taggedData_rank3_expandedData_URC(self):
6834        arg=Data(numarray.array([[[1.0, 1.0, 8.0], [3.0, 7.0, 3.0], [5.0, 2.0, 1.0], [4.0, 6.0, 3.0]], [[6.0, 8.0, 2.0], [1.0, 4.0, 1.0], [6.0, 2.0, 1.0], [3.0, 5.0, 4.0]], [[1.0, 4.0, 8.0], [1.0, 8.0, 6.0], [4.0, 2.0, 6.0], [6.0, 7.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 1.0, 8.0], [3.0, 7.0, 3.0], [5.0, 2.0, 1.0], [4.0, 6.0, 3.0]], [[6.0, 8.0, 2.0], [1.0, 4.0, 1.0], [6.0, 2.0, 1.0], [3.0, 5.0, 4.0]], [[1.0, 4.0, 8.0], [1.0, 8.0, 6.0], [4.0, 2.0, 6.0], [6.0, 7.0, 4.0]]]),self.functionspace)
6835        arg.setTaggedValue(1,numarray.array([[[6.0, 3.0, 2.0], [6.0, 7.0, 5.0], [4.0, 7.0, 8.0], [5.0, 3.0, 3.0]], [[1.0, 8.0, 2.0], [4.0, 1.0, 1.0], [1.0, 6.0, 6.0], [5.0, 5.0, 2.0]], [[2.0, 5.0, 8.0], [8.0, 1.0, 3.0], [3.0, 4.0, 6.0], [7.0, 6.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 3.0, 2.0], [6.0, 7.0, 5.0], [4.0, 7.0, 8.0], [5.0, 3.0, 3.0]], [[1.0, 8.0, 2.0], [4.0, 1.0, 1.0], [1.0, 6.0, 6.0], [5.0, 5.0, 2.0]], [[2.0, 5.0, 8.0], [8.0, 1.0, 3.0], [3.0, 4.0, 6.0], [7.0, 6.0, 4.0]]]))
6836        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6837        val=msk_val*numarray.array([[[6.0, 6.0, 5.0], [2.0, 8.0, 6.0]], [[3.0, 8.0, 8.0], [4.0, 3.0, 4.0]]])+(1.-msk_val)*numarray.array([[[3.0, 7.0, 8.0], [6.0, 5.0, 2.0]], [[8.0, 8.0, 8.0], [4.0, 2.0, 2.0]]])        val=msk_val*numarray.array([[[6.0, 6.0, 5.0], [2.0, 8.0, 6.0]], [[3.0, 8.0, 8.0], [4.0, 3.0, 4.0]]])+(1.-msk_val)*numarray.array([[[3.0, 7.0, 8.0], [6.0, 5.0, 2.0]], [[8.0, 8.0, 8.0], [4.0, 2.0, 2.0]]])
6838        arg[:2,1:3,:]=val        arg[:2,1:3,:]=val
6839        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6871  class Test_util_slicing_with_tagged_data Line 6871  class Test_util_slicing_with_tagged_data
6871     def test_setslice_taggedData_rank3_expandedData_RCL(self):     def test_setslice_taggedData_rank3_expandedData_RCL(self):
6872        arg=Data(numarray.array([[[5.0, 7.0, 3.0], [7.0, 3.0, 2.0], [6.0, 7.0, 8.0], [3.0, 2.0, 7.0]], [[1.0, 1.0, 1.0], [5.0, 2.0, 1.0], [2.0, 3.0, 1.0], [4.0, 1.0, 1.0]], [[2.0, 2.0, 2.0], [5.0, 8.0, 3.0], [6.0, 6.0, 8.0], [6.0, 7.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[5.0, 7.0, 3.0], [7.0, 3.0, 2.0], [6.0, 7.0, 8.0], [3.0, 2.0, 7.0]], [[1.0, 1.0, 1.0], [5.0, 2.0, 1.0], [2.0, 3.0, 1.0], [4.0, 1.0, 1.0]], [[2.0, 2.0, 2.0], [5.0, 8.0, 3.0], [6.0, 6.0, 8.0], [6.0, 7.0, 3.0]]]),self.functionspace)
6873        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 3.0], [1.0, 4.0, 5.0], [7.0, 6.0, 6.0], [6.0, 3.0, 7.0]], [[5.0, 2.0, 8.0], [7.0, 7.0, 1.0], [8.0, 3.0, 1.0], [3.0, 7.0, 4.0]], [[3.0, 5.0, 4.0], [3.0, 6.0, 8.0], [4.0, 8.0, 1.0], [3.0, 3.0, 7.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 3.0], [1.0, 4.0, 5.0], [7.0, 6.0, 6.0], [6.0, 3.0, 7.0]], [[5.0, 2.0, 8.0], [7.0, 7.0, 1.0], [8.0, 3.0, 1.0], [3.0, 7.0, 4.0]], [[3.0, 5.0, 4.0], [3.0, 6.0, 8.0], [4.0, 8.0, 1.0], [3.0, 3.0, 7.0]]]))
6874        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6875        val=msk_val*numarray.array([[[3.0], [6.0], [6.0], [1.0]]])+(1.-msk_val)*numarray.array([[[7.0], [1.0], [6.0], [1.0]]])        val=msk_val*numarray.array([[[3.0], [6.0], [6.0], [1.0]]])+(1.-msk_val)*numarray.array([[[7.0], [1.0], [6.0], [1.0]]])
6876        arg[1:2,:,2:]=val        arg[1:2,:,2:]=val
6877        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6909  class Test_util_slicing_with_tagged_data Line 6909  class Test_util_slicing_with_tagged_data
6909     def test_setslice_taggedData_rank3_expandedData_RCC(self):     def test_setslice_taggedData_rank3_expandedData_RCC(self):
6910        arg=Data(numarray.array([[[3.0, 2.0, 3.0], [2.0, 3.0, 6.0], [1.0, 1.0, 1.0], [6.0, 5.0, 6.0]], [[2.0, 4.0, 5.0], [3.0, 4.0, 1.0], [3.0, 8.0, 3.0], [3.0, 4.0, 2.0]], [[5.0, 5.0, 5.0], [4.0, 2.0, 1.0], [7.0, 2.0, 1.0], [3.0, 6.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 2.0, 3.0], [2.0, 3.0, 6.0], [1.0, 1.0, 1.0], [6.0, 5.0, 6.0]], [[2.0, 4.0, 5.0], [3.0, 4.0, 1.0], [3.0, 8.0, 3.0], [3.0, 4.0, 2.0]], [[5.0, 5.0, 5.0], [4.0, 2.0, 1.0], [7.0, 2.0, 1.0], [3.0, 6.0, 3.0]]]),self.functionspace)
6911        arg.setTaggedValue(1,numarray.array([[[5.0, 2.0, 5.0], [2.0, 1.0, 8.0], [4.0, 7.0, 4.0], [3.0, 2.0, 5.0]], [[5.0, 4.0, 7.0], [2.0, 2.0, 2.0], [7.0, 2.0, 3.0], [2.0, 4.0, 2.0]], [[8.0, 6.0, 1.0], [2.0, 4.0, 4.0], [5.0, 1.0, 8.0], [7.0, 6.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[5.0, 2.0, 5.0], [2.0, 1.0, 8.0], [4.0, 7.0, 4.0], [3.0, 2.0, 5.0]], [[5.0, 4.0, 7.0], [2.0, 2.0, 2.0], [7.0, 2.0, 3.0], [2.0, 4.0, 2.0]], [[8.0, 6.0, 1.0], [2.0, 4.0, 4.0], [5.0, 1.0, 8.0], [7.0, 6.0, 5.0]]]))
6912        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6913        val=msk_val*numarray.array([[[3.0, 4.0, 1.0], [5.0, 7.0, 6.0], [7.0, 1.0, 8.0], [7.0, 1.0, 4.0]]])+(1.-msk_val)*numarray.array([[[5.0, 6.0, 3.0], [8.0, 4.0, 3.0], [4.0, 6.0, 7.0], [3.0, 4.0, 2.0]]])        val=msk_val*numarray.array([[[3.0, 4.0, 1.0], [5.0, 7.0, 6.0], [7.0, 1.0, 8.0], [7.0, 1.0, 4.0]]])+(1.-msk_val)*numarray.array([[[5.0, 6.0, 3.0], [8.0, 4.0, 3.0], [4.0, 6.0, 7.0], [3.0, 4.0, 2.0]]])
6914        arg[1:2,:,:]=val        arg[1:2,:,:]=val
6915        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6947  class Test_util_slicing_with_tagged_data Line 6947  class Test_util_slicing_with_tagged_data
6947     def test_setslice_taggedData_rank3_expandedData_URN(self):     def test_setslice_taggedData_rank3_expandedData_URN(self):
6948        arg=Data(numarray.array([[[6.0, 8.0, 5.0], [5.0, 7.0, 3.0], [4.0, 2.0, 1.0], [5.0, 7.0, 3.0]], [[5.0, 3.0, 2.0], [8.0, 3.0, 2.0], [7.0, 3.0, 3.0], [5.0, 7.0, 5.0]], [[2.0, 8.0, 6.0], [1.0, 3.0, 7.0], [2.0, 7.0, 5.0], [1.0, 6.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[6.0, 8.0, 5.0], [5.0, 7.0, 3.0], [4.0, 2.0, 1.0], [5.0, 7.0, 3.0]], [[5.0, 3.0, 2.0], [8.0, 3.0, 2.0], [7.0, 3.0, 3.0], [5.0, 7.0, 5.0]], [[2.0, 8.0, 6.0], [1.0, 3.0, 7.0], [2.0, 7.0, 5.0], [1.0, 6.0, 7.0]]]),self.functionspace)
6949        arg.setTaggedValue(1,numarray.array([[[8.0, 4.0, 8.0], [1.0, 3.0, 8.0], [3.0, 7.0, 1.0], [3.0, 4.0, 3.0]], [[3.0, 5.0, 1.0], [8.0, 6.0, 5.0], [3.0, 6.0, 5.0], [6.0, 3.0, 1.0]], [[5.0, 6.0, 7.0], [2.0, 6.0, 1.0], [7.0, 6.0, 4.0], [8.0, 6.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 4.0, 8.0], [1.0, 3.0, 8.0], [3.0, 7.0, 1.0], [3.0, 4.0, 3.0]], [[3.0, 5.0, 1.0], [8.0, 6.0, 5.0], [3.0, 6.0, 5.0], [6.0, 3.0, 1.0]], [[5.0, 6.0, 7.0], [2.0, 6.0, 1.0], [7.0, 6.0, 4.0], [8.0, 6.0, 8.0]]]))
6950        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6951        val=msk_val*numarray.array([[[3.0, 2.0, 6.0], [1.0, 7.0, 4.0]], [[8.0, 5.0, 3.0], [5.0, 5.0, 4.0]]])+(1.-msk_val)*numarray.array([[[5.0, 5.0, 5.0], [1.0, 3.0, 7.0]], [[2.0, 8.0, 2.0], [3.0, 1.0, 4.0]]])        val=msk_val*numarray.array([[[3.0, 2.0, 6.0], [1.0, 7.0, 4.0]], [[8.0, 5.0, 3.0], [5.0, 5.0, 4.0]]])+(1.-msk_val)*numarray.array([[[5.0, 5.0, 5.0], [1.0, 3.0, 7.0]], [[2.0, 8.0, 2.0], [3.0, 1.0, 4.0]]])
6952        arg[:2,1:3]=val        arg[:2,1:3]=val
6953        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 6985  class Test_util_slicing_with_tagged_data Line 6985  class Test_util_slicing_with_tagged_data
6985     def test_setslice_taggedData_rank3_expandedData_CUN(self):     def test_setslice_taggedData_rank3_expandedData_CUN(self):
6986        arg=Data(numarray.array([[[8.0, 7.0, 8.0], [2.0, 6.0, 2.0], [5.0, 2.0, 5.0], [6.0, 2.0, 1.0]], [[8.0, 1.0, 3.0], [4.0, 3.0, 6.0], [6.0, 1.0, 6.0], [3.0, 1.0, 7.0]], [[7.0, 4.0, 4.0], [6.0, 1.0, 6.0], [2.0, 5.0, 6.0], [2.0, 6.0, 8.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 7.0, 8.0], [2.0, 6.0, 2.0], [5.0, 2.0, 5.0], [6.0, 2.0, 1.0]], [[8.0, 1.0, 3.0], [4.0, 3.0, 6.0], [6.0, 1.0, 6.0], [3.0, 1.0, 7.0]], [[7.0, 4.0, 4.0], [6.0, 1.0, 6.0], [2.0, 5.0, 6.0], [2.0, 6.0, 8.0]]]),self.functionspace)
6987        arg.setTaggedValue(1,numarray.array([[[2.0, 5.0, 8.0], [1.0, 8.0, 4.0], [3.0, 5.0, 5.0], [1.0, 5.0, 7.0]], [[2.0, 6.0, 8.0], [4.0, 5.0, 5.0], [3.0, 4.0, 8.0], [2.0, 2.0, 7.0]], [[3.0, 6.0, 1.0], [1.0, 8.0, 4.0], [1.0, 6.0, 5.0], [7.0, 1.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 5.0, 8.0], [1.0, 8.0, 4.0], [3.0, 5.0, 5.0], [1.0, 5.0, 7.0]], [[2.0, 6.0, 8.0], [4.0, 5.0, 5.0], [3.0, 4.0, 8.0], [2.0, 2.0, 7.0]], [[3.0, 6.0, 1.0], [1.0, 8.0, 4.0], [1.0, 6.0, 5.0], [7.0, 1.0, 3.0]]]))
6988        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
6989        val=msk_val*numarray.array([[[5.0, 3.0, 5.0], [5.0, 4.0, 5.0], [7.0, 8.0, 8.0]], [[8.0, 4.0, 8.0], [5.0, 8.0, 4.0], [2.0, 6.0, 3.0]], [[1.0, 4.0, 7.0], [2.0, 8.0, 5.0], [3.0, 4.0, 4.0]]])+(1.-msk_val)*numarray.array([[[4.0, 7.0, 2.0], [2.0, 7.0, 1.0], [7.0, 7.0, 5.0]], [[1.0, 3.0, 3.0], [6.0, 1.0, 2.0], [4.0, 4.0, 7.0]], [[3.0, 8.0, 6.0], [6.0, 7.0, 7.0], [3.0, 8.0, 7.0]]])        val=msk_val*numarray.array([[[5.0, 3.0, 5.0], [5.0, 4.0, 5.0], [7.0, 8.0, 8.0]], [[8.0, 4.0, 8.0], [5.0, 8.0, 4.0], [2.0, 6.0, 3.0]], [[1.0, 4.0, 7.0], [2.0, 8.0, 5.0], [3.0, 4.0, 4.0]]])+(1.-msk_val)*numarray.array([[[4.0, 7.0, 2.0], [2.0, 7.0, 1.0], [7.0, 7.0, 5.0]], [[1.0, 3.0, 3.0], [6.0, 1.0, 2.0], [4.0, 4.0, 7.0]], [[3.0, 8.0, 6.0], [6.0, 7.0, 7.0], [3.0, 8.0, 7.0]]])
6990        arg[:,:3]=val        arg[:,:3]=val
6991        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7023  class Test_util_slicing_with_tagged_data Line 7023  class Test_util_slicing_with_tagged_data
7023     def test_setslice_taggedData_rank3_expandedData_RRU(self):     def test_setslice_taggedData_rank3_expandedData_RRU(self):
7024        arg=Data(numarray.array([[[7.0, 3.0, 6.0], [7.0, 6.0, 6.0], [7.0, 4.0, 2.0], [1.0, 7.0, 8.0]], [[2.0, 2.0, 6.0], [3.0, 8.0, 2.0], [8.0, 6.0, 4.0], [2.0, 8.0, 7.0]], [[4.0, 3.0, 3.0], [4.0, 5.0, 2.0], [7.0, 3.0, 4.0], [3.0, 2.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 3.0, 6.0], [7.0, 6.0, 6.0], [7.0, 4.0, 2.0], [1.0, 7.0, 8.0]], [[2.0, 2.0, 6.0], [3.0, 8.0, 2.0], [8.0, 6.0, 4.0], [2.0, 8.0, 7.0]], [[4.0, 3.0, 3.0], [4.0, 5.0, 2.0], [7.0, 3.0, 4.0], [3.0, 2.0, 2.0]]]),self.functionspace)
7025        arg.setTaggedValue(1,numarray.array([[[8.0, 3.0, 5.0], [2.0, 6.0, 7.0], [4.0, 6.0, 1.0], [8.0, 2.0, 6.0]], [[3.0, 5.0, 1.0], [6.0, 4.0, 7.0], [1.0, 6.0, 2.0], [1.0, 3.0, 8.0]], [[6.0, 1.0, 4.0], [3.0, 4.0, 6.0], [6.0, 3.0, 3.0], [7.0, 2.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 3.0, 5.0], [2.0, 6.0, 7.0], [4.0, 6.0, 1.0], [8.0, 2.0, 6.0]], [[3.0, 5.0, 1.0], [6.0, 4.0, 7.0], [1.0, 6.0, 2.0], [1.0, 3.0, 8.0]], [[6.0, 1.0, 4.0], [3.0, 4.0, 6.0], [6.0, 3.0, 3.0], [7.0, 2.0, 2.0]]]))
7026        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7027        val=msk_val*numarray.array([[[6.0, 2.0], [8.0, 2.0]]])+(1.-msk_val)*numarray.array([[[7.0, 4.0], [6.0, 2.0]]])        val=msk_val*numarray.array([[[6.0, 2.0], [8.0, 2.0]]])+(1.-msk_val)*numarray.array([[[7.0, 4.0], [6.0, 2.0]]])
7028        arg[1:2,1:3,:2]=val        arg[1:2,1:3,:2]=val
7029        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7061  class Test_util_slicing_with_tagged_data Line 7061  class Test_util_slicing_with_tagged_data
7061     def test_setslice_taggedData_rank3_expandedData_RUL(self):     def test_setslice_taggedData_rank3_expandedData_RUL(self):
7062        arg=Data(numarray.array([[[8.0, 6.0, 6.0], [3.0, 6.0, 4.0], [3.0, 3.0, 7.0], [1.0, 3.0, 4.0]], [[5.0, 8.0, 4.0], [5.0, 6.0, 6.0], [8.0, 2.0, 2.0], [7.0, 8.0, 7.0]], [[4.0, 6.0, 3.0], [2.0, 3.0, 4.0], [5.0, 8.0, 8.0], [4.0, 4.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 6.0, 6.0], [3.0, 6.0, 4.0], [3.0, 3.0, 7.0], [1.0, 3.0, 4.0]], [[5.0, 8.0, 4.0], [5.0, 6.0, 6.0], [8.0, 2.0, 2.0], [7.0, 8.0, 7.0]], [[4.0, 6.0, 3.0], [2.0, 3.0, 4.0], [5.0, 8.0, 8.0], [4.0, 4.0, 3.0]]]),self.functionspace)
7063        arg.setTaggedValue(1,numarray.array([[[5.0, 7.0, 6.0], [3.0, 5.0, 5.0], [1.0, 2.0, 2.0], [4.0, 6.0, 2.0]], [[2.0, 8.0, 8.0], [2.0, 4.0, 3.0], [2.0, 8.0, 1.0], [5.0, 6.0, 8.0]], [[2.0, 3.0, 7.0], [5.0, 7.0, 3.0], [8.0, 8.0, 6.0], [7.0, 4.0, 7.0]]]))        arg.setTaggedValue(1,numarray.array([[[5.0, 7.0, 6.0], [3.0, 5.0, 5.0], [1.0, 2.0, 2.0], [4.0, 6.0, 2.0]], [[2.0, 8.0, 8.0], [2.0, 4.0, 3.0], [2.0, 8.0, 1.0], [5.0, 6.0, 8.0]], [[2.0, 3.0, 7.0], [5.0, 7.0, 3.0], [8.0, 8.0, 6.0], [7.0, 4.0, 7.0]]]))
7064        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7065        val=msk_val*numarray.array([[[4.0], [2.0], [6.0]]])+(1.-msk_val)*numarray.array([[[6.0], [2.0], [8.0]]])        val=msk_val*numarray.array([[[4.0], [2.0], [6.0]]])+(1.-msk_val)*numarray.array([[[6.0], [2.0], [8.0]]])
7066        arg[1:2,:3,2:]=val        arg[1:2,:3,2:]=val
7067        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7099  class Test_util_slicing_with_tagged_data Line 7099  class Test_util_slicing_with_tagged_data
7099     def test_setslice_taggedData_rank3_expandedData_RRR(self):     def test_setslice_taggedData_rank3_expandedData_RRR(self):
7100        arg=Data(numarray.array([[[5.0, 8.0, 7.0], [1.0, 2.0, 2.0], [3.0, 2.0, 5.0], [2.0, 7.0, 2.0]], [[2.0, 7.0, 4.0], [1.0, 1.0, 8.0], [6.0, 2.0, 6.0], [8.0, 1.0, 8.0]], [[2.0, 4.0, 8.0], [4.0, 5.0, 6.0], [3.0, 6.0, 6.0], [1.0, 2.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[5.0, 8.0, 7.0], [1.0, 2.0, 2.0], [3.0, 2.0, 5.0], [2.0, 7.0, 2.0]], [[2.0, 7.0, 4.0], [1.0, 1.0, 8.0], [6.0, 2.0, 6.0], [8.0, 1.0, 8.0]], [[2.0, 4.0, 8.0], [4.0, 5.0, 6.0], [3.0, 6.0, 6.0], [1.0, 2.0, 6.0]]]),self.functionspace)
7101        arg.setTaggedValue(1,numarray.array([[[1.0, 2.0, 6.0], [7.0, 6.0, 4.0], [7.0, 1.0, 7.0], [5.0, 7.0, 8.0]], [[6.0, 8.0, 5.0], [5.0, 8.0, 8.0], [7.0, 6.0, 8.0], [2.0, 3.0, 5.0]], [[5.0, 1.0, 8.0], [1.0, 4.0, 2.0], [8.0, 7.0, 4.0], [6.0, 8.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 2.0, 6.0], [7.0, 6.0, 4.0], [7.0, 1.0, 7.0], [5.0, 7.0, 8.0]], [[6.0, 8.0, 5.0], [5.0, 8.0, 8.0], [7.0, 6.0, 8.0], [2.0, 3.0, 5.0]], [[5.0, 1.0, 8.0], [1.0, 4.0, 2.0], [8.0, 7.0, 4.0], [6.0, 8.0, 8.0]]]))
7102        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7103        val=msk_val*numarray.array([[[7.0], [4.0]]])+(1.-msk_val)*numarray.array([[[1.0], [6.0]]])        val=msk_val*numarray.array([[[7.0], [4.0]]])+(1.-msk_val)*numarray.array([[[1.0], [6.0]]])
7104        arg[1:2,1:3,1:2]=val        arg[1:2,1:3,1:2]=val
7105        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7137  class Test_util_slicing_with_tagged_data Line 7137  class Test_util_slicing_with_tagged_data
7137     def test_setslice_taggedData_rank3_expandedData_PPP(self):     def test_setslice_taggedData_rank3_expandedData_PPP(self):
7138        arg=Data(numarray.array([[[3.0, 2.0, 3.0], [8.0, 3.0, 1.0], [6.0, 8.0, 3.0], [2.0, 2.0, 3.0]], [[4.0, 1.0, 3.0], [7.0, 5.0, 8.0], [5.0, 6.0, 8.0], [3.0, 2.0, 2.0]], [[4.0, 4.0, 4.0], [4.0, 7.0, 1.0], [6.0, 6.0, 1.0], [5.0, 4.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 2.0, 3.0], [8.0, 3.0, 1.0], [6.0, 8.0, 3.0], [2.0, 2.0, 3.0]], [[4.0, 1.0, 3.0], [7.0, 5.0, 8.0], [5.0, 6.0, 8.0], [3.0, 2.0, 2.0]], [[4.0, 4.0, 4.0], [4.0, 7.0, 1.0], [6.0, 6.0, 1.0], [5.0, 4.0, 6.0]]]),self.functionspace)
7139        arg.setTaggedValue(1,numarray.array([[[5.0, 7.0, 3.0], [7.0, 7.0, 7.0], [8.0, 4.0, 8.0], [3.0, 5.0, 8.0]], [[6.0, 3.0, 5.0], [3.0, 6.0, 8.0], [4.0, 3.0, 4.0], [7.0, 3.0, 1.0]], [[1.0, 6.0, 8.0], [2.0, 2.0, 5.0], [7.0, 5.0, 6.0], [5.0, 3.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[5.0, 7.0, 3.0], [7.0, 7.0, 7.0], [8.0, 4.0, 8.0], [3.0, 5.0, 8.0]], [[6.0, 3.0, 5.0], [3.0, 6.0, 8.0], [4.0, 3.0, 4.0], [7.0, 3.0, 1.0]], [[1.0, 6.0, 8.0], [2.0, 2.0, 5.0], [7.0, 5.0, 6.0], [5.0, 3.0, 5.0]]]))
7140        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7141        val=(1.-msk_val)*(1.0)+msk_val*(1.0)        val=(1.-msk_val)*(1.0)+msk_val*(1.0)
7142        arg[1,2,1]=val        arg[1,2,1]=val
7143        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7175  class Test_util_slicing_with_tagged_data Line 7175  class Test_util_slicing_with_tagged_data
7175     def test_setslice_taggedData_rank3_expandedData_LUU(self):     def test_setslice_taggedData_rank3_expandedData_LUU(self):
7176        arg=Data(numarray.array([[[8.0, 4.0, 1.0], [4.0, 7.0, 6.0], [8.0, 7.0, 3.0], [3.0, 1.0, 5.0]], [[7.0, 2.0, 7.0], [1.0, 1.0, 3.0], [8.0, 6.0, 8.0], [5.0, 8.0, 3.0]], [[4.0, 6.0, 3.0], [2.0, 4.0, 7.0], [2.0, 8.0, 4.0], [7.0, 7.0, 8.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 4.0, 1.0], [4.0, 7.0, 6.0], [8.0, 7.0, 3.0], [3.0, 1.0, 5.0]], [[7.0, 2.0, 7.0], [1.0, 1.0, 3.0], [8.0, 6.0, 8.0], [5.0, 8.0, 3.0]], [[4.0, 6.0, 3.0], [2.0, 4.0, 7.0], [2.0, 8.0, 4.0], [7.0, 7.0, 8.0]]]),self.functionspace)
7177        arg.setTaggedValue(1,numarray.array([[[2.0, 1.0, 7.0], [5.0, 1.0, 1.0], [1.0, 3.0, 7.0], [8.0, 6.0, 3.0]], [[3.0, 1.0, 2.0], [4.0, 3.0, 8.0], [5.0, 4.0, 8.0], [5.0, 2.0, 2.0]], [[2.0, 7.0, 1.0], [8.0, 8.0, 8.0], [3.0, 1.0, 6.0], [5.0, 6.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 1.0, 7.0], [5.0, 1.0, 1.0], [1.0, 3.0, 7.0], [8.0, 6.0, 3.0]], [[3.0, 1.0, 2.0], [4.0, 3.0, 8.0], [5.0, 4.0, 8.0], [5.0, 2.0, 2.0]], [[2.0, 7.0, 1.0], [8.0, 8.0, 8.0], [3.0, 1.0, 6.0], [5.0, 6.0, 2.0]]]))
7178        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7179        val=msk_val*numarray.array([[[5.0, 1.0], [6.0, 6.0], [8.0, 6.0]]])+(1.-msk_val)*numarray.array([[[7.0, 6.0], [6.0, 1.0], [2.0, 1.0]]])        val=msk_val*numarray.array([[[5.0, 1.0], [6.0, 6.0], [8.0, 6.0]]])+(1.-msk_val)*numarray.array([[[7.0, 6.0], [6.0, 1.0], [2.0, 1.0]]])
7180        arg[2:,:3,:2]=val        arg[2:,:3,:2]=val
7181        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7213  class Test_util_slicing_with_tagged_data Line 7213  class Test_util_slicing_with_tagged_data
7213     def test_setslice_taggedData_rank3_expandedData_UPR(self):     def test_setslice_taggedData_rank3_expandedData_UPR(self):
7214        arg=Data(numarray.array([[[4.0, 8.0, 7.0], [4.0, 5.0, 7.0], [8.0, 4.0, 3.0], [5.0, 1.0, 5.0]], [[7.0, 5.0, 2.0], [5.0, 6.0, 4.0], [1.0, 7.0, 2.0], [8.0, 1.0, 7.0]], [[7.0, 1.0, 2.0], [4.0, 7.0, 1.0], [6.0, 6.0, 6.0], [7.0, 7.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 8.0, 7.0], [4.0, 5.0, 7.0], [8.0, 4.0, 3.0], [5.0, 1.0, 5.0]], [[7.0, 5.0, 2.0], [5.0, 6.0, 4.0], [1.0, 7.0, 2.0], [8.0, 1.0, 7.0]], [[7.0, 1.0, 2.0], [4.0, 7.0, 1.0], [6.0, 6.0, 6.0], [7.0, 7.0, 7.0]]]),self.functionspace)
7215        arg.setTaggedValue(1,numarray.array([[[1.0, 3.0, 1.0], [2.0, 4.0, 5.0], [1.0, 5.0, 6.0], [3.0, 4.0, 7.0]], [[5.0, 5.0, 1.0], [6.0, 7.0, 6.0], [6.0, 6.0, 7.0], [6.0, 4.0, 2.0]], [[3.0, 5.0, 8.0], [2.0, 2.0, 7.0], [7.0, 4.0, 3.0], [3.0, 1.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 3.0, 1.0], [2.0, 4.0, 5.0], [1.0, 5.0, 6.0], [3.0, 4.0, 7.0]], [[5.0, 5.0, 1.0], [6.0, 7.0, 6.0], [6.0, 6.0, 7.0], [6.0, 4.0, 2.0]], [[3.0, 5.0, 8.0], [2.0, 2.0, 7.0], [7.0, 4.0, 3.0], [3.0, 1.0, 4.0]]]))
7216        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7217        val=msk_val*numarray.array([[7.0], [3.0]])+(1.-msk_val)*numarray.array([[1.0], [4.0]])        val=msk_val*numarray.array([[7.0], [3.0]])+(1.-msk_val)*numarray.array([[1.0], [4.0]])
7218        arg[:2,2,1:2]=val        arg[:2,2,1:2]=val
7219        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7251  class Test_util_slicing_with_tagged_data Line 7251  class Test_util_slicing_with_tagged_data
7251     def test_setslice_taggedData_rank3_expandedData_CCU(self):     def test_setslice_taggedData_rank3_expandedData_CCU(self):
7252        arg=Data(numarray.array([[[2.0, 8.0, 3.0], [8.0, 6.0, 5.0], [8.0, 7.0, 8.0], [7.0, 8.0, 3.0]], [[4.0, 8.0, 2.0], [8.0, 3.0, 5.0], [1.0, 6.0, 2.0], [5.0, 7.0, 2.0]], [[5.0, 4.0, 5.0], [7.0, 5.0, 1.0], [7.0, 2.0, 1.0], [7.0, 8.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 8.0, 3.0], [8.0, 6.0, 5.0], [8.0, 7.0, 8.0], [7.0, 8.0, 3.0]], [[4.0, 8.0, 2.0], [8.0, 3.0, 5.0], [1.0, 6.0, 2.0], [5.0, 7.0, 2.0]], [[5.0, 4.0, 5.0], [7.0, 5.0, 1.0], [7.0, 2.0, 1.0], [7.0, 8.0, 2.0]]]),self.functionspace)
7253        arg.setTaggedValue(1,numarray.array([[[1.0, 6.0, 7.0], [6.0, 3.0, 4.0], [4.0, 2.0, 1.0], [2.0, 6.0, 1.0]], [[6.0, 3.0, 2.0], [8.0, 2.0, 1.0], [2.0, 7.0, 8.0], [7.0, 7.0, 1.0]], [[7.0, 1.0, 7.0], [6.0, 1.0, 7.0], [1.0, 6.0, 6.0], [2.0, 6.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 6.0, 7.0], [6.0, 3.0, 4.0], [4.0, 2.0, 1.0], [2.0, 6.0, 1.0]], [[6.0, 3.0, 2.0], [8.0, 2.0, 1.0], [2.0, 7.0, 8.0], [7.0, 7.0, 1.0]], [[7.0, 1.0, 7.0], [6.0, 1.0, 7.0], [1.0, 6.0, 6.0], [2.0, 6.0, 5.0]]]))
7254        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7255        val=msk_val*numarray.array([[[8.0, 2.0], [5.0, 2.0], [7.0, 6.0], [1.0, 5.0]], [[1.0, 5.0], [7.0, 1.0], [1.0, 6.0], [2.0, 7.0]], [[6.0, 8.0], [8.0, 3.0], [2.0, 5.0], [3.0, 4.0]]])+(1.-msk_val)*numarray.array([[[6.0, 2.0], [4.0, 5.0], [7.0, 3.0], [5.0, 8.0]], [[6.0, 3.0], [8.0, 6.0], [3.0, 6.0], [2.0, 6.0]], [[7.0, 8.0], [3.0, 1.0], [7.0, 6.0], [3.0, 8.0]]])        val=msk_val*numarray.array([[[8.0, 2.0], [5.0, 2.0], [7.0, 6.0], [1.0, 5.0]], [[1.0, 5.0], [7.0, 1.0], [1.0, 6.0], [2.0, 7.0]], [[6.0, 8.0], [8.0, 3.0], [2.0, 5.0], [3.0, 4.0]]])+(1.-msk_val)*numarray.array([[[6.0, 2.0], [4.0, 5.0], [7.0, 3.0], [5.0, 8.0]], [[6.0, 3.0], [8.0, 6.0], [3.0, 6.0], [2.0, 6.0]], [[7.0, 8.0], [3.0, 1.0], [7.0, 6.0], [3.0, 8.0]]])
7256        arg[:,:,:2]=val        arg[:,:,:2]=val
7257        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7289  class Test_util_slicing_with_tagged_data Line 7289  class Test_util_slicing_with_tagged_data
7289     def test_setslice_taggedData_rank3_expandedData_PCU(self):     def test_setslice_taggedData_rank3_expandedData_PCU(self):
7290        arg=Data(numarray.array([[[8.0, 4.0, 1.0], [7.0, 4.0, 5.0], [2.0, 8.0, 8.0], [5.0, 1.0, 6.0]], [[6.0, 5.0, 5.0], [2.0, 2.0, 3.0], [7.0, 4.0, 8.0], [3.0, 4.0, 6.0]], [[8.0, 6.0, 5.0], [5.0, 7.0, 8.0], [6.0, 4.0, 4.0], [6.0, 6.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 4.0, 1.0], [7.0, 4.0, 5.0], [2.0, 8.0, 8.0], [5.0, 1.0, 6.0]], [[6.0, 5.0, 5.0], [2.0, 2.0, 3.0], [7.0, 4.0, 8.0], [3.0, 4.0, 6.0]], [[8.0, 6.0, 5.0], [5.0, 7.0, 8.0], [6.0, 4.0, 4.0], [6.0, 6.0, 2.0]]]),self.functionspace)
7291        arg.setTaggedValue(1,numarray.array([[[3.0, 8.0, 7.0], [2.0, 1.0, 3.0], [7.0, 7.0, 3.0], [5.0, 8.0, 6.0]], [[5.0, 1.0, 8.0], [4.0, 1.0, 7.0], [1.0, 5.0, 7.0], [4.0, 1.0, 5.0]], [[8.0, 1.0, 1.0], [1.0, 7.0, 3.0], [6.0, 7.0, 6.0], [7.0, 2.0, 6.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 8.0, 7.0], [2.0, 1.0, 3.0], [7.0, 7.0, 3.0], [5.0, 8.0, 6.0]], [[5.0, 1.0, 8.0], [4.0, 1.0, 7.0], [1.0, 5.0, 7.0], [4.0, 1.0, 5.0]], [[8.0, 1.0, 1.0], [1.0, 7.0, 3.0], [6.0, 7.0, 6.0], [7.0, 2.0, 6.0]]]))
7292        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7293        val=msk_val*numarray.array([[1.0, 2.0], [3.0, 1.0], [7.0, 2.0], [2.0, 5.0]])+(1.-msk_val)*numarray.array([[1.0, 3.0], [8.0, 4.0], [1.0, 3.0], [5.0, 4.0]])        val=msk_val*numarray.array([[1.0, 2.0], [3.0, 1.0], [7.0, 2.0], [2.0, 5.0]])+(1.-msk_val)*numarray.array([[1.0, 3.0], [8.0, 4.0], [1.0, 3.0], [5.0, 4.0]])
7294        arg[1,:,:2]=val        arg[1,:,:2]=val
7295        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7327  class Test_util_slicing_with_tagged_data Line 7327  class Test_util_slicing_with_tagged_data
7327     def test_setslice_taggedData_rank3_expandedData_PPL(self):     def test_setslice_taggedData_rank3_expandedData_PPL(self):
7328        arg=Data(numarray.array([[[3.0, 2.0, 1.0], [6.0, 1.0, 2.0], [4.0, 6.0, 7.0], [8.0, 8.0, 5.0]], [[3.0, 6.0, 2.0], [1.0, 1.0, 5.0], [8.0, 7.0, 5.0], [4.0, 7.0, 8.0]], [[1.0, 5.0, 4.0], [2.0, 2.0, 7.0], [5.0, 7.0, 5.0], [2.0, 6.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 2.0, 1.0], [6.0, 1.0, 2.0], [4.0, 6.0, 7.0], [8.0, 8.0, 5.0]], [[3.0, 6.0, 2.0], [1.0, 1.0, 5.0], [8.0, 7.0, 5.0], [4.0, 7.0, 8.0]], [[1.0, 5.0, 4.0], [2.0, 2.0, 7.0], [5.0, 7.0, 5.0], [2.0, 6.0, 6.0]]]),self.functionspace)
7329        arg.setTaggedValue(1,numarray.array([[[6.0, 8.0, 4.0], [5.0, 8.0, 1.0], [4.0, 3.0, 3.0], [8.0, 3.0, 5.0]], [[6.0, 8.0, 6.0], [2.0, 5.0, 5.0], [6.0, 2.0, 1.0], [5.0, 7.0, 6.0]], [[1.0, 5.0, 1.0], [7.0, 2.0, 6.0], [4.0, 6.0, 8.0], [6.0, 4.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 8.0, 4.0], [5.0, 8.0, 1.0], [4.0, 3.0, 3.0], [8.0, 3.0, 5.0]], [[6.0, 8.0, 6.0], [2.0, 5.0, 5.0], [6.0, 2.0, 1.0], [5.0, 7.0, 6.0]], [[1.0, 5.0, 1.0], [7.0, 2.0, 6.0], [4.0, 6.0, 8.0], [6.0, 4.0, 4.0]]]))
7330        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7331        val=msk_val*numarray.array([4.0])+(1.-msk_val)*numarray.array([7.0])        val=msk_val*numarray.array([4.0])+(1.-msk_val)*numarray.array([7.0])
7332        arg[1,2,2:]=val        arg[1,2,2:]=val
7333        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7365  class Test_util_slicing_with_tagged_data Line 7365  class Test_util_slicing_with_tagged_data
7365     def test_setslice_taggedData_rank3_expandedData_CPR(self):     def test_setslice_taggedData_rank3_expandedData_CPR(self):
7366        arg=Data(numarray.array([[[7.0, 5.0, 4.0], [1.0, 4.0, 2.0], [1.0, 4.0, 7.0], [4.0, 7.0, 1.0]], [[7.0, 8.0, 6.0], [7.0, 7.0, 6.0], [4.0, 8.0, 6.0], [3.0, 3.0, 5.0]], [[2.0, 2.0, 7.0], [3.0, 8.0, 8.0], [6.0, 6.0, 1.0], [6.0, 1.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 5.0, 4.0], [1.0, 4.0, 2.0], [1.0, 4.0, 7.0], [4.0, 7.0, 1.0]], [[7.0, 8.0, 6.0], [7.0, 7.0, 6.0], [4.0, 8.0, 6.0], [3.0, 3.0, 5.0]], [[2.0, 2.0, 7.0], [3.0, 8.0, 8.0], [6.0, 6.0, 1.0], [6.0, 1.0, 7.0]]]),self.functionspace)
7367        arg.setTaggedValue(1,numarray.array([[[1.0, 6.0, 5.0], [4.0, 3.0, 8.0], [2.0, 8.0, 8.0], [2.0, 5.0, 8.0]], [[2.0, 1.0, 8.0], [3.0, 3.0, 1.0], [8.0, 7.0, 7.0], [5.0, 4.0, 6.0]], [[4.0, 7.0, 1.0], [5.0, 4.0, 8.0], [2.0, 3.0, 2.0], [3.0, 6.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 6.0, 5.0], [4.0, 3.0, 8.0], [2.0, 8.0, 8.0], [2.0, 5.0, 8.0]], [[2.0, 1.0, 8.0], [3.0, 3.0, 1.0], [8.0, 7.0, 7.0], [5.0, 4.0, 6.0]], [[4.0, 7.0, 1.0], [5.0, 4.0, 8.0], [2.0, 3.0, 2.0], [3.0, 6.0, 4.0]]]))
7368        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7369        val=msk_val*numarray.array([[5.0], [7.0], [4.0]])+(1.-msk_val)*numarray.array([[8.0], [2.0], [1.0]])        val=msk_val*numarray.array([[5.0], [7.0], [4.0]])+(1.-msk_val)*numarray.array([[8.0], [2.0], [1.0]])
7370        arg[:,2,1:2]=val        arg[:,2,1:2]=val
7371        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7403  class Test_util_slicing_with_tagged_data Line 7403  class Test_util_slicing_with_tagged_data
7403     def test_setslice_taggedData_rank3_expandedData_PCL(self):     def test_setslice_taggedData_rank3_expandedData_PCL(self):
7404        arg=Data(numarray.array([[[7.0, 4.0, 2.0], [2.0, 5.0, 3.0], [7.0, 3.0, 2.0], [6.0, 3.0, 7.0]], [[5.0, 3.0, 7.0], [5.0, 2.0, 4.0], [2.0, 5.0, 5.0], [7.0, 7.0, 7.0]], [[1.0, 4.0, 4.0], [2.0, 2.0, 6.0], [2.0, 4.0, 2.0], [3.0, 2.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 4.0, 2.0], [2.0, 5.0, 3.0], [7.0, 3.0, 2.0], [6.0, 3.0, 7.0]], [[5.0, 3.0, 7.0], [5.0, 2.0, 4.0], [2.0, 5.0, 5.0], [7.0, 7.0, 7.0]], [[1.0, 4.0, 4.0], [2.0, 2.0, 6.0], [2.0, 4.0, 2.0], [3.0, 2.0, 4.0]]]),self.functionspace)
7405        arg.setTaggedValue(1,numarray.array([[[6.0, 8.0, 1.0], [4.0, 8.0, 3.0], [4.0, 8.0, 4.0], [5.0, 5.0, 4.0]], [[3.0, 4.0, 2.0], [1.0, 5.0, 7.0], [7.0, 6.0, 8.0], [5.0, 3.0, 6.0]], [[3.0, 3.0, 3.0], [5.0, 6.0, 6.0], [6.0, 1.0, 2.0], [8.0, 7.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 8.0, 1.0], [4.0, 8.0, 3.0], [4.0, 8.0, 4.0], [5.0, 5.0, 4.0]], [[3.0, 4.0, 2.0], [1.0, 5.0, 7.0], [7.0, 6.0, 8.0], [5.0, 3.0, 6.0]], [[3.0, 3.0, 3.0], [5.0, 6.0, 6.0], [6.0, 1.0, 2.0], [8.0, 7.0, 3.0]]]))
7406        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7407        val=msk_val*numarray.array([[7.0], [4.0], [7.0], [1.0]])+(1.-msk_val)*numarray.array([[5.0], [1.0], [2.0], [2.0]])        val=msk_val*numarray.array([[7.0], [4.0], [7.0], [1.0]])+(1.-msk_val)*numarray.array([[5.0], [1.0], [2.0], [2.0]])
7408        arg[1,:,2:]=val        arg[1,:,2:]=val
7409        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7441  class Test_util_slicing_with_tagged_data Line 7441  class Test_util_slicing_with_tagged_data
7441     def test_setslice_taggedData_rank3_expandedData_LLU(self):     def test_setslice_taggedData_rank3_expandedData_LLU(self):
7442        arg=Data(numarray.array([[[3.0, 8.0, 5.0], [1.0, 3.0, 6.0], [2.0, 3.0, 7.0], [6.0, 7.0, 5.0]], [[4.0, 2.0, 7.0], [5.0, 1.0, 1.0], [1.0, 5.0, 2.0], [5.0, 4.0, 3.0]], [[8.0, 6.0, 7.0], [8.0, 7.0, 6.0], [2.0, 4.0, 3.0], [7.0, 4.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 8.0, 5.0], [1.0, 3.0, 6.0], [2.0, 3.0, 7.0], [6.0, 7.0, 5.0]], [[4.0, 2.0, 7.0], [5.0, 1.0, 1.0], [1.0, 5.0, 2.0], [5.0, 4.0, 3.0]], [[8.0, 6.0, 7.0], [8.0, 7.0, 6.0], [2.0, 4.0, 3.0], [7.0, 4.0, 5.0]]]),self.functionspace)
7443        arg.setTaggedValue(1,numarray.array([[[7.0, 3.0, 1.0], [3.0, 4.0, 3.0], [4.0, 8.0, 4.0], [1.0, 1.0, 1.0]], [[5.0, 2.0, 4.0], [8.0, 8.0, 8.0], [8.0, 5.0, 3.0], [1.0, 8.0, 1.0]], [[1.0, 3.0, 8.0], [7.0, 1.0, 8.0], [8.0, 4.0, 7.0], [4.0, 6.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[7.0, 3.0, 1.0], [3.0, 4.0, 3.0], [4.0, 8.0, 4.0], [1.0, 1.0, 1.0]], [[5.0, 2.0, 4.0], [8.0, 8.0, 8.0], [8.0, 5.0, 3.0], [1.0, 8.0, 1.0]], [[1.0, 3.0, 8.0], [7.0, 1.0, 8.0], [8.0, 4.0, 7.0], [4.0, 6.0, 2.0]]]))
7444        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7445        val=msk_val*numarray.array([[[5.0, 7.0], [7.0, 5.0]]])+(1.-msk_val)*numarray.array([[[7.0, 1.0], [6.0, 6.0]]])        val=msk_val*numarray.array([[[5.0, 7.0], [7.0, 5.0]]])+(1.-msk_val)*numarray.array([[[7.0, 1.0], [6.0, 6.0]]])
7446        arg[2:,2:,:2]=val        arg[2:,2:,:2]=val
7447        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7477  class Test_util_slicing_with_tagged_data Line 7477  class Test_util_slicing_with_tagged_data
7477     def test_setslice_taggedData_rank3_expandedData_CCC(self):     def test_setslice_taggedData_rank3_expandedData_CCC(self):
7478        arg=Data(numarray.array([[[1.0, 8.0, 2.0], [6.0, 7.0, 7.0], [2.0, 7.0, 5.0], [4.0, 5.0, 2.0]], [[5.0, 7.0, 1.0], [1.0, 2.0, 6.0], [2.0, 5.0, 3.0], [6.0, 6.0, 4.0]], [[7.0, 2.0, 3.0], [6.0, 3.0, 5.0], [1.0, 8.0, 4.0], [5.0, 6.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 8.0, 2.0], [6.0, 7.0, 7.0], [2.0, 7.0, 5.0], [4.0, 5.0, 2.0]], [[5.0, 7.0, 1.0], [1.0, 2.0, 6.0], [2.0, 5.0, 3.0], [6.0, 6.0, 4.0]], [[7.0, 2.0, 3.0], [6.0, 3.0, 5.0], [1.0, 8.0, 4.0], [5.0, 6.0, 4.0]]]),self.functionspace)
7479        arg.setTaggedValue(1,numarray.array([[[2.0, 8.0, 6.0], [3.0, 8.0, 8.0], [2.0, 2.0, 1.0], [3.0, 4.0, 4.0]], [[8.0, 5.0, 8.0], [4.0, 4.0, 1.0], [7.0, 1.0, 8.0], [4.0, 4.0, 3.0]], [[6.0, 8.0, 1.0], [8.0, 2.0, 5.0], [1.0, 6.0, 3.0], [3.0, 7.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 8.0, 6.0], [3.0, 8.0, 8.0], [2.0, 2.0, 1.0], [3.0, 4.0, 4.0]], [[8.0, 5.0, 8.0], [4.0, 4.0, 1.0], [7.0, 1.0, 8.0], [4.0, 4.0, 3.0]], [[6.0, 8.0, 1.0], [8.0, 2.0, 5.0], [1.0, 6.0, 3.0], [3.0, 7.0, 3.0]]]))
7480        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7481        val=msk_val*numarray.array([[[7.0, 7.0, 1.0], [6.0, 5.0, 5.0], [8.0, 4.0, 6.0], [1.0, 3.0, 8.0]], [[6.0, 4.0, 7.0], [5.0, 7.0, 7.0], [4.0, 5.0, 5.0], [6.0, 2.0, 2.0]], [[7.0, 4.0, 2.0], [2.0, 6.0, 1.0], [1.0, 3.0, 1.0], [3.0, 2.0, 5.0]]])+(1.-msk_val)*numarray.array([[[3.0, 8.0, 4.0], [2.0, 3.0, 3.0], [1.0, 3.0, 5.0], [6.0, 3.0, 4.0]], [[7.0, 5.0, 8.0], [1.0, 7.0, 3.0], [1.0, 6.0, 2.0], [1.0, 2.0, 6.0]], [[3.0, 1.0, 7.0], [2.0, 8.0, 3.0], [2.0, 7.0, 7.0], [8.0, 5.0, 8.0]]])        val=msk_val*numarray.array([[[7.0, 7.0, 1.0], [6.0, 5.0, 5.0], [8.0, 4.0, 6.0], [1.0, 3.0, 8.0]], [[6.0, 4.0, 7.0], [5.0, 7.0, 7.0], [4.0, 5.0, 5.0], [6.0, 2.0, 2.0]], [[7.0, 4.0, 2.0], [2.0, 6.0, 1.0], [1.0, 3.0, 1.0], [3.0, 2.0, 5.0]]])+(1.-msk_val)*numarray.array([[[3.0, 8.0, 4.0], [2.0, 3.0, 3.0], [1.0, 3.0, 5.0], [6.0, 3.0, 4.0]], [[7.0, 5.0, 8.0], [1.0, 7.0, 3.0], [1.0, 6.0, 2.0], [1.0, 2.0, 6.0]], [[3.0, 1.0, 7.0], [2.0, 8.0, 3.0], [2.0, 7.0, 7.0], [8.0, 5.0, 8.0]]])
7482        arg[:,:,:]=val        arg[:,:,:]=val
7483        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7515  class Test_util_slicing_with_tagged_data Line 7515  class Test_util_slicing_with_tagged_data
7515     def test_setslice_taggedData_rank3_expandedData_PLU(self):     def test_setslice_taggedData_rank3_expandedData_PLU(self):
7516        arg=Data(numarray.array([[[2.0, 2.0, 6.0], [2.0, 7.0, 8.0], [1.0, 4.0, 3.0], [7.0, 5.0, 1.0]], [[8.0, 6.0, 1.0], [1.0, 1.0, 7.0], [6.0, 5.0, 1.0], [4.0, 7.0, 4.0]], [[6.0, 5.0, 6.0], [4.0, 1.0, 6.0], [2.0, 2.0, 2.0], [8.0, 2.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 2.0, 6.0], [2.0, 7.0, 8.0], [1.0, 4.0, 3.0], [7.0, 5.0, 1.0]], [[8.0, 6.0, 1.0], [1.0, 1.0, 7.0], [6.0, 5.0, 1.0], [4.0, 7.0, 4.0]], [[6.0, 5.0, 6.0], [4.0, 1.0, 6.0], [2.0, 2.0, 2.0], [8.0, 2.0, 4.0]]]),self.functionspace)
7517        arg.setTaggedValue(1,numarray.array([[[4.0, 3.0, 5.0], [1.0, 6.0, 1.0], [4.0, 8.0, 2.0], [1.0, 5.0, 7.0]], [[7.0, 3.0, 1.0], [8.0, 8.0, 4.0], [4.0, 3.0, 7.0], [3.0, 4.0, 1.0]], [[7.0, 1.0, 5.0], [3.0, 5.0, 8.0], [6.0, 7.0, 3.0], [2.0, 8.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[4.0, 3.0, 5.0], [1.0, 6.0, 1.0], [4.0, 8.0, 2.0], [1.0, 5.0, 7.0]], [[7.0, 3.0, 1.0], [8.0, 8.0, 4.0], [4.0, 3.0, 7.0], [3.0, 4.0, 1.0]], [[7.0, 1.0, 5.0], [3.0, 5.0, 8.0], [6.0, 7.0, 3.0], [2.0, 8.0, 5.0]]]))
7518        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7519        val=msk_val*numarray.array([[8.0, 6.0], [6.0, 5.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0], [2.0, 3.0]])        val=msk_val*numarray.array([[8.0, 6.0], [6.0, 5.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0], [2.0, 3.0]])
7520        arg[1,2:,:2]=val        arg[1,2:,:2]=val
7521        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7553  class Test_util_slicing_with_tagged_data Line 7553  class Test_util_slicing_with_tagged_data
7553     def test_setslice_taggedData_rank3_expandedData_CLN(self):     def test_setslice_taggedData_rank3_expandedData_CLN(self):
7554        arg=Data(numarray.array([[[4.0, 3.0, 8.0], [5.0, 8.0, 8.0], [3.0, 5.0, 4.0], [2.0, 3.0, 6.0]], [[6.0, 7.0, 7.0], [2.0, 5.0, 4.0], [7.0, 8.0, 4.0], [4.0, 2.0, 1.0]], [[8.0, 5.0, 4.0], [6.0, 3.0, 1.0], [6.0, 6.0, 3.0], [2.0, 2.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 3.0, 8.0], [5.0, 8.0, 8.0], [3.0, 5.0, 4.0], [2.0, 3.0, 6.0]], [[6.0, 7.0, 7.0], [2.0, 5.0, 4.0], [7.0, 8.0, 4.0], [4.0, 2.0, 1.0]], [[8.0, 5.0, 4.0], [6.0, 3.0, 1.0], [6.0, 6.0, 3.0], [2.0, 2.0, 6.0]]]),self.functionspace)
7555        arg.setTaggedValue(1,numarray.array([[[3.0, 4.0, 2.0], [1.0, 6.0, 1.0], [2.0, 7.0, 6.0], [1.0, 1.0, 7.0]], [[1.0, 1.0, 3.0], [1.0, 3.0, 6.0], [6.0, 2.0, 5.0], [7.0, 2.0, 1.0]], [[7.0, 8.0, 2.0], [6.0, 6.0, 5.0], [8.0, 6.0, 4.0], [8.0, 2.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 4.0, 2.0], [1.0, 6.0, 1.0], [2.0, 7.0, 6.0], [1.0, 1.0, 7.0]], [[1.0, 1.0, 3.0], [1.0, 3.0, 6.0], [6.0, 2.0, 5.0], [7.0, 2.0, 1.0]], [[7.0, 8.0, 2.0], [6.0, 6.0, 5.0], [8.0, 6.0, 4.0], [8.0, 2.0, 8.0]]]))
7556        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7557        val=msk_val*numarray.array([[[5.0, 1.0, 6.0], [2.0, 8.0, 8.0]], [[2.0, 6.0, 6.0], [4.0, 8.0, 2.0]], [[2.0, 7.0, 3.0], [5.0, 3.0, 8.0]]])+(1.-msk_val)*numarray.array([[[1.0, 4.0, 3.0], [5.0, 8.0, 4.0]], [[2.0, 1.0, 1.0], [4.0, 4.0, 4.0]], [[1.0, 6.0, 8.0], [2.0, 6.0, 4.0]]])        val=msk_val*numarray.array([[[5.0, 1.0, 6.0], [2.0, 8.0, 8.0]], [[2.0, 6.0, 6.0], [4.0, 8.0, 2.0]], [[2.0, 7.0, 3.0], [5.0, 3.0, 8.0]]])+(1.-msk_val)*numarray.array([[[1.0, 4.0, 3.0], [5.0, 8.0, 4.0]], [[2.0, 1.0, 1.0], [4.0, 4.0, 4.0]], [[1.0, 6.0, 8.0], [2.0, 6.0, 4.0]]])
7558        arg[:,2:]=val        arg[:,2:]=val
7559        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7591  class Test_util_slicing_with_tagged_data Line 7591  class Test_util_slicing_with_tagged_data
7591     def test_setslice_taggedData_rank3_expandedData_LRU(self):     def test_setslice_taggedData_rank3_expandedData_LRU(self):
7592        arg=Data(numarray.array([[[8.0, 5.0, 1.0], [5.0, 2.0, 3.0], [2.0, 8.0, 1.0], [2.0, 2.0, 3.0]], [[5.0, 7.0, 5.0], [4.0, 4.0, 8.0], [5.0, 6.0, 8.0], [3.0, 4.0, 8.0]], [[7.0, 5.0, 3.0], [5.0, 4.0, 8.0], [5.0, 7.0, 2.0], [6.0, 6.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 5.0, 1.0], [5.0, 2.0, 3.0], [2.0, 8.0, 1.0], [2.0, 2.0, 3.0]], [[5.0, 7.0, 5.0], [4.0, 4.0, 8.0], [5.0, 6.0, 8.0], [3.0, 4.0, 8.0]], [[7.0, 5.0, 3.0], [5.0, 4.0, 8.0], [5.0, 7.0, 2.0], [6.0, 6.0, 5.0]]]),self.functionspace)
7593        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 1.0], [4.0, 5.0, 2.0], [4.0, 2.0, 1.0], [7.0, 2.0, 4.0]], [[3.0, 2.0, 5.0], [7.0, 3.0, 1.0], [8.0, 1.0, 4.0], [2.0, 4.0, 5.0]], [[2.0, 2.0, 1.0], [3.0, 2.0, 2.0], [5.0, 8.0, 6.0], [7.0, 8.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 1.0], [4.0, 5.0, 2.0], [4.0, 2.0, 1.0], [7.0, 2.0, 4.0]], [[3.0, 2.0, 5.0], [7.0, 3.0, 1.0], [8.0, 1.0, 4.0], [2.0, 4.0, 5.0]], [[2.0, 2.0, 1.0], [3.0, 2.0, 2.0], [5.0, 8.0, 6.0], [7.0, 8.0, 3.0]]]))
7594        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7595        val=msk_val*numarray.array([[[7.0, 1.0], [8.0, 1.0]]])+(1.-msk_val)*numarray.array([[[5.0, 1.0], [3.0, 2.0]]])        val=msk_val*numarray.array([[[7.0, 1.0], [8.0, 1.0]]])+(1.-msk_val)*numarray.array([[[5.0, 1.0], [3.0, 2.0]]])
7596        arg[2:,1:3,:2]=val        arg[2:,1:3,:2]=val
7597        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7629  class Test_util_slicing_with_tagged_data Line 7629  class Test_util_slicing_with_tagged_data
7629     def test_setslice_taggedData_rank3_expandedData_LLP(self):     def test_setslice_taggedData_rank3_expandedData_LLP(self):
7630        arg=Data(numarray.array([[[7.0, 4.0, 2.0], [7.0, 8.0, 7.0], [8.0, 3.0, 2.0], [1.0, 5.0, 7.0]], [[6.0, 7.0, 2.0], [5.0, 7.0, 3.0], [2.0, 1.0, 6.0], [4.0, 8.0, 5.0]], [[5.0, 8.0, 2.0], [6.0, 3.0, 4.0], [1.0, 5.0, 2.0], [4.0, 4.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 4.0, 2.0], [7.0, 8.0, 7.0], [8.0, 3.0, 2.0], [1.0, 5.0, 7.0]], [[6.0, 7.0, 2.0], [5.0, 7.0, 3.0], [2.0, 1.0, 6.0], [4.0, 8.0, 5.0]], [[5.0, 8.0, 2.0], [6.0, 3.0, 4.0], [1.0, 5.0, 2.0], [4.0, 4.0, 3.0]]]),self.functionspace)
7631        arg.setTaggedValue(1,numarray.array([[[3.0, 4.0, 8.0], [3.0, 4.0, 7.0], [4.0, 8.0, 1.0], [6.0, 3.0, 7.0]], [[2.0, 7.0, 1.0], [5.0, 4.0, 7.0], [1.0, 8.0, 6.0], [7.0, 7.0, 7.0]], [[2.0, 8.0, 7.0], [1.0, 4.0, 5.0], [5.0, 3.0, 5.0], [8.0, 7.0, 6.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 4.0, 8.0], [3.0, 4.0, 7.0], [4.0, 8.0, 1.0], [6.0, 3.0, 7.0]], [[2.0, 7.0, 1.0], [5.0, 4.0, 7.0], [1.0, 8.0, 6.0], [7.0, 7.0, 7.0]], [[2.0, 8.0, 7.0], [1.0, 4.0, 5.0], [5.0, 3.0, 5.0], [8.0, 7.0, 6.0]]]))
7632        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7633        val=msk_val*numarray.array([[1.0, 2.0]])+(1.-msk_val)*numarray.array([[3.0, 6.0]])        val=msk_val*numarray.array([[1.0, 2.0]])+(1.-msk_val)*numarray.array([[3.0, 6.0]])
7634        arg[2:,2:,1]=val        arg[2:,2:,1]=val
7635        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7667  class Test_util_slicing_with_tagged_data Line 7667  class Test_util_slicing_with_tagged_data
7667     def test_setslice_taggedData_rank3_expandedData_PUU(self):     def test_setslice_taggedData_rank3_expandedData_PUU(self):
7668        arg=Data(numarray.array([[[1.0, 6.0, 8.0], [4.0, 6.0, 1.0], [1.0, 1.0, 3.0], [2.0, 7.0, 4.0]], [[8.0, 7.0, 1.0], [3.0, 1.0, 1.0], [1.0, 3.0, 2.0], [8.0, 3.0, 2.0]], [[8.0, 6.0, 3.0], [5.0, 1.0, 4.0], [8.0, 6.0, 2.0], [4.0, 7.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 6.0, 8.0], [4.0, 6.0, 1.0], [1.0, 1.0, 3.0], [2.0, 7.0, 4.0]], [[8.0, 7.0, 1.0], [3.0, 1.0, 1.0], [1.0, 3.0, 2.0], [8.0, 3.0, 2.0]], [[8.0, 6.0, 3.0], [5.0, 1.0, 4.0], [8.0, 6.0, 2.0], [4.0, 7.0, 6.0]]]),self.functionspace)
7669        arg.setTaggedValue(1,numarray.array([[[3.0, 7.0, 5.0], [4.0, 5.0, 4.0], [4.0, 4.0, 7.0], [6.0, 6.0, 5.0]], [[5.0, 4.0, 3.0], [2.0, 5.0, 2.0], [1.0, 7.0, 1.0], [5.0, 5.0, 2.0]], [[4.0, 8.0, 8.0], [1.0, 8.0, 3.0], [3.0, 1.0, 4.0], [4.0, 8.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 7.0, 5.0], [4.0, 5.0, 4.0], [4.0, 4.0, 7.0], [6.0, 6.0, 5.0]], [[5.0, 4.0, 3.0], [2.0, 5.0, 2.0], [1.0, 7.0, 1.0], [5.0, 5.0, 2.0]], [[4.0, 8.0, 8.0], [1.0, 8.0, 3.0], [3.0, 1.0, 4.0], [4.0, 8.0, 4.0]]]))
7670        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7671        val=msk_val*numarray.array([[3.0, 6.0], [3.0, 7.0], [7.0, 4.0]])+(1.-msk_val)*numarray.array([[4.0, 2.0], [3.0, 7.0], [2.0, 8.0]])        val=msk_val*numarray.array([[3.0, 6.0], [3.0, 7.0], [7.0, 4.0]])+(1.-msk_val)*numarray.array([[4.0, 2.0], [3.0, 7.0], [2.0, 8.0]])
7672        arg[1,:3,:2]=val        arg[1,:3,:2]=val
7673        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7705  class Test_util_slicing_with_tagged_data Line 7705  class Test_util_slicing_with_tagged_data
7705     def test_setslice_taggedData_rank3_expandedData_RPP(self):     def test_setslice_taggedData_rank3_expandedData_RPP(self):
7706        arg=Data(numarray.array([[[5.0, 5.0, 4.0], [8.0, 1.0, 7.0], [5.0, 2.0, 2.0], [2.0, 2.0, 8.0]], [[3.0, 8.0, 4.0], [7.0, 8.0, 4.0], [5.0, 2.0, 5.0], [4.0, 6.0, 3.0]], [[4.0, 4.0, 2.0], [6.0, 3.0, 5.0], [5.0, 4.0, 6.0], [7.0, 7.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[5.0, 5.0, 4.0], [8.0, 1.0, 7.0], [5.0, 2.0, 2.0], [2.0, 2.0, 8.0]], [[3.0, 8.0, 4.0], [7.0, 8.0, 4.0], [5.0, 2.0, 5.0], [4.0, 6.0, 3.0]], [[4.0, 4.0, 2.0], [6.0, 3.0, 5.0], [5.0, 4.0, 6.0], [7.0, 7.0, 5.0]]]),self.functionspace)
7707        arg.setTaggedValue(1,numarray.array([[[7.0, 1.0, 8.0], [8.0, 4.0, 1.0], [1.0, 6.0, 5.0], [1.0, 5.0, 2.0]], [[2.0, 5.0, 5.0], [8.0, 8.0, 6.0], [1.0, 4.0, 4.0], [3.0, 7.0, 1.0]], [[6.0, 3.0, 6.0], [6.0, 1.0, 6.0], [3.0, 6.0, 4.0], [8.0, 2.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[7.0, 1.0, 8.0], [8.0, 4.0, 1.0], [1.0, 6.0, 5.0], [1.0, 5.0, 2.0]], [[2.0, 5.0, 5.0], [8.0, 8.0, 6.0], [1.0, 4.0, 4.0], [3.0, 7.0, 1.0]], [[6.0, 3.0, 6.0], [6.0, 1.0, 6.0], [3.0, 6.0, 4.0], [8.0, 2.0, 2.0]]]))
7708        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7709        val=msk_val*numarray.array([1.0])+(1.-msk_val)*numarray.array([3.0])        val=msk_val*numarray.array([1.0])+(1.-msk_val)*numarray.array([3.0])
7710        arg[1:2,2,1]=val        arg[1:2,2,1]=val
7711        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7743  class Test_util_slicing_with_tagged_data Line 7743  class Test_util_slicing_with_tagged_data
7743     def test_setslice_taggedData_rank3_expandedData_RUP(self):     def test_setslice_taggedData_rank3_expandedData_RUP(self):
7744        arg=Data(numarray.array([[[8.0, 5.0, 5.0], [5.0, 4.0, 4.0], [1.0, 8.0, 5.0], [4.0, 1.0, 6.0]], [[3.0, 8.0, 6.0], [1.0, 6.0, 5.0], [4.0, 7.0, 7.0], [5.0, 5.0, 7.0]], [[1.0, 1.0, 8.0], [2.0, 1.0, 3.0], [6.0, 2.0, 2.0], [1.0, 4.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 5.0, 5.0], [5.0, 4.0, 4.0], [1.0, 8.0, 5.0], [4.0, 1.0, 6.0]], [[3.0, 8.0, 6.0], [1.0, 6.0, 5.0], [4.0, 7.0, 7.0], [5.0, 5.0, 7.0]], [[1.0, 1.0, 8.0], [2.0, 1.0, 3.0], [6.0, 2.0, 2.0], [1.0, 4.0, 2.0]]]),self.functionspace)
7745        arg.setTaggedValue(1,numarray.array([[[6.0, 8.0, 8.0], [5.0, 6.0, 6.0], [1.0, 5.0, 4.0], [2.0, 6.0, 2.0]], [[5.0, 7.0, 4.0], [2.0, 3.0, 6.0], [4.0, 8.0, 3.0], [2.0, 8.0, 3.0]], [[7.0, 1.0, 2.0], [3.0, 2.0, 3.0], [3.0, 7.0, 1.0], [4.0, 6.0, 6.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 8.0, 8.0], [5.0, 6.0, 6.0], [1.0, 5.0, 4.0], [2.0, 6.0, 2.0]], [[5.0, 7.0, 4.0], [2.0, 3.0, 6.0], [4.0, 8.0, 3.0], [2.0, 8.0, 3.0]], [[7.0, 1.0, 2.0], [3.0, 2.0, 3.0], [3.0, 7.0, 1.0], [4.0, 6.0, 6.0]]]))
7746        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7747        val=msk_val*numarray.array([[6.0, 3.0, 5.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0, 1.0]])        val=msk_val*numarray.array([[6.0, 3.0, 5.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0, 1.0]])
7748        arg[1:2,:3,1]=val        arg[1:2,:3,1]=val
7749        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7781  class Test_util_slicing_with_tagged_data Line 7781  class Test_util_slicing_with_tagged_data
7781     def test_setslice_taggedData_rank3_expandedData_UPP(self):     def test_setslice_taggedData_rank3_expandedData_UPP(self):
7782        arg=Data(numarray.array([[[1.0, 8.0, 3.0], [6.0, 6.0, 8.0], [3.0, 2.0, 6.0], [3.0, 6.0, 6.0]], [[6.0, 8.0, 6.0], [5.0, 5.0, 2.0], [2.0, 4.0, 5.0], [4.0, 8.0, 7.0]], [[3.0, 2.0, 7.0], [4.0, 3.0, 4.0], [8.0, 2.0, 6.0], [4.0, 8.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 8.0, 3.0], [6.0, 6.0, 8.0], [3.0, 2.0, 6.0], [3.0, 6.0, 6.0]], [[6.0, 8.0, 6.0], [5.0, 5.0, 2.0], [2.0, 4.0, 5.0], [4.0, 8.0, 7.0]], [[3.0, 2.0, 7.0], [4.0, 3.0, 4.0], [8.0, 2.0, 6.0], [4.0, 8.0, 1.0]]]),self.functionspace)
7783        arg.setTaggedValue(1,numarray.array([[[8.0, 5.0, 5.0], [5.0, 6.0, 2.0], [7.0, 8.0, 3.0], [8.0, 8.0, 8.0]], [[4.0, 3.0, 1.0], [2.0, 7.0, 2.0], [8.0, 8.0, 8.0], [2.0, 8.0, 5.0]], [[7.0, 2.0, 4.0], [3.0, 4.0, 8.0], [4.0, 2.0, 4.0], [1.0, 2.0, 1.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 5.0, 5.0], [5.0, 6.0, 2.0], [7.0, 8.0, 3.0], [8.0, 8.0, 8.0]], [[4.0, 3.0, 1.0], [2.0, 7.0, 2.0], [8.0, 8.0, 8.0], [2.0, 8.0, 5.0]], [[7.0, 2.0, 4.0], [3.0, 4.0, 8.0], [4.0, 2.0, 4.0], [1.0, 2.0, 1.0]]]))
7784        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7785        val=msk_val*numarray.array([8.0, 4.0])+(1.-msk_val)*numarray.array([1.0, 4.0])        val=msk_val*numarray.array([8.0, 4.0])+(1.-msk_val)*numarray.array([1.0, 4.0])
7786        arg[:2,2,1]=val        arg[:2,2,1]=val
7787        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7819  class Test_util_slicing_with_tagged_data Line 7819  class Test_util_slicing_with_tagged_data
7819     def test_setslice_taggedData_rank3_expandedData_LRC(self):     def test_setslice_taggedData_rank3_expandedData_LRC(self):
7820        arg=Data(numarray.array([[[2.0, 2.0, 8.0], [6.0, 7.0, 3.0], [7.0, 6.0, 5.0], [2.0, 8.0, 2.0]], [[8.0, 1.0, 2.0], [3.0, 2.0, 1.0], [7.0, 3.0, 1.0], [5.0, 6.0, 2.0]], [[6.0, 4.0, 4.0], [8.0, 4.0, 4.0], [5.0, 8.0, 2.0], [3.0, 2.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 2.0, 8.0], [6.0, 7.0, 3.0], [7.0, 6.0, 5.0], [2.0, 8.0, 2.0]], [[8.0, 1.0, 2.0], [3.0, 2.0, 1.0], [7.0, 3.0, 1.0], [5.0, 6.0, 2.0]], [[6.0, 4.0, 4.0], [8.0, 4.0, 4.0], [5.0, 8.0, 2.0], [3.0, 2.0, 5.0]]]),self.functionspace)
7821        arg.setTaggedValue(1,numarray.array([[[4.0, 2.0, 7.0], [8.0, 7.0, 1.0], [2.0, 4.0, 4.0], [1.0, 5.0, 1.0]], [[6.0, 4.0, 2.0], [7.0, 7.0, 6.0], [6.0, 6.0, 1.0], [4.0, 1.0, 7.0]], [[1.0, 5.0, 4.0], [6.0, 2.0, 8.0], [4.0, 6.0, 7.0], [7.0, 5.0, 1.0]]]))        arg.setTaggedValue(1,numarray.array([[[4.0, 2.0, 7.0], [8.0, 7.0, 1.0], [2.0, 4.0, 4.0], [1.0, 5.0, 1.0]], [[6.0, 4.0, 2.0], [7.0, 7.0, 6.0], [6.0, 6.0, 1.0], [4.0, 1.0, 7.0]], [[1.0, 5.0, 4.0], [6.0, 2.0, 8.0], [4.0, 6.0, 7.0], [7.0, 5.0, 1.0]]]))
7822        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7823        val=msk_val*numarray.array([[[3.0, 6.0, 6.0], [6.0, 2.0, 7.0]]])+(1.-msk_val)*numarray.array([[[3.0, 6.0, 8.0], [6.0, 3.0, 1.0]]])        val=msk_val*numarray.array([[[3.0, 6.0, 6.0], [6.0, 2.0, 7.0]]])+(1.-msk_val)*numarray.array([[[3.0, 6.0, 8.0], [6.0, 3.0, 1.0]]])
7824        arg[2:,1:3,:]=val        arg[2:,1:3,:]=val
7825        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7857  class Test_util_slicing_with_tagged_data Line 7857  class Test_util_slicing_with_tagged_data
7857     def test_setslice_taggedData_rank3_expandedData_UPL(self):     def test_setslice_taggedData_rank3_expandedData_UPL(self):
7858        arg=Data(numarray.array([[[3.0, 4.0, 1.0], [7.0, 7.0, 3.0], [1.0, 1.0, 4.0], [8.0, 3.0, 7.0]], [[8.0, 7.0, 1.0], [3.0, 4.0, 4.0], [4.0, 2.0, 7.0], [4.0, 4.0, 2.0]], [[3.0, 3.0, 1.0], [4.0, 7.0, 2.0], [5.0, 1.0, 7.0], [4.0, 2.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 4.0, 1.0], [7.0, 7.0, 3.0], [1.0, 1.0, 4.0], [8.0, 3.0, 7.0]], [[8.0, 7.0, 1.0], [3.0, 4.0, 4.0], [4.0, 2.0, 7.0], [4.0, 4.0, 2.0]], [[3.0, 3.0, 1.0], [4.0, 7.0, 2.0], [5.0, 1.0, 7.0], [4.0, 2.0, 6.0]]]),self.functionspace)
7859        arg.setTaggedValue(1,numarray.array([[[2.0, 5.0, 7.0], [5.0, 1.0, 8.0], [6.0, 3.0, 6.0], [4.0, 7.0, 2.0]], [[8.0, 4.0, 2.0], [6.0, 1.0, 5.0], [4.0, 3.0, 3.0], [2.0, 7.0, 7.0]], [[2.0, 5.0, 8.0], [5.0, 7.0, 2.0], [1.0, 3.0, 4.0], [7.0, 5.0, 6.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 5.0, 7.0], [5.0, 1.0, 8.0], [6.0, 3.0, 6.0], [4.0, 7.0, 2.0]], [[8.0, 4.0, 2.0], [6.0, 1.0, 5.0], [4.0, 3.0, 3.0], [2.0, 7.0, 7.0]], [[2.0, 5.0, 8.0], [5.0, 7.0, 2.0], [1.0, 3.0, 4.0], [7.0, 5.0, 6.0]]]))
7860        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7861        val=msk_val*numarray.array([[1.0], [7.0]])+(1.-msk_val)*numarray.array([[6.0], [4.0]])        val=msk_val*numarray.array([[1.0], [7.0]])+(1.-msk_val)*numarray.array([[6.0], [4.0]])
7862        arg[:2,2,2:]=val        arg[:2,2,2:]=val
7863        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7895  class Test_util_slicing_with_tagged_data Line 7895  class Test_util_slicing_with_tagged_data
7895     def test_setslice_taggedData_rank3_expandedData_LLN(self):     def test_setslice_taggedData_rank3_expandedData_LLN(self):
7896        arg=Data(numarray.array([[[5.0, 4.0, 7.0], [8.0, 5.0, 7.0], [5.0, 2.0, 5.0], [5.0, 6.0, 7.0]], [[4.0, 1.0, 7.0], [5.0, 7.0, 8.0], [4.0, 2.0, 8.0], [3.0, 1.0, 4.0]], [[5.0, 5.0, 2.0], [2.0, 4.0, 5.0], [2.0, 6.0, 5.0], [3.0, 1.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[5.0, 4.0, 7.0], [8.0, 5.0, 7.0], [5.0, 2.0, 5.0], [5.0, 6.0, 7.0]], [[4.0, 1.0, 7.0], [5.0, 7.0, 8.0], [4.0, 2.0, 8.0], [3.0, 1.0, 4.0]], [[5.0, 5.0, 2.0], [2.0, 4.0, 5.0], [2.0, 6.0, 5.0], [3.0, 1.0, 5.0]]]),self.functionspace)
7897        arg.setTaggedValue(1,numarray.array([[[6.0, 4.0, 5.0], [7.0, 7.0, 4.0], [5.0, 6.0, 2.0], [5.0, 7.0, 3.0]], [[4.0, 8.0, 7.0], [7.0, 8.0, 4.0], [8.0, 8.0, 1.0], [3.0, 6.0, 1.0]], [[5.0, 8.0, 3.0], [5.0, 3.0, 8.0], [4.0, 6.0, 1.0], [5.0, 2.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 4.0, 5.0], [7.0, 7.0, 4.0], [5.0, 6.0, 2.0], [5.0, 7.0, 3.0]], [[4.0, 8.0, 7.0], [7.0, 8.0, 4.0], [8.0, 8.0, 1.0], [3.0, 6.0, 1.0]], [[5.0, 8.0, 3.0], [5.0, 3.0, 8.0], [4.0, 6.0, 1.0], [5.0, 2.0, 4.0]]]))
7898        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7899        val=msk_val*numarray.array([[[6.0, 7.0, 5.0], [3.0, 2.0, 3.0]]])+(1.-msk_val)*numarray.array([[[3.0, 7.0, 7.0], [6.0, 8.0, 2.0]]])        val=msk_val*numarray.array([[[6.0, 7.0, 5.0], [3.0, 2.0, 3.0]]])+(1.-msk_val)*numarray.array([[[3.0, 7.0, 7.0], [6.0, 8.0, 2.0]]])
7900        arg[2:,2:]=val        arg[2:,2:]=val
7901        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7933  class Test_util_slicing_with_tagged_data Line 7933  class Test_util_slicing_with_tagged_data
7933     def test_setslice_taggedData_rank3_expandedData_PRR(self):     def test_setslice_taggedData_rank3_expandedData_PRR(self):
7934        arg=Data(numarray.array([[[4.0, 8.0, 7.0], [2.0, 7.0, 5.0], [4.0, 2.0, 7.0], [3.0, 6.0, 4.0]], [[8.0, 6.0, 2.0], [6.0, 6.0, 6.0], [2.0, 2.0, 2.0], [8.0, 7.0, 8.0]], [[3.0, 5.0, 4.0], [7.0, 3.0, 5.0], [4.0, 2.0, 7.0], [6.0, 6.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 8.0, 7.0], [2.0, 7.0, 5.0], [4.0, 2.0, 7.0], [3.0, 6.0, 4.0]], [[8.0, 6.0, 2.0], [6.0, 6.0, 6.0], [2.0, 2.0, 2.0], [8.0, 7.0, 8.0]], [[3.0, 5.0, 4.0], [7.0, 3.0, 5.0], [4.0, 2.0, 7.0], [6.0, 6.0, 7.0]]]),self.functionspace)
7935        arg.setTaggedValue(1,numarray.array([[[6.0, 1.0, 1.0], [1.0, 6.0, 5.0], [1.0, 1.0, 4.0], [4.0, 7.0, 4.0]], [[7.0, 5.0, 4.0], [3.0, 3.0, 2.0], [5.0, 6.0, 4.0], [3.0, 3.0, 4.0]], [[5.0, 6.0, 1.0], [3.0, 3.0, 8.0], [8.0, 7.0, 2.0], [6.0, 8.0, 1.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 1.0, 1.0], [1.0, 6.0, 5.0], [1.0, 1.0, 4.0], [4.0, 7.0, 4.0]], [[7.0, 5.0, 4.0], [3.0, 3.0, 2.0], [5.0, 6.0, 4.0], [3.0, 3.0, 4.0]], [[5.0, 6.0, 1.0], [3.0, 3.0, 8.0], [8.0, 7.0, 2.0], [6.0, 8.0, 1.0]]]))
7936        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7937        val=msk_val*numarray.array([[3.0], [6.0]])+(1.-msk_val)*numarray.array([[2.0], [3.0]])        val=msk_val*numarray.array([[3.0], [6.0]])+(1.-msk_val)*numarray.array([[2.0], [3.0]])
7938        arg[1,1:3,1:2]=val        arg[1,1:3,1:2]=val
7939        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 7971  class Test_util_slicing_with_tagged_data Line 7971  class Test_util_slicing_with_tagged_data
7971     def test_setslice_taggedData_rank3_expandedData_CRN(self):     def test_setslice_taggedData_rank3_expandedData_CRN(self):
7972        arg=Data(numarray.array([[[8.0, 3.0, 2.0], [2.0, 5.0, 7.0], [8.0, 5.0, 8.0], [2.0, 5.0, 1.0]], [[4.0, 7.0, 7.0], [3.0, 1.0, 6.0], [5.0, 3.0, 1.0], [4.0, 1.0, 2.0]], [[6.0, 8.0, 3.0], [6.0, 2.0, 6.0], [2.0, 8.0, 1.0], [4.0, 3.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 3.0, 2.0], [2.0, 5.0, 7.0], [8.0, 5.0, 8.0], [2.0, 5.0, 1.0]], [[4.0, 7.0, 7.0], [3.0, 1.0, 6.0], [5.0, 3.0, 1.0], [4.0, 1.0, 2.0]], [[6.0, 8.0, 3.0], [6.0, 2.0, 6.0], [2.0, 8.0, 1.0], [4.0, 3.0, 4.0]]]),self.functionspace)
7973        arg.setTaggedValue(1,numarray.array([[[3.0, 5.0, 6.0], [8.0, 1.0, 1.0], [1.0, 7.0, 3.0], [7.0, 1.0, 1.0]], [[3.0, 7.0, 1.0], [6.0, 4.0, 8.0], [3.0, 8.0, 2.0], [2.0, 7.0, 4.0]], [[6.0, 6.0, 1.0], [5.0, 5.0, 6.0], [1.0, 7.0, 2.0], [3.0, 6.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 5.0, 6.0], [8.0, 1.0, 1.0], [1.0, 7.0, 3.0], [7.0, 1.0, 1.0]], [[3.0, 7.0, 1.0], [6.0, 4.0, 8.0], [3.0, 8.0, 2.0], [2.0, 7.0, 4.0]], [[6.0, 6.0, 1.0], [5.0, 5.0, 6.0], [1.0, 7.0, 2.0], [3.0, 6.0, 5.0]]]))
7974        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
7975        val=msk_val*numarray.array([[[8.0, 5.0, 7.0], [1.0, 7.0, 4.0]], [[1.0, 5.0, 3.0], [3.0, 2.0, 4.0]], [[2.0, 7.0, 1.0], [7.0, 4.0, 1.0]]])+(1.-msk_val)*numarray.array([[[3.0, 5.0, 8.0], [2.0, 5.0, 2.0]], [[8.0, 4.0, 5.0], [1.0, 1.0, 5.0]], [[5.0, 8.0, 3.0], [8.0, 7.0, 5.0]]])        val=msk_val*numarray.array([[[8.0, 5.0, 7.0], [1.0, 7.0, 4.0]], [[1.0, 5.0, 3.0], [3.0, 2.0, 4.0]], [[2.0, 7.0, 1.0], [7.0, 4.0, 1.0]]])+(1.-msk_val)*numarray.array([[[3.0, 5.0, 8.0], [2.0, 5.0, 2.0]], [[8.0, 4.0, 5.0], [1.0, 1.0, 5.0]], [[5.0, 8.0, 3.0], [8.0, 7.0, 5.0]]])
7976        arg[:,1:3]=val        arg[:,1:3]=val
7977        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8009  class Test_util_slicing_with_tagged_data Line 8009  class Test_util_slicing_with_tagged_data
8009     def test_setslice_taggedData_rank3_expandedData_UPC(self):     def test_setslice_taggedData_rank3_expandedData_UPC(self):
8010        arg=Data(numarray.array([[[8.0, 2.0, 1.0], [3.0, 2.0, 8.0], [7.0, 4.0, 3.0], [8.0, 4.0, 5.0]], [[1.0, 1.0, 1.0], [4.0, 1.0, 2.0], [4.0, 1.0, 2.0], [2.0, 5.0, 7.0]], [[8.0, 7.0, 4.0], [8.0, 3.0, 8.0], [1.0, 7.0, 2.0], [8.0, 3.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 2.0, 1.0], [3.0, 2.0, 8.0], [7.0, 4.0, 3.0], [8.0, 4.0, 5.0]], [[1.0, 1.0, 1.0], [4.0, 1.0, 2.0], [4.0, 1.0, 2.0], [2.0, 5.0, 7.0]], [[8.0, 7.0, 4.0], [8.0, 3.0, 8.0], [1.0, 7.0, 2.0], [8.0, 3.0, 1.0]]]),self.functionspace)
8011        arg.setTaggedValue(1,numarray.array([[[6.0, 3.0, 1.0], [3.0, 1.0, 1.0], [4.0, 4.0, 6.0], [1.0, 6.0, 3.0]], [[2.0, 6.0, 3.0], [2.0, 6.0, 4.0], [5.0, 8.0, 6.0], [6.0, 3.0, 3.0]], [[5.0, 7.0, 4.0], [3.0, 6.0, 8.0], [5.0, 6.0, 3.0], [4.0, 3.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 3.0, 1.0], [3.0, 1.0, 1.0], [4.0, 4.0, 6.0], [1.0, 6.0, 3.0]], [[2.0, 6.0, 3.0], [2.0, 6.0, 4.0], [5.0, 8.0, 6.0], [6.0, 3.0, 3.0]], [[5.0, 7.0, 4.0], [3.0, 6.0, 8.0], [5.0, 6.0, 3.0], [4.0, 3.0, 3.0]]]))
8012        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8013        val=msk_val*numarray.array([[4.0, 5.0, 8.0], [3.0, 6.0, 3.0]])+(1.-msk_val)*numarray.array([[5.0, 6.0, 2.0], [7.0, 1.0, 7.0]])        val=msk_val*numarray.array([[4.0, 5.0, 8.0], [3.0, 6.0, 3.0]])+(1.-msk_val)*numarray.array([[5.0, 6.0, 2.0], [7.0, 1.0, 7.0]])
8014        arg[:2,2,:]=val        arg[:2,2,:]=val
8015        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8047  class Test_util_slicing_with_tagged_data Line 8047  class Test_util_slicing_with_tagged_data
8047     def test_setslice_taggedData_rank3_expandedData_UUC(self):     def test_setslice_taggedData_rank3_expandedData_UUC(self):
8048        arg=Data(numarray.array([[[2.0, 2.0, 2.0], [3.0, 1.0, 5.0], [6.0, 2.0, 6.0], [8.0, 5.0, 5.0]], [[3.0, 7.0, 6.0], [1.0, 6.0, 8.0], [1.0, 6.0, 4.0], [3.0, 1.0, 1.0]], [[4.0, 3.0, 7.0], [5.0, 2.0, 7.0], [2.0, 6.0, 1.0], [8.0, 5.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 2.0, 2.0], [3.0, 1.0, 5.0], [6.0, 2.0, 6.0], [8.0, 5.0, 5.0]], [[3.0, 7.0, 6.0], [1.0, 6.0, 8.0], [1.0, 6.0, 4.0], [3.0, 1.0, 1.0]], [[4.0, 3.0, 7.0], [5.0, 2.0, 7.0], [2.0, 6.0, 1.0], [8.0, 5.0, 6.0]]]),self.functionspace)
8049        arg.setTaggedValue(1,numarray.array([[[6.0, 4.0, 6.0], [5.0, 7.0, 5.0], [1.0, 4.0, 1.0], [4.0, 2.0, 1.0]], [[4.0, 7.0, 4.0], [6.0, 2.0, 8.0], [7.0, 4.0, 7.0], [1.0, 1.0, 8.0]], [[2.0, 1.0, 4.0], [7.0, 4.0, 5.0], [7.0, 3.0, 3.0], [1.0, 3.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 4.0, 6.0], [5.0, 7.0, 5.0], [1.0, 4.0, 1.0], [4.0, 2.0, 1.0]], [[4.0, 7.0, 4.0], [6.0, 2.0, 8.0], [7.0, 4.0, 7.0], [1.0, 1.0, 8.0]], [[2.0, 1.0, 4.0], [7.0, 4.0, 5.0], [7.0, 3.0, 3.0], [1.0, 3.0, 5.0]]]))
8050        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8051        val=msk_val*numarray.array([[[7.0, 8.0, 4.0], [5.0, 7.0, 1.0], [1.0, 6.0, 6.0]], [[5.0, 2.0, 1.0], [6.0, 6.0, 8.0], [3.0, 8.0, 6.0]]])+(1.-msk_val)*numarray.array([[[2.0, 8.0, 6.0], [8.0, 2.0, 4.0], [1.0, 4.0, 8.0]], [[1.0, 7.0, 4.0], [1.0, 5.0, 1.0], [2.0, 5.0, 8.0]]])        val=msk_val*numarray.array([[[7.0, 8.0, 4.0], [5.0, 7.0, 1.0], [1.0, 6.0, 6.0]], [[5.0, 2.0, 1.0], [6.0, 6.0, 8.0], [3.0, 8.0, 6.0]]])+(1.-msk_val)*numarray.array([[[2.0, 8.0, 6.0], [8.0, 2.0, 4.0], [1.0, 4.0, 8.0]], [[1.0, 7.0, 4.0], [1.0, 5.0, 1.0], [2.0, 5.0, 8.0]]])
8052        arg[:2,:3,:]=val        arg[:2,:3,:]=val
8053        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8085  class Test_util_slicing_with_tagged_data Line 8085  class Test_util_slicing_with_tagged_data
8085     def test_setslice_taggedData_rank3_expandedData_LLR(self):     def test_setslice_taggedData_rank3_expandedData_LLR(self):
8086        arg=Data(numarray.array([[[1.0, 2.0, 1.0], [7.0, 4.0, 7.0], [1.0, 7.0, 8.0], [3.0, 8.0, 6.0]], [[7.0, 5.0, 7.0], [5.0, 4.0, 3.0], [6.0, 1.0, 3.0], [2.0, 6.0, 3.0]], [[1.0, 3.0, 7.0], [2.0, 4.0, 4.0], [8.0, 4.0, 1.0], [6.0, 3.0, 8.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 2.0, 1.0], [7.0, 4.0, 7.0], [1.0, 7.0, 8.0], [3.0, 8.0, 6.0]], [[7.0, 5.0, 7.0], [5.0, 4.0, 3.0], [6.0, 1.0, 3.0], [2.0, 6.0, 3.0]], [[1.0, 3.0, 7.0], [2.0, 4.0, 4.0], [8.0, 4.0, 1.0], [6.0, 3.0, 8.0]]]),self.functionspace)
8087        arg.setTaggedValue(1,numarray.array([[[2.0, 8.0, 8.0], [8.0, 8.0, 8.0], [8.0, 1.0, 3.0], [1.0, 6.0, 2.0]], [[2.0, 2.0, 5.0], [7.0, 2.0, 3.0], [4.0, 8.0, 1.0], [6.0, 7.0, 6.0]], [[4.0, 1.0, 7.0], [5.0, 1.0, 8.0], [5.0, 7.0, 2.0], [7.0, 3.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 8.0, 8.0], [8.0, 8.0, 8.0], [8.0, 1.0, 3.0], [1.0, 6.0, 2.0]], [[2.0, 2.0, 5.0], [7.0, 2.0, 3.0], [4.0, 8.0, 1.0], [6.0, 7.0, 6.0]], [[4.0, 1.0, 7.0], [5.0, 1.0, 8.0], [5.0, 7.0, 2.0], [7.0, 3.0, 4.0]]]))
8088        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8089        val=msk_val*numarray.array([[[7.0], [1.0]]])+(1.-msk_val)*numarray.array([[[6.0], [7.0]]])        val=msk_val*numarray.array([[[7.0], [1.0]]])+(1.-msk_val)*numarray.array([[[6.0], [7.0]]])
8090        arg[2:,2:,1:2]=val        arg[2:,2:,1:2]=val
8091        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8123  class Test_util_slicing_with_tagged_data Line 8123  class Test_util_slicing_with_tagged_data
8123     def test_setslice_taggedData_rank3_expandedData_CPN(self):     def test_setslice_taggedData_rank3_expandedData_CPN(self):
8124        arg=Data(numarray.array([[[8.0, 5.0, 2.0], [8.0, 7.0, 2.0], [4.0, 2.0, 5.0], [6.0, 4.0, 6.0]], [[6.0, 7.0, 1.0], [1.0, 5.0, 5.0], [3.0, 7.0, 8.0], [7.0, 7.0, 3.0]], [[8.0, 6.0, 1.0], [4.0, 3.0, 5.0], [6.0, 4.0, 2.0], [7.0, 3.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 5.0, 2.0], [8.0, 7.0, 2.0], [4.0, 2.0, 5.0], [6.0, 4.0, 6.0]], [[6.0, 7.0, 1.0], [1.0, 5.0, 5.0], [3.0, 7.0, 8.0], [7.0, 7.0, 3.0]], [[8.0, 6.0, 1.0], [4.0, 3.0, 5.0], [6.0, 4.0, 2.0], [7.0, 3.0, 1.0]]]),self.functionspace)
8125        arg.setTaggedValue(1,numarray.array([[[4.0, 2.0, 4.0], [7.0, 8.0, 2.0], [2.0, 8.0, 5.0], [3.0, 7.0, 6.0]], [[3.0, 5.0, 6.0], [1.0, 2.0, 4.0], [7.0, 1.0, 2.0], [5.0, 4.0, 1.0]], [[2.0, 5.0, 7.0], [2.0, 6.0, 8.0], [4.0, 2.0, 3.0], [7.0, 7.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[4.0, 2.0, 4.0], [7.0, 8.0, 2.0], [2.0, 8.0, 5.0], [3.0, 7.0, 6.0]], [[3.0, 5.0, 6.0], [1.0, 2.0, 4.0], [7.0, 1.0, 2.0], [5.0, 4.0, 1.0]], [[2.0, 5.0, 7.0], [2.0, 6.0, 8.0], [4.0, 2.0, 3.0], [7.0, 7.0, 2.0]]]))
8126        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8127        val=msk_val*numarray.array([[5.0, 6.0, 3.0], [8.0, 8.0, 4.0], [5.0, 1.0, 3.0]])+(1.-msk_val)*numarray.array([[8.0, 5.0, 7.0], [7.0, 2.0, 5.0], [4.0, 5.0, 5.0]])        val=msk_val*numarray.array([[5.0, 6.0, 3.0], [8.0, 8.0, 4.0], [5.0, 1.0, 3.0]])+(1.-msk_val)*numarray.array([[8.0, 5.0, 7.0], [7.0, 2.0, 5.0], [4.0, 5.0, 5.0]])
8128        arg[:,2]=val        arg[:,2]=val
8129        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8161  class Test_util_slicing_with_tagged_data Line 8161  class Test_util_slicing_with_tagged_data
8161     def test_setslice_taggedData_rank3_expandedData_PPN(self):     def test_setslice_taggedData_rank3_expandedData_PPN(self):
8162        arg=Data(numarray.array([[[8.0, 2.0, 1.0], [7.0, 6.0, 1.0], [3.0, 7.0, 3.0], [5.0, 1.0, 2.0]], [[4.0, 3.0, 1.0], [6.0, 3.0, 5.0], [8.0, 3.0, 2.0], [4.0, 6.0, 4.0]], [[2.0, 5.0, 5.0], [8.0, 7.0, 8.0], [3.0, 1.0, 5.0], [6.0, 3.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 2.0, 1.0], [7.0, 6.0, 1.0], [3.0, 7.0, 3.0], [5.0, 1.0, 2.0]], [[4.0, 3.0, 1.0], [6.0, 3.0, 5.0], [8.0, 3.0, 2.0], [4.0, 6.0, 4.0]], [[2.0, 5.0, 5.0], [8.0, 7.0, 8.0], [3.0, 1.0, 5.0], [6.0, 3.0, 2.0]]]),self.functionspace)
8163        arg.setTaggedValue(1,numarray.array([[[4.0, 5.0, 8.0], [3.0, 4.0, 2.0], [6.0, 4.0, 5.0], [8.0, 3.0, 7.0]], [[1.0, 2.0, 7.0], [8.0, 4.0, 4.0], [6.0, 6.0, 2.0], [6.0, 8.0, 7.0]], [[6.0, 1.0, 8.0], [5.0, 1.0, 6.0], [5.0, 5.0, 3.0], [3.0, 5.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[4.0, 5.0, 8.0], [3.0, 4.0, 2.0], [6.0, 4.0, 5.0], [8.0, 3.0, 7.0]], [[1.0, 2.0, 7.0], [8.0, 4.0, 4.0], [6.0, 6.0, 2.0], [6.0, 8.0, 7.0]], [[6.0, 1.0, 8.0], [5.0, 1.0, 6.0], [5.0, 5.0, 3.0], [3.0, 5.0, 3.0]]]))
8164        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8165        val=msk_val*numarray.array([3.0, 6.0, 2.0])+(1.-msk_val)*numarray.array([8.0, 7.0, 2.0])        val=msk_val*numarray.array([3.0, 6.0, 2.0])+(1.-msk_val)*numarray.array([8.0, 7.0, 2.0])
8166        arg[1,2]=val        arg[1,2]=val
8167        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8197  class Test_util_slicing_with_tagged_data Line 8197  class Test_util_slicing_with_tagged_data
8197     def test_setslice_taggedData_rank3_expandedData_CCN(self):     def test_setslice_taggedData_rank3_expandedData_CCN(self):
8198        arg=Data(numarray.array([[[7.0, 2.0, 4.0], [1.0, 2.0, 1.0], [1.0, 6.0, 1.0], [5.0, 7.0, 3.0]], [[5.0, 2.0, 6.0], [6.0, 8.0, 5.0], [2.0, 1.0, 2.0], [4.0, 3.0, 3.0]], [[7.0, 3.0, 2.0], [7.0, 8.0, 8.0], [5.0, 1.0, 2.0], [1.0, 4.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 2.0, 4.0], [1.0, 2.0, 1.0], [1.0, 6.0, 1.0], [5.0, 7.0, 3.0]], [[5.0, 2.0, 6.0], [6.0, 8.0, 5.0], [2.0, 1.0, 2.0], [4.0, 3.0, 3.0]], [[7.0, 3.0, 2.0], [7.0, 8.0, 8.0], [5.0, 1.0, 2.0], [1.0, 4.0, 1.0]]]),self.functionspace)
8199        arg.setTaggedValue(1,numarray.array([[[7.0, 4.0, 2.0], [1.0, 3.0, 2.0], [7.0, 7.0, 5.0], [1.0, 5.0, 6.0]], [[2.0, 4.0, 3.0], [4.0, 4.0, 4.0], [4.0, 2.0, 4.0], [3.0, 7.0, 2.0]], [[5.0, 8.0, 6.0], [7.0, 8.0, 3.0], [1.0, 2.0, 2.0], [5.0, 5.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[7.0, 4.0, 2.0], [1.0, 3.0, 2.0], [7.0, 7.0, 5.0], [1.0, 5.0, 6.0]], [[2.0, 4.0, 3.0], [4.0, 4.0, 4.0], [4.0, 2.0, 4.0], [3.0, 7.0, 2.0]], [[5.0, 8.0, 6.0], [7.0, 8.0, 3.0], [1.0, 2.0, 2.0], [5.0, 5.0, 8.0]]]))
8200        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8201        val=msk_val*numarray.array([[[5.0, 6.0, 3.0], [1.0, 2.0, 5.0], [8.0, 4.0, 7.0], [2.0, 8.0, 2.0]], [[6.0, 1.0, 1.0], [4.0, 4.0, 8.0], [8.0, 6.0, 8.0], [7.0, 7.0, 8.0]], [[1.0, 6.0, 2.0], [8.0, 7.0, 8.0], [4.0, 8.0, 5.0], [6.0, 8.0, 1.0]]])+(1.-msk_val)*numarray.array([[[1.0, 2.0, 1.0], [4.0, 5.0, 8.0], [2.0, 4.0, 2.0], [6.0, 5.0, 8.0]], [[6.0, 6.0, 7.0], [4.0, 2.0, 6.0], [3.0, 5.0, 5.0], [8.0, 2.0, 6.0]], [[6.0, 2.0, 4.0], [4.0, 3.0, 8.0], [4.0, 6.0, 4.0], [3.0, 6.0, 3.0]]])        val=msk_val*numarray.array([[[5.0, 6.0, 3.0], [1.0, 2.0, 5.0], [8.0, 4.0, 7.0], [2.0, 8.0, 2.0]], [[6.0, 1.0, 1.0], [4.0, 4.0, 8.0], [8.0, 6.0, 8.0], [7.0, 7.0, 8.0]], [[1.0, 6.0, 2.0], [8.0, 7.0, 8.0], [4.0, 8.0, 5.0], [6.0, 8.0, 1.0]]])+(1.-msk_val)*numarray.array([[[1.0, 2.0, 1.0], [4.0, 5.0, 8.0], [2.0, 4.0, 2.0], [6.0, 5.0, 8.0]], [[6.0, 6.0, 7.0], [4.0, 2.0, 6.0], [3.0, 5.0, 5.0], [8.0, 2.0, 6.0]], [[6.0, 2.0, 4.0], [4.0, 3.0, 8.0], [4.0, 6.0, 4.0], [3.0, 6.0, 3.0]]])
8202        arg[:,:]=val        arg[:,:]=val
8203        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8235  class Test_util_slicing_with_tagged_data Line 8235  class Test_util_slicing_with_tagged_data
8235     def test_setslice_taggedData_rank3_expandedData_PCP(self):     def test_setslice_taggedData_rank3_expandedData_PCP(self):
8236        arg=Data(numarray.array([[[1.0, 4.0, 5.0], [6.0, 8.0, 1.0], [2.0, 3.0, 5.0], [7.0, 4.0, 8.0]], [[5.0, 5.0, 3.0], [1.0, 6.0, 8.0], [2.0, 4.0, 7.0], [7.0, 1.0, 6.0]], [[8.0, 3.0, 2.0], [2.0, 2.0, 4.0], [6.0, 5.0, 6.0], [5.0, 6.0, 8.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 4.0, 5.0], [6.0, 8.0, 1.0], [2.0, 3.0, 5.0], [7.0, 4.0, 8.0]], [[5.0, 5.0, 3.0], [1.0, 6.0, 8.0], [2.0, 4.0, 7.0], [7.0, 1.0, 6.0]], [[8.0, 3.0, 2.0], [2.0, 2.0, 4.0], [6.0, 5.0, 6.0], [5.0, 6.0, 8.0]]]),self.functionspace)
8237        arg.setTaggedValue(1,numarray.array([[[5.0, 4.0, 7.0], [2.0, 6.0, 3.0], [8.0, 4.0, 1.0], [8.0, 3.0, 4.0]], [[2.0, 8.0, 6.0], [6.0, 4.0, 5.0], [7.0, 8.0, 5.0], [4.0, 6.0, 5.0]], [[7.0, 1.0, 3.0], [5.0, 5.0, 4.0], [5.0, 1.0, 2.0], [5.0, 5.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[5.0, 4.0, 7.0], [2.0, 6.0, 3.0], [8.0, 4.0, 1.0], [8.0, 3.0, 4.0]], [[2.0, 8.0, 6.0], [6.0, 4.0, 5.0], [7.0, 8.0, 5.0], [4.0, 6.0, 5.0]], [[7.0, 1.0, 3.0], [5.0, 5.0, 4.0], [5.0, 1.0, 2.0], [5.0, 5.0, 3.0]]]))
8238        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8239        val=msk_val*numarray.array([1.0, 1.0, 3.0, 2.0])+(1.-msk_val)*numarray.array([1.0, 3.0, 3.0, 6.0])        val=msk_val*numarray.array([1.0, 1.0, 3.0, 2.0])+(1.-msk_val)*numarray.array([1.0, 3.0, 3.0, 6.0])
8240        arg[1,:,1]=val        arg[1,:,1]=val
8241        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8273  class Test_util_slicing_with_tagged_data Line 8273  class Test_util_slicing_with_tagged_data
8273     def test_setslice_taggedData_rank3_expandedData_ULN(self):     def test_setslice_taggedData_rank3_expandedData_ULN(self):
8274        arg=Data(numarray.array([[[3.0, 3.0, 5.0], [6.0, 7.0, 5.0], [4.0, 8.0, 7.0], [8.0, 7.0, 8.0]], [[3.0, 1.0, 5.0], [7.0, 3.0, 2.0], [3.0, 2.0, 2.0], [4.0, 1.0, 7.0]], [[1.0, 8.0, 4.0], [8.0, 1.0, 4.0], [7.0, 2.0, 6.0], [7.0, 3.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 3.0, 5.0], [6.0, 7.0, 5.0], [4.0, 8.0, 7.0], [8.0, 7.0, 8.0]], [[3.0, 1.0, 5.0], [7.0, 3.0, 2.0], [3.0, 2.0, 2.0], [4.0, 1.0, 7.0]], [[1.0, 8.0, 4.0], [8.0, 1.0, 4.0], [7.0, 2.0, 6.0], [7.0, 3.0, 4.0]]]),self.functionspace)
8275        arg.setTaggedValue(1,numarray.array([[[7.0, 2.0, 4.0], [3.0, 2.0, 4.0], [6.0, 1.0, 8.0], [1.0, 6.0, 4.0]], [[1.0, 3.0, 4.0], [4.0, 5.0, 1.0], [3.0, 7.0, 5.0], [4.0, 2.0, 8.0]], [[3.0, 7.0, 4.0], [1.0, 8.0, 4.0], [8.0, 5.0, 8.0], [3.0, 4.0, 7.0]]]))        arg.setTaggedValue(1,numarray.array([[[7.0, 2.0, 4.0], [3.0, 2.0, 4.0], [6.0, 1.0, 8.0], [1.0, 6.0, 4.0]], [[1.0, 3.0, 4.0], [4.0, 5.0, 1.0], [3.0, 7.0, 5.0], [4.0, 2.0, 8.0]], [[3.0, 7.0, 4.0], [1.0, 8.0, 4.0], [8.0, 5.0, 8.0], [3.0, 4.0, 7.0]]]))
8276        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8277        val=msk_val*numarray.array([[[5.0, 5.0, 8.0], [7.0, 5.0, 4.0]], [[7.0, 6.0, 2.0], [1.0, 2.0, 4.0]]])+(1.-msk_val)*numarray.array([[[4.0, 8.0, 5.0], [4.0, 7.0, 6.0]], [[5.0, 2.0, 8.0], [4.0, 1.0, 5.0]]])        val=msk_val*numarray.array([[[5.0, 5.0, 8.0], [7.0, 5.0, 4.0]], [[7.0, 6.0, 2.0], [1.0, 2.0, 4.0]]])+(1.-msk_val)*numarray.array([[[4.0, 8.0, 5.0], [4.0, 7.0, 6.0]], [[5.0, 2.0, 8.0], [4.0, 1.0, 5.0]]])
8278        arg[:2,2:]=val        arg[:2,2:]=val
8279        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8311  class Test_util_slicing_with_tagged_data Line 8311  class Test_util_slicing_with_tagged_data
8311     def test_setslice_taggedData_rank3_expandedData_UPN(self):     def test_setslice_taggedData_rank3_expandedData_UPN(self):
8312        arg=Data(numarray.array([[[1.0, 7.0, 5.0], [7.0, 1.0, 5.0], [7.0, 5.0, 2.0], [4.0, 7.0, 7.0]], [[3.0, 2.0, 7.0], [4.0, 3.0, 4.0], [7.0, 8.0, 5.0], [1.0, 2.0, 4.0]], [[1.0, 1.0, 2.0], [3.0, 1.0, 6.0], [7.0, 2.0, 3.0], [8.0, 5.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 7.0, 5.0], [7.0, 1.0, 5.0], [7.0, 5.0, 2.0], [4.0, 7.0, 7.0]], [[3.0, 2.0, 7.0], [4.0, 3.0, 4.0], [7.0, 8.0, 5.0], [1.0, 2.0, 4.0]], [[1.0, 1.0, 2.0], [3.0, 1.0, 6.0], [7.0, 2.0, 3.0], [8.0, 5.0, 6.0]]]),self.functionspace)
8313        arg.setTaggedValue(1,numarray.array([[[2.0, 8.0, 2.0], [8.0, 3.0, 4.0], [7.0, 1.0, 3.0], [5.0, 6.0, 3.0]], [[6.0, 1.0, 1.0], [1.0, 3.0, 5.0], [1.0, 3.0, 7.0], [8.0, 3.0, 3.0]], [[8.0, 5.0, 3.0], [1.0, 1.0, 3.0], [5.0, 2.0, 3.0], [2.0, 6.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 8.0, 2.0], [8.0, 3.0, 4.0], [7.0, 1.0, 3.0], [5.0, 6.0, 3.0]], [[6.0, 1.0, 1.0], [1.0, 3.0, 5.0], [1.0, 3.0, 7.0], [8.0, 3.0, 3.0]], [[8.0, 5.0, 3.0], [1.0, 1.0, 3.0], [5.0, 2.0, 3.0], [2.0, 6.0, 2.0]]]))
8314        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8315        val=msk_val*numarray.array([[3.0, 7.0, 5.0], [6.0, 1.0, 2.0]])+(1.-msk_val)*numarray.array([[3.0, 1.0, 1.0], [1.0, 6.0, 7.0]])        val=msk_val*numarray.array([[3.0, 7.0, 5.0], [6.0, 1.0, 2.0]])+(1.-msk_val)*numarray.array([[3.0, 1.0, 1.0], [1.0, 6.0, 7.0]])
8316        arg[:2,2]=val        arg[:2,2]=val
8317        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8349  class Test_util_slicing_with_tagged_data Line 8349  class Test_util_slicing_with_tagged_data
8349     def test_setslice_taggedData_rank3_expandedData_RRC(self):     def test_setslice_taggedData_rank3_expandedData_RRC(self):
8350        arg=Data(numarray.array([[[7.0, 3.0, 3.0], [8.0, 5.0, 7.0], [5.0, 5.0, 7.0], [8.0, 2.0, 5.0]], [[3.0, 1.0, 1.0], [6.0, 4.0, 3.0], [7.0, 5.0, 6.0], [8.0, 4.0, 4.0]], [[1.0, 4.0, 1.0], [5.0, 7.0, 4.0], [8.0, 4.0, 6.0], [5.0, 6.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 3.0, 3.0], [8.0, 5.0, 7.0], [5.0, 5.0, 7.0], [8.0, 2.0, 5.0]], [[3.0, 1.0, 1.0], [6.0, 4.0, 3.0], [7.0, 5.0, 6.0], [8.0, 4.0, 4.0]], [[1.0, 4.0, 1.0], [5.0, 7.0, 4.0], [8.0, 4.0, 6.0], [5.0, 6.0, 5.0]]]),self.functionspace)
8351        arg.setTaggedValue(1,numarray.array([[[1.0, 4.0, 1.0], [7.0, 2.0, 8.0], [8.0, 8.0, 1.0], [6.0, 4.0, 7.0]], [[7.0, 3.0, 6.0], [4.0, 8.0, 4.0], [3.0, 4.0, 1.0], [5.0, 5.0, 3.0]], [[2.0, 1.0, 8.0], [6.0, 6.0, 4.0], [7.0, 4.0, 1.0], [5.0, 8.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 4.0, 1.0], [7.0, 2.0, 8.0], [8.0, 8.0, 1.0], [6.0, 4.0, 7.0]], [[7.0, 3.0, 6.0], [4.0, 8.0, 4.0], [3.0, 4.0, 1.0], [5.0, 5.0, 3.0]], [[2.0, 1.0, 8.0], [6.0, 6.0, 4.0], [7.0, 4.0, 1.0], [5.0, 8.0, 8.0]]]))
8352        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8353        val=msk_val*numarray.array([[[4.0, 1.0, 8.0], [2.0, 4.0, 3.0]]])+(1.-msk_val)*numarray.array([[[8.0, 1.0, 1.0], [5.0, 2.0, 4.0]]])        val=msk_val*numarray.array([[[4.0, 1.0, 8.0], [2.0, 4.0, 3.0]]])+(1.-msk_val)*numarray.array([[[8.0, 1.0, 1.0], [5.0, 2.0, 4.0]]])
8354        arg[1:2,1:3,:]=val        arg[1:2,1:3,:]=val
8355        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8387  class Test_util_slicing_with_tagged_data Line 8387  class Test_util_slicing_with_tagged_data
8387     def test_setslice_taggedData_rank3_expandedData_LUC(self):     def test_setslice_taggedData_rank3_expandedData_LUC(self):
8388        arg=Data(numarray.array([[[2.0, 5.0, 6.0], [3.0, 5.0, 7.0], [7.0, 1.0, 3.0], [7.0, 6.0, 4.0]], [[8.0, 4.0, 6.0], [7.0, 1.0, 6.0], [4.0, 5.0, 8.0], [4.0, 2.0, 5.0]], [[8.0, 8.0, 2.0], [5.0, 5.0, 1.0], [7.0, 4.0, 5.0], [5.0, 1.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 5.0, 6.0], [3.0, 5.0, 7.0], [7.0, 1.0, 3.0], [7.0, 6.0, 4.0]], [[8.0, 4.0, 6.0], [7.0, 1.0, 6.0], [4.0, 5.0, 8.0], [4.0, 2.0, 5.0]], [[8.0, 8.0, 2.0], [5.0, 5.0, 1.0], [7.0, 4.0, 5.0], [5.0, 1.0, 5.0]]]),self.functionspace)
8389        arg.setTaggedValue(1,numarray.array([[[2.0, 2.0, 7.0], [5.0, 3.0, 7.0], [4.0, 4.0, 3.0], [4.0, 4.0, 7.0]], [[2.0, 6.0, 1.0], [4.0, 7.0, 1.0], [8.0, 1.0, 1.0], [5.0, 2.0, 6.0]], [[4.0, 4.0, 3.0], [8.0, 8.0, 5.0], [7.0, 5.0, 6.0], [8.0, 1.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 2.0, 7.0], [5.0, 3.0, 7.0], [4.0, 4.0, 3.0], [4.0, 4.0, 7.0]], [[2.0, 6.0, 1.0], [4.0, 7.0, 1.0], [8.0, 1.0, 1.0], [5.0, 2.0, 6.0]], [[4.0, 4.0, 3.0], [8.0, 8.0, 5.0], [7.0, 5.0, 6.0], [8.0, 1.0, 8.0]]]))
8390        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8391        val=msk_val*numarray.array([[[8.0, 2.0, 3.0], [8.0, 1.0, 1.0], [7.0, 2.0, 7.0]]])+(1.-msk_val)*numarray.array([[[5.0, 2.0, 5.0], [4.0, 3.0, 4.0], [4.0, 8.0, 8.0]]])        val=msk_val*numarray.array([[[8.0, 2.0, 3.0], [8.0, 1.0, 1.0], [7.0, 2.0, 7.0]]])+(1.-msk_val)*numarray.array([[[5.0, 2.0, 5.0], [4.0, 3.0, 4.0], [4.0, 8.0, 8.0]]])
8392        arg[2:,:3,:]=val        arg[2:,:3,:]=val
8393        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8425  class Test_util_slicing_with_tagged_data Line 8425  class Test_util_slicing_with_tagged_data
8425     def test_setslice_taggedData_rank3_expandedData_RCN(self):     def test_setslice_taggedData_rank3_expandedData_RCN(self):
8426        arg=Data(numarray.array([[[3.0, 4.0, 7.0], [1.0, 7.0, 8.0], [1.0, 8.0, 5.0], [1.0, 2.0, 7.0]], [[3.0, 7.0, 1.0], [3.0, 6.0, 1.0], [4.0, 3.0, 5.0], [3.0, 4.0, 3.0]], [[8.0, 8.0, 2.0], [5.0, 2.0, 8.0], [1.0, 5.0, 5.0], [5.0, 8.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 4.0, 7.0], [1.0, 7.0, 8.0], [1.0, 8.0, 5.0], [1.0, 2.0, 7.0]], [[3.0, 7.0, 1.0], [3.0, 6.0, 1.0], [4.0, 3.0, 5.0], [3.0, 4.0, 3.0]], [[8.0, 8.0, 2.0], [5.0, 2.0, 8.0], [1.0, 5.0, 5.0], [5.0, 8.0, 6.0]]]),self.functionspace)
8427        arg.setTaggedValue(1,numarray.array([[[4.0, 3.0, 2.0], [7.0, 8.0, 8.0], [5.0, 8.0, 7.0], [3.0, 2.0, 4.0]], [[8.0, 5.0, 2.0], [6.0, 8.0, 5.0], [3.0, 4.0, 3.0], [1.0, 7.0, 7.0]], [[2.0, 1.0, 4.0], [7.0, 2.0, 6.0], [7.0, 8.0, 2.0], [8.0, 5.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[4.0, 3.0, 2.0], [7.0, 8.0, 8.0], [5.0, 8.0, 7.0], [3.0, 2.0, 4.0]], [[8.0, 5.0, 2.0], [6.0, 8.0, 5.0], [3.0, 4.0, 3.0], [1.0, 7.0, 7.0]], [[2.0, 1.0, 4.0], [7.0, 2.0, 6.0], [7.0, 8.0, 2.0], [8.0, 5.0, 3.0]]]))
8428        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8429        val=msk_val*numarray.array([[[3.0, 6.0, 1.0], [4.0, 3.0, 4.0], [3.0, 6.0, 1.0], [7.0, 6.0, 6.0]]])+(1.-msk_val)*numarray.array([[[5.0, 4.0, 2.0], [2.0, 1.0, 8.0], [2.0, 8.0, 1.0], [5.0, 3.0, 8.0]]])        val=msk_val*numarray.array([[[3.0, 6.0, 1.0], [4.0, 3.0, 4.0], [3.0, 6.0, 1.0], [7.0, 6.0, 6.0]]])+(1.-msk_val)*numarray.array([[[5.0, 4.0, 2.0], [2.0, 1.0, 8.0], [2.0, 8.0, 1.0], [5.0, 3.0, 8.0]]])
8430        arg[1:2,:]=val        arg[1:2,:]=val
8431        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8463  class Test_util_slicing_with_tagged_data Line 8463  class Test_util_slicing_with_tagged_data
8463     def test_setslice_taggedData_rank3_expandedData_UCN(self):     def test_setslice_taggedData_rank3_expandedData_UCN(self):
8464        arg=Data(numarray.array([[[6.0, 6.0, 8.0], [5.0, 1.0, 8.0], [5.0, 8.0, 3.0], [8.0, 3.0, 5.0]], [[4.0, 7.0, 4.0], [6.0, 3.0, 7.0], [6.0, 8.0, 7.0], [6.0, 1.0, 8.0]], [[5.0, 3.0, 5.0], [6.0, 2.0, 8.0], [6.0, 3.0, 6.0], [8.0, 6.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[6.0, 6.0, 8.0], [5.0, 1.0, 8.0], [5.0, 8.0, 3.0], [8.0, 3.0, 5.0]], [[4.0, 7.0, 4.0], [6.0, 3.0, 7.0], [6.0, 8.0, 7.0], [6.0, 1.0, 8.0]], [[5.0, 3.0, 5.0], [6.0, 2.0, 8.0], [6.0, 3.0, 6.0], [8.0, 6.0, 7.0]]]),self.functionspace)
8465        arg.setTaggedValue(1,numarray.array([[[6.0, 5.0, 5.0], [7.0, 5.0, 5.0], [4.0, 1.0, 8.0], [6.0, 2.0, 2.0]], [[6.0, 1.0, 5.0], [3.0, 2.0, 4.0], [2.0, 3.0, 1.0], [6.0, 3.0, 3.0]], [[6.0, 7.0, 4.0], [2.0, 1.0, 6.0], [7.0, 1.0, 5.0], [5.0, 2.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 5.0, 5.0], [7.0, 5.0, 5.0], [4.0, 1.0, 8.0], [6.0, 2.0, 2.0]], [[6.0, 1.0, 5.0], [3.0, 2.0, 4.0], [2.0, 3.0, 1.0], [6.0, 3.0, 3.0]], [[6.0, 7.0, 4.0], [2.0, 1.0, 6.0], [7.0, 1.0, 5.0], [5.0, 2.0, 2.0]]]))
8466        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8467        val=msk_val*numarray.array([[[3.0, 7.0, 4.0], [5.0, 8.0, 4.0], [6.0, 2.0, 2.0], [5.0, 6.0, 4.0]], [[7.0, 2.0, 2.0], [2.0, 8.0, 7.0], [2.0, 4.0, 5.0], [1.0, 3.0, 8.0]]])+(1.-msk_val)*numarray.array([[[2.0, 1.0, 3.0], [2.0, 7.0, 3.0], [4.0, 1.0, 5.0], [1.0, 4.0, 5.0]], [[5.0, 7.0, 6.0], [4.0, 2.0, 5.0], [1.0, 7.0, 7.0], [4.0, 7.0, 5.0]]])        val=msk_val*numarray.array([[[3.0, 7.0, 4.0], [5.0, 8.0, 4.0], [6.0, 2.0, 2.0], [5.0, 6.0, 4.0]], [[7.0, 2.0, 2.0], [2.0, 8.0, 7.0], [2.0, 4.0, 5.0], [1.0, 3.0, 8.0]]])+(1.-msk_val)*numarray.array([[[2.0, 1.0, 3.0], [2.0, 7.0, 3.0], [4.0, 1.0, 5.0], [1.0, 4.0, 5.0]], [[5.0, 7.0, 6.0], [4.0, 2.0, 5.0], [1.0, 7.0, 7.0], [4.0, 7.0, 5.0]]])
8468        arg[:2,:]=val        arg[:2,:]=val
8469        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8501  class Test_util_slicing_with_tagged_data Line 8501  class Test_util_slicing_with_tagged_data
8501     def test_setslice_taggedData_rank3_expandedData_RPN(self):     def test_setslice_taggedData_rank3_expandedData_RPN(self):
8502        arg=Data(numarray.array([[[6.0, 8.0, 6.0], [3.0, 6.0, 3.0], [1.0, 3.0, 6.0], [1.0, 2.0, 3.0]], [[4.0, 4.0, 7.0], [1.0, 3.0, 4.0], [1.0, 6.0, 1.0], [8.0, 6.0, 2.0]], [[1.0, 7.0, 2.0], [7.0, 4.0, 2.0], [6.0, 2.0, 5.0], [8.0, 6.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[6.0, 8.0, 6.0], [3.0, 6.0, 3.0], [1.0, 3.0, 6.0], [1.0, 2.0, 3.0]], [[4.0, 4.0, 7.0], [1.0, 3.0, 4.0], [1.0, 6.0, 1.0], [8.0, 6.0, 2.0]], [[1.0, 7.0, 2.0], [7.0, 4.0, 2.0], [6.0, 2.0, 5.0], [8.0, 6.0, 4.0]]]),self.functionspace)
8503        arg.setTaggedValue(1,numarray.array([[[5.0, 7.0, 4.0], [6.0, 3.0, 8.0], [1.0, 7.0, 4.0], [3.0, 6.0, 3.0]], [[3.0, 8.0, 2.0], [6.0, 7.0, 4.0], [8.0, 2.0, 1.0], [8.0, 1.0, 5.0]], [[8.0, 7.0, 5.0], [3.0, 6.0, 4.0], [7.0, 1.0, 7.0], [2.0, 7.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[5.0, 7.0, 4.0], [6.0, 3.0, 8.0], [1.0, 7.0, 4.0], [3.0, 6.0, 3.0]], [[3.0, 8.0, 2.0], [6.0, 7.0, 4.0], [8.0, 2.0, 1.0], [8.0, 1.0, 5.0]], [[8.0, 7.0, 5.0], [3.0, 6.0, 4.0], [7.0, 1.0, 7.0], [2.0, 7.0, 3.0]]]))
8504        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8505        val=msk_val*numarray.array([[3.0, 2.0, 7.0]])+(1.-msk_val)*numarray.array([[7.0, 1.0, 2.0]])        val=msk_val*numarray.array([[3.0, 2.0, 7.0]])+(1.-msk_val)*numarray.array([[7.0, 1.0, 2.0]])
8506        arg[1:2,2]=val        arg[1:2,2]=val
8507        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8539  class Test_util_slicing_with_tagged_data Line 8539  class Test_util_slicing_with_tagged_data
8539     def test_setslice_taggedData_rank3_expandedData_PLN(self):     def test_setslice_taggedData_rank3_expandedData_PLN(self):
8540        arg=Data(numarray.array([[[1.0, 6.0, 8.0], [2.0, 5.0, 8.0], [2.0, 3.0, 2.0], [2.0, 7.0, 7.0]], [[8.0, 3.0, 5.0], [7.0, 1.0, 1.0], [7.0, 3.0, 8.0], [5.0, 6.0, 2.0]], [[3.0, 1.0, 2.0], [5.0, 2.0, 5.0], [2.0, 5.0, 2.0], [1.0, 6.0, 4.0]]]),self.functionspace)        arg=Data(numarray.array([[[1.0, 6.0, 8.0], [2.0, 5.0, 8.0], [2.0, 3.0, 2.0], [2.0, 7.0, 7.0]], [[8.0, 3.0, 5.0], [7.0, 1.0, 1.0], [7.0, 3.0, 8.0], [5.0, 6.0, 2.0]], [[3.0, 1.0, 2.0], [5.0, 2.0, 5.0], [2.0, 5.0, 2.0], [1.0, 6.0, 4.0]]]),self.functionspace)
8541        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 5.0], [8.0, 6.0, 6.0], [8.0, 1.0, 6.0], [3.0, 1.0, 7.0]], [[5.0, 4.0, 6.0], [3.0, 8.0, 1.0], [7.0, 3.0, 5.0], [8.0, 5.0, 6.0]], [[7.0, 1.0, 5.0], [4.0, 2.0, 4.0], [7.0, 7.0, 7.0], [2.0, 5.0, 1.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 5.0], [8.0, 6.0, 6.0], [8.0, 1.0, 6.0], [3.0, 1.0, 7.0]], [[5.0, 4.0, 6.0], [3.0, 8.0, 1.0], [7.0, 3.0, 5.0], [8.0, 5.0, 6.0]], [[7.0, 1.0, 5.0], [4.0, 2.0, 4.0], [7.0, 7.0, 7.0], [2.0, 5.0, 1.0]]]))
8542        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8543        val=msk_val*numarray.array([[6.0, 8.0, 2.0], [2.0, 1.0, 8.0]])+(1.-msk_val)*numarray.array([[1.0, 5.0, 8.0], [7.0, 3.0, 6.0]])        val=msk_val*numarray.array([[6.0, 8.0, 2.0], [2.0, 1.0, 8.0]])+(1.-msk_val)*numarray.array([[1.0, 5.0, 8.0], [7.0, 3.0, 6.0]])
8544        arg[1,2:]=val        arg[1,2:]=val
8545        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8577  class Test_util_slicing_with_tagged_data Line 8577  class Test_util_slicing_with_tagged_data
8577     def test_setslice_taggedData_rank3_expandedData_CUR(self):     def test_setslice_taggedData_rank3_expandedData_CUR(self):
8578        arg=Data(numarray.array([[[7.0, 1.0, 3.0], [7.0, 8.0, 8.0], [5.0, 7.0, 8.0], [7.0, 5.0, 8.0]], [[1.0, 3.0, 5.0], [7.0, 1.0, 3.0], [8.0, 3.0, 1.0], [6.0, 6.0, 3.0]], [[5.0, 2.0, 1.0], [1.0, 3.0, 1.0], [2.0, 3.0, 8.0], [8.0, 5.0, 5.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 1.0, 3.0], [7.0, 8.0, 8.0], [5.0, 7.0, 8.0], [7.0, 5.0, 8.0]], [[1.0, 3.0, 5.0], [7.0, 1.0, 3.0], [8.0, 3.0, 1.0], [6.0, 6.0, 3.0]], [[5.0, 2.0, 1.0], [1.0, 3.0, 1.0], [2.0, 3.0, 8.0], [8.0, 5.0, 5.0]]]),self.functionspace)
8579        arg.setTaggedValue(1,numarray.array([[[8.0, 1.0, 4.0], [6.0, 5.0, 7.0], [5.0, 7.0, 2.0], [2.0, 8.0, 7.0]], [[4.0, 4.0, 6.0], [1.0, 6.0, 5.0], [6.0, 2.0, 1.0], [7.0, 2.0, 7.0]], [[4.0, 7.0, 1.0], [8.0, 5.0, 1.0], [3.0, 6.0, 3.0], [4.0, 3.0, 3.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 1.0, 4.0], [6.0, 5.0, 7.0], [5.0, 7.0, 2.0], [2.0, 8.0, 7.0]], [[4.0, 4.0, 6.0], [1.0, 6.0, 5.0], [6.0, 2.0, 1.0], [7.0, 2.0, 7.0]], [[4.0, 7.0, 1.0], [8.0, 5.0, 1.0], [3.0, 6.0, 3.0], [4.0, 3.0, 3.0]]]))
8580        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8581        val=msk_val*numarray.array([[[5.0], [1.0], [1.0]], [[7.0], [7.0], [4.0]], [[7.0], [8.0], [1.0]]])+(1.-msk_val)*numarray.array([[[5.0], [2.0], [8.0]], [[2.0], [2.0], [3.0]], [[4.0], [2.0], [1.0]]])        val=msk_val*numarray.array([[[5.0], [1.0], [1.0]], [[7.0], [7.0], [4.0]], [[7.0], [8.0], [1.0]]])+(1.-msk_val)*numarray.array([[[5.0], [2.0], [8.0]], [[2.0], [2.0], [3.0]], [[4.0], [2.0], [1.0]]])
8582        arg[:,:3,1:2]=val        arg[:,:3,1:2]=val
8583        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8615  class Test_util_slicing_with_tagged_data Line 8615  class Test_util_slicing_with_tagged_data
8615     def test_setslice_taggedData_rank3_expandedData_CCP(self):     def test_setslice_taggedData_rank3_expandedData_CCP(self):
8616        arg=Data(numarray.array([[[6.0, 5.0, 3.0], [6.0, 3.0, 8.0], [4.0, 5.0, 7.0], [5.0, 4.0, 8.0]], [[7.0, 8.0, 4.0], [1.0, 7.0, 7.0], [3.0, 3.0, 7.0], [8.0, 4.0, 2.0]], [[4.0, 2.0, 4.0], [2.0, 6.0, 5.0], [6.0, 5.0, 8.0], [2.0, 4.0, 6.0]]]),self.functionspace)        arg=Data(numarray.array([[[6.0, 5.0, 3.0], [6.0, 3.0, 8.0], [4.0, 5.0, 7.0], [5.0, 4.0, 8.0]], [[7.0, 8.0, 4.0], [1.0, 7.0, 7.0], [3.0, 3.0, 7.0], [8.0, 4.0, 2.0]], [[4.0, 2.0, 4.0], [2.0, 6.0, 5.0], [6.0, 5.0, 8.0], [2.0, 4.0, 6.0]]]),self.functionspace)
8617        arg.setTaggedValue(1,numarray.array([[[3.0, 5.0, 3.0], [7.0, 1.0, 2.0], [5.0, 1.0, 5.0], [5.0, 4.0, 1.0]], [[6.0, 1.0, 4.0], [1.0, 2.0, 2.0], [2.0, 5.0, 1.0], [2.0, 2.0, 3.0]], [[1.0, 1.0, 6.0], [5.0, 7.0, 7.0], [2.0, 6.0, 4.0], [7.0, 3.0, 7.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 5.0, 3.0], [7.0, 1.0, 2.0], [5.0, 1.0, 5.0], [5.0, 4.0, 1.0]], [[6.0, 1.0, 4.0], [1.0, 2.0, 2.0], [2.0, 5.0, 1.0], [2.0, 2.0, 3.0]], [[1.0, 1.0, 6.0], [5.0, 7.0, 7.0], [2.0, 6.0, 4.0], [7.0, 3.0, 7.0]]]))
8618        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8619        val=msk_val*numarray.array([[8.0, 4.0, 2.0, 6.0], [1.0, 2.0, 6.0, 3.0], [8.0, 3.0, 1.0, 4.0]])+(1.-msk_val)*numarray.array([[8.0, 2.0, 5.0, 6.0], [8.0, 1.0, 8.0, 4.0], [7.0, 5.0, 7.0, 1.0]])        val=msk_val*numarray.array([[8.0, 4.0, 2.0, 6.0], [1.0, 2.0, 6.0, 3.0], [8.0, 3.0, 1.0, 4.0]])+(1.-msk_val)*numarray.array([[8.0, 2.0, 5.0, 6.0], [8.0, 1.0, 8.0, 4.0], [7.0, 5.0, 7.0, 1.0]])
8620        arg[:,:,1]=val        arg[:,:,1]=val
8621        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8653  class Test_util_slicing_with_tagged_data Line 8653  class Test_util_slicing_with_tagged_data
8653     def test_setslice_taggedData_rank3_expandedData_RLN(self):     def test_setslice_taggedData_rank3_expandedData_RLN(self):
8654        arg=Data(numarray.array([[[2.0, 6.0, 3.0], [7.0, 8.0, 2.0], [5.0, 8.0, 4.0], [8.0, 8.0, 8.0]], [[4.0, 3.0, 1.0], [1.0, 2.0, 5.0], [6.0, 6.0, 6.0], [2.0, 3.0, 7.0]], [[5.0, 7.0, 7.0], [2.0, 7.0, 8.0], [1.0, 5.0, 2.0], [5.0, 1.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 6.0, 3.0], [7.0, 8.0, 2.0], [5.0, 8.0, 4.0], [8.0, 8.0, 8.0]], [[4.0, 3.0, 1.0], [1.0, 2.0, 5.0], [6.0, 6.0, 6.0], [2.0, 3.0, 7.0]], [[5.0, 7.0, 7.0], [2.0, 7.0, 8.0], [1.0, 5.0, 2.0], [5.0, 1.0, 3.0]]]),self.functionspace)
8655        arg.setTaggedValue(1,numarray.array([[[6.0, 1.0, 4.0], [4.0, 2.0, 5.0], [2.0, 1.0, 8.0], [4.0, 7.0, 3.0]], [[1.0, 1.0, 3.0], [8.0, 3.0, 4.0], [2.0, 1.0, 5.0], [5.0, 2.0, 4.0]], [[2.0, 4.0, 4.0], [3.0, 6.0, 2.0], [1.0, 3.0, 6.0], [2.0, 8.0, 1.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 1.0, 4.0], [4.0, 2.0, 5.0], [2.0, 1.0, 8.0], [4.0, 7.0, 3.0]], [[1.0, 1.0, 3.0], [8.0, 3.0, 4.0], [2.0, 1.0, 5.0], [5.0, 2.0, 4.0]], [[2.0, 4.0, 4.0], [3.0, 6.0, 2.0], [1.0, 3.0, 6.0], [2.0, 8.0, 1.0]]]))
8656        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8657        val=msk_val*numarray.array([[[4.0, 3.0, 4.0], [6.0, 4.0, 8.0]]])+(1.-msk_val)*numarray.array([[[6.0, 3.0, 6.0], [5.0, 1.0, 6.0]]])        val=msk_val*numarray.array([[[4.0, 3.0, 4.0], [6.0, 4.0, 8.0]]])+(1.-msk_val)*numarray.array([[[6.0, 3.0, 6.0], [5.0, 1.0, 6.0]]])
8658        arg[1:2,2:]=val        arg[1:2,2:]=val
8659        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8691  class Test_util_slicing_with_tagged_data Line 8691  class Test_util_slicing_with_tagged_data
8691     def test_setslice_taggedData_rank3_expandedData_RLP(self):     def test_setslice_taggedData_rank3_expandedData_RLP(self):
8692        arg=Data(numarray.array([[[8.0, 2.0, 5.0], [1.0, 1.0, 8.0], [3.0, 2.0, 2.0], [7.0, 6.0, 2.0]], [[7.0, 3.0, 3.0], [3.0, 4.0, 3.0], [3.0, 1.0, 5.0], [6.0, 8.0, 6.0]], [[4.0, 6.0, 6.0], [3.0, 6.0, 5.0], [4.0, 3.0, 7.0], [8.0, 6.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[8.0, 2.0, 5.0], [1.0, 1.0, 8.0], [3.0, 2.0, 2.0], [7.0, 6.0, 2.0]], [[7.0, 3.0, 3.0], [3.0, 4.0, 3.0], [3.0, 1.0, 5.0], [6.0, 8.0, 6.0]], [[4.0, 6.0, 6.0], [3.0, 6.0, 5.0], [4.0, 3.0, 7.0], [8.0, 6.0, 7.0]]]),self.functionspace)
8693        arg.setTaggedValue(1,numarray.array([[[2.0, 5.0, 7.0], [7.0, 2.0, 3.0], [7.0, 4.0, 3.0], [2.0, 6.0, 1.0]], [[2.0, 5.0, 2.0], [2.0, 2.0, 5.0], [1.0, 3.0, 7.0], [7.0, 5.0, 6.0]], [[4.0, 2.0, 7.0], [8.0, 5.0, 3.0], [2.0, 4.0, 5.0], [2.0, 5.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[2.0, 5.0, 7.0], [7.0, 2.0, 3.0], [7.0, 4.0, 3.0], [2.0, 6.0, 1.0]], [[2.0, 5.0, 2.0], [2.0, 2.0, 5.0], [1.0, 3.0, 7.0], [7.0, 5.0, 6.0]], [[4.0, 2.0, 7.0], [8.0, 5.0, 3.0], [2.0, 4.0, 5.0], [2.0, 5.0, 5.0]]]))
8694        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8695        val=msk_val*numarray.array([[4.0, 8.0]])+(1.-msk_val)*numarray.array([[3.0, 5.0]])        val=msk_val*numarray.array([[4.0, 8.0]])+(1.-msk_val)*numarray.array([[3.0, 5.0]])
8696        arg[1:2,2:,1]=val        arg[1:2,2:,1]=val
8697        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8729  class Test_util_slicing_with_tagged_data Line 8729  class Test_util_slicing_with_tagged_data
8729     def test_setslice_taggedData_rank3_expandedData_LCN(self):     def test_setslice_taggedData_rank3_expandedData_LCN(self):
8730        arg=Data(numarray.array([[[5.0, 6.0, 1.0], [2.0, 5.0, 6.0], [1.0, 1.0, 5.0], [5.0, 7.0, 2.0]], [[6.0, 8.0, 1.0], [3.0, 3.0, 1.0], [5.0, 3.0, 5.0], [5.0, 7.0, 5.0]], [[4.0, 5.0, 1.0], [2.0, 3.0, 1.0], [8.0, 5.0, 7.0], [2.0, 7.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[5.0, 6.0, 1.0], [2.0, 5.0, 6.0], [1.0, 1.0, 5.0], [5.0, 7.0, 2.0]], [[6.0, 8.0, 1.0], [3.0, 3.0, 1.0], [5.0, 3.0, 5.0], [5.0, 7.0, 5.0]], [[4.0, 5.0, 1.0], [2.0, 3.0, 1.0], [8.0, 5.0, 7.0], [2.0, 7.0, 3.0]]]),self.functionspace)
8731        arg.setTaggedValue(1,numarray.array([[[7.0, 7.0, 3.0], [1.0, 2.0, 6.0], [4.0, 2.0, 5.0], [7.0, 4.0, 7.0]], [[6.0, 2.0, 6.0], [1.0, 1.0, 6.0], [5.0, 3.0, 3.0], [3.0, 3.0, 8.0]], [[6.0, 4.0, 6.0], [1.0, 7.0, 8.0], [2.0, 8.0, 6.0], [1.0, 3.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[7.0, 7.0, 3.0], [1.0, 2.0, 6.0], [4.0, 2.0, 5.0], [7.0, 4.0, 7.0]], [[6.0, 2.0, 6.0], [1.0, 1.0, 6.0], [5.0, 3.0, 3.0], [3.0, 3.0, 8.0]], [[6.0, 4.0, 6.0], [1.0, 7.0, 8.0], [2.0, 8.0, 6.0], [1.0, 3.0, 8.0]]]))
8732        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8733        val=msk_val*numarray.array([[[5.0, 6.0, 5.0], [8.0, 2.0, 6.0], [2.0, 2.0, 2.0], [8.0, 6.0, 1.0]]])+(1.-msk_val)*numarray.array([[[4.0, 2.0, 6.0], [1.0, 6.0, 4.0], [4.0, 4.0, 2.0], [1.0, 3.0, 6.0]]])        val=msk_val*numarray.array([[[5.0, 6.0, 5.0], [8.0, 2.0, 6.0], [2.0, 2.0, 2.0], [8.0, 6.0, 1.0]]])+(1.-msk_val)*numarray.array([[[4.0, 2.0, 6.0], [1.0, 6.0, 4.0], [4.0, 4.0, 2.0], [1.0, 3.0, 6.0]]])
8734        arg[2:,:]=val        arg[2:,:]=val
8735        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8767  class Test_util_slicing_with_tagged_data Line 8767  class Test_util_slicing_with_tagged_data
8767     def test_setslice_taggedData_rank3_expandedData_LPN(self):     def test_setslice_taggedData_rank3_expandedData_LPN(self):
8768        arg=Data(numarray.array([[[7.0, 3.0, 3.0], [6.0, 5.0, 7.0], [7.0, 3.0, 5.0], [2.0, 3.0, 8.0]], [[6.0, 8.0, 6.0], [8.0, 4.0, 4.0], [3.0, 7.0, 3.0], [2.0, 6.0, 2.0]], [[5.0, 3.0, 7.0], [7.0, 8.0, 1.0], [4.0, 3.0, 7.0], [6.0, 6.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 3.0, 3.0], [6.0, 5.0, 7.0], [7.0, 3.0, 5.0], [2.0, 3.0, 8.0]], [[6.0, 8.0, 6.0], [8.0, 4.0, 4.0], [3.0, 7.0, 3.0], [2.0, 6.0, 2.0]], [[5.0, 3.0, 7.0], [7.0, 8.0, 1.0], [4.0, 3.0, 7.0], [6.0, 6.0, 3.0]]]),self.functionspace)
8769        arg.setTaggedValue(1,numarray.array([[[8.0, 2.0, 4.0], [4.0, 3.0, 6.0], [1.0, 2.0, 7.0], [4.0, 2.0, 1.0]], [[2.0, 8.0, 8.0], [1.0, 8.0, 3.0], [4.0, 8.0, 5.0], [2.0, 8.0, 4.0]], [[5.0, 1.0, 7.0], [8.0, 3.0, 4.0], [6.0, 2.0, 6.0], [3.0, 6.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 2.0, 4.0], [4.0, 3.0, 6.0], [1.0, 2.0, 7.0], [4.0, 2.0, 1.0]], [[2.0, 8.0, 8.0], [1.0, 8.0, 3.0], [4.0, 8.0, 5.0], [2.0, 8.0, 4.0]], [[5.0, 1.0, 7.0], [8.0, 3.0, 4.0], [6.0, 2.0, 6.0], [3.0, 6.0, 8.0]]]))
8770        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8771        val=msk_val*numarray.array([[5.0, 1.0, 5.0]])+(1.-msk_val)*numarray.array([[2.0, 4.0, 6.0]])        val=msk_val*numarray.array([[5.0, 1.0, 5.0]])+(1.-msk_val)*numarray.array([[2.0, 4.0, 6.0]])
8772        arg[2:,2]=val        arg[2:,2]=val
8773        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8805  class Test_util_slicing_with_tagged_data Line 8805  class Test_util_slicing_with_tagged_data
8805     def test_setslice_taggedData_rank3_expandedData_LPC(self):     def test_setslice_taggedData_rank3_expandedData_LPC(self):
8806        arg=Data(numarray.array([[[4.0, 2.0, 5.0], [4.0, 7.0, 5.0], [3.0, 7.0, 6.0], [7.0, 1.0, 4.0]], [[7.0, 3.0, 7.0], [5.0, 1.0, 8.0], [2.0, 4.0, 3.0], [7.0, 8.0, 8.0]], [[2.0, 7.0, 4.0], [6.0, 3.0, 7.0], [7.0, 2.0, 7.0], [8.0, 4.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 2.0, 5.0], [4.0, 7.0, 5.0], [3.0, 7.0, 6.0], [7.0, 1.0, 4.0]], [[7.0, 3.0, 7.0], [5.0, 1.0, 8.0], [2.0, 4.0, 3.0], [7.0, 8.0, 8.0]], [[2.0, 7.0, 4.0], [6.0, 3.0, 7.0], [7.0, 2.0, 7.0], [8.0, 4.0, 7.0]]]),self.functionspace)
8807        arg.setTaggedValue(1,numarray.array([[[8.0, 2.0, 6.0], [4.0, 4.0, 3.0], [4.0, 7.0, 1.0], [4.0, 7.0, 8.0]], [[2.0, 7.0, 2.0], [3.0, 6.0, 1.0], [3.0, 4.0, 6.0], [1.0, 6.0, 2.0]], [[4.0, 3.0, 1.0], [3.0, 5.0, 3.0], [5.0, 6.0, 7.0], [3.0, 5.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 2.0, 6.0], [4.0, 4.0, 3.0], [4.0, 7.0, 1.0], [4.0, 7.0, 8.0]], [[2.0, 7.0, 2.0], [3.0, 6.0, 1.0], [3.0, 4.0, 6.0], [1.0, 6.0, 2.0]], [[4.0, 3.0, 1.0], [3.0, 5.0, 3.0], [5.0, 6.0, 7.0], [3.0, 5.0, 4.0]]]))
8808        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8809        val=msk_val*numarray.array([[5.0, 8.0, 7.0]])+(1.-msk_val)*numarray.array([[6.0, 8.0, 5.0]])        val=msk_val*numarray.array([[5.0, 8.0, 7.0]])+(1.-msk_val)*numarray.array([[6.0, 8.0, 5.0]])
8810        arg[2:,2,:]=val        arg[2:,2,:]=val
8811        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8843  class Test_util_slicing_with_tagged_data Line 8843  class Test_util_slicing_with_tagged_data
8843     def test_setslice_taggedData_rank3_expandedData_RRL(self):     def test_setslice_taggedData_rank3_expandedData_RRL(self):
8844        arg=Data(numarray.array([[[7.0, 5.0, 3.0], [8.0, 6.0, 7.0], [7.0, 7.0, 6.0], [5.0, 5.0, 8.0]], [[5.0, 8.0, 3.0], [7.0, 6.0, 5.0], [2.0, 2.0, 3.0], [1.0, 2.0, 3.0]], [[6.0, 3.0, 5.0], [1.0, 1.0, 6.0], [1.0, 2.0, 2.0], [1.0, 3.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 5.0, 3.0], [8.0, 6.0, 7.0], [7.0, 7.0, 6.0], [5.0, 5.0, 8.0]], [[5.0, 8.0, 3.0], [7.0, 6.0, 5.0], [2.0, 2.0, 3.0], [1.0, 2.0, 3.0]], [[6.0, 3.0, 5.0], [1.0, 1.0, 6.0], [1.0, 2.0, 2.0], [1.0, 3.0, 1.0]]]),self.functionspace)
8845        arg.setTaggedValue(1,numarray.array([[[6.0, 5.0, 4.0], [1.0, 8.0, 4.0], [3.0, 2.0, 7.0], [6.0, 6.0, 6.0]], [[2.0, 3.0, 6.0], [3.0, 1.0, 4.0], [4.0, 4.0, 2.0], [6.0, 4.0, 6.0]], [[3.0, 5.0, 8.0], [1.0, 3.0, 8.0], [8.0, 7.0, 4.0], [5.0, 2.0, 2.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 5.0, 4.0], [1.0, 8.0, 4.0], [3.0, 2.0, 7.0], [6.0, 6.0, 6.0]], [[2.0, 3.0, 6.0], [3.0, 1.0, 4.0], [4.0, 4.0, 2.0], [6.0, 4.0, 6.0]], [[3.0, 5.0, 8.0], [1.0, 3.0, 8.0], [8.0, 7.0, 4.0], [5.0, 2.0, 2.0]]]))
8846        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8847        val=msk_val*numarray.array([[[8.0], [5.0]]])+(1.-msk_val)*numarray.array([[[8.0], [6.0]]])        val=msk_val*numarray.array([[[8.0], [5.0]]])+(1.-msk_val)*numarray.array([[[8.0], [6.0]]])
8848        arg[1:2,1:3,2:]=val        arg[1:2,1:3,2:]=val
8849        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8881  class Test_util_slicing_with_tagged_data Line 8881  class Test_util_slicing_with_tagged_data
8881     def test_setslice_taggedData_rank3_expandedData_PUN(self):     def test_setslice_taggedData_rank3_expandedData_PUN(self):
8882        arg=Data(numarray.array([[[6.0, 7.0, 4.0], [2.0, 8.0, 3.0], [8.0, 6.0, 3.0], [8.0, 4.0, 6.0]], [[5.0, 6.0, 7.0], [4.0, 8.0, 3.0], [3.0, 1.0, 4.0], [4.0, 6.0, 7.0]], [[3.0, 1.0, 7.0], [8.0, 3.0, 7.0], [7.0, 6.0, 1.0], [8.0, 3.0, 3.0]]]),self.functionspace)        arg=Data(numarray.array([[[6.0, 7.0, 4.0], [2.0, 8.0, 3.0], [8.0, 6.0, 3.0], [8.0, 4.0, 6.0]], [[5.0, 6.0, 7.0], [4.0, 8.0, 3.0], [3.0, 1.0, 4.0], [4.0, 6.0, 7.0]], [[3.0, 1.0, 7.0], [8.0, 3.0, 7.0], [7.0, 6.0, 1.0], [8.0, 3.0, 3.0]]]),self.functionspace)
8883        arg.setTaggedValue(1,numarray.array([[[3.0, 5.0, 7.0], [4.0, 4.0, 4.0], [5.0, 5.0, 8.0], [4.0, 8.0, 5.0]], [[4.0, 5.0, 1.0], [4.0, 8.0, 6.0], [8.0, 3.0, 2.0], [2.0, 4.0, 3.0]], [[3.0, 8.0, 4.0], [7.0, 5.0, 2.0], [3.0, 8.0, 2.0], [7.0, 1.0, 8.0]]]))        arg.setTaggedValue(1,numarray.array([[[3.0, 5.0, 7.0], [4.0, 4.0, 4.0], [5.0, 5.0, 8.0], [4.0, 8.0, 5.0]], [[4.0, 5.0, 1.0], [4.0, 8.0, 6.0], [8.0, 3.0, 2.0], [2.0, 4.0, 3.0]], [[3.0, 8.0, 4.0], [7.0, 5.0, 2.0], [3.0, 8.0, 2.0], [7.0, 1.0, 8.0]]]))
8884        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8885        val=msk_val*numarray.array([[6.0, 8.0, 4.0], [7.0, 6.0, 7.0], [8.0, 8.0, 6.0]])+(1.-msk_val)*numarray.array([[5.0, 2.0, 1.0], [6.0, 1.0, 5.0], [4.0, 1.0, 3.0]])        val=msk_val*numarray.array([[6.0, 8.0, 4.0], [7.0, 6.0, 7.0], [8.0, 8.0, 6.0]])+(1.-msk_val)*numarray.array([[5.0, 2.0, 1.0], [6.0, 1.0, 5.0], [4.0, 1.0, 3.0]])
8886        arg[1,:3]=val        arg[1,:3]=val
8887        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8919  class Test_util_slicing_with_tagged_data Line 8919  class Test_util_slicing_with_tagged_data
8919     def test_setslice_taggedData_rank3_expandedData_RUN(self):     def test_setslice_taggedData_rank3_expandedData_RUN(self):
8920        arg=Data(numarray.array([[[3.0, 8.0, 2.0], [6.0, 6.0, 7.0], [8.0, 2.0, 8.0], [3.0, 6.0, 4.0]], [[1.0, 4.0, 8.0], [3.0, 7.0, 8.0], [2.0, 3.0, 4.0], [5.0, 6.0, 8.0]], [[8.0, 4.0, 1.0], [4.0, 1.0, 1.0], [5.0, 8.0, 5.0], [6.0, 2.0, 2.0]]]),self.functionspace)        arg=Data(numarray.array([[[3.0, 8.0, 2.0], [6.0, 6.0, 7.0], [8.0, 2.0, 8.0], [3.0, 6.0, 4.0]], [[1.0, 4.0, 8.0], [3.0, 7.0, 8.0], [2.0, 3.0, 4.0], [5.0, 6.0, 8.0]], [[8.0, 4.0, 1.0], [4.0, 1.0, 1.0], [5.0, 8.0, 5.0], [6.0, 2.0, 2.0]]]),self.functionspace)
8921        arg.setTaggedValue(1,numarray.array([[[8.0, 1.0, 3.0], [2.0, 4.0, 4.0], [7.0, 2.0, 4.0], [3.0, 7.0, 7.0]], [[2.0, 8.0, 1.0], [6.0, 3.0, 1.0], [5.0, 8.0, 6.0], [4.0, 7.0, 7.0]], [[2.0, 4.0, 1.0], [1.0, 1.0, 7.0], [3.0, 5.0, 8.0], [7.0, 3.0, 5.0]]]))        arg.setTaggedValue(1,numarray.array([[[8.0, 1.0, 3.0], [2.0, 4.0, 4.0], [7.0, 2.0, 4.0], [3.0, 7.0, 7.0]], [[2.0, 8.0, 1.0], [6.0, 3.0, 1.0], [5.0, 8.0, 6.0], [4.0, 7.0, 7.0]], [[2.0, 4.0, 1.0], [1.0, 1.0, 7.0], [3.0, 5.0, 8.0], [7.0, 3.0, 5.0]]]))
8922        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8923        val=msk_val*numarray.array([[[7.0, 5.0, 5.0], [5.0, 1.0, 8.0], [1.0, 2.0, 7.0]]])+(1.-msk_val)*numarray.array([[[2.0, 4.0, 5.0], [6.0, 2.0, 7.0], [2.0, 5.0, 3.0]]])        val=msk_val*numarray.array([[[7.0, 5.0, 5.0], [5.0, 1.0, 8.0], [1.0, 2.0, 7.0]]])+(1.-msk_val)*numarray.array([[[2.0, 4.0, 5.0], [6.0, 2.0, 7.0], [2.0, 5.0, 3.0]]])
8924        arg[1:2,:3]=val        arg[1:2,:3]=val
8925        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8957  class Test_util_slicing_with_tagged_data Line 8957  class Test_util_slicing_with_tagged_data
8957     def test_setslice_taggedData_rank3_expandedData_PRN(self):     def test_setslice_taggedData_rank3_expandedData_PRN(self):
8958        arg=Data(numarray.array([[[2.0, 2.0, 1.0], [7.0, 2.0, 4.0], [6.0, 5.0, 3.0], [4.0, 7.0, 3.0]], [[7.0, 5.0, 6.0], [5.0, 7.0, 6.0], [2.0, 8.0, 2.0], [1.0, 8.0, 5.0]], [[4.0, 4.0, 5.0], [1.0, 5.0, 7.0], [5.0, 7.0, 1.0], [1.0, 1.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[2.0, 2.0, 1.0], [7.0, 2.0, 4.0], [6.0, 5.0, 3.0], [4.0, 7.0, 3.0]], [[7.0, 5.0, 6.0], [5.0, 7.0, 6.0], [2.0, 8.0, 2.0], [1.0, 8.0, 5.0]], [[4.0, 4.0, 5.0], [1.0, 5.0, 7.0], [5.0, 7.0, 1.0], [1.0, 1.0, 1.0]]]),self.functionspace)
8959        arg.setTaggedValue(1,numarray.array([[[1.0, 3.0, 4.0], [8.0, 6.0, 5.0], [7.0, 6.0, 6.0], [1.0, 8.0, 7.0]], [[1.0, 6.0, 6.0], [3.0, 3.0, 6.0], [7.0, 6.0, 7.0], [4.0, 5.0, 5.0]], [[2.0, 4.0, 5.0], [8.0, 6.0, 5.0], [8.0, 5.0, 5.0], [3.0, 6.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 3.0, 4.0], [8.0, 6.0, 5.0], [7.0, 6.0, 6.0], [1.0, 8.0, 7.0]], [[1.0, 6.0, 6.0], [3.0, 3.0, 6.0], [7.0, 6.0, 7.0], [4.0, 5.0, 5.0]], [[2.0, 4.0, 5.0], [8.0, 6.0, 5.0], [8.0, 5.0, 5.0], [3.0, 6.0, 4.0]]]))
8960        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8961        val=msk_val*numarray.array([[2.0, 7.0, 5.0], [3.0, 2.0, 4.0]])+(1.-msk_val)*numarray.array([[2.0, 6.0, 2.0], [1.0, 7.0, 8.0]])        val=msk_val*numarray.array([[2.0, 7.0, 5.0], [3.0, 2.0, 4.0]])+(1.-msk_val)*numarray.array([[2.0, 6.0, 2.0], [1.0, 7.0, 8.0]])
8962        arg[1,1:3]=val        arg[1,1:3]=val
8963        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 8995  class Test_util_slicing_with_tagged_data Line 8995  class Test_util_slicing_with_tagged_data
8995     def test_setslice_taggedData_rank3_expandedData_LRN(self):     def test_setslice_taggedData_rank3_expandedData_LRN(self):
8996        arg=Data(numarray.array([[[4.0, 3.0, 4.0], [1.0, 7.0, 3.0], [2.0, 4.0, 5.0], [4.0, 7.0, 4.0]], [[3.0, 4.0, 7.0], [8.0, 4.0, 7.0], [8.0, 3.0, 7.0], [1.0, 4.0, 3.0]], [[6.0, 3.0, 5.0], [8.0, 1.0, 8.0], [5.0, 1.0, 1.0], [3.0, 3.0, 1.0]]]),self.functionspace)        arg=Data(numarray.array([[[4.0, 3.0, 4.0], [1.0, 7.0, 3.0], [2.0, 4.0, 5.0], [4.0, 7.0, 4.0]], [[3.0, 4.0, 7.0], [8.0, 4.0, 7.0], [8.0, 3.0, 7.0], [1.0, 4.0, 3.0]], [[6.0, 3.0, 5.0], [8.0, 1.0, 8.0], [5.0, 1.0, 1.0], [3.0, 3.0, 1.0]]]),self.functionspace)
8997        arg.setTaggedValue(1,numarray.array([[[6.0, 2.0, 5.0], [5.0, 2.0, 4.0], [8.0, 7.0, 3.0], [2.0, 8.0, 7.0]], [[7.0, 5.0, 1.0], [2.0, 4.0, 8.0], [4.0, 8.0, 3.0], [2.0, 1.0, 7.0]], [[5.0, 6.0, 6.0], [8.0, 8.0, 3.0], [8.0, 7.0, 2.0], [5.0, 3.0, 4.0]]]))        arg.setTaggedValue(1,numarray.array([[[6.0, 2.0, 5.0], [5.0, 2.0, 4.0], [8.0, 7.0, 3.0], [2.0, 8.0, 7.0]], [[7.0, 5.0, 1.0], [2.0, 4.0, 8.0], [4.0, 8.0, 3.0], [2.0, 1.0, 7.0]], [[5.0, 6.0, 6.0], [8.0, 8.0, 3.0], [8.0, 7.0, 2.0], [5.0, 3.0, 4.0]]]))
8998        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
8999        val=msk_val*numarray.array([[[5.0, 1.0, 7.0], [3.0, 4.0, 2.0]]])+(1.-msk_val)*numarray.array([[[4.0, 3.0, 4.0], [2.0, 8.0, 6.0]]])        val=msk_val*numarray.array([[[5.0, 1.0, 7.0], [3.0, 4.0, 2.0]]])+(1.-msk_val)*numarray.array([[[4.0, 3.0, 4.0], [2.0, 8.0, 6.0]]])
9000        arg[2:,1:3]=val        arg[2:,1:3]=val
9001        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9033  class Test_util_slicing_with_tagged_data Line 9033  class Test_util_slicing_with_tagged_data
9033     def test_setslice_taggedData_rank3_expandedData_UUU(self):     def test_setslice_taggedData_rank3_expandedData_UUU(self):
9034        arg=Data(numarray.array([[[7.0, 6.0, 7.0], [3.0, 1.0, 6.0], [3.0, 2.0, 4.0], [5.0, 1.0, 3.0]], [[3.0, 4.0, 5.0], [8.0, 8.0, 2.0], [2.0, 1.0, 7.0], [3.0, 4.0, 3.0]], [[2.0, 6.0, 8.0], [7.0, 7.0, 5.0], [8.0, 5.0, 6.0], [7.0, 3.0, 7.0]]]),self.functionspace)        arg=Data(numarray.array([[[7.0, 6.0, 7.0], [3.0, 1.0, 6.0], [3.0, 2.0, 4.0], [5.0, 1.0, 3.0]], [[3.0, 4.0, 5.0], [8.0, 8.0, 2.0], [2.0, 1.0, 7.0], [3.0, 4.0, 3.0]], [[2.0, 6.0, 8.0], [7.0, 7.0, 5.0], [8.0, 5.0, 6.0], [7.0, 3.0, 7.0]]]),self.functionspace)
9035        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 1.0], [1.0, 6.0, 2.0], [5.0, 1.0, 3.0], [4.0, 4.0, 4.0]], [[5.0, 2.0, 1.0], [7.0, 4.0, 6.0], [3.0, 7.0, 8.0], [8.0, 2.0, 6.0]], [[3.0, 2.0, 3.0], [3.0, 6.0, 2.0], [5.0, 5.0, 3.0], [6.0, 1.0, 7.0]]]))        arg.setTaggedValue(1,numarray.array([[[1.0, 5.0, 1.0], [1.0, 6.0, 2.0], [5.0, 1.0, 3.0], [4.0, 4.0, 4.0]], [[5.0, 2.0, 1.0], [7.0, 4.0, 6.0], [3.0, 7.0, 8.0], [8.0, 2.0, 6.0]], [[3.0, 2.0, 3.0], [3.0, 6.0, 2.0], [5.0, 5.0, 3.0], [6.0, 1.0, 7.0]]]))
9036        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9037        val=msk_val*numarray.array([[[8.0, 1.0], [2.0, 6.0], [6.0, 2.0]], [[7.0, 4.0], [8.0, 7.0], [6.0, 1.0]]])+(1.-msk_val)*numarray.array([[[4.0, 5.0], [7.0, 2.0], [7.0, 5.0]], [[6.0, 5.0], [4.0, 8.0], [7.0, 4.0]]])        val=msk_val*numarray.array([[[8.0, 1.0], [2.0, 6.0], [6.0, 2.0]], [[7.0, 4.0], [8.0, 7.0], [6.0, 1.0]]])+(1.-msk_val)*numarray.array([[[4.0, 5.0], [7.0, 2.0], [7.0, 5.0]], [[6.0, 5.0], [4.0, 8.0], [7.0, 4.0]]])
9038        arg[:2,:3,:2]=val        arg[:2,:3,:2]=val
9039        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9071  class Test_util_slicing_with_tagged_data Line 9071  class Test_util_slicing_with_tagged_data
9071     def test_setslice_taggedData_rank4_expandedData_CPUP(self):     def test_setslice_taggedData_rank4_expandedData_CPUP(self):
9072        arg=Data(numarray.array([[[[8.0, 2.0, 7.0], [2.0, 5.0, 8.0], [5.0, 6.0, 5.0]], [[2.0, 3.0, 4.0], [5.0, 5.0, 4.0], [2.0, 5.0, 5.0]], [[8.0, 5.0, 7.0], [4.0, 7.0, 2.0], [6.0, 8.0, 4.0]]], [[[3.0, 8.0, 6.0], [2.0, 3.0, 3.0], [8.0, 5.0, 5.0]], [[5.0, 1.0, 1.0], [1.0, 3.0, 3.0], [4.0, 6.0, 7.0]], [[2.0, 2.0, 5.0], [1.0, 8.0, 7.0], [5.0, 2.0, 8.0]]], [[[2.0, 5.0, 8.0], [6.0, 6.0, 1.0], [6.0, 4.0, 1.0]], [[8.0, 2.0, 4.0], [2.0, 3.0, 1.0], [7.0, 3.0, 8.0]], [[1.0, 8.0, 3.0], [1.0, 3.0, 4.0], [5.0, 4.0, 6.0]]], [[[2.0, 5.0, 4.0], [8.0, 5.0, 1.0], [7.0, 5.0, 4.0]], [[4.0, 4.0, 6.0], [5.0, 1.0, 5.0], [2.0, 4.0, 4.0]], [[4.0, 5.0, 2.0], [1.0, 3.0, 6.0], [2.0, 7.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 2.0, 7.0], [2.0, 5.0, 8.0], [5.0, 6.0, 5.0]], [[2.0, 3.0, 4.0], [5.0, 5.0, 4.0], [2.0, 5.0, 5.0]], [[8.0, 5.0, 7.0], [4.0, 7.0, 2.0], [6.0, 8.0, 4.0]]], [[[3.0, 8.0, 6.0], [2.0, 3.0, 3.0], [8.0, 5.0, 5.0]], [[5.0, 1.0, 1.0], [1.0, 3.0, 3.0], [4.0, 6.0, 7.0]], [[2.0, 2.0, 5.0], [1.0, 8.0, 7.0], [5.0, 2.0, 8.0]]], [[[2.0, 5.0, 8.0], [6.0, 6.0, 1.0], [6.0, 4.0, 1.0]], [[8.0, 2.0, 4.0], [2.0, 3.0, 1.0], [7.0, 3.0, 8.0]], [[1.0, 8.0, 3.0], [1.0, 3.0, 4.0], [5.0, 4.0, 6.0]]], [[[2.0, 5.0, 4.0], [8.0, 5.0, 1.0], [7.0, 5.0, 4.0]], [[4.0, 4.0, 6.0], [5.0, 1.0, 5.0], [2.0, 4.0, 4.0]], [[4.0, 5.0, 2.0], [1.0, 3.0, 6.0], [2.0, 7.0, 7.0]]]]),self.functionspace)
9073        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 7.0], [1.0, 4.0, 6.0], [3.0, 7.0, 1.0]], [[3.0, 2.0, 7.0], [4.0, 6.0, 1.0], [3.0, 2.0, 6.0]], [[1.0, 5.0, 4.0], [3.0, 6.0, 6.0], [3.0, 8.0, 6.0]]], [[[2.0, 3.0, 6.0], [6.0, 4.0, 1.0], [1.0, 5.0, 2.0]], [[6.0, 5.0, 2.0], [6.0, 4.0, 5.0], [3.0, 4.0, 6.0]], [[7.0, 3.0, 5.0], [1.0, 5.0, 7.0], [5.0, 2.0, 6.0]]], [[[8.0, 3.0, 7.0], [5.0, 1.0, 4.0], [7.0, 2.0, 2.0]], [[4.0, 8.0, 8.0], [4.0, 2.0, 7.0], [8.0, 1.0, 5.0]], [[7.0, 1.0, 2.0], [8.0, 3.0, 7.0], [6.0, 1.0, 7.0]]], [[[5.0, 7.0, 4.0], [8.0, 2.0, 2.0], [1.0, 8.0, 2.0]], [[3.0, 7.0, 7.0], [3.0, 5.0, 7.0], [1.0, 5.0, 1.0]], [[1.0, 6.0, 6.0], [5.0, 5.0, 3.0], [8.0, 1.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 7.0], [1.0, 4.0, 6.0], [3.0, 7.0, 1.0]], [[3.0, 2.0, 7.0], [4.0, 6.0, 1.0], [3.0, 2.0, 6.0]], [[1.0, 5.0, 4.0], [3.0, 6.0, 6.0], [3.0, 8.0, 6.0]]], [[[2.0, 3.0, 6.0], [6.0, 4.0, 1.0], [1.0, 5.0, 2.0]], [[6.0, 5.0, 2.0], [6.0, 4.0, 5.0], [3.0, 4.0, 6.0]], [[7.0, 3.0, 5.0], [1.0, 5.0, 7.0], [5.0, 2.0, 6.0]]], [[[8.0, 3.0, 7.0], [5.0, 1.0, 4.0], [7.0, 2.0, 2.0]], [[4.0, 8.0, 8.0], [4.0, 2.0, 7.0], [8.0, 1.0, 5.0]], [[7.0, 1.0, 2.0], [8.0, 3.0, 7.0], [6.0, 1.0, 7.0]]], [[[5.0, 7.0, 4.0], [8.0, 2.0, 2.0], [1.0, 8.0, 2.0]], [[3.0, 7.0, 7.0], [3.0, 5.0, 7.0], [1.0, 5.0, 1.0]], [[1.0, 6.0, 6.0], [5.0, 5.0, 3.0], [8.0, 1.0, 5.0]]]]))
9074        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9075        val=msk_val*numarray.array([[6.0, 3.0], [7.0, 7.0], [5.0, 8.0], [2.0, 1.0]])+(1.-msk_val)*numarray.array([[2.0, 5.0], [5.0, 8.0], [4.0, 7.0], [8.0, 4.0]])        val=msk_val*numarray.array([[6.0, 3.0], [7.0, 7.0], [5.0, 8.0], [2.0, 1.0]])+(1.-msk_val)*numarray.array([[2.0, 5.0], [5.0, 8.0], [4.0, 7.0], [8.0, 4.0]])
9076        arg[:,1,:2,1]=val        arg[:,1,:2,1]=val
9077        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9109  class Test_util_slicing_with_tagged_data Line 9109  class Test_util_slicing_with_tagged_data
9109     def test_setslice_taggedData_rank4_expandedData_LLRR(self):     def test_setslice_taggedData_rank4_expandedData_LLRR(self):
9110        arg=Data(numarray.array([[[[4.0, 6.0, 6.0], [7.0, 3.0, 3.0], [4.0, 4.0, 2.0]], [[1.0, 3.0, 1.0], [6.0, 6.0, 1.0], [1.0, 6.0, 2.0]], [[3.0, 3.0, 8.0], [4.0, 1.0, 3.0], [7.0, 6.0, 1.0]]], [[[2.0, 2.0, 1.0], [1.0, 2.0, 2.0], [8.0, 7.0, 8.0]], [[7.0, 8.0, 3.0], [7.0, 5.0, 8.0], [1.0, 2.0, 7.0]], [[3.0, 2.0, 4.0], [4.0, 7.0, 7.0], [5.0, 3.0, 3.0]]], [[[3.0, 8.0, 4.0], [7.0, 4.0, 6.0], [1.0, 6.0, 3.0]], [[1.0, 6.0, 5.0], [2.0, 7.0, 2.0], [5.0, 4.0, 8.0]], [[5.0, 5.0, 3.0], [8.0, 7.0, 3.0], [2.0, 6.0, 7.0]]], [[[7.0, 3.0, 8.0], [5.0, 1.0, 8.0], [3.0, 4.0, 6.0]], [[2.0, 4.0, 8.0], [1.0, 2.0, 4.0], [4.0, 7.0, 2.0]], [[5.0, 2.0, 2.0], [5.0, 3.0, 7.0], [5.0, 4.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 6.0, 6.0], [7.0, 3.0, 3.0], [4.0, 4.0, 2.0]], [[1.0, 3.0, 1.0], [6.0, 6.0, 1.0], [1.0, 6.0, 2.0]], [[3.0, 3.0, 8.0], [4.0, 1.0, 3.0], [7.0, 6.0, 1.0]]], [[[2.0, 2.0, 1.0], [1.0, 2.0, 2.0], [8.0, 7.0, 8.0]], [[7.0, 8.0, 3.0], [7.0, 5.0, 8.0], [1.0, 2.0, 7.0]], [[3.0, 2.0, 4.0], [4.0, 7.0, 7.0], [5.0, 3.0, 3.0]]], [[[3.0, 8.0, 4.0], [7.0, 4.0, 6.0], [1.0, 6.0, 3.0]], [[1.0, 6.0, 5.0], [2.0, 7.0, 2.0], [5.0, 4.0, 8.0]], [[5.0, 5.0, 3.0], [8.0, 7.0, 3.0], [2.0, 6.0, 7.0]]], [[[7.0, 3.0, 8.0], [5.0, 1.0, 8.0], [3.0, 4.0, 6.0]], [[2.0, 4.0, 8.0], [1.0, 2.0, 4.0], [4.0, 7.0, 2.0]], [[5.0, 2.0, 2.0], [5.0, 3.0, 7.0], [5.0, 4.0, 1.0]]]]),self.functionspace)
9111        arg.setTaggedValue(1,numarray.array([[[[8.0, 8.0, 7.0], [2.0, 6.0, 2.0], [3.0, 1.0, 6.0]], [[2.0, 6.0, 5.0], [7.0, 8.0, 3.0], [5.0, 7.0, 4.0]], [[4.0, 1.0, 7.0], [3.0, 5.0, 2.0], [7.0, 7.0, 2.0]]], [[[7.0, 8.0, 3.0], [2.0, 7.0, 7.0], [1.0, 4.0, 3.0]], [[7.0, 8.0, 7.0], [4.0, 8.0, 1.0], [5.0, 2.0, 7.0]], [[2.0, 8.0, 1.0], [1.0, 6.0, 6.0], [7.0, 4.0, 4.0]]], [[[1.0, 1.0, 2.0], [3.0, 3.0, 3.0], [5.0, 6.0, 7.0]], [[4.0, 8.0, 6.0], [3.0, 8.0, 2.0], [6.0, 1.0, 5.0]], [[4.0, 4.0, 5.0], [1.0, 4.0, 8.0], [7.0, 8.0, 1.0]]], [[[6.0, 3.0, 8.0], [6.0, 8.0, 6.0], [6.0, 6.0, 4.0]], [[6.0, 4.0, 7.0], [5.0, 5.0, 5.0], [5.0, 4.0, 6.0]], [[1.0, 4.0, 5.0], [5.0, 6.0, 7.0], [7.0, 6.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 8.0, 7.0], [2.0, 6.0, 2.0], [3.0, 1.0, 6.0]], [[2.0, 6.0, 5.0], [7.0, 8.0, 3.0], [5.0, 7.0, 4.0]], [[4.0, 1.0, 7.0], [3.0, 5.0, 2.0], [7.0, 7.0, 2.0]]], [[[7.0, 8.0, 3.0], [2.0, 7.0, 7.0], [1.0, 4.0, 3.0]], [[7.0, 8.0, 7.0], [4.0, 8.0, 1.0], [5.0, 2.0, 7.0]], [[2.0, 8.0, 1.0], [1.0, 6.0, 6.0], [7.0, 4.0, 4.0]]], [[[1.0, 1.0, 2.0], [3.0, 3.0, 3.0], [5.0, 6.0, 7.0]], [[4.0, 8.0, 6.0], [3.0, 8.0, 2.0], [6.0, 1.0, 5.0]], [[4.0, 4.0, 5.0], [1.0, 4.0, 8.0], [7.0, 8.0, 1.0]]], [[[6.0, 3.0, 8.0], [6.0, 8.0, 6.0], [6.0, 6.0, 4.0]], [[6.0, 4.0, 7.0], [5.0, 5.0, 5.0], [5.0, 4.0, 6.0]], [[1.0, 4.0, 5.0], [5.0, 6.0, 7.0], [7.0, 6.0, 3.0]]]]))
9112        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9113        val=msk_val*numarray.array([[[[2.0]]], [[[5.0]]]])+(1.-msk_val)*numarray.array([[[[8.0]]], [[[8.0]]]])        val=msk_val*numarray.array([[[[2.0]]], [[[5.0]]]])+(1.-msk_val)*numarray.array([[[[8.0]]], [[[8.0]]]])
9114        arg[2:,2:,1:2,1:2]=val        arg[2:,2:,1:2,1:2]=val
9115        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9147  class Test_util_slicing_with_tagged_data Line 9147  class Test_util_slicing_with_tagged_data
9147     def test_setslice_taggedData_rank4_expandedData_RRUU(self):     def test_setslice_taggedData_rank4_expandedData_RRUU(self):
9148        arg=Data(numarray.array([[[[2.0, 2.0, 1.0], [6.0, 7.0, 5.0], [3.0, 4.0, 3.0]], [[3.0, 3.0, 8.0], [5.0, 6.0, 1.0], [2.0, 8.0, 7.0]], [[7.0, 6.0, 7.0], [5.0, 2.0, 3.0], [6.0, 2.0, 1.0]]], [[[6.0, 7.0, 3.0], [5.0, 3.0, 3.0], [3.0, 7.0, 2.0]], [[4.0, 3.0, 3.0], [2.0, 7.0, 5.0], [4.0, 2.0, 1.0]], [[5.0, 2.0, 6.0], [5.0, 7.0, 4.0], [2.0, 4.0, 7.0]]], [[[7.0, 2.0, 8.0], [3.0, 1.0, 8.0], [2.0, 4.0, 3.0]], [[1.0, 8.0, 8.0], [8.0, 8.0, 1.0], [3.0, 2.0, 4.0]], [[8.0, 7.0, 2.0], [8.0, 2.0, 3.0], [1.0, 4.0, 6.0]]], [[[5.0, 3.0, 3.0], [5.0, 7.0, 6.0], [3.0, 1.0, 5.0]], [[8.0, 4.0, 8.0], [1.0, 5.0, 2.0], [3.0, 2.0, 2.0]], [[5.0, 5.0, 1.0], [6.0, 5.0, 3.0], [2.0, 1.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 2.0, 1.0], [6.0, 7.0, 5.0], [3.0, 4.0, 3.0]], [[3.0, 3.0, 8.0], [5.0, 6.0, 1.0], [2.0, 8.0, 7.0]], [[7.0, 6.0, 7.0], [5.0, 2.0, 3.0], [6.0, 2.0, 1.0]]], [[[6.0, 7.0, 3.0], [5.0, 3.0, 3.0], [3.0, 7.0, 2.0]], [[4.0, 3.0, 3.0], [2.0, 7.0, 5.0], [4.0, 2.0, 1.0]], [[5.0, 2.0, 6.0], [5.0, 7.0, 4.0], [2.0, 4.0, 7.0]]], [[[7.0, 2.0, 8.0], [3.0, 1.0, 8.0], [2.0, 4.0, 3.0]], [[1.0, 8.0, 8.0], [8.0, 8.0, 1.0], [3.0, 2.0, 4.0]], [[8.0, 7.0, 2.0], [8.0, 2.0, 3.0], [1.0, 4.0, 6.0]]], [[[5.0, 3.0, 3.0], [5.0, 7.0, 6.0], [3.0, 1.0, 5.0]], [[8.0, 4.0, 8.0], [1.0, 5.0, 2.0], [3.0, 2.0, 2.0]], [[5.0, 5.0, 1.0], [6.0, 5.0, 3.0], [2.0, 1.0, 6.0]]]]),self.functionspace)
9149        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 6.0], [8.0, 1.0, 2.0], [4.0, 2.0, 6.0]], [[6.0, 4.0, 4.0], [2.0, 5.0, 2.0], [1.0, 8.0, 3.0]], [[3.0, 2.0, 2.0], [8.0, 6.0, 4.0], [7.0, 4.0, 7.0]]], [[[6.0, 8.0, 6.0], [1.0, 1.0, 5.0], [7.0, 2.0, 6.0]], [[5.0, 3.0, 5.0], [6.0, 7.0, 2.0], [2.0, 1.0, 4.0]], [[8.0, 4.0, 2.0], [6.0, 5.0, 3.0], [2.0, 3.0, 7.0]]], [[[8.0, 1.0, 1.0], [4.0, 7.0, 4.0], [5.0, 3.0, 2.0]], [[7.0, 1.0, 2.0], [8.0, 6.0, 8.0], [1.0, 8.0, 6.0]], [[5.0, 5.0, 5.0], [6.0, 2.0, 5.0], [7.0, 2.0, 4.0]]], [[[3.0, 5.0, 7.0], [8.0, 6.0, 6.0], [8.0, 6.0, 6.0]], [[4.0, 1.0, 4.0], [4.0, 3.0, 3.0], [4.0, 4.0, 1.0]], [[8.0, 6.0, 8.0], [4.0, 4.0, 7.0], [6.0, 3.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 6.0], [8.0, 1.0, 2.0], [4.0, 2.0, 6.0]], [[6.0, 4.0, 4.0], [2.0, 5.0, 2.0], [1.0, 8.0, 3.0]], [[3.0, 2.0, 2.0], [8.0, 6.0, 4.0], [7.0, 4.0, 7.0]]], [[[6.0, 8.0, 6.0], [1.0, 1.0, 5.0], [7.0, 2.0, 6.0]], [[5.0, 3.0, 5.0], [6.0, 7.0, 2.0], [2.0, 1.0, 4.0]], [[8.0, 4.0, 2.0], [6.0, 5.0, 3.0], [2.0, 3.0, 7.0]]], [[[8.0, 1.0, 1.0], [4.0, 7.0, 4.0], [5.0, 3.0, 2.0]], [[7.0, 1.0, 2.0], [8.0, 6.0, 8.0], [1.0, 8.0, 6.0]], [[5.0, 5.0, 5.0], [6.0, 2.0, 5.0], [7.0, 2.0, 4.0]]], [[[3.0, 5.0, 7.0], [8.0, 6.0, 6.0], [8.0, 6.0, 6.0]], [[4.0, 1.0, 4.0], [4.0, 3.0, 3.0], [4.0, 4.0, 1.0]], [[8.0, 6.0, 8.0], [4.0, 4.0, 7.0], [6.0, 3.0, 7.0]]]]))
9150        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9151        val=msk_val*numarray.array([[[[5.0, 6.0], [5.0, 6.0]]], [[[2.0, 5.0], [2.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 8.0], [2.0, 5.0]]], [[[1.0, 1.0], [7.0, 8.0]]]])        val=msk_val*numarray.array([[[[5.0, 6.0], [5.0, 6.0]]], [[[2.0, 5.0], [2.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 8.0], [2.0, 5.0]]], [[[1.0, 1.0], [7.0, 8.0]]]])
9152        arg[1:3,1:2,:2,:2]=val        arg[1:3,1:2,:2,:2]=val
9153        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9185  class Test_util_slicing_with_tagged_data Line 9185  class Test_util_slicing_with_tagged_data
9185     def test_setslice_taggedData_rank4_expandedData_CCUP(self):     def test_setslice_taggedData_rank4_expandedData_CCUP(self):
9186        arg=Data(numarray.array([[[[1.0, 6.0, 3.0], [7.0, 1.0, 5.0], [1.0, 7.0, 5.0]], [[6.0, 4.0, 4.0], [5.0, 8.0, 2.0], [7.0, 7.0, 1.0]], [[2.0, 1.0, 2.0], [3.0, 3.0, 5.0], [8.0, 7.0, 2.0]]], [[[1.0, 1.0, 4.0], [5.0, 3.0, 2.0], [8.0, 5.0, 6.0]], [[6.0, 4.0, 2.0], [7.0, 4.0, 1.0], [2.0, 8.0, 2.0]], [[8.0, 4.0, 3.0], [8.0, 8.0, 8.0], [7.0, 6.0, 3.0]]], [[[8.0, 3.0, 4.0], [8.0, 5.0, 7.0], [8.0, 5.0, 7.0]], [[5.0, 7.0, 6.0], [1.0, 2.0, 8.0], [7.0, 8.0, 3.0]], [[7.0, 7.0, 8.0], [8.0, 8.0, 8.0], [7.0, 6.0, 8.0]]], [[[4.0, 7.0, 5.0], [8.0, 2.0, 3.0], [2.0, 2.0, 6.0]], [[1.0, 3.0, 4.0], [3.0, 1.0, 2.0], [5.0, 2.0, 6.0]], [[4.0, 6.0, 6.0], [1.0, 1.0, 3.0], [5.0, 6.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 6.0, 3.0], [7.0, 1.0, 5.0], [1.0, 7.0, 5.0]], [[6.0, 4.0, 4.0], [5.0, 8.0, 2.0], [7.0, 7.0, 1.0]], [[2.0, 1.0, 2.0], [3.0, 3.0, 5.0], [8.0, 7.0, 2.0]]], [[[1.0, 1.0, 4.0], [5.0, 3.0, 2.0], [8.0, 5.0, 6.0]], [[6.0, 4.0, 2.0], [7.0, 4.0, 1.0], [2.0, 8.0, 2.0]], [[8.0, 4.0, 3.0], [8.0, 8.0, 8.0], [7.0, 6.0, 3.0]]], [[[8.0, 3.0, 4.0], [8.0, 5.0, 7.0], [8.0, 5.0, 7.0]], [[5.0, 7.0, 6.0], [1.0, 2.0, 8.0], [7.0, 8.0, 3.0]], [[7.0, 7.0, 8.0], [8.0, 8.0, 8.0], [7.0, 6.0, 8.0]]], [[[4.0, 7.0, 5.0], [8.0, 2.0, 3.0], [2.0, 2.0, 6.0]], [[1.0, 3.0, 4.0], [3.0, 1.0, 2.0], [5.0, 2.0, 6.0]], [[4.0, 6.0, 6.0], [1.0, 1.0, 3.0], [5.0, 6.0, 4.0]]]]),self.functionspace)
9187        arg.setTaggedValue(1,numarray.array([[[[8.0, 5.0, 6.0], [6.0, 8.0, 5.0], [4.0, 8.0, 2.0]], [[7.0, 7.0, 5.0], [1.0, 8.0, 6.0], [1.0, 7.0, 5.0]], [[3.0, 8.0, 1.0], [3.0, 1.0, 5.0], [1.0, 4.0, 6.0]]], [[[2.0, 5.0, 5.0], [4.0, 5.0, 3.0], [1.0, 2.0, 1.0]], [[7.0, 1.0, 6.0], [4.0, 3.0, 8.0], [3.0, 7.0, 3.0]], [[1.0, 1.0, 3.0], [4.0, 8.0, 5.0], [6.0, 8.0, 7.0]]], [[[8.0, 2.0, 5.0], [6.0, 7.0, 6.0], [1.0, 1.0, 2.0]], [[3.0, 5.0, 7.0], [1.0, 7.0, 4.0], [1.0, 3.0, 2.0]], [[3.0, 5.0, 8.0], [4.0, 7.0, 7.0], [8.0, 2.0, 3.0]]], [[[1.0, 6.0, 7.0], [3.0, 5.0, 6.0], [5.0, 2.0, 7.0]], [[8.0, 3.0, 5.0], [2.0, 8.0, 1.0], [6.0, 4.0, 8.0]], [[1.0, 7.0, 6.0], [8.0, 4.0, 4.0], [6.0, 3.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 5.0, 6.0], [6.0, 8.0, 5.0], [4.0, 8.0, 2.0]], [[7.0, 7.0, 5.0], [1.0, 8.0, 6.0], [1.0, 7.0, 5.0]], [[3.0, 8.0, 1.0], [3.0, 1.0, 5.0], [1.0, 4.0, 6.0]]], [[[2.0, 5.0, 5.0], [4.0, 5.0, 3.0], [1.0, 2.0, 1.0]], [[7.0, 1.0, 6.0], [4.0, 3.0, 8.0], [3.0, 7.0, 3.0]], [[1.0, 1.0, 3.0], [4.0, 8.0, 5.0], [6.0, 8.0, 7.0]]], [[[8.0, 2.0, 5.0], [6.0, 7.0, 6.0], [1.0, 1.0, 2.0]], [[3.0, 5.0, 7.0], [1.0, 7.0, 4.0], [1.0, 3.0, 2.0]], [[3.0, 5.0, 8.0], [4.0, 7.0, 7.0], [8.0, 2.0, 3.0]]], [[[1.0, 6.0, 7.0], [3.0, 5.0, 6.0], [5.0, 2.0, 7.0]], [[8.0, 3.0, 5.0], [2.0, 8.0, 1.0], [6.0, 4.0, 8.0]], [[1.0, 7.0, 6.0], [8.0, 4.0, 4.0], [6.0, 3.0, 3.0]]]]))
9188        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9189        val=msk_val*numarray.array([[[8.0, 1.0], [8.0, 7.0], [3.0, 7.0]], [[4.0, 1.0], [5.0, 8.0], [7.0, 2.0]], [[3.0, 8.0], [7.0, 2.0], [3.0, 6.0]], [[7.0, 4.0], [6.0, 8.0], [1.0, 2.0]]])+(1.-msk_val)*numarray.array([[[3.0, 5.0], [2.0, 1.0], [6.0, 3.0]], [[2.0, 3.0], [1.0, 1.0], [8.0, 6.0]], [[7.0, 8.0], [6.0, 8.0], [1.0, 2.0]], [[6.0, 7.0], [2.0, 3.0], [7.0, 1.0]]])        val=msk_val*numarray.array([[[8.0, 1.0], [8.0, 7.0], [3.0, 7.0]], [[4.0, 1.0], [5.0, 8.0], [7.0, 2.0]], [[3.0, 8.0], [7.0, 2.0], [3.0, 6.0]], [[7.0, 4.0], [6.0, 8.0], [1.0, 2.0]]])+(1.-msk_val)*numarray.array([[[3.0, 5.0], [2.0, 1.0], [6.0, 3.0]], [[2.0, 3.0], [1.0, 1.0], [8.0, 6.0]], [[7.0, 8.0], [6.0, 8.0], [1.0, 2.0]], [[6.0, 7.0], [2.0, 3.0], [7.0, 1.0]]])
9190        arg[:,:,:2,1]=val        arg[:,:,:2,1]=val
9191        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9223  class Test_util_slicing_with_tagged_data Line 9223  class Test_util_slicing_with_tagged_data
9223     def test_setslice_taggedData_rank4_expandedData_RLUN(self):     def test_setslice_taggedData_rank4_expandedData_RLUN(self):
9224        arg=Data(numarray.array([[[[4.0, 4.0, 5.0], [6.0, 1.0, 2.0], [5.0, 6.0, 5.0]], [[3.0, 6.0, 5.0], [8.0, 1.0, 6.0], [6.0, 3.0, 4.0]], [[6.0, 2.0, 3.0], [5.0, 5.0, 2.0], [3.0, 1.0, 6.0]]], [[[2.0, 4.0, 3.0], [2.0, 4.0, 7.0], [8.0, 5.0, 4.0]], [[6.0, 3.0, 5.0], [5.0, 5.0, 5.0], [2.0, 2.0, 2.0]], [[4.0, 2.0, 2.0], [3.0, 5.0, 2.0], [4.0, 1.0, 6.0]]], [[[8.0, 1.0, 5.0], [4.0, 5.0, 7.0], [5.0, 5.0, 7.0]], [[5.0, 1.0, 8.0], [7.0, 7.0, 6.0], [1.0, 1.0, 7.0]], [[6.0, 7.0, 6.0], [2.0, 6.0, 1.0], [8.0, 7.0, 2.0]]], [[[8.0, 7.0, 6.0], [7.0, 4.0, 5.0], [1.0, 5.0, 4.0]], [[8.0, 1.0, 3.0], [2.0, 2.0, 6.0], [8.0, 3.0, 3.0]], [[7.0, 4.0, 6.0], [2.0, 4.0, 2.0], [2.0, 4.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 4.0, 5.0], [6.0, 1.0, 2.0], [5.0, 6.0, 5.0]], [[3.0, 6.0, 5.0], [8.0, 1.0, 6.0], [6.0, 3.0, 4.0]], [[6.0, 2.0, 3.0], [5.0, 5.0, 2.0], [3.0, 1.0, 6.0]]], [[[2.0, 4.0, 3.0], [2.0, 4.0, 7.0], [8.0, 5.0, 4.0]], [[6.0, 3.0, 5.0], [5.0, 5.0, 5.0], [2.0, 2.0, 2.0]], [[4.0, 2.0, 2.0], [3.0, 5.0, 2.0], [4.0, 1.0, 6.0]]], [[[8.0, 1.0, 5.0], [4.0, 5.0, 7.0], [5.0, 5.0, 7.0]], [[5.0, 1.0, 8.0], [7.0, 7.0, 6.0], [1.0, 1.0, 7.0]], [[6.0, 7.0, 6.0], [2.0, 6.0, 1.0], [8.0, 7.0, 2.0]]], [[[8.0, 7.0, 6.0], [7.0, 4.0, 5.0], [1.0, 5.0, 4.0]], [[8.0, 1.0, 3.0], [2.0, 2.0, 6.0], [8.0, 3.0, 3.0]], [[7.0, 4.0, 6.0], [2.0, 4.0, 2.0], [2.0, 4.0, 4.0]]]]),self.functionspace)
9225        arg.setTaggedValue(1,numarray.array([[[[8.0, 8.0, 7.0], [6.0, 8.0, 8.0], [6.0, 1.0, 3.0]], [[6.0, 3.0, 6.0], [4.0, 6.0, 6.0], [6.0, 4.0, 2.0]], [[7.0, 3.0, 6.0], [5.0, 2.0, 2.0], [6.0, 3.0, 1.0]]], [[[8.0, 5.0, 1.0], [8.0, 2.0, 6.0], [8.0, 4.0, 8.0]], [[8.0, 2.0, 4.0], [3.0, 4.0, 2.0], [2.0, 4.0, 4.0]], [[5.0, 6.0, 7.0], [3.0, 8.0, 3.0], [5.0, 5.0, 1.0]]], [[[1.0, 1.0, 8.0], [6.0, 3.0, 2.0], [2.0, 1.0, 3.0]], [[1.0, 3.0, 5.0], [2.0, 6.0, 2.0], [6.0, 5.0, 2.0]], [[5.0, 2.0, 8.0], [3.0, 5.0, 2.0], [3.0, 5.0, 4.0]]], [[[7.0, 7.0, 4.0], [2.0, 6.0, 5.0], [5.0, 4.0, 4.0]], [[8.0, 3.0, 8.0], [3.0, 2.0, 2.0], [7.0, 5.0, 7.0]], [[7.0, 5.0, 5.0], [8.0, 8.0, 1.0], [6.0, 5.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 8.0, 7.0], [6.0, 8.0, 8.0], [6.0, 1.0, 3.0]], [[6.0, 3.0, 6.0], [4.0, 6.0, 6.0], [6.0, 4.0, 2.0]], [[7.0, 3.0, 6.0], [5.0, 2.0, 2.0], [6.0, 3.0, 1.0]]], [[[8.0, 5.0, 1.0], [8.0, 2.0, 6.0], [8.0, 4.0, 8.0]], [[8.0, 2.0, 4.0], [3.0, 4.0, 2.0], [2.0, 4.0, 4.0]], [[5.0, 6.0, 7.0], [3.0, 8.0, 3.0], [5.0, 5.0, 1.0]]], [[[1.0, 1.0, 8.0], [6.0, 3.0, 2.0], [2.0, 1.0, 3.0]], [[1.0, 3.0, 5.0], [2.0, 6.0, 2.0], [6.0, 5.0, 2.0]], [[5.0, 2.0, 8.0], [3.0, 5.0, 2.0], [3.0, 5.0, 4.0]]], [[[7.0, 7.0, 4.0], [2.0, 6.0, 5.0], [5.0, 4.0, 4.0]], [[8.0, 3.0, 8.0], [3.0, 2.0, 2.0], [7.0, 5.0, 7.0]], [[7.0, 5.0, 5.0], [8.0, 8.0, 1.0], [6.0, 5.0, 7.0]]]]))
9226        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9227        val=msk_val*numarray.array([[[[5.0, 4.0, 2.0], [6.0, 2.0, 1.0]]], [[[3.0, 7.0, 5.0], [4.0, 3.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 7.0, 7.0], [4.0, 2.0, 1.0]]], [[[6.0, 2.0, 2.0], [2.0, 2.0, 3.0]]]])        val=msk_val*numarray.array([[[[5.0, 4.0, 2.0], [6.0, 2.0, 1.0]]], [[[3.0, 7.0, 5.0], [4.0, 3.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 7.0, 7.0], [4.0, 2.0, 1.0]]], [[[6.0, 2.0, 2.0], [2.0, 2.0, 3.0]]]])
9228        arg[1:3,2:,:2]=val        arg[1:3,2:,:2]=val
9229        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9261  class Test_util_slicing_with_tagged_data Line 9261  class Test_util_slicing_with_tagged_data
9261     def test_setslice_taggedData_rank4_expandedData_PRRC(self):     def test_setslice_taggedData_rank4_expandedData_PRRC(self):
9262        arg=Data(numarray.array([[[[1.0, 6.0, 5.0], [4.0, 8.0, 3.0], [3.0, 2.0, 1.0]], [[4.0, 5.0, 3.0], [3.0, 2.0, 8.0], [3.0, 7.0, 1.0]], [[4.0, 3.0, 7.0], [7.0, 4.0, 3.0], [4.0, 2.0, 4.0]]], [[[6.0, 2.0, 1.0], [3.0, 7.0, 4.0], [7.0, 8.0, 1.0]], [[6.0, 7.0, 3.0], [8.0, 8.0, 3.0], [8.0, 6.0, 8.0]], [[1.0, 6.0, 5.0], [8.0, 8.0, 5.0], [1.0, 8.0, 8.0]]], [[[2.0, 3.0, 8.0], [7.0, 1.0, 3.0], [1.0, 5.0, 4.0]], [[5.0, 2.0, 1.0], [4.0, 2.0, 8.0], [1.0, 7.0, 3.0]], [[7.0, 8.0, 2.0], [8.0, 6.0, 1.0], [2.0, 5.0, 5.0]]], [[[1.0, 5.0, 1.0], [4.0, 8.0, 7.0], [4.0, 3.0, 3.0]], [[1.0, 1.0, 5.0], [2.0, 1.0, 3.0], [7.0, 4.0, 5.0]], [[4.0, 5.0, 3.0], [6.0, 7.0, 4.0], [4.0, 8.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 6.0, 5.0], [4.0, 8.0, 3.0], [3.0, 2.0, 1.0]], [[4.0, 5.0, 3.0], [3.0, 2.0, 8.0], [3.0, 7.0, 1.0]], [[4.0, 3.0, 7.0], [7.0, 4.0, 3.0], [4.0, 2.0, 4.0]]], [[[6.0, 2.0, 1.0], [3.0, 7.0, 4.0], [7.0, 8.0, 1.0]], [[6.0, 7.0, 3.0], [8.0, 8.0, 3.0], [8.0, 6.0, 8.0]], [[1.0, 6.0, 5.0], [8.0, 8.0, 5.0], [1.0, 8.0, 8.0]]], [[[2.0, 3.0, 8.0], [7.0, 1.0, 3.0], [1.0, 5.0, 4.0]], [[5.0, 2.0, 1.0], [4.0, 2.0, 8.0], [1.0, 7.0, 3.0]], [[7.0, 8.0, 2.0], [8.0, 6.0, 1.0], [2.0, 5.0, 5.0]]], [[[1.0, 5.0, 1.0], [4.0, 8.0, 7.0], [4.0, 3.0, 3.0]], [[1.0, 1.0, 5.0], [2.0, 1.0, 3.0], [7.0, 4.0, 5.0]], [[4.0, 5.0, 3.0], [6.0, 7.0, 4.0], [4.0, 8.0, 4.0]]]]),self.functionspace)
9263        arg.setTaggedValue(1,numarray.array([[[[7.0, 1.0, 3.0], [7.0, 3.0, 4.0], [7.0, 7.0, 6.0]], [[1.0, 7.0, 4.0], [3.0, 4.0, 8.0], [5.0, 1.0, 7.0]], [[4.0, 5.0, 7.0], [5.0, 6.0, 5.0], [5.0, 3.0, 4.0]]], [[[8.0, 1.0, 5.0], [4.0, 1.0, 4.0], [5.0, 7.0, 3.0]], [[4.0, 6.0, 3.0], [2.0, 7.0, 3.0], [5.0, 1.0, 3.0]], [[8.0, 5.0, 4.0], [6.0, 6.0, 8.0], [7.0, 5.0, 4.0]]], [[[1.0, 2.0, 1.0], [3.0, 2.0, 8.0], [2.0, 6.0, 7.0]], [[7.0, 1.0, 1.0], [2.0, 5.0, 3.0], [2.0, 8.0, 6.0]], [[4.0, 6.0, 2.0], [2.0, 1.0, 8.0], [6.0, 4.0, 3.0]]], [[[8.0, 6.0, 5.0], [2.0, 3.0, 4.0], [7.0, 5.0, 2.0]], [[5.0, 3.0, 8.0], [3.0, 4.0, 8.0], [5.0, 4.0, 1.0]], [[2.0, 4.0, 5.0], [6.0, 1.0, 6.0], [5.0, 2.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 1.0, 3.0], [7.0, 3.0, 4.0], [7.0, 7.0, 6.0]], [[1.0, 7.0, 4.0], [3.0, 4.0, 8.0], [5.0, 1.0, 7.0]], [[4.0, 5.0, 7.0], [5.0, 6.0, 5.0], [5.0, 3.0, 4.0]]], [[[8.0, 1.0, 5.0], [4.0, 1.0, 4.0], [5.0, 7.0, 3.0]], [[4.0, 6.0, 3.0], [2.0, 7.0, 3.0], [5.0, 1.0, 3.0]], [[8.0, 5.0, 4.0], [6.0, 6.0, 8.0], [7.0, 5.0, 4.0]]], [[[1.0, 2.0, 1.0], [3.0, 2.0, 8.0], [2.0, 6.0, 7.0]], [[7.0, 1.0, 1.0], [2.0, 5.0, 3.0], [2.0, 8.0, 6.0]], [[4.0, 6.0, 2.0], [2.0, 1.0, 8.0], [6.0, 4.0, 3.0]]], [[[8.0, 6.0, 5.0], [2.0, 3.0, 4.0], [7.0, 5.0, 2.0]], [[5.0, 3.0, 8.0], [3.0, 4.0, 8.0], [5.0, 4.0, 1.0]], [[2.0, 4.0, 5.0], [6.0, 1.0, 6.0], [5.0, 2.0, 3.0]]]]))
9264        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9265        val=msk_val*numarray.array([[[1.0, 4.0, 6.0]]])+(1.-msk_val)*numarray.array([[[7.0, 1.0, 7.0]]])        val=msk_val*numarray.array([[[1.0, 4.0, 6.0]]])+(1.-msk_val)*numarray.array([[[7.0, 1.0, 7.0]]])
9266        arg[2,1:2,1:2,:]=val        arg[2,1:2,1:2,:]=val
9267        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9299  class Test_util_slicing_with_tagged_data Line 9299  class Test_util_slicing_with_tagged_data
9299     def test_setslice_taggedData_rank4_expandedData_LUUP(self):     def test_setslice_taggedData_rank4_expandedData_LUUP(self):
9300        arg=Data(numarray.array([[[[7.0, 6.0, 1.0], [5.0, 6.0, 2.0], [2.0, 2.0, 3.0]], [[1.0, 7.0, 8.0], [3.0, 6.0, 3.0], [5.0, 7.0, 2.0]], [[1.0, 2.0, 2.0], [6.0, 8.0, 3.0], [3.0, 8.0, 6.0]]], [[[7.0, 8.0, 5.0], [7.0, 6.0, 8.0], [3.0, 7.0, 6.0]], [[2.0, 4.0, 4.0], [2.0, 2.0, 1.0], [8.0, 1.0, 8.0]], [[7.0, 5.0, 1.0], [2.0, 4.0, 6.0], [2.0, 3.0, 1.0]]], [[[2.0, 8.0, 2.0], [3.0, 8.0, 5.0], [8.0, 6.0, 1.0]], [[5.0, 8.0, 1.0], [4.0, 7.0, 2.0], [2.0, 6.0, 5.0]], [[5.0, 1.0, 3.0], [6.0, 3.0, 1.0], [6.0, 2.0, 5.0]]], [[[6.0, 1.0, 3.0], [7.0, 5.0, 8.0], [2.0, 1.0, 6.0]], [[6.0, 2.0, 4.0], [1.0, 1.0, 3.0], [6.0, 6.0, 5.0]], [[6.0, 7.0, 6.0], [7.0, 7.0, 6.0], [4.0, 6.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 6.0, 1.0], [5.0, 6.0, 2.0], [2.0, 2.0, 3.0]], [[1.0, 7.0, 8.0], [3.0, 6.0, 3.0], [5.0, 7.0, 2.0]], [[1.0, 2.0, 2.0], [6.0, 8.0, 3.0], [3.0, 8.0, 6.0]]], [[[7.0, 8.0, 5.0], [7.0, 6.0, 8.0], [3.0, 7.0, 6.0]], [[2.0, 4.0, 4.0], [2.0, 2.0, 1.0], [8.0, 1.0, 8.0]], [[7.0, 5.0, 1.0], [2.0, 4.0, 6.0], [2.0, 3.0, 1.0]]], [[[2.0, 8.0, 2.0], [3.0, 8.0, 5.0], [8.0, 6.0, 1.0]], [[5.0, 8.0, 1.0], [4.0, 7.0, 2.0], [2.0, 6.0, 5.0]], [[5.0, 1.0, 3.0], [6.0, 3.0, 1.0], [6.0, 2.0, 5.0]]], [[[6.0, 1.0, 3.0], [7.0, 5.0, 8.0], [2.0, 1.0, 6.0]], [[6.0, 2.0, 4.0], [1.0, 1.0, 3.0], [6.0, 6.0, 5.0]], [[6.0, 7.0, 6.0], [7.0, 7.0, 6.0], [4.0, 6.0, 6.0]]]]),self.functionspace)
9301        arg.setTaggedValue(1,numarray.array([[[[3.0, 7.0, 6.0], [3.0, 7.0, 6.0], [2.0, 1.0, 6.0]], [[3.0, 4.0, 1.0], [8.0, 5.0, 2.0], [8.0, 8.0, 8.0]], [[8.0, 2.0, 5.0], [6.0, 7.0, 7.0], [4.0, 6.0, 3.0]]], [[[1.0, 8.0, 3.0], [3.0, 3.0, 2.0], [8.0, 6.0, 7.0]], [[6.0, 4.0, 3.0], [3.0, 6.0, 1.0], [2.0, 8.0, 7.0]], [[5.0, 3.0, 6.0], [5.0, 5.0, 5.0], [7.0, 2.0, 2.0]]], [[[1.0, 6.0, 1.0], [2.0, 2.0, 6.0], [3.0, 6.0, 3.0]], [[6.0, 7.0, 4.0], [7.0, 2.0, 4.0], [5.0, 7.0, 3.0]], [[8.0, 6.0, 5.0], [5.0, 7.0, 8.0], [7.0, 8.0, 1.0]]], [[[7.0, 6.0, 1.0], [2.0, 8.0, 8.0], [2.0, 6.0, 1.0]], [[7.0, 4.0, 6.0], [2.0, 4.0, 8.0], [2.0, 4.0, 1.0]], [[4.0, 5.0, 3.0], [3.0, 3.0, 8.0], [5.0, 5.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 7.0, 6.0], [3.0, 7.0, 6.0], [2.0, 1.0, 6.0]], [[3.0, 4.0, 1.0], [8.0, 5.0, 2.0], [8.0, 8.0, 8.0]], [[8.0, 2.0, 5.0], [6.0, 7.0, 7.0], [4.0, 6.0, 3.0]]], [[[1.0, 8.0, 3.0], [3.0, 3.0, 2.0], [8.0, 6.0, 7.0]], [[6.0, 4.0, 3.0], [3.0, 6.0, 1.0], [2.0, 8.0, 7.0]], [[5.0, 3.0, 6.0], [5.0, 5.0, 5.0], [7.0, 2.0, 2.0]]], [[[1.0, 6.0, 1.0], [2.0, 2.0, 6.0], [3.0, 6.0, 3.0]], [[6.0, 7.0, 4.0], [7.0, 2.0, 4.0], [5.0, 7.0, 3.0]], [[8.0, 6.0, 5.0], [5.0, 7.0, 8.0], [7.0, 8.0, 1.0]]], [[[7.0, 6.0, 1.0], [2.0, 8.0, 8.0], [2.0, 6.0, 1.0]], [[7.0, 4.0, 6.0], [2.0, 4.0, 8.0], [2.0, 4.0, 1.0]], [[4.0, 5.0, 3.0], [3.0, 3.0, 8.0], [5.0, 5.0, 7.0]]]]))
9302        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9303        val=msk_val*numarray.array([[[3.0, 6.0], [7.0, 8.0]], [[6.0, 3.0], [7.0, 5.0]]])+(1.-msk_val)*numarray.array([[[3.0, 4.0], [6.0, 4.0]], [[8.0, 4.0], [8.0, 7.0]]])        val=msk_val*numarray.array([[[3.0, 6.0], [7.0, 8.0]], [[6.0, 3.0], [7.0, 5.0]]])+(1.-msk_val)*numarray.array([[[3.0, 4.0], [6.0, 4.0]], [[8.0, 4.0], [8.0, 7.0]]])
9304        arg[2:,:2,:2,1]=val        arg[2:,:2,:2,1]=val
9305        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9337  class Test_util_slicing_with_tagged_data Line 9337  class Test_util_slicing_with_tagged_data
9337     def test_setslice_taggedData_rank4_expandedData_RPUC(self):     def test_setslice_taggedData_rank4_expandedData_RPUC(self):
9338        arg=Data(numarray.array([[[[4.0, 7.0, 3.0], [4.0, 5.0, 5.0], [4.0, 2.0, 5.0]], [[1.0, 6.0, 1.0], [1.0, 6.0, 2.0], [3.0, 5.0, 5.0]], [[8.0, 5.0, 5.0], [3.0, 8.0, 6.0], [8.0, 3.0, 6.0]]], [[[8.0, 5.0, 5.0], [7.0, 3.0, 8.0], [1.0, 2.0, 2.0]], [[4.0, 6.0, 1.0], [8.0, 2.0, 1.0], [8.0, 6.0, 5.0]], [[2.0, 2.0, 8.0], [6.0, 5.0, 4.0], [6.0, 7.0, 4.0]]], [[[6.0, 2.0, 1.0], [7.0, 5.0, 4.0], [2.0, 2.0, 8.0]], [[7.0, 5.0, 7.0], [6.0, 2.0, 2.0], [2.0, 3.0, 8.0]], [[2.0, 8.0, 6.0], [1.0, 3.0, 2.0], [7.0, 3.0, 7.0]]], [[[4.0, 7.0, 5.0], [1.0, 5.0, 1.0], [1.0, 3.0, 1.0]], [[8.0, 4.0, 5.0], [5.0, 2.0, 7.0], [8.0, 2.0, 1.0]], [[7.0, 8.0, 2.0], [7.0, 1.0, 6.0], [7.0, 2.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 7.0, 3.0], [4.0, 5.0, 5.0], [4.0, 2.0, 5.0]], [[1.0, 6.0, 1.0], [1.0, 6.0, 2.0], [3.0, 5.0, 5.0]], [[8.0, 5.0, 5.0], [3.0, 8.0, 6.0], [8.0, 3.0, 6.0]]], [[[8.0, 5.0, 5.0], [7.0, 3.0, 8.0], [1.0, 2.0, 2.0]], [[4.0, 6.0, 1.0], [8.0, 2.0, 1.0], [8.0, 6.0, 5.0]], [[2.0, 2.0, 8.0], [6.0, 5.0, 4.0], [6.0, 7.0, 4.0]]], [[[6.0, 2.0, 1.0], [7.0, 5.0, 4.0], [2.0, 2.0, 8.0]], [[7.0, 5.0, 7.0], [6.0, 2.0, 2.0], [2.0, 3.0, 8.0]], [[2.0, 8.0, 6.0], [1.0, 3.0, 2.0], [7.0, 3.0, 7.0]]], [[[4.0, 7.0, 5.0], [1.0, 5.0, 1.0], [1.0, 3.0, 1.0]], [[8.0, 4.0, 5.0], [5.0, 2.0, 7.0], [8.0, 2.0, 1.0]], [[7.0, 8.0, 2.0], [7.0, 1.0, 6.0], [7.0, 2.0, 6.0]]]]),self.functionspace)
9339        arg.setTaggedValue(1,numarray.array([[[[7.0, 8.0, 1.0], [4.0, 3.0, 7.0], [5.0, 7.0, 6.0]], [[5.0, 7.0, 5.0], [5.0, 3.0, 8.0], [4.0, 4.0, 1.0]], [[5.0, 4.0, 2.0], [3.0, 6.0, 4.0], [5.0, 8.0, 5.0]]], [[[1.0, 2.0, 1.0], [6.0, 6.0, 3.0], [3.0, 6.0, 8.0]], [[5.0, 5.0, 7.0], [2.0, 8.0, 1.0], [3.0, 3.0, 3.0]], [[3.0, 3.0, 1.0], [8.0, 6.0, 3.0], [2.0, 7.0, 7.0]]], [[[7.0, 2.0, 6.0], [2.0, 4.0, 3.0], [4.0, 2.0, 4.0]], [[1.0, 5.0, 7.0], [8.0, 6.0, 7.0], [8.0, 3.0, 5.0]], [[8.0, 7.0, 3.0], [1.0, 6.0, 8.0], [7.0, 2.0, 5.0]]], [[[1.0, 4.0, 8.0], [8.0, 1.0, 5.0], [1.0, 8.0, 4.0]], [[2.0, 5.0, 2.0], [4.0, 3.0, 6.0], [4.0, 1.0, 3.0]], [[1.0, 6.0, 7.0], [8.0, 5.0, 6.0], [4.0, 1.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 8.0, 1.0], [4.0, 3.0, 7.0], [5.0, 7.0, 6.0]], [[5.0, 7.0, 5.0], [5.0, 3.0, 8.0], [4.0, 4.0, 1.0]], [[5.0, 4.0, 2.0], [3.0, 6.0, 4.0], [5.0, 8.0, 5.0]]], [[[1.0, 2.0, 1.0], [6.0, 6.0, 3.0], [3.0, 6.0, 8.0]], [[5.0, 5.0, 7.0], [2.0, 8.0, 1.0], [3.0, 3.0, 3.0]], [[3.0, 3.0, 1.0], [8.0, 6.0, 3.0], [2.0, 7.0, 7.0]]], [[[7.0, 2.0, 6.0], [2.0, 4.0, 3.0], [4.0, 2.0, 4.0]], [[1.0, 5.0, 7.0], [8.0, 6.0, 7.0], [8.0, 3.0, 5.0]], [[8.0, 7.0, 3.0], [1.0, 6.0, 8.0], [7.0, 2.0, 5.0]]], [[[1.0, 4.0, 8.0], [8.0, 1.0, 5.0], [1.0, 8.0, 4.0]], [[2.0, 5.0, 2.0], [4.0, 3.0, 6.0], [4.0, 1.0, 3.0]], [[1.0, 6.0, 7.0], [8.0, 5.0, 6.0], [4.0, 1.0, 3.0]]]]))
9340        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9341        val=msk_val*numarray.array([[[7.0, 8.0, 2.0], [8.0, 2.0, 8.0]], [[8.0, 3.0, 6.0], [3.0, 5.0, 6.0]]])+(1.-msk_val)*numarray.array([[[4.0, 8.0, 3.0], [8.0, 8.0, 3.0]], [[8.0, 5.0, 5.0], [6.0, 6.0, 3.0]]])        val=msk_val*numarray.array([[[7.0, 8.0, 2.0], [8.0, 2.0, 8.0]], [[8.0, 3.0, 6.0], [3.0, 5.0, 6.0]]])+(1.-msk_val)*numarray.array([[[4.0, 8.0, 3.0], [8.0, 8.0, 3.0]], [[8.0, 5.0, 5.0], [6.0, 6.0, 3.0]]])
9342        arg[1:3,1,:2,:]=val        arg[1:3,1,:2,:]=val
9343        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9375  class Test_util_slicing_with_tagged_data Line 9375  class Test_util_slicing_with_tagged_data
9375     def test_setslice_taggedData_rank4_expandedData_PLUR(self):     def test_setslice_taggedData_rank4_expandedData_PLUR(self):
9376        arg=Data(numarray.array([[[[4.0, 3.0, 5.0], [6.0, 1.0, 7.0], [3.0, 7.0, 5.0]], [[8.0, 5.0, 6.0], [5.0, 7.0, 8.0], [4.0, 1.0, 7.0]], [[3.0, 6.0, 4.0], [5.0, 1.0, 2.0], [7.0, 1.0, 5.0]]], [[[1.0, 6.0, 5.0], [2.0, 4.0, 2.0], [4.0, 6.0, 5.0]], [[1.0, 2.0, 5.0], [3.0, 6.0, 3.0], [2.0, 2.0, 8.0]], [[7.0, 7.0, 1.0], [6.0, 1.0, 1.0], [8.0, 6.0, 3.0]]], [[[8.0, 7.0, 8.0], [8.0, 1.0, 6.0], [7.0, 6.0, 5.0]], [[8.0, 7.0, 1.0], [6.0, 2.0, 5.0], [8.0, 3.0, 2.0]], [[8.0, 2.0, 2.0], [6.0, 2.0, 5.0], [4.0, 4.0, 5.0]]], [[[4.0, 8.0, 6.0], [8.0, 5.0, 8.0], [8.0, 3.0, 5.0]], [[3.0, 3.0, 5.0], [4.0, 4.0, 1.0], [7.0, 6.0, 3.0]], [[7.0, 3.0, 6.0], [8.0, 3.0, 8.0], [5.0, 4.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 3.0, 5.0], [6.0, 1.0, 7.0], [3.0, 7.0, 5.0]], [[8.0, 5.0, 6.0], [5.0, 7.0, 8.0], [4.0, 1.0, 7.0]], [[3.0, 6.0, 4.0], [5.0, 1.0, 2.0], [7.0, 1.0, 5.0]]], [[[1.0, 6.0, 5.0], [2.0, 4.0, 2.0], [4.0, 6.0, 5.0]], [[1.0, 2.0, 5.0], [3.0, 6.0, 3.0], [2.0, 2.0, 8.0]], [[7.0, 7.0, 1.0], [6.0, 1.0, 1.0], [8.0, 6.0, 3.0]]], [[[8.0, 7.0, 8.0], [8.0, 1.0, 6.0], [7.0, 6.0, 5.0]], [[8.0, 7.0, 1.0], [6.0, 2.0, 5.0], [8.0, 3.0, 2.0]], [[8.0, 2.0, 2.0], [6.0, 2.0, 5.0], [4.0, 4.0, 5.0]]], [[[4.0, 8.0, 6.0], [8.0, 5.0, 8.0], [8.0, 3.0, 5.0]], [[3.0, 3.0, 5.0], [4.0, 4.0, 1.0], [7.0, 6.0, 3.0]], [[7.0, 3.0, 6.0], [8.0, 3.0, 8.0], [5.0, 4.0, 6.0]]]]),self.functionspace)
9377        arg.setTaggedValue(1,numarray.array([[[[6.0, 1.0, 8.0], [3.0, 8.0, 6.0], [5.0, 3.0, 4.0]], [[7.0, 3.0, 8.0], [6.0, 6.0, 4.0], [5.0, 7.0, 8.0]], [[7.0, 2.0, 4.0], [7.0, 8.0, 2.0], [4.0, 1.0, 2.0]]], [[[4.0, 1.0, 6.0], [2.0, 5.0, 7.0], [6.0, 6.0, 7.0]], [[2.0, 4.0, 3.0], [5.0, 8.0, 1.0], [8.0, 2.0, 8.0]], [[5.0, 7.0, 6.0], [5.0, 5.0, 8.0], [6.0, 2.0, 5.0]]], [[[4.0, 4.0, 4.0], [5.0, 3.0, 7.0], [8.0, 2.0, 4.0]], [[7.0, 4.0, 1.0], [6.0, 6.0, 2.0], [2.0, 1.0, 1.0]], [[2.0, 7.0, 4.0], [4.0, 4.0, 2.0], [6.0, 2.0, 5.0]]], [[[2.0, 7.0, 5.0], [7.0, 3.0, 6.0], [4.0, 7.0, 5.0]], [[5.0, 7.0, 4.0], [5.0, 4.0, 5.0], [8.0, 7.0, 8.0]], [[7.0, 2.0, 6.0], [4.0, 1.0, 8.0], [8.0, 6.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 1.0, 8.0], [3.0, 8.0, 6.0], [5.0, 3.0, 4.0]], [[7.0, 3.0, 8.0], [6.0, 6.0, 4.0], [5.0, 7.0, 8.0]], [[7.0, 2.0, 4.0], [7.0, 8.0, 2.0], [4.0, 1.0, 2.0]]], [[[4.0, 1.0, 6.0], [2.0, 5.0, 7.0], [6.0, 6.0, 7.0]], [[2.0, 4.0, 3.0], [5.0, 8.0, 1.0], [8.0, 2.0, 8.0]], [[5.0, 7.0, 6.0], [5.0, 5.0, 8.0], [6.0, 2.0, 5.0]]], [[[4.0, 4.0, 4.0], [5.0, 3.0, 7.0], [8.0, 2.0, 4.0]], [[7.0, 4.0, 1.0], [6.0, 6.0, 2.0], [2.0, 1.0, 1.0]], [[2.0, 7.0, 4.0], [4.0, 4.0, 2.0], [6.0, 2.0, 5.0]]], [[[2.0, 7.0, 5.0], [7.0, 3.0, 6.0], [4.0, 7.0, 5.0]], [[5.0, 7.0, 4.0], [5.0, 4.0, 5.0], [8.0, 7.0, 8.0]], [[7.0, 2.0, 6.0], [4.0, 1.0, 8.0], [8.0, 6.0, 4.0]]]]))
9378        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9379        val=msk_val*numarray.array([[[1.0], [5.0]]])+(1.-msk_val)*numarray.array([[[2.0], [2.0]]])        val=msk_val*numarray.array([[[1.0], [5.0]]])+(1.-msk_val)*numarray.array([[[2.0], [2.0]]])
9380        arg[2,2:,:2,1:2]=val        arg[2,2:,:2,1:2]=val
9381        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9413  class Test_util_slicing_with_tagged_data Line 9413  class Test_util_slicing_with_tagged_data
9413     def test_setslice_taggedData_rank4_expandedData_PLLP(self):     def test_setslice_taggedData_rank4_expandedData_PLLP(self):
9414        arg=Data(numarray.array([[[[4.0, 8.0, 2.0], [3.0, 1.0, 6.0], [6.0, 6.0, 1.0]], [[2.0, 1.0, 8.0], [8.0, 2.0, 7.0], [4.0, 6.0, 6.0]], [[6.0, 4.0, 6.0], [3.0, 6.0, 3.0], [7.0, 5.0, 1.0]]], [[[4.0, 8.0, 1.0], [2.0, 1.0, 2.0], [8.0, 7.0, 5.0]], [[5.0, 4.0, 6.0], [5.0, 6.0, 7.0], [4.0, 3.0, 1.0]], [[3.0, 6.0, 6.0], [5.0, 7.0, 3.0], [6.0, 4.0, 3.0]]], [[[1.0, 5.0, 3.0], [7.0, 5.0, 4.0], [4.0, 6.0, 3.0]], [[2.0, 3.0, 7.0], [6.0, 3.0, 1.0], [3.0, 2.0, 8.0]], [[3.0, 4.0, 3.0], [2.0, 1.0, 5.0], [5.0, 7.0, 8.0]]], [[[5.0, 8.0, 2.0], [3.0, 2.0, 8.0], [6.0, 8.0, 7.0]], [[1.0, 5.0, 8.0], [8.0, 8.0, 7.0], [3.0, 7.0, 7.0]], [[4.0, 2.0, 3.0], [5.0, 1.0, 1.0], [8.0, 1.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 8.0, 2.0], [3.0, 1.0, 6.0], [6.0, 6.0, 1.0]], [[2.0, 1.0, 8.0], [8.0, 2.0, 7.0], [4.0, 6.0, 6.0]], [[6.0, 4.0, 6.0], [3.0, 6.0, 3.0], [7.0, 5.0, 1.0]]], [[[4.0, 8.0, 1.0], [2.0, 1.0, 2.0], [8.0, 7.0, 5.0]], [[5.0, 4.0, 6.0], [5.0, 6.0, 7.0], [4.0, 3.0, 1.0]], [[3.0, 6.0, 6.0], [5.0, 7.0, 3.0], [6.0, 4.0, 3.0]]], [[[1.0, 5.0, 3.0], [7.0, 5.0, 4.0], [4.0, 6.0, 3.0]], [[2.0, 3.0, 7.0], [6.0, 3.0, 1.0], [3.0, 2.0, 8.0]], [[3.0, 4.0, 3.0], [2.0, 1.0, 5.0], [5.0, 7.0, 8.0]]], [[[5.0, 8.0, 2.0], [3.0, 2.0, 8.0], [6.0, 8.0, 7.0]], [[1.0, 5.0, 8.0], [8.0, 8.0, 7.0], [3.0, 7.0, 7.0]], [[4.0, 2.0, 3.0], [5.0, 1.0, 1.0], [8.0, 1.0, 5.0]]]]),self.functionspace)
9415        arg.setTaggedValue(1,numarray.array([[[[5.0, 1.0, 1.0], [7.0, 6.0, 8.0], [8.0, 4.0, 1.0]], [[1.0, 8.0, 3.0], [2.0, 3.0, 7.0], [5.0, 4.0, 8.0]], [[6.0, 8.0, 4.0], [3.0, 6.0, 5.0], [4.0, 1.0, 2.0]]], [[[6.0, 2.0, 2.0], [7.0, 6.0, 5.0], [6.0, 7.0, 1.0]], [[6.0, 3.0, 1.0], [2.0, 1.0, 5.0], [2.0, 6.0, 4.0]], [[2.0, 1.0, 7.0], [3.0, 8.0, 2.0], [4.0, 4.0, 3.0]]], [[[1.0, 8.0, 1.0], [2.0, 4.0, 6.0], [8.0, 5.0, 5.0]], [[2.0, 1.0, 7.0], [7.0, 7.0, 6.0], [7.0, 3.0, 3.0]], [[8.0, 7.0, 2.0], [4.0, 7.0, 6.0], [7.0, 6.0, 2.0]]], [[[3.0, 5.0, 7.0], [4.0, 3.0, 8.0], [4.0, 4.0, 8.0]], [[2.0, 5.0, 3.0], [2.0, 6.0, 1.0], [1.0, 6.0, 2.0]], [[1.0, 4.0, 8.0], [7.0, 7.0, 3.0], [2.0, 2.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 1.0, 1.0], [7.0, 6.0, 8.0], [8.0, 4.0, 1.0]], [[1.0, 8.0, 3.0], [2.0, 3.0, 7.0], [5.0, 4.0, 8.0]], [[6.0, 8.0, 4.0], [3.0, 6.0, 5.0], [4.0, 1.0, 2.0]]], [[[6.0, 2.0, 2.0], [7.0, 6.0, 5.0], [6.0, 7.0, 1.0]], [[6.0, 3.0, 1.0], [2.0, 1.0, 5.0], [2.0, 6.0, 4.0]], [[2.0, 1.0, 7.0], [3.0, 8.0, 2.0], [4.0, 4.0, 3.0]]], [[[1.0, 8.0, 1.0], [2.0, 4.0, 6.0], [8.0, 5.0, 5.0]], [[2.0, 1.0, 7.0], [7.0, 7.0, 6.0], [7.0, 3.0, 3.0]], [[8.0, 7.0, 2.0], [4.0, 7.0, 6.0], [7.0, 6.0, 2.0]]], [[[3.0, 5.0, 7.0], [4.0, 3.0, 8.0], [4.0, 4.0, 8.0]], [[2.0, 5.0, 3.0], [2.0, 6.0, 1.0], [1.0, 6.0, 2.0]], [[1.0, 4.0, 8.0], [7.0, 7.0, 3.0], [2.0, 2.0, 8.0]]]]))
9416        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9417        val=msk_val*numarray.array([[7.0]])+(1.-msk_val)*numarray.array([[6.0]])        val=msk_val*numarray.array([[7.0]])+(1.-msk_val)*numarray.array([[6.0]])
9418        arg[2,2:,2:,1]=val        arg[2,2:,2:,1]=val
9419        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9451  class Test_util_slicing_with_tagged_data Line 9451  class Test_util_slicing_with_tagged_data
9451     def test_setslice_taggedData_rank4_expandedData_UPCL(self):     def test_setslice_taggedData_rank4_expandedData_UPCL(self):
9452        arg=Data(numarray.array([[[[8.0, 8.0, 5.0], [1.0, 7.0, 6.0], [7.0, 5.0, 1.0]], [[7.0, 3.0, 2.0], [8.0, 6.0, 5.0], [4.0, 7.0, 7.0]], [[4.0, 2.0, 6.0], [2.0, 2.0, 6.0], [1.0, 1.0, 6.0]]], [[[6.0, 8.0, 7.0], [6.0, 4.0, 3.0], [8.0, 2.0, 4.0]], [[2.0, 7.0, 8.0], [2.0, 5.0, 3.0], [8.0, 2.0, 6.0]], [[4.0, 8.0, 3.0], [8.0, 4.0, 4.0], [4.0, 8.0, 3.0]]], [[[4.0, 6.0, 6.0], [2.0, 8.0, 8.0], [2.0, 2.0, 1.0]], [[8.0, 8.0, 4.0], [4.0, 5.0, 6.0], [7.0, 3.0, 4.0]], [[3.0, 4.0, 1.0], [6.0, 5.0, 5.0], [6.0, 3.0, 5.0]]], [[[8.0, 7.0, 3.0], [4.0, 5.0, 8.0], [6.0, 4.0, 4.0]], [[5.0, 2.0, 2.0], [1.0, 6.0, 4.0], [6.0, 3.0, 3.0]], [[7.0, 3.0, 8.0], [7.0, 4.0, 4.0], [7.0, 7.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 8.0, 5.0], [1.0, 7.0, 6.0], [7.0, 5.0, 1.0]], [[7.0, 3.0, 2.0], [8.0, 6.0, 5.0], [4.0, 7.0, 7.0]], [[4.0, 2.0, 6.0], [2.0, 2.0, 6.0], [1.0, 1.0, 6.0]]], [[[6.0, 8.0, 7.0], [6.0, 4.0, 3.0], [8.0, 2.0, 4.0]], [[2.0, 7.0, 8.0], [2.0, 5.0, 3.0], [8.0, 2.0, 6.0]], [[4.0, 8.0, 3.0], [8.0, 4.0, 4.0], [4.0, 8.0, 3.0]]], [[[4.0, 6.0, 6.0], [2.0, 8.0, 8.0], [2.0, 2.0, 1.0]], [[8.0, 8.0, 4.0], [4.0, 5.0, 6.0], [7.0, 3.0, 4.0]], [[3.0, 4.0, 1.0], [6.0, 5.0, 5.0], [6.0, 3.0, 5.0]]], [[[8.0, 7.0, 3.0], [4.0, 5.0, 8.0], [6.0, 4.0, 4.0]], [[5.0, 2.0, 2.0], [1.0, 6.0, 4.0], [6.0, 3.0, 3.0]], [[7.0, 3.0, 8.0], [7.0, 4.0, 4.0], [7.0, 7.0, 1.0]]]]),self.functionspace)
9453        arg.setTaggedValue(1,numarray.array([[[[1.0, 7.0, 1.0], [2.0, 5.0, 5.0], [3.0, 5.0, 3.0]], [[3.0, 5.0, 7.0], [1.0, 5.0, 5.0], [3.0, 8.0, 1.0]], [[3.0, 6.0, 4.0], [8.0, 6.0, 2.0], [7.0, 5.0, 1.0]]], [[[4.0, 6.0, 8.0], [4.0, 8.0, 8.0], [4.0, 4.0, 1.0]], [[1.0, 7.0, 6.0], [5.0, 4.0, 1.0], [1.0, 2.0, 2.0]], [[6.0, 5.0, 1.0], [6.0, 7.0, 4.0], [5.0, 6.0, 8.0]]], [[[3.0, 6.0, 2.0], [3.0, 7.0, 8.0], [2.0, 1.0, 2.0]], [[6.0, 2.0, 1.0], [7.0, 8.0, 2.0], [7.0, 8.0, 2.0]], [[7.0, 4.0, 6.0], [4.0, 4.0, 4.0], [7.0, 7.0, 3.0]]], [[[1.0, 5.0, 2.0], [1.0, 6.0, 7.0], [7.0, 1.0, 5.0]], [[2.0, 6.0, 7.0], [7.0, 3.0, 4.0], [2.0, 2.0, 5.0]], [[1.0, 5.0, 2.0], [8.0, 2.0, 7.0], [3.0, 2.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 7.0, 1.0], [2.0, 5.0, 5.0], [3.0, 5.0, 3.0]], [[3.0, 5.0, 7.0], [1.0, 5.0, 5.0], [3.0, 8.0, 1.0]], [[3.0, 6.0, 4.0], [8.0, 6.0, 2.0], [7.0, 5.0, 1.0]]], [[[4.0, 6.0, 8.0], [4.0, 8.0, 8.0], [4.0, 4.0, 1.0]], [[1.0, 7.0, 6.0], [5.0, 4.0, 1.0], [1.0, 2.0, 2.0]], [[6.0, 5.0, 1.0], [6.0, 7.0, 4.0], [5.0, 6.0, 8.0]]], [[[3.0, 6.0, 2.0], [3.0, 7.0, 8.0], [2.0, 1.0, 2.0]], [[6.0, 2.0, 1.0], [7.0, 8.0, 2.0], [7.0, 8.0, 2.0]], [[7.0, 4.0, 6.0], [4.0, 4.0, 4.0], [7.0, 7.0, 3.0]]], [[[1.0, 5.0, 2.0], [1.0, 6.0, 7.0], [7.0, 1.0, 5.0]], [[2.0, 6.0, 7.0], [7.0, 3.0, 4.0], [2.0, 2.0, 5.0]], [[1.0, 5.0, 2.0], [8.0, 2.0, 7.0], [3.0, 2.0, 1.0]]]]))
9454        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9455        val=msk_val*numarray.array([[[1.0], [5.0], [4.0]], [[3.0], [1.0], [3.0]], [[6.0], [6.0], [4.0]]])+(1.-msk_val)*numarray.array([[[8.0], [7.0], [7.0]], [[1.0], [1.0], [4.0]], [[6.0], [5.0], [8.0]]])        val=msk_val*numarray.array([[[1.0], [5.0], [4.0]], [[3.0], [1.0], [3.0]], [[6.0], [6.0], [4.0]]])+(1.-msk_val)*numarray.array([[[8.0], [7.0], [7.0]], [[1.0], [1.0], [4.0]], [[6.0], [5.0], [8.0]]])
9456        arg[:3,1,:,2:]=val        arg[:3,1,:,2:]=val
9457        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9489  class Test_util_slicing_with_tagged_data Line 9489  class Test_util_slicing_with_tagged_data
9489     def test_setslice_taggedData_rank4_expandedData_CRCU(self):     def test_setslice_taggedData_rank4_expandedData_CRCU(self):
9490        arg=Data(numarray.array([[[[1.0, 7.0, 5.0], [5.0, 4.0, 5.0], [5.0, 2.0, 8.0]], [[2.0, 6.0, 2.0], [5.0, 3.0, 8.0], [2.0, 1.0, 6.0]], [[8.0, 6.0, 7.0], [2.0, 3.0, 4.0], [3.0, 2.0, 8.0]]], [[[4.0, 4.0, 6.0], [2.0, 3.0, 5.0], [2.0, 4.0, 2.0]], [[8.0, 5.0, 7.0], [4.0, 6.0, 3.0], [7.0, 2.0, 2.0]], [[7.0, 7.0, 8.0], [8.0, 2.0, 2.0], [4.0, 8.0, 8.0]]], [[[6.0, 8.0, 8.0], [3.0, 7.0, 1.0], [5.0, 8.0, 4.0]], [[7.0, 4.0, 8.0], [2.0, 3.0, 4.0], [2.0, 3.0, 6.0]], [[4.0, 8.0, 8.0], [5.0, 7.0, 5.0], [6.0, 2.0, 7.0]]], [[[6.0, 2.0, 6.0], [5.0, 1.0, 2.0], [7.0, 2.0, 1.0]], [[1.0, 1.0, 4.0], [3.0, 1.0, 5.0], [8.0, 5.0, 6.0]], [[5.0, 5.0, 5.0], [5.0, 6.0, 8.0], [5.0, 6.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 7.0, 5.0], [5.0, 4.0, 5.0], [5.0, 2.0, 8.0]], [[2.0, 6.0, 2.0], [5.0, 3.0, 8.0], [2.0, 1.0, 6.0]], [[8.0, 6.0, 7.0], [2.0, 3.0, 4.0], [3.0, 2.0, 8.0]]], [[[4.0, 4.0, 6.0], [2.0, 3.0, 5.0], [2.0, 4.0, 2.0]], [[8.0, 5.0, 7.0], [4.0, 6.0, 3.0], [7.0, 2.0, 2.0]], [[7.0, 7.0, 8.0], [8.0, 2.0, 2.0], [4.0, 8.0, 8.0]]], [[[6.0, 8.0, 8.0], [3.0, 7.0, 1.0], [5.0, 8.0, 4.0]], [[7.0, 4.0, 8.0], [2.0, 3.0, 4.0], [2.0, 3.0, 6.0]], [[4.0, 8.0, 8.0], [5.0, 7.0, 5.0], [6.0, 2.0, 7.0]]], [[[6.0, 2.0, 6.0], [5.0, 1.0, 2.0], [7.0, 2.0, 1.0]], [[1.0, 1.0, 4.0], [3.0, 1.0, 5.0], [8.0, 5.0, 6.0]], [[5.0, 5.0, 5.0], [5.0, 6.0, 8.0], [5.0, 6.0, 6.0]]]]),self.functionspace)
9491        arg.setTaggedValue(1,numarray.array([[[[6.0, 4.0, 6.0], [8.0, 2.0, 2.0], [7.0, 8.0, 4.0]], [[6.0, 8.0, 4.0], [6.0, 8.0, 4.0], [4.0, 3.0, 1.0]], [[4.0, 2.0, 2.0], [6.0, 3.0, 8.0], [4.0, 8.0, 1.0]]], [[[8.0, 1.0, 2.0], [8.0, 4.0, 5.0], [7.0, 5.0, 4.0]], [[7.0, 3.0, 5.0], [5.0, 8.0, 3.0], [1.0, 2.0, 3.0]], [[7.0, 7.0, 8.0], [1.0, 4.0, 1.0], [4.0, 2.0, 5.0]]], [[[5.0, 6.0, 7.0], [6.0, 7.0, 8.0], [2.0, 1.0, 4.0]], [[5.0, 7.0, 5.0], [5.0, 7.0, 3.0], [6.0, 6.0, 7.0]], [[2.0, 8.0, 6.0], [3.0, 1.0, 6.0], [6.0, 7.0, 3.0]]], [[[8.0, 1.0, 4.0], [2.0, 4.0, 2.0], [1.0, 5.0, 7.0]], [[5.0, 7.0, 4.0], [3.0, 8.0, 6.0], [3.0, 3.0, 4.0]], [[8.0, 6.0, 6.0], [3.0, 4.0, 4.0], [2.0, 8.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 4.0, 6.0], [8.0, 2.0, 2.0], [7.0, 8.0, 4.0]], [[6.0, 8.0, 4.0], [6.0, 8.0, 4.0], [4.0, 3.0, 1.0]], [[4.0, 2.0, 2.0], [6.0, 3.0, 8.0], [4.0, 8.0, 1.0]]], [[[8.0, 1.0, 2.0], [8.0, 4.0, 5.0], [7.0, 5.0, 4.0]], [[7.0, 3.0, 5.0], [5.0, 8.0, 3.0], [1.0, 2.0, 3.0]], [[7.0, 7.0, 8.0], [1.0, 4.0, 1.0], [4.0, 2.0, 5.0]]], [[[5.0, 6.0, 7.0], [6.0, 7.0, 8.0], [2.0, 1.0, 4.0]], [[5.0, 7.0, 5.0], [5.0, 7.0, 3.0], [6.0, 6.0, 7.0]], [[2.0, 8.0, 6.0], [3.0, 1.0, 6.0], [6.0, 7.0, 3.0]]], [[[8.0, 1.0, 4.0], [2.0, 4.0, 2.0], [1.0, 5.0, 7.0]], [[5.0, 7.0, 4.0], [3.0, 8.0, 6.0], [3.0, 3.0, 4.0]], [[8.0, 6.0, 6.0], [3.0, 4.0, 4.0], [2.0, 8.0, 4.0]]]]))
9492        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9493        val=msk_val*numarray.array([[[[8.0, 4.0], [1.0, 8.0], [5.0, 8.0]]], [[[6.0, 8.0], [1.0, 6.0], [6.0, 5.0]]], [[[4.0, 5.0], [5.0, 3.0], [4.0, 6.0]]], [[[6.0, 3.0], [1.0, 1.0], [6.0, 6.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 4.0], [3.0, 3.0], [7.0, 3.0]]], [[[8.0, 7.0], [3.0, 5.0], [2.0, 3.0]]], [[[3.0, 2.0], [5.0, 1.0], [2.0, 4.0]]], [[[2.0, 4.0], [6.0, 4.0], [7.0, 4.0]]]])        val=msk_val*numarray.array([[[[8.0, 4.0], [1.0, 8.0], [5.0, 8.0]]], [[[6.0, 8.0], [1.0, 6.0], [6.0, 5.0]]], [[[4.0, 5.0], [5.0, 3.0], [4.0, 6.0]]], [[[6.0, 3.0], [1.0, 1.0], [6.0, 6.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 4.0], [3.0, 3.0], [7.0, 3.0]]], [[[8.0, 7.0], [3.0, 5.0], [2.0, 3.0]]], [[[3.0, 2.0], [5.0, 1.0], [2.0, 4.0]]], [[[2.0, 4.0], [6.0, 4.0], [7.0, 4.0]]]])
9494        arg[:,1:2,:,:2]=val        arg[:,1:2,:,:2]=val
9495        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9527  class Test_util_slicing_with_tagged_data Line 9527  class Test_util_slicing_with_tagged_data
9527     def test_setslice_taggedData_rank4_expandedData_CLCL(self):     def test_setslice_taggedData_rank4_expandedData_CLCL(self):
9528        arg=Data(numarray.array([[[[4.0, 7.0, 5.0], [2.0, 8.0, 6.0], [7.0, 1.0, 8.0]], [[7.0, 1.0, 6.0], [5.0, 8.0, 5.0], [6.0, 4.0, 1.0]], [[3.0, 8.0, 6.0], [6.0, 3.0, 7.0], [7.0, 7.0, 3.0]]], [[[5.0, 5.0, 3.0], [2.0, 6.0, 5.0], [1.0, 3.0, 1.0]], [[3.0, 8.0, 4.0], [1.0, 1.0, 2.0], [6.0, 1.0, 5.0]], [[8.0, 2.0, 1.0], [6.0, 2.0, 8.0], [2.0, 3.0, 3.0]]], [[[2.0, 7.0, 5.0], [2.0, 1.0, 2.0], [5.0, 2.0, 1.0]], [[4.0, 5.0, 7.0], [5.0, 1.0, 4.0], [8.0, 5.0, 1.0]], [[6.0, 3.0, 2.0], [8.0, 6.0, 2.0], [1.0, 1.0, 2.0]]], [[[1.0, 7.0, 8.0], [1.0, 1.0, 7.0], [5.0, 1.0, 1.0]], [[8.0, 8.0, 6.0], [5.0, 4.0, 7.0], [6.0, 5.0, 8.0]], [[2.0, 6.0, 4.0], [7.0, 6.0, 8.0], [4.0, 4.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 7.0, 5.0], [2.0, 8.0, 6.0], [7.0, 1.0, 8.0]], [[7.0, 1.0, 6.0], [5.0, 8.0, 5.0], [6.0, 4.0, 1.0]], [[3.0, 8.0, 6.0], [6.0, 3.0, 7.0], [7.0, 7.0, 3.0]]], [[[5.0, 5.0, 3.0], [2.0, 6.0, 5.0], [1.0, 3.0, 1.0]], [[3.0, 8.0, 4.0], [1.0, 1.0, 2.0], [6.0, 1.0, 5.0]], [[8.0, 2.0, 1.0], [6.0, 2.0, 8.0], [2.0, 3.0, 3.0]]], [[[2.0, 7.0, 5.0], [2.0, 1.0, 2.0], [5.0, 2.0, 1.0]], [[4.0, 5.0, 7.0], [5.0, 1.0, 4.0], [8.0, 5.0, 1.0]], [[6.0, 3.0, 2.0], [8.0, 6.0, 2.0], [1.0, 1.0, 2.0]]], [[[1.0, 7.0, 8.0], [1.0, 1.0, 7.0], [5.0, 1.0, 1.0]], [[8.0, 8.0, 6.0], [5.0, 4.0, 7.0], [6.0, 5.0, 8.0]], [[2.0, 6.0, 4.0], [7.0, 6.0, 8.0], [4.0, 4.0, 6.0]]]]),self.functionspace)
9529        arg.setTaggedValue(1,numarray.array([[[[4.0, 4.0, 5.0], [8.0, 1.0, 5.0], [1.0, 8.0, 1.0]], [[3.0, 6.0, 4.0], [6.0, 2.0, 4.0], [8.0, 1.0, 5.0]], [[4.0, 8.0, 3.0], [3.0, 1.0, 2.0], [4.0, 3.0, 7.0]]], [[[3.0, 4.0, 5.0], [1.0, 8.0, 3.0], [2.0, 7.0, 6.0]], [[3.0, 6.0, 8.0], [8.0, 2.0, 8.0], [3.0, 7.0, 1.0]], [[5.0, 7.0, 4.0], [7.0, 1.0, 2.0], [1.0, 1.0, 6.0]]], [[[6.0, 8.0, 8.0], [6.0, 6.0, 3.0], [1.0, 7.0, 8.0]], [[7.0, 1.0, 5.0], [2.0, 2.0, 5.0], [5.0, 6.0, 4.0]], [[6.0, 2.0, 3.0], [6.0, 7.0, 8.0], [6.0, 4.0, 2.0]]], [[[1.0, 8.0, 8.0], [8.0, 4.0, 1.0], [1.0, 1.0, 1.0]], [[5.0, 2.0, 5.0], [7.0, 4.0, 7.0], [2.0, 6.0, 3.0]], [[7.0, 5.0, 6.0], [3.0, 3.0, 2.0], [7.0, 1.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 4.0, 5.0], [8.0, 1.0, 5.0], [1.0, 8.0, 1.0]], [[3.0, 6.0, 4.0], [6.0, 2.0, 4.0], [8.0, 1.0, 5.0]], [[4.0, 8.0, 3.0], [3.0, 1.0, 2.0], [4.0, 3.0, 7.0]]], [[[3.0, 4.0, 5.0], [1.0, 8.0, 3.0], [2.0, 7.0, 6.0]], [[3.0, 6.0, 8.0], [8.0, 2.0, 8.0], [3.0, 7.0, 1.0]], [[5.0, 7.0, 4.0], [7.0, 1.0, 2.0], [1.0, 1.0, 6.0]]], [[[6.0, 8.0, 8.0], [6.0, 6.0, 3.0], [1.0, 7.0, 8.0]], [[7.0, 1.0, 5.0], [2.0, 2.0, 5.0], [5.0, 6.0, 4.0]], [[6.0, 2.0, 3.0], [6.0, 7.0, 8.0], [6.0, 4.0, 2.0]]], [[[1.0, 8.0, 8.0], [8.0, 4.0, 1.0], [1.0, 1.0, 1.0]], [[5.0, 2.0, 5.0], [7.0, 4.0, 7.0], [2.0, 6.0, 3.0]], [[7.0, 5.0, 6.0], [3.0, 3.0, 2.0], [7.0, 1.0, 2.0]]]]))
9530        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9531        val=msk_val*numarray.array([[[[4.0], [7.0], [7.0]]], [[[7.0], [6.0], [7.0]]], [[[2.0], [6.0], [1.0]]], [[[1.0], [3.0], [1.0]]]])+(1.-msk_val)*numarray.array([[[[2.0], [6.0], [2.0]]], [[[8.0], [5.0], [5.0]]], [[[5.0], [5.0], [5.0]]], [[[5.0], [8.0], [3.0]]]])        val=msk_val*numarray.array([[[[4.0], [7.0], [7.0]]], [[[7.0], [6.0], [7.0]]], [[[2.0], [6.0], [1.0]]], [[[1.0], [3.0], [1.0]]]])+(1.-msk_val)*numarray.array([[[[2.0], [6.0], [2.0]]], [[[8.0], [5.0], [5.0]]], [[[5.0], [5.0], [5.0]]], [[[5.0], [8.0], [3.0]]]])
9532        arg[:,2:,:,2:]=val        arg[:,2:,:,2:]=val
9533        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9565  class Test_util_slicing_with_tagged_data Line 9565  class Test_util_slicing_with_tagged_data
9565     def test_setslice_taggedData_rank4_expandedData_ULCL(self):     def test_setslice_taggedData_rank4_expandedData_ULCL(self):
9566        arg=Data(numarray.array([[[[1.0, 6.0, 5.0], [3.0, 7.0, 1.0], [8.0, 2.0, 8.0]], [[5.0, 4.0, 7.0], [2.0, 1.0, 4.0], [3.0, 6.0, 4.0]], [[7.0, 8.0, 3.0], [7.0, 5.0, 8.0], [8.0, 4.0, 5.0]]], [[[2.0, 4.0, 6.0], [4.0, 2.0, 2.0], [4.0, 1.0, 1.0]], [[5.0, 5.0, 2.0], [5.0, 4.0, 8.0], [8.0, 1.0, 5.0]], [[2.0, 1.0, 8.0], [8.0, 4.0, 3.0], [5.0, 8.0, 8.0]]], [[[2.0, 5.0, 7.0], [2.0, 4.0, 4.0], [2.0, 1.0, 4.0]], [[1.0, 1.0, 4.0], [4.0, 3.0, 4.0], [1.0, 2.0, 8.0]], [[8.0, 1.0, 8.0], [7.0, 2.0, 5.0], [1.0, 6.0, 4.0]]], [[[8.0, 3.0, 6.0], [3.0, 4.0, 7.0], [1.0, 8.0, 2.0]], [[7.0, 1.0, 7.0], [4.0, 2.0, 6.0], [6.0, 3.0, 2.0]], [[6.0, 3.0, 8.0], [3.0, 8.0, 4.0], [8.0, 1.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 6.0, 5.0], [3.0, 7.0, 1.0], [8.0, 2.0, 8.0]], [[5.0, 4.0, 7.0], [2.0, 1.0, 4.0], [3.0, 6.0, 4.0]], [[7.0, 8.0, 3.0], [7.0, 5.0, 8.0], [8.0, 4.0, 5.0]]], [[[2.0, 4.0, 6.0], [4.0, 2.0, 2.0], [4.0, 1.0, 1.0]], [[5.0, 5.0, 2.0], [5.0, 4.0, 8.0], [8.0, 1.0, 5.0]], [[2.0, 1.0, 8.0], [8.0, 4.0, 3.0], [5.0, 8.0, 8.0]]], [[[2.0, 5.0, 7.0], [2.0, 4.0, 4.0], [2.0, 1.0, 4.0]], [[1.0, 1.0, 4.0], [4.0, 3.0, 4.0], [1.0, 2.0, 8.0]], [[8.0, 1.0, 8.0], [7.0, 2.0, 5.0], [1.0, 6.0, 4.0]]], [[[8.0, 3.0, 6.0], [3.0, 4.0, 7.0], [1.0, 8.0, 2.0]], [[7.0, 1.0, 7.0], [4.0, 2.0, 6.0], [6.0, 3.0, 2.0]], [[6.0, 3.0, 8.0], [3.0, 8.0, 4.0], [8.0, 1.0, 2.0]]]]),self.functionspace)
9567        arg.setTaggedValue(1,numarray.array([[[[4.0, 5.0, 4.0], [4.0, 7.0, 1.0], [3.0, 6.0, 2.0]], [[6.0, 7.0, 4.0], [3.0, 2.0, 7.0], [3.0, 3.0, 1.0]], [[3.0, 6.0, 3.0], [2.0, 8.0, 4.0], [6.0, 3.0, 7.0]]], [[[2.0, 2.0, 5.0], [8.0, 2.0, 4.0], [8.0, 1.0, 1.0]], [[2.0, 8.0, 5.0], [2.0, 6.0, 6.0], [1.0, 1.0, 6.0]], [[2.0, 2.0, 8.0], [8.0, 8.0, 6.0], [8.0, 5.0, 8.0]]], [[[6.0, 1.0, 6.0], [2.0, 1.0, 8.0], [3.0, 1.0, 1.0]], [[6.0, 1.0, 6.0], [8.0, 8.0, 1.0], [4.0, 7.0, 2.0]], [[1.0, 7.0, 8.0], [1.0, 3.0, 4.0], [1.0, 4.0, 8.0]]], [[[8.0, 4.0, 7.0], [1.0, 5.0, 3.0], [6.0, 4.0, 4.0]], [[4.0, 4.0, 2.0], [6.0, 4.0, 3.0], [2.0, 8.0, 6.0]], [[3.0, 5.0, 1.0], [8.0, 2.0, 2.0], [2.0, 8.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 5.0, 4.0], [4.0, 7.0, 1.0], [3.0, 6.0, 2.0]], [[6.0, 7.0, 4.0], [3.0, 2.0, 7.0], [3.0, 3.0, 1.0]], [[3.0, 6.0, 3.0], [2.0, 8.0, 4.0], [6.0, 3.0, 7.0]]], [[[2.0, 2.0, 5.0], [8.0, 2.0, 4.0], [8.0, 1.0, 1.0]], [[2.0, 8.0, 5.0], [2.0, 6.0, 6.0], [1.0, 1.0, 6.0]], [[2.0, 2.0, 8.0], [8.0, 8.0, 6.0], [8.0, 5.0, 8.0]]], [[[6.0, 1.0, 6.0], [2.0, 1.0, 8.0], [3.0, 1.0, 1.0]], [[6.0, 1.0, 6.0], [8.0, 8.0, 1.0], [4.0, 7.0, 2.0]], [[1.0, 7.0, 8.0], [1.0, 3.0, 4.0], [1.0, 4.0, 8.0]]], [[[8.0, 4.0, 7.0], [1.0, 5.0, 3.0], [6.0, 4.0, 4.0]], [[4.0, 4.0, 2.0], [6.0, 4.0, 3.0], [2.0, 8.0, 6.0]], [[3.0, 5.0, 1.0], [8.0, 2.0, 2.0], [2.0, 8.0, 3.0]]]]))
9568        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9569        val=msk_val*numarray.array([[[[3.0], [6.0], [2.0]]], [[[8.0], [1.0], [8.0]]], [[[7.0], [2.0], [7.0]]]])+(1.-msk_val)*numarray.array([[[[5.0], [6.0], [1.0]]], [[[7.0], [7.0], [2.0]]], [[[3.0], [6.0], [1.0]]]])        val=msk_val*numarray.array([[[[3.0], [6.0], [2.0]]], [[[8.0], [1.0], [8.0]]], [[[7.0], [2.0], [7.0]]]])+(1.-msk_val)*numarray.array([[[[5.0], [6.0], [1.0]]], [[[7.0], [7.0], [2.0]]], [[[3.0], [6.0], [1.0]]]])
9570        arg[:3,2:,:,2:]=val        arg[:3,2:,:,2:]=val
9571        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9603  class Test_util_slicing_with_tagged_data Line 9603  class Test_util_slicing_with_tagged_data
9603     def test_setslice_taggedData_rank4_expandedData_ULRL(self):     def test_setslice_taggedData_rank4_expandedData_ULRL(self):
9604        arg=Data(numarray.array([[[[1.0, 4.0, 8.0], [7.0, 5.0, 7.0], [8.0, 6.0, 3.0]], [[8.0, 6.0, 4.0], [7.0, 1.0, 3.0], [5.0, 8.0, 3.0]], [[5.0, 5.0, 2.0], [7.0, 7.0, 1.0], [4.0, 2.0, 1.0]]], [[[5.0, 6.0, 3.0], [3.0, 6.0, 7.0], [5.0, 8.0, 6.0]], [[6.0, 7.0, 8.0], [7.0, 2.0, 6.0], [4.0, 2.0, 6.0]], [[4.0, 5.0, 8.0], [4.0, 5.0, 5.0], [3.0, 5.0, 1.0]]], [[[1.0, 8.0, 8.0], [4.0, 5.0, 7.0], [6.0, 3.0, 6.0]], [[2.0, 7.0, 7.0], [7.0, 5.0, 2.0], [1.0, 4.0, 2.0]], [[2.0, 2.0, 8.0], [5.0, 8.0, 3.0], [6.0, 6.0, 4.0]]], [[[6.0, 6.0, 2.0], [3.0, 4.0, 7.0], [8.0, 2.0, 1.0]], [[6.0, 7.0, 4.0], [1.0, 6.0, 7.0], [5.0, 7.0, 5.0]], [[3.0, 3.0, 6.0], [5.0, 8.0, 7.0], [4.0, 6.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 4.0, 8.0], [7.0, 5.0, 7.0], [8.0, 6.0, 3.0]], [[8.0, 6.0, 4.0], [7.0, 1.0, 3.0], [5.0, 8.0, 3.0]], [[5.0, 5.0, 2.0], [7.0, 7.0, 1.0], [4.0, 2.0, 1.0]]], [[[5.0, 6.0, 3.0], [3.0, 6.0, 7.0], [5.0, 8.0, 6.0]], [[6.0, 7.0, 8.0], [7.0, 2.0, 6.0], [4.0, 2.0, 6.0]], [[4.0, 5.0, 8.0], [4.0, 5.0, 5.0], [3.0, 5.0, 1.0]]], [[[1.0, 8.0, 8.0], [4.0, 5.0, 7.0], [6.0, 3.0, 6.0]], [[2.0, 7.0, 7.0], [7.0, 5.0, 2.0], [1.0, 4.0, 2.0]], [[2.0, 2.0, 8.0], [5.0, 8.0, 3.0], [6.0, 6.0, 4.0]]], [[[6.0, 6.0, 2.0], [3.0, 4.0, 7.0], [8.0, 2.0, 1.0]], [[6.0, 7.0, 4.0], [1.0, 6.0, 7.0], [5.0, 7.0, 5.0]], [[3.0, 3.0, 6.0], [5.0, 8.0, 7.0], [4.0, 6.0, 2.0]]]]),self.functionspace)
9605        arg.setTaggedValue(1,numarray.array([[[[8.0, 7.0, 6.0], [2.0, 7.0, 1.0], [6.0, 2.0, 7.0]], [[8.0, 3.0, 2.0], [7.0, 4.0, 6.0], [5.0, 5.0, 2.0]], [[6.0, 2.0, 6.0], [6.0, 5.0, 8.0], [5.0, 4.0, 8.0]]], [[[5.0, 8.0, 3.0], [2.0, 6.0, 8.0], [5.0, 4.0, 6.0]], [[5.0, 4.0, 6.0], [7.0, 5.0, 7.0], [6.0, 3.0, 3.0]], [[6.0, 7.0, 5.0], [5.0, 6.0, 6.0], [4.0, 3.0, 8.0]]], [[[7.0, 2.0, 2.0], [6.0, 6.0, 1.0], [5.0, 7.0, 6.0]], [[3.0, 8.0, 3.0], [8.0, 3.0, 1.0], [2.0, 1.0, 1.0]], [[1.0, 7.0, 3.0], [7.0, 7.0, 6.0], [3.0, 2.0, 5.0]]], [[[6.0, 5.0, 1.0], [7.0, 6.0, 5.0], [5.0, 3.0, 4.0]], [[5.0, 4.0, 4.0], [4.0, 6.0, 7.0], [1.0, 3.0, 2.0]], [[2.0, 3.0, 5.0], [1.0, 2.0, 6.0], [7.0, 3.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 7.0, 6.0], [2.0, 7.0, 1.0], [6.0, 2.0, 7.0]], [[8.0, 3.0, 2.0], [7.0, 4.0, 6.0], [5.0, 5.0, 2.0]], [[6.0, 2.0, 6.0], [6.0, 5.0, 8.0], [5.0, 4.0, 8.0]]], [[[5.0, 8.0, 3.0], [2.0, 6.0, 8.0], [5.0, 4.0, 6.0]], [[5.0, 4.0, 6.0], [7.0, 5.0, 7.0], [6.0, 3.0, 3.0]], [[6.0, 7.0, 5.0], [5.0, 6.0, 6.0], [4.0, 3.0, 8.0]]], [[[7.0, 2.0, 2.0], [6.0, 6.0, 1.0], [5.0, 7.0, 6.0]], [[3.0, 8.0, 3.0], [8.0, 3.0, 1.0], [2.0, 1.0, 1.0]], [[1.0, 7.0, 3.0], [7.0, 7.0, 6.0], [3.0, 2.0, 5.0]]], [[[6.0, 5.0, 1.0], [7.0, 6.0, 5.0], [5.0, 3.0, 4.0]], [[5.0, 4.0, 4.0], [4.0, 6.0, 7.0], [1.0, 3.0, 2.0]], [[2.0, 3.0, 5.0], [1.0, 2.0, 6.0], [7.0, 3.0, 7.0]]]]))
9606        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9607        val=msk_val*numarray.array([[[[8.0]]], [[[3.0]]], [[[3.0]]]])+(1.-msk_val)*numarray.array([[[[7.0]]], [[[3.0]]], [[[4.0]]]])        val=msk_val*numarray.array([[[[8.0]]], [[[3.0]]], [[[3.0]]]])+(1.-msk_val)*numarray.array([[[[7.0]]], [[[3.0]]], [[[4.0]]]])
9608        arg[:3,2:,1:2,2:]=val        arg[:3,2:,1:2,2:]=val
9609        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9641  class Test_util_slicing_with_tagged_data Line 9641  class Test_util_slicing_with_tagged_data
9641     def test_setslice_taggedData_rank4_expandedData_CCLC(self):     def test_setslice_taggedData_rank4_expandedData_CCLC(self):
9642        arg=Data(numarray.array([[[[4.0, 4.0, 1.0], [8.0, 2.0, 7.0], [5.0, 2.0, 5.0]], [[5.0, 3.0, 5.0], [4.0, 8.0, 1.0], [1.0, 2.0, 6.0]], [[4.0, 8.0, 1.0], [4.0, 5.0, 3.0], [7.0, 6.0, 1.0]]], [[[2.0, 8.0, 1.0], [2.0, 2.0, 1.0], [7.0, 6.0, 6.0]], [[8.0, 8.0, 5.0], [3.0, 4.0, 7.0], [7.0, 5.0, 3.0]], [[2.0, 5.0, 5.0], [7.0, 3.0, 5.0], [6.0, 1.0, 3.0]]], [[[1.0, 2.0, 6.0], [3.0, 1.0, 3.0], [6.0, 2.0, 7.0]], [[2.0, 1.0, 5.0], [2.0, 4.0, 8.0], [6.0, 6.0, 1.0]], [[8.0, 5.0, 7.0], [2.0, 4.0, 3.0], [4.0, 8.0, 5.0]]], [[[6.0, 2.0, 7.0], [5.0, 5.0, 8.0], [6.0, 8.0, 4.0]], [[4.0, 2.0, 6.0], [7.0, 1.0, 2.0], [8.0, 1.0, 1.0]], [[8.0, 7.0, 5.0], [5.0, 2.0, 5.0], [8.0, 5.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 4.0, 1.0], [8.0, 2.0, 7.0], [5.0, 2.0, 5.0]], [[5.0, 3.0, 5.0], [4.0, 8.0, 1.0], [1.0, 2.0, 6.0]], [[4.0, 8.0, 1.0], [4.0, 5.0, 3.0], [7.0, 6.0, 1.0]]], [[[2.0, 8.0, 1.0], [2.0, 2.0, 1.0], [7.0, 6.0, 6.0]], [[8.0, 8.0, 5.0], [3.0, 4.0, 7.0], [7.0, 5.0, 3.0]], [[2.0, 5.0, 5.0], [7.0, 3.0, 5.0], [6.0, 1.0, 3.0]]], [[[1.0, 2.0, 6.0], [3.0, 1.0, 3.0], [6.0, 2.0, 7.0]], [[2.0, 1.0, 5.0], [2.0, 4.0, 8.0], [6.0, 6.0, 1.0]], [[8.0, 5.0, 7.0], [2.0, 4.0, 3.0], [4.0, 8.0, 5.0]]], [[[6.0, 2.0, 7.0], [5.0, 5.0, 8.0], [6.0, 8.0, 4.0]], [[4.0, 2.0, 6.0], [7.0, 1.0, 2.0], [8.0, 1.0, 1.0]], [[8.0, 7.0, 5.0], [5.0, 2.0, 5.0], [8.0, 5.0, 8.0]]]]),self.functionspace)
9643        arg.setTaggedValue(1,numarray.array([[[[2.0, 3.0, 3.0], [5.0, 1.0, 4.0], [2.0, 3.0, 1.0]], [[4.0, 6.0, 5.0], [2.0, 7.0, 1.0], [3.0, 3.0, 8.0]], [[3.0, 2.0, 4.0], [4.0, 3.0, 7.0], [1.0, 2.0, 4.0]]], [[[1.0, 8.0, 4.0], [1.0, 3.0, 2.0], [8.0, 1.0, 4.0]], [[8.0, 1.0, 3.0], [3.0, 7.0, 1.0], [2.0, 8.0, 3.0]], [[8.0, 8.0, 1.0], [5.0, 8.0, 5.0], [4.0, 3.0, 4.0]]], [[[2.0, 7.0, 6.0], [8.0, 2.0, 7.0], [1.0, 2.0, 2.0]], [[5.0, 6.0, 1.0], [2.0, 4.0, 1.0], [6.0, 6.0, 5.0]], [[8.0, 5.0, 2.0], [3.0, 7.0, 8.0], [2.0, 2.0, 1.0]]], [[[2.0, 8.0, 2.0], [6.0, 2.0, 8.0], [6.0, 2.0, 7.0]], [[7.0, 4.0, 5.0], [2.0, 6.0, 8.0], [3.0, 6.0, 8.0]], [[7.0, 6.0, 7.0], [1.0, 1.0, 1.0], [7.0, 8.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 3.0, 3.0], [5.0, 1.0, 4.0], [2.0, 3.0, 1.0]], [[4.0, 6.0, 5.0], [2.0, 7.0, 1.0], [3.0, 3.0, 8.0]], [[3.0, 2.0, 4.0], [4.0, 3.0, 7.0], [1.0, 2.0, 4.0]]], [[[1.0, 8.0, 4.0], [1.0, 3.0, 2.0], [8.0, 1.0, 4.0]], [[8.0, 1.0, 3.0], [3.0, 7.0, 1.0], [2.0, 8.0, 3.0]], [[8.0, 8.0, 1.0], [5.0, 8.0, 5.0], [4.0, 3.0, 4.0]]], [[[2.0, 7.0, 6.0], [8.0, 2.0, 7.0], [1.0, 2.0, 2.0]], [[5.0, 6.0, 1.0], [2.0, 4.0, 1.0], [6.0, 6.0, 5.0]], [[8.0, 5.0, 2.0], [3.0, 7.0, 8.0], [2.0, 2.0, 1.0]]], [[[2.0, 8.0, 2.0], [6.0, 2.0, 8.0], [6.0, 2.0, 7.0]], [[7.0, 4.0, 5.0], [2.0, 6.0, 8.0], [3.0, 6.0, 8.0]], [[7.0, 6.0, 7.0], [1.0, 1.0, 1.0], [7.0, 8.0, 3.0]]]]))
9644        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9645        val=msk_val*numarray.array([[[[1.0, 5.0, 4.0]], [[4.0, 6.0, 1.0]], [[4.0, 3.0, 1.0]]], [[[6.0, 1.0, 5.0]], [[2.0, 2.0, 8.0]], [[6.0, 8.0, 4.0]]], [[[4.0, 4.0, 8.0]], [[6.0, 8.0, 1.0]], [[7.0, 2.0, 8.0]]], [[[4.0, 8.0, 1.0]], [[5.0, 6.0, 8.0]], [[6.0, 3.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 6.0, 5.0]], [[5.0, 3.0, 5.0]], [[4.0, 6.0, 2.0]]], [[[1.0, 5.0, 4.0]], [[2.0, 7.0, 6.0]], [[4.0, 7.0, 2.0]]], [[[3.0, 4.0, 8.0]], [[2.0, 3.0, 4.0]], [[4.0, 6.0, 4.0]]], [[[4.0, 8.0, 6.0]], [[1.0, 7.0, 4.0]], [[7.0, 5.0, 5.0]]]])        val=msk_val*numarray.array([[[[1.0, 5.0, 4.0]], [[4.0, 6.0, 1.0]], [[4.0, 3.0, 1.0]]], [[[6.0, 1.0, 5.0]], [[2.0, 2.0, 8.0]], [[6.0, 8.0, 4.0]]], [[[4.0, 4.0, 8.0]], [[6.0, 8.0, 1.0]], [[7.0, 2.0, 8.0]]], [[[4.0, 8.0, 1.0]], [[5.0, 6.0, 8.0]], [[6.0, 3.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 6.0, 5.0]], [[5.0, 3.0, 5.0]], [[4.0, 6.0, 2.0]]], [[[1.0, 5.0, 4.0]], [[2.0, 7.0, 6.0]], [[4.0, 7.0, 2.0]]], [[[3.0, 4.0, 8.0]], [[2.0, 3.0, 4.0]], [[4.0, 6.0, 4.0]]], [[[4.0, 8.0, 6.0]], [[1.0, 7.0, 4.0]], [[7.0, 5.0, 5.0]]]])
9646        arg[:,:,2:,:]=val        arg[:,:,2:,:]=val
9647        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9679  class Test_util_slicing_with_tagged_data Line 9679  class Test_util_slicing_with_tagged_data
9679     def test_setslice_taggedData_rank4_expandedData_ULLU(self):     def test_setslice_taggedData_rank4_expandedData_ULLU(self):
9680        arg=Data(numarray.array([[[[8.0, 5.0, 1.0], [6.0, 5.0, 4.0], [6.0, 5.0, 6.0]], [[6.0, 1.0, 5.0], [6.0, 1.0, 5.0], [7.0, 1.0, 8.0]], [[2.0, 3.0, 2.0], [6.0, 2.0, 2.0], [1.0, 7.0, 8.0]]], [[[3.0, 1.0, 7.0], [5.0, 3.0, 6.0], [4.0, 6.0, 6.0]], [[2.0, 3.0, 7.0], [5.0, 6.0, 3.0], [5.0, 6.0, 6.0]], [[7.0, 7.0, 1.0], [8.0, 2.0, 1.0], [6.0, 2.0, 6.0]]], [[[4.0, 7.0, 5.0], [5.0, 7.0, 3.0], [7.0, 1.0, 3.0]], [[2.0, 2.0, 7.0], [2.0, 3.0, 8.0], [4.0, 5.0, 5.0]], [[3.0, 8.0, 2.0], [5.0, 5.0, 6.0], [7.0, 2.0, 6.0]]], [[[2.0, 7.0, 8.0], [6.0, 4.0, 3.0], [4.0, 8.0, 3.0]], [[3.0, 1.0, 4.0], [3.0, 8.0, 3.0], [1.0, 7.0, 2.0]], [[3.0, 6.0, 1.0], [4.0, 3.0, 1.0], [2.0, 2.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 5.0, 1.0], [6.0, 5.0, 4.0], [6.0, 5.0, 6.0]], [[6.0, 1.0, 5.0], [6.0, 1.0, 5.0], [7.0, 1.0, 8.0]], [[2.0, 3.0, 2.0], [6.0, 2.0, 2.0], [1.0, 7.0, 8.0]]], [[[3.0, 1.0, 7.0], [5.0, 3.0, 6.0], [4.0, 6.0, 6.0]], [[2.0, 3.0, 7.0], [5.0, 6.0, 3.0], [5.0, 6.0, 6.0]], [[7.0, 7.0, 1.0], [8.0, 2.0, 1.0], [6.0, 2.0, 6.0]]], [[[4.0, 7.0, 5.0], [5.0, 7.0, 3.0], [7.0, 1.0, 3.0]], [[2.0, 2.0, 7.0], [2.0, 3.0, 8.0], [4.0, 5.0, 5.0]], [[3.0, 8.0, 2.0], [5.0, 5.0, 6.0], [7.0, 2.0, 6.0]]], [[[2.0, 7.0, 8.0], [6.0, 4.0, 3.0], [4.0, 8.0, 3.0]], [[3.0, 1.0, 4.0], [3.0, 8.0, 3.0], [1.0, 7.0, 2.0]], [[3.0, 6.0, 1.0], [4.0, 3.0, 1.0], [2.0, 2.0, 8.0]]]]),self.functionspace)
9681        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 3.0], [3.0, 2.0, 8.0], [2.0, 4.0, 6.0]], [[6.0, 6.0, 1.0], [4.0, 4.0, 7.0], [6.0, 5.0, 2.0]], [[7.0, 2.0, 8.0], [4.0, 7.0, 4.0], [4.0, 7.0, 1.0]]], [[[8.0, 8.0, 6.0], [7.0, 7.0, 5.0], [2.0, 4.0, 5.0]], [[4.0, 4.0, 7.0], [5.0, 1.0, 8.0], [6.0, 8.0, 5.0]], [[4.0, 8.0, 6.0], [6.0, 5.0, 3.0], [7.0, 1.0, 1.0]]], [[[4.0, 5.0, 8.0], [1.0, 2.0, 4.0], [8.0, 4.0, 2.0]], [[7.0, 2.0, 1.0], [5.0, 3.0, 3.0], [5.0, 1.0, 3.0]], [[1.0, 1.0, 3.0], [8.0, 8.0, 2.0], [3.0, 1.0, 3.0]]], [[[5.0, 1.0, 5.0], [8.0, 5.0, 3.0], [2.0, 3.0, 5.0]], [[4.0, 5.0, 7.0], [1.0, 2.0, 1.0], [5.0, 6.0, 8.0]], [[5.0, 2.0, 4.0], [6.0, 8.0, 1.0], [1.0, 1.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 3.0], [3.0, 2.0, 8.0], [2.0, 4.0, 6.0]], [[6.0, 6.0, 1.0], [4.0, 4.0, 7.0], [6.0, 5.0, 2.0]], [[7.0, 2.0, 8.0], [4.0, 7.0, 4.0], [4.0, 7.0, 1.0]]], [[[8.0, 8.0, 6.0], [7.0, 7.0, 5.0], [2.0, 4.0, 5.0]], [[4.0, 4.0, 7.0], [5.0, 1.0, 8.0], [6.0, 8.0, 5.0]], [[4.0, 8.0, 6.0], [6.0, 5.0, 3.0], [7.0, 1.0, 1.0]]], [[[4.0, 5.0, 8.0], [1.0, 2.0, 4.0], [8.0, 4.0, 2.0]], [[7.0, 2.0, 1.0], [5.0, 3.0, 3.0], [5.0, 1.0, 3.0]], [[1.0, 1.0, 3.0], [8.0, 8.0, 2.0], [3.0, 1.0, 3.0]]], [[[5.0, 1.0, 5.0], [8.0, 5.0, 3.0], [2.0, 3.0, 5.0]], [[4.0, 5.0, 7.0], [1.0, 2.0, 1.0], [5.0, 6.0, 8.0]], [[5.0, 2.0, 4.0], [6.0, 8.0, 1.0], [1.0, 1.0, 6.0]]]]))
9682        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9683        val=msk_val*numarray.array([[[[3.0, 3.0]]], [[[5.0, 4.0]]], [[[8.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 6.0]]], [[[3.0, 4.0]]], [[[5.0, 6.0]]]])        val=msk_val*numarray.array([[[[3.0, 3.0]]], [[[5.0, 4.0]]], [[[8.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 6.0]]], [[[3.0, 4.0]]], [[[5.0, 6.0]]]])
9684        arg[:3,2:,2:,:2]=val        arg[:3,2:,2:,:2]=val
9685        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9717  class Test_util_slicing_with_tagged_data Line 9717  class Test_util_slicing_with_tagged_data
9717     def test_setslice_taggedData_rank4_expandedData_RPPR(self):     def test_setslice_taggedData_rank4_expandedData_RPPR(self):
9718        arg=Data(numarray.array([[[[7.0, 5.0, 6.0], [1.0, 1.0, 8.0], [6.0, 1.0, 6.0]], [[6.0, 1.0, 1.0], [8.0, 4.0, 2.0], [3.0, 7.0, 8.0]], [[8.0, 1.0, 5.0], [7.0, 4.0, 6.0], [2.0, 2.0, 4.0]]], [[[5.0, 5.0, 6.0], [8.0, 7.0, 4.0], [6.0, 5.0, 2.0]], [[7.0, 7.0, 7.0], [4.0, 6.0, 4.0], [4.0, 6.0, 6.0]], [[5.0, 4.0, 7.0], [7.0, 7.0, 6.0], [2.0, 2.0, 8.0]]], [[[5.0, 5.0, 3.0], [2.0, 6.0, 6.0], [7.0, 6.0, 2.0]], [[5.0, 5.0, 8.0], [3.0, 2.0, 5.0], [4.0, 7.0, 5.0]], [[4.0, 2.0, 5.0], [7.0, 1.0, 7.0], [6.0, 6.0, 2.0]]], [[[3.0, 5.0, 4.0], [3.0, 5.0, 8.0], [1.0, 4.0, 2.0]], [[5.0, 5.0, 1.0], [8.0, 8.0, 3.0], [2.0, 4.0, 6.0]], [[5.0, 8.0, 4.0], [7.0, 3.0, 8.0], [7.0, 5.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 5.0, 6.0], [1.0, 1.0, 8.0], [6.0, 1.0, 6.0]], [[6.0, 1.0, 1.0], [8.0, 4.0, 2.0], [3.0, 7.0, 8.0]], [[8.0, 1.0, 5.0], [7.0, 4.0, 6.0], [2.0, 2.0, 4.0]]], [[[5.0, 5.0, 6.0], [8.0, 7.0, 4.0], [6.0, 5.0, 2.0]], [[7.0, 7.0, 7.0], [4.0, 6.0, 4.0], [4.0, 6.0, 6.0]], [[5.0, 4.0, 7.0], [7.0, 7.0, 6.0], [2.0, 2.0, 8.0]]], [[[5.0, 5.0, 3.0], [2.0, 6.0, 6.0], [7.0, 6.0, 2.0]], [[5.0, 5.0, 8.0], [3.0, 2.0, 5.0], [4.0, 7.0, 5.0]], [[4.0, 2.0, 5.0], [7.0, 1.0, 7.0], [6.0, 6.0, 2.0]]], [[[3.0, 5.0, 4.0], [3.0, 5.0, 8.0], [1.0, 4.0, 2.0]], [[5.0, 5.0, 1.0], [8.0, 8.0, 3.0], [2.0, 4.0, 6.0]], [[5.0, 8.0, 4.0], [7.0, 3.0, 8.0], [7.0, 5.0, 8.0]]]]),self.functionspace)
9719        arg.setTaggedValue(1,numarray.array([[[[4.0, 7.0, 6.0], [1.0, 5.0, 3.0], [3.0, 5.0, 3.0]], [[6.0, 4.0, 6.0], [1.0, 6.0, 1.0], [4.0, 8.0, 1.0]], [[6.0, 4.0, 8.0], [4.0, 7.0, 5.0], [1.0, 4.0, 5.0]]], [[[6.0, 1.0, 5.0], [1.0, 1.0, 7.0], [3.0, 5.0, 4.0]], [[2.0, 2.0, 8.0], [6.0, 5.0, 4.0], [4.0, 6.0, 5.0]], [[4.0, 2.0, 3.0], [7.0, 4.0, 1.0], [1.0, 4.0, 2.0]]], [[[6.0, 7.0, 5.0], [5.0, 4.0, 3.0], [1.0, 3.0, 4.0]], [[1.0, 5.0, 8.0], [8.0, 4.0, 3.0], [3.0, 7.0, 3.0]], [[3.0, 4.0, 4.0], [2.0, 7.0, 5.0], [2.0, 2.0, 4.0]]], [[[7.0, 6.0, 4.0], [2.0, 6.0, 6.0], [8.0, 6.0, 7.0]], [[7.0, 1.0, 2.0], [1.0, 5.0, 7.0], [8.0, 5.0, 1.0]], [[4.0, 4.0, 4.0], [5.0, 5.0, 8.0], [6.0, 3.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 7.0, 6.0], [1.0, 5.0, 3.0], [3.0, 5.0, 3.0]], [[6.0, 4.0, 6.0], [1.0, 6.0, 1.0], [4.0, 8.0, 1.0]], [[6.0, 4.0, 8.0], [4.0, 7.0, 5.0], [1.0, 4.0, 5.0]]], [[[6.0, 1.0, 5.0], [1.0, 1.0, 7.0], [3.0, 5.0, 4.0]], [[2.0, 2.0, 8.0], [6.0, 5.0, 4.0], [4.0, 6.0, 5.0]], [[4.0, 2.0, 3.0], [7.0, 4.0, 1.0], [1.0, 4.0, 2.0]]], [[[6.0, 7.0, 5.0], [5.0, 4.0, 3.0], [1.0, 3.0, 4.0]], [[1.0, 5.0, 8.0], [8.0, 4.0, 3.0], [3.0, 7.0, 3.0]], [[3.0, 4.0, 4.0], [2.0, 7.0, 5.0], [2.0, 2.0, 4.0]]], [[[7.0, 6.0, 4.0], [2.0, 6.0, 6.0], [8.0, 6.0, 7.0]], [[7.0, 1.0, 2.0], [1.0, 5.0, 7.0], [8.0, 5.0, 1.0]], [[4.0, 4.0, 4.0], [5.0, 5.0, 8.0], [6.0, 3.0, 1.0]]]]))
9720        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9721        val=msk_val*numarray.array([[4.0], [8.0]])+(1.-msk_val)*numarray.array([[2.0], [3.0]])        val=msk_val*numarray.array([[4.0], [8.0]])+(1.-msk_val)*numarray.array([[2.0], [3.0]])
9722        arg[1:3,1,1,1:2]=val        arg[1:3,1,1,1:2]=val
9723        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9755  class Test_util_slicing_with_tagged_data Line 9755  class Test_util_slicing_with_tagged_data
9755     def test_setslice_taggedData_rank4_expandedData_LLLC(self):     def test_setslice_taggedData_rank4_expandedData_LLLC(self):
9756        arg=Data(numarray.array([[[[6.0, 2.0, 2.0], [8.0, 2.0, 3.0], [3.0, 2.0, 4.0]], [[7.0, 8.0, 2.0], [6.0, 2.0, 7.0], [4.0, 7.0, 2.0]], [[5.0, 1.0, 1.0], [6.0, 7.0, 2.0], [8.0, 5.0, 7.0]]], [[[3.0, 5.0, 8.0], [6.0, 3.0, 8.0], [2.0, 8.0, 3.0]], [[5.0, 3.0, 5.0], [6.0, 4.0, 1.0], [7.0, 7.0, 4.0]], [[8.0, 2.0, 5.0], [3.0, 1.0, 8.0], [3.0, 5.0, 4.0]]], [[[6.0, 3.0, 1.0], [5.0, 8.0, 7.0], [5.0, 3.0, 7.0]], [[7.0, 2.0, 2.0], [4.0, 1.0, 6.0], [8.0, 6.0, 8.0]], [[3.0, 4.0, 7.0], [2.0, 6.0, 2.0], [1.0, 8.0, 5.0]]], [[[1.0, 3.0, 2.0], [8.0, 4.0, 8.0], [1.0, 8.0, 1.0]], [[2.0, 5.0, 8.0], [7.0, 2.0, 8.0], [6.0, 6.0, 3.0]], [[2.0, 4.0, 8.0], [2.0, 1.0, 2.0], [5.0, 8.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[6.0, 2.0, 2.0], [8.0, 2.0, 3.0], [3.0, 2.0, 4.0]], [[7.0, 8.0, 2.0], [6.0, 2.0, 7.0], [4.0, 7.0, 2.0]], [[5.0, 1.0, 1.0], [6.0, 7.0, 2.0], [8.0, 5.0, 7.0]]], [[[3.0, 5.0, 8.0], [6.0, 3.0, 8.0], [2.0, 8.0, 3.0]], [[5.0, 3.0, 5.0], [6.0, 4.0, 1.0], [7.0, 7.0, 4.0]], [[8.0, 2.0, 5.0], [3.0, 1.0, 8.0], [3.0, 5.0, 4.0]]], [[[6.0, 3.0, 1.0], [5.0, 8.0, 7.0], [5.0, 3.0, 7.0]], [[7.0, 2.0, 2.0], [4.0, 1.0, 6.0], [8.0, 6.0, 8.0]], [[3.0, 4.0, 7.0], [2.0, 6.0, 2.0], [1.0, 8.0, 5.0]]], [[[1.0, 3.0, 2.0], [8.0, 4.0, 8.0], [1.0, 8.0, 1.0]], [[2.0, 5.0, 8.0], [7.0, 2.0, 8.0], [6.0, 6.0, 3.0]], [[2.0, 4.0, 8.0], [2.0, 1.0, 2.0], [5.0, 8.0, 5.0]]]]),self.functionspace)
9757        arg.setTaggedValue(1,numarray.array([[[[6.0, 5.0, 2.0], [1.0, 3.0, 7.0], [4.0, 6.0, 6.0]], [[5.0, 6.0, 3.0], [6.0, 2.0, 6.0], [1.0, 5.0, 5.0]], [[7.0, 6.0, 6.0], [3.0, 6.0, 5.0], [5.0, 5.0, 8.0]]], [[[1.0, 3.0, 7.0], [8.0, 6.0, 4.0], [3.0, 5.0, 4.0]], [[2.0, 2.0, 1.0], [5.0, 7.0, 8.0], [3.0, 8.0, 8.0]], [[4.0, 4.0, 8.0], [8.0, 8.0, 7.0], [5.0, 6.0, 7.0]]], [[[3.0, 6.0, 8.0], [3.0, 5.0, 8.0], [8.0, 8.0, 4.0]], [[7.0, 5.0, 5.0], [4.0, 2.0, 6.0], [5.0, 8.0, 4.0]], [[2.0, 7.0, 8.0], [6.0, 7.0, 1.0], [5.0, 3.0, 5.0]]], [[[3.0, 5.0, 3.0], [8.0, 1.0, 8.0], [4.0, 5.0, 6.0]], [[3.0, 5.0, 6.0], [4.0, 5.0, 7.0], [5.0, 5.0, 3.0]], [[3.0, 4.0, 6.0], [4.0, 4.0, 1.0], [7.0, 8.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 5.0, 2.0], [1.0, 3.0, 7.0], [4.0, 6.0, 6.0]], [[5.0, 6.0, 3.0], [6.0, 2.0, 6.0], [1.0, 5.0, 5.0]], [[7.0, 6.0, 6.0], [3.0, 6.0, 5.0], [5.0, 5.0, 8.0]]], [[[1.0, 3.0, 7.0], [8.0, 6.0, 4.0], [3.0, 5.0, 4.0]], [[2.0, 2.0, 1.0], [5.0, 7.0, 8.0], [3.0, 8.0, 8.0]], [[4.0, 4.0, 8.0], [8.0, 8.0, 7.0], [5.0, 6.0, 7.0]]], [[[3.0, 6.0, 8.0], [3.0, 5.0, 8.0], [8.0, 8.0, 4.0]], [[7.0, 5.0, 5.0], [4.0, 2.0, 6.0], [5.0, 8.0, 4.0]], [[2.0, 7.0, 8.0], [6.0, 7.0, 1.0], [5.0, 3.0, 5.0]]], [[[3.0, 5.0, 3.0], [8.0, 1.0, 8.0], [4.0, 5.0, 6.0]], [[3.0, 5.0, 6.0], [4.0, 5.0, 7.0], [5.0, 5.0, 3.0]], [[3.0, 4.0, 6.0], [4.0, 4.0, 1.0], [7.0, 8.0, 2.0]]]]))
9758        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9759        val=msk_val*numarray.array([[[[3.0, 6.0, 4.0]]], [[[5.0, 3.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 5.0, 3.0]]], [[[4.0, 1.0, 2.0]]]])        val=msk_val*numarray.array([[[[3.0, 6.0, 4.0]]], [[[5.0, 3.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 5.0, 3.0]]], [[[4.0, 1.0, 2.0]]]])
9760        arg[2:,2:,2:,:]=val        arg[2:,2:,2:,:]=val
9761        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9793  class Test_util_slicing_with_tagged_data Line 9793  class Test_util_slicing_with_tagged_data
9793     def test_setslice_taggedData_rank4_expandedData_CPLC(self):     def test_setslice_taggedData_rank4_expandedData_CPLC(self):
9794        arg=Data(numarray.array([[[[2.0, 4.0, 4.0], [7.0, 3.0, 5.0], [2.0, 5.0, 1.0]], [[4.0, 3.0, 1.0], [1.0, 5.0, 3.0], [1.0, 5.0, 3.0]], [[6.0, 8.0, 3.0], [2.0, 5.0, 6.0], [8.0, 5.0, 4.0]]], [[[8.0, 6.0, 4.0], [6.0, 7.0, 6.0], [6.0, 4.0, 6.0]], [[7.0, 8.0, 7.0], [3.0, 5.0, 7.0], [7.0, 7.0, 2.0]], [[3.0, 3.0, 8.0], [7.0, 4.0, 2.0], [5.0, 8.0, 1.0]]], [[[4.0, 2.0, 3.0], [8.0, 4.0, 8.0], [7.0, 5.0, 4.0]], [[6.0, 4.0, 6.0], [4.0, 2.0, 2.0], [3.0, 6.0, 3.0]], [[1.0, 7.0, 6.0], [2.0, 6.0, 1.0], [3.0, 4.0, 6.0]]], [[[4.0, 7.0, 1.0], [8.0, 6.0, 6.0], [3.0, 4.0, 1.0]], [[4.0, 3.0, 6.0], [5.0, 3.0, 1.0], [6.0, 6.0, 2.0]], [[5.0, 1.0, 1.0], [1.0, 8.0, 5.0], [4.0, 4.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 4.0, 4.0], [7.0, 3.0, 5.0], [2.0, 5.0, 1.0]], [[4.0, 3.0, 1.0], [1.0, 5.0, 3.0], [1.0, 5.0, 3.0]], [[6.0, 8.0, 3.0], [2.0, 5.0, 6.0], [8.0, 5.0, 4.0]]], [[[8.0, 6.0, 4.0], [6.0, 7.0, 6.0], [6.0, 4.0, 6.0]], [[7.0, 8.0, 7.0], [3.0, 5.0, 7.0], [7.0, 7.0, 2.0]], [[3.0, 3.0, 8.0], [7.0, 4.0, 2.0], [5.0, 8.0, 1.0]]], [[[4.0, 2.0, 3.0], [8.0, 4.0, 8.0], [7.0, 5.0, 4.0]], [[6.0, 4.0, 6.0], [4.0, 2.0, 2.0], [3.0, 6.0, 3.0]], [[1.0, 7.0, 6.0], [2.0, 6.0, 1.0], [3.0, 4.0, 6.0]]], [[[4.0, 7.0, 1.0], [8.0, 6.0, 6.0], [3.0, 4.0, 1.0]], [[4.0, 3.0, 6.0], [5.0, 3.0, 1.0], [6.0, 6.0, 2.0]], [[5.0, 1.0, 1.0], [1.0, 8.0, 5.0], [4.0, 4.0, 8.0]]]]),self.functionspace)
9795        arg.setTaggedValue(1,numarray.array([[[[7.0, 5.0, 3.0], [2.0, 6.0, 3.0], [7.0, 3.0, 2.0]], [[3.0, 4.0, 2.0], [3.0, 6.0, 8.0], [3.0, 1.0, 7.0]], [[7.0, 6.0, 2.0], [5.0, 3.0, 2.0], [8.0, 7.0, 1.0]]], [[[2.0, 6.0, 7.0], [6.0, 7.0, 6.0], [3.0, 7.0, 6.0]], [[8.0, 6.0, 7.0], [8.0, 3.0, 4.0], [3.0, 8.0, 4.0]], [[8.0, 2.0, 1.0], [5.0, 4.0, 4.0], [6.0, 1.0, 3.0]]], [[[3.0, 2.0, 3.0], [4.0, 8.0, 2.0], [1.0, 2.0, 2.0]], [[8.0, 8.0, 6.0], [5.0, 7.0, 1.0], [2.0, 8.0, 7.0]], [[8.0, 2.0, 5.0], [3.0, 8.0, 2.0], [4.0, 7.0, 6.0]]], [[[4.0, 7.0, 1.0], [6.0, 7.0, 4.0], [2.0, 8.0, 1.0]], [[2.0, 1.0, 8.0], [2.0, 1.0, 1.0], [1.0, 5.0, 8.0]], [[5.0, 7.0, 5.0], [7.0, 4.0, 2.0], [3.0, 1.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 5.0, 3.0], [2.0, 6.0, 3.0], [7.0, 3.0, 2.0]], [[3.0, 4.0, 2.0], [3.0, 6.0, 8.0], [3.0, 1.0, 7.0]], [[7.0, 6.0, 2.0], [5.0, 3.0, 2.0], [8.0, 7.0, 1.0]]], [[[2.0, 6.0, 7.0], [6.0, 7.0, 6.0], [3.0, 7.0, 6.0]], [[8.0, 6.0, 7.0], [8.0, 3.0, 4.0], [3.0, 8.0, 4.0]], [[8.0, 2.0, 1.0], [5.0, 4.0, 4.0], [6.0, 1.0, 3.0]]], [[[3.0, 2.0, 3.0], [4.0, 8.0, 2.0], [1.0, 2.0, 2.0]], [[8.0, 8.0, 6.0], [5.0, 7.0, 1.0], [2.0, 8.0, 7.0]], [[8.0, 2.0, 5.0], [3.0, 8.0, 2.0], [4.0, 7.0, 6.0]]], [[[4.0, 7.0, 1.0], [6.0, 7.0, 4.0], [2.0, 8.0, 1.0]], [[2.0, 1.0, 8.0], [2.0, 1.0, 1.0], [1.0, 5.0, 8.0]], [[5.0, 7.0, 5.0], [7.0, 4.0, 2.0], [3.0, 1.0, 7.0]]]]))
9796        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9797        val=msk_val*numarray.array([[[5.0, 5.0, 6.0]], [[4.0, 4.0, 3.0]], [[1.0, 1.0, 8.0]], [[8.0, 1.0, 6.0]]])+(1.-msk_val)*numarray.array([[[7.0, 7.0, 7.0]], [[2.0, 6.0, 3.0]], [[3.0, 3.0, 4.0]], [[4.0, 5.0, 8.0]]])        val=msk_val*numarray.array([[[5.0, 5.0, 6.0]], [[4.0, 4.0, 3.0]], [[1.0, 1.0, 8.0]], [[8.0, 1.0, 6.0]]])+(1.-msk_val)*numarray.array([[[7.0, 7.0, 7.0]], [[2.0, 6.0, 3.0]], [[3.0, 3.0, 4.0]], [[4.0, 5.0, 8.0]]])
9798        arg[:,1,2:,:]=val        arg[:,1,2:,:]=val
9799        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9831  class Test_util_slicing_with_tagged_data Line 9831  class Test_util_slicing_with_tagged_data
9831     def test_setslice_taggedData_rank4_expandedData_UUCL(self):     def test_setslice_taggedData_rank4_expandedData_UUCL(self):
9832        arg=Data(numarray.array([[[[2.0, 2.0, 6.0], [6.0, 7.0, 4.0], [4.0, 1.0, 7.0]], [[5.0, 8.0, 8.0], [1.0, 7.0, 3.0], [5.0, 3.0, 5.0]], [[8.0, 4.0, 8.0], [1.0, 3.0, 5.0], [1.0, 7.0, 7.0]]], [[[1.0, 7.0, 3.0], [8.0, 3.0, 4.0], [1.0, 2.0, 5.0]], [[1.0, 5.0, 2.0], [3.0, 1.0, 4.0], [1.0, 4.0, 5.0]], [[7.0, 1.0, 8.0], [2.0, 3.0, 3.0], [8.0, 4.0, 4.0]]], [[[7.0, 5.0, 8.0], [1.0, 7.0, 3.0], [5.0, 7.0, 4.0]], [[4.0, 1.0, 2.0], [6.0, 4.0, 7.0], [5.0, 3.0, 3.0]], [[6.0, 8.0, 6.0], [1.0, 2.0, 5.0], [7.0, 6.0, 6.0]]], [[[6.0, 3.0, 3.0], [8.0, 1.0, 2.0], [8.0, 8.0, 3.0]], [[3.0, 3.0, 6.0], [2.0, 3.0, 4.0], [8.0, 5.0, 4.0]], [[1.0, 1.0, 5.0], [1.0, 6.0, 6.0], [6.0, 5.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 2.0, 6.0], [6.0, 7.0, 4.0], [4.0, 1.0, 7.0]], [[5.0, 8.0, 8.0], [1.0, 7.0, 3.0], [5.0, 3.0, 5.0]], [[8.0, 4.0, 8.0], [1.0, 3.0, 5.0], [1.0, 7.0, 7.0]]], [[[1.0, 7.0, 3.0], [8.0, 3.0, 4.0], [1.0, 2.0, 5.0]], [[1.0, 5.0, 2.0], [3.0, 1.0, 4.0], [1.0, 4.0, 5.0]], [[7.0, 1.0, 8.0], [2.0, 3.0, 3.0], [8.0, 4.0, 4.0]]], [[[7.0, 5.0, 8.0], [1.0, 7.0, 3.0], [5.0, 7.0, 4.0]], [[4.0, 1.0, 2.0], [6.0, 4.0, 7.0], [5.0, 3.0, 3.0]], [[6.0, 8.0, 6.0], [1.0, 2.0, 5.0], [7.0, 6.0, 6.0]]], [[[6.0, 3.0, 3.0], [8.0, 1.0, 2.0], [8.0, 8.0, 3.0]], [[3.0, 3.0, 6.0], [2.0, 3.0, 4.0], [8.0, 5.0, 4.0]], [[1.0, 1.0, 5.0], [1.0, 6.0, 6.0], [6.0, 5.0, 3.0]]]]),self.functionspace)
9833        arg.setTaggedValue(1,numarray.array([[[[2.0, 5.0, 6.0], [1.0, 6.0, 1.0], [1.0, 7.0, 2.0]], [[6.0, 7.0, 2.0], [3.0, 3.0, 2.0], [8.0, 3.0, 1.0]], [[1.0, 8.0, 1.0], [4.0, 5.0, 5.0], [6.0, 8.0, 5.0]]], [[[4.0, 5.0, 6.0], [2.0, 7.0, 5.0], [8.0, 4.0, 8.0]], [[5.0, 1.0, 3.0], [5.0, 1.0, 2.0], [3.0, 4.0, 1.0]], [[7.0, 6.0, 4.0], [1.0, 2.0, 2.0], [4.0, 4.0, 4.0]]], [[[7.0, 6.0, 5.0], [1.0, 8.0, 2.0], [1.0, 6.0, 3.0]], [[2.0, 4.0, 5.0], [1.0, 7.0, 8.0], [2.0, 8.0, 4.0]], [[5.0, 1.0, 7.0], [1.0, 6.0, 2.0], [4.0, 3.0, 2.0]]], [[[2.0, 8.0, 1.0], [3.0, 1.0, 4.0], [5.0, 5.0, 2.0]], [[4.0, 6.0, 4.0], [4.0, 6.0, 4.0], [6.0, 1.0, 5.0]], [[8.0, 1.0, 5.0], [5.0, 6.0, 2.0], [8.0, 1.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 5.0, 6.0], [1.0, 6.0, 1.0], [1.0, 7.0, 2.0]], [[6.0, 7.0, 2.0], [3.0, 3.0, 2.0], [8.0, 3.0, 1.0]], [[1.0, 8.0, 1.0], [4.0, 5.0, 5.0], [6.0, 8.0, 5.0]]], [[[4.0, 5.0, 6.0], [2.0, 7.0, 5.0], [8.0, 4.0, 8.0]], [[5.0, 1.0, 3.0], [5.0, 1.0, 2.0], [3.0, 4.0, 1.0]], [[7.0, 6.0, 4.0], [1.0, 2.0, 2.0], [4.0, 4.0, 4.0]]], [[[7.0, 6.0, 5.0], [1.0, 8.0, 2.0], [1.0, 6.0, 3.0]], [[2.0, 4.0, 5.0], [1.0, 7.0, 8.0], [2.0, 8.0, 4.0]], [[5.0, 1.0, 7.0], [1.0, 6.0, 2.0], [4.0, 3.0, 2.0]]], [[[2.0, 8.0, 1.0], [3.0, 1.0, 4.0], [5.0, 5.0, 2.0]], [[4.0, 6.0, 4.0], [4.0, 6.0, 4.0], [6.0, 1.0, 5.0]], [[8.0, 1.0, 5.0], [5.0, 6.0, 2.0], [8.0, 1.0, 4.0]]]]))
9834        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9835        val=msk_val*numarray.array([[[[4.0], [1.0], [5.0]], [[4.0], [1.0], [5.0]]], [[[1.0], [8.0], [1.0]], [[7.0], [4.0], [7.0]]], [[[6.0], [6.0], [7.0]], [[7.0], [2.0], [2.0]]]])+(1.-msk_val)*numarray.array([[[[1.0], [6.0], [3.0]], [[6.0], [8.0], [3.0]]], [[[1.0], [7.0], [7.0]], [[1.0], [8.0], [2.0]]], [[[2.0], [1.0], [1.0]], [[6.0], [8.0], [1.0]]]])        val=msk_val*numarray.array([[[[4.0], [1.0], [5.0]], [[4.0], [1.0], [5.0]]], [[[1.0], [8.0], [1.0]], [[7.0], [4.0], [7.0]]], [[[6.0], [6.0], [7.0]], [[7.0], [2.0], [2.0]]]])+(1.-msk_val)*numarray.array([[[[1.0], [6.0], [3.0]], [[6.0], [8.0], [3.0]]], [[[1.0], [7.0], [7.0]], [[1.0], [8.0], [2.0]]], [[[2.0], [1.0], [1.0]], [[6.0], [8.0], [1.0]]]])
9836        arg[:3,:2,:,2:]=val        arg[:3,:2,:,2:]=val
9837        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9869  class Test_util_slicing_with_tagged_data Line 9869  class Test_util_slicing_with_tagged_data
9869     def test_setslice_taggedData_rank4_expandedData_RRRR(self):     def test_setslice_taggedData_rank4_expandedData_RRRR(self):
9870        arg=Data(numarray.array([[[[1.0, 7.0, 4.0], [2.0, 4.0, 3.0], [1.0, 6.0, 8.0]], [[1.0, 3.0, 5.0], [7.0, 6.0, 2.0], [7.0, 4.0, 7.0]], [[6.0, 2.0, 7.0], [5.0, 7.0, 8.0], [3.0, 7.0, 3.0]]], [[[4.0, 8.0, 4.0], [2.0, 5.0, 5.0], [7.0, 4.0, 5.0]], [[8.0, 1.0, 3.0], [7.0, 7.0, 6.0], [5.0, 7.0, 7.0]], [[5.0, 8.0, 8.0], [6.0, 1.0, 3.0], [5.0, 4.0, 3.0]]], [[[6.0, 7.0, 3.0], [4.0, 5.0, 3.0], [4.0, 8.0, 8.0]], [[3.0, 4.0, 6.0], [2.0, 4.0, 4.0], [3.0, 8.0, 3.0]], [[5.0, 6.0, 8.0], [3.0, 8.0, 4.0], [8.0, 6.0, 7.0]]], [[[7.0, 4.0, 7.0], [7.0, 4.0, 5.0], [8.0, 1.0, 2.0]], [[1.0, 7.0, 5.0], [7.0, 5.0, 8.0], [6.0, 4.0, 1.0]], [[3.0, 7.0, 8.0], [7.0, 1.0, 1.0], [2.0, 5.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 7.0, 4.0], [2.0, 4.0, 3.0], [1.0, 6.0, 8.0]], [[1.0, 3.0, 5.0], [7.0, 6.0, 2.0], [7.0, 4.0, 7.0]], [[6.0, 2.0, 7.0], [5.0, 7.0, 8.0], [3.0, 7.0, 3.0]]], [[[4.0, 8.0, 4.0], [2.0, 5.0, 5.0], [7.0, 4.0, 5.0]], [[8.0, 1.0, 3.0], [7.0, 7.0, 6.0], [5.0, 7.0, 7.0]], [[5.0, 8.0, 8.0], [6.0, 1.0, 3.0], [5.0, 4.0, 3.0]]], [[[6.0, 7.0, 3.0], [4.0, 5.0, 3.0], [4.0, 8.0, 8.0]], [[3.0, 4.0, 6.0], [2.0, 4.0, 4.0], [3.0, 8.0, 3.0]], [[5.0, 6.0, 8.0], [3.0, 8.0, 4.0], [8.0, 6.0, 7.0]]], [[[7.0, 4.0, 7.0], [7.0, 4.0, 5.0], [8.0, 1.0, 2.0]], [[1.0, 7.0, 5.0], [7.0, 5.0, 8.0], [6.0, 4.0, 1.0]], [[3.0, 7.0, 8.0], [7.0, 1.0, 1.0], [2.0, 5.0, 3.0]]]]),self.functionspace)
9871        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 2.0], [4.0, 3.0, 5.0], [4.0, 8.0, 7.0]], [[7.0, 1.0, 2.0], [4.0, 7.0, 6.0], [1.0, 1.0, 4.0]], [[4.0, 5.0, 7.0], [3.0, 4.0, 1.0], [4.0, 2.0, 8.0]]], [[[1.0, 1.0, 7.0], [2.0, 1.0, 1.0], [4.0, 1.0, 6.0]], [[3.0, 8.0, 2.0], [8.0, 6.0, 4.0], [7.0, 3.0, 4.0]], [[3.0, 7.0, 7.0], [5.0, 1.0, 6.0], [6.0, 1.0, 5.0]]], [[[5.0, 6.0, 1.0], [6.0, 6.0, 7.0], [6.0, 2.0, 8.0]], [[3.0, 2.0, 5.0], [6.0, 4.0, 6.0], [7.0, 6.0, 5.0]], [[1.0, 3.0, 5.0], [7.0, 7.0, 8.0], [4.0, 7.0, 5.0]]], [[[7.0, 7.0, 1.0], [4.0, 1.0, 7.0], [3.0, 3.0, 7.0]], [[3.0, 7.0, 1.0], [1.0, 2.0, 3.0], [3.0, 5.0, 4.0]], [[6.0, 7.0, 4.0], [6.0, 5.0, 7.0], [1.0, 8.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 2.0], [4.0, 3.0, 5.0], [4.0, 8.0, 7.0]], [[7.0, 1.0, 2.0], [4.0, 7.0, 6.0], [1.0, 1.0, 4.0]], [[4.0, 5.0, 7.0], [3.0, 4.0, 1.0], [4.0, 2.0, 8.0]]], [[[1.0, 1.0, 7.0], [2.0, 1.0, 1.0], [4.0, 1.0, 6.0]], [[3.0, 8.0, 2.0], [8.0, 6.0, 4.0], [7.0, 3.0, 4.0]], [[3.0, 7.0, 7.0], [5.0, 1.0, 6.0], [6.0, 1.0, 5.0]]], [[[5.0, 6.0, 1.0], [6.0, 6.0, 7.0], [6.0, 2.0, 8.0]], [[3.0, 2.0, 5.0], [6.0, 4.0, 6.0], [7.0, 6.0, 5.0]], [[1.0, 3.0, 5.0], [7.0, 7.0, 8.0], [4.0, 7.0, 5.0]]], [[[7.0, 7.0, 1.0], [4.0, 1.0, 7.0], [3.0, 3.0, 7.0]], [[3.0, 7.0, 1.0], [1.0, 2.0, 3.0], [3.0, 5.0, 4.0]], [[6.0, 7.0, 4.0], [6.0, 5.0, 7.0], [1.0, 8.0, 8.0]]]]))
9872        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9873        val=msk_val*numarray.array([[[[7.0]]], [[[2.0]]]])+(1.-msk_val)*numarray.array([[[[8.0]]], [[[3.0]]]])        val=msk_val*numarray.array([[[[7.0]]], [[[2.0]]]])+(1.-msk_val)*numarray.array([[[[8.0]]], [[[3.0]]]])
9874        arg[1:3,1:2,1:2,1:2]=val        arg[1:3,1:2,1:2,1:2]=val
9875        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9907  class Test_util_slicing_with_tagged_data Line 9907  class Test_util_slicing_with_tagged_data
9907     def test_setslice_taggedData_rank4_expandedData_RPPL(self):     def test_setslice_taggedData_rank4_expandedData_RPPL(self):
9908        arg=Data(numarray.array([[[[2.0, 1.0, 4.0], [1.0, 1.0, 8.0], [6.0, 6.0, 4.0]], [[8.0, 4.0, 1.0], [4.0, 7.0, 4.0], [7.0, 5.0, 4.0]], [[2.0, 2.0, 2.0], [8.0, 3.0, 2.0], [1.0, 7.0, 6.0]]], [[[2.0, 8.0, 2.0], [3.0, 1.0, 6.0], [7.0, 5.0, 8.0]], [[5.0, 2.0, 8.0], [2.0, 6.0, 1.0], [3.0, 5.0, 2.0]], [[2.0, 1.0, 7.0], [3.0, 6.0, 8.0], [1.0, 3.0, 1.0]]], [[[1.0, 4.0, 7.0], [3.0, 7.0, 1.0], [7.0, 2.0, 7.0]], [[6.0, 1.0, 8.0], [8.0, 2.0, 2.0], [4.0, 5.0, 4.0]], [[2.0, 6.0, 7.0], [6.0, 7.0, 4.0], [2.0, 4.0, 4.0]]], [[[5.0, 1.0, 7.0], [4.0, 4.0, 8.0], [3.0, 7.0, 3.0]], [[4.0, 1.0, 3.0], [8.0, 2.0, 5.0], [8.0, 6.0, 4.0]], [[4.0, 3.0, 4.0], [5.0, 5.0, 4.0], [3.0, 6.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 1.0, 4.0], [1.0, 1.0, 8.0], [6.0, 6.0, 4.0]], [[8.0, 4.0, 1.0], [4.0, 7.0, 4.0], [7.0, 5.0, 4.0]], [[2.0, 2.0, 2.0], [8.0, 3.0, 2.0], [1.0, 7.0, 6.0]]], [[[2.0, 8.0, 2.0], [3.0, 1.0, 6.0], [7.0, 5.0, 8.0]], [[5.0, 2.0, 8.0], [2.0, 6.0, 1.0], [3.0, 5.0, 2.0]], [[2.0, 1.0, 7.0], [3.0, 6.0, 8.0], [1.0, 3.0, 1.0]]], [[[1.0, 4.0, 7.0], [3.0, 7.0, 1.0], [7.0, 2.0, 7.0]], [[6.0, 1.0, 8.0], [8.0, 2.0, 2.0], [4.0, 5.0, 4.0]], [[2.0, 6.0, 7.0], [6.0, 7.0, 4.0], [2.0, 4.0, 4.0]]], [[[5.0, 1.0, 7.0], [4.0, 4.0, 8.0], [3.0, 7.0, 3.0]], [[4.0, 1.0, 3.0], [8.0, 2.0, 5.0], [8.0, 6.0, 4.0]], [[4.0, 3.0, 4.0], [5.0, 5.0, 4.0], [3.0, 6.0, 2.0]]]]),self.functionspace)
9909        arg.setTaggedValue(1,numarray.array([[[[1.0, 3.0, 5.0], [6.0, 3.0, 7.0], [4.0, 4.0, 4.0]], [[6.0, 2.0, 5.0], [3.0, 8.0, 5.0], [8.0, 6.0, 4.0]], [[8.0, 6.0, 1.0], [6.0, 6.0, 2.0], [6.0, 4.0, 7.0]]], [[[3.0, 1.0, 8.0], [7.0, 2.0, 3.0], [2.0, 6.0, 8.0]], [[4.0, 6.0, 5.0], [6.0, 2.0, 8.0], [7.0, 5.0, 2.0]], [[7.0, 4.0, 2.0], [4.0, 4.0, 7.0], [8.0, 5.0, 6.0]]], [[[3.0, 4.0, 4.0], [2.0, 1.0, 5.0], [2.0, 4.0, 6.0]], [[8.0, 5.0, 4.0], [7.0, 6.0, 4.0], [2.0, 7.0, 1.0]], [[7.0, 5.0, 6.0], [7.0, 2.0, 8.0], [2.0, 5.0, 3.0]]], [[[3.0, 7.0, 1.0], [8.0, 1.0, 4.0], [5.0, 1.0, 8.0]], [[8.0, 2.0, 1.0], [8.0, 8.0, 3.0], [7.0, 3.0, 4.0]], [[5.0, 1.0, 4.0], [1.0, 8.0, 5.0], [5.0, 7.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 3.0, 5.0], [6.0, 3.0, 7.0], [4.0, 4.0, 4.0]], [[6.0, 2.0, 5.0], [3.0, 8.0, 5.0], [8.0, 6.0, 4.0]], [[8.0, 6.0, 1.0], [6.0, 6.0, 2.0], [6.0, 4.0, 7.0]]], [[[3.0, 1.0, 8.0], [7.0, 2.0, 3.0], [2.0, 6.0, 8.0]], [[4.0, 6.0, 5.0], [6.0, 2.0, 8.0], [7.0, 5.0, 2.0]], [[7.0, 4.0, 2.0], [4.0, 4.0, 7.0], [8.0, 5.0, 6.0]]], [[[3.0, 4.0, 4.0], [2.0, 1.0, 5.0], [2.0, 4.0, 6.0]], [[8.0, 5.0, 4.0], [7.0, 6.0, 4.0], [2.0, 7.0, 1.0]], [[7.0, 5.0, 6.0], [7.0, 2.0, 8.0], [2.0, 5.0, 3.0]]], [[[3.0, 7.0, 1.0], [8.0, 1.0, 4.0], [5.0, 1.0, 8.0]], [[8.0, 2.0, 1.0], [8.0, 8.0, 3.0], [7.0, 3.0, 4.0]], [[5.0, 1.0, 4.0], [1.0, 8.0, 5.0], [5.0, 7.0, 8.0]]]]))
9910        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9911        val=msk_val*numarray.array([[8.0], [3.0]])+(1.-msk_val)*numarray.array([[5.0], [4.0]])        val=msk_val*numarray.array([[8.0], [3.0]])+(1.-msk_val)*numarray.array([[5.0], [4.0]])
9912        arg[1:3,1,1,2:]=val        arg[1:3,1,1,2:]=val
9913        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9945  class Test_util_slicing_with_tagged_data Line 9945  class Test_util_slicing_with_tagged_data
9945     def test_setslice_taggedData_rank4_expandedData_PRRN(self):     def test_setslice_taggedData_rank4_expandedData_PRRN(self):
9946        arg=Data(numarray.array([[[[5.0, 5.0, 7.0], [3.0, 4.0, 2.0], [2.0, 6.0, 4.0]], [[8.0, 7.0, 2.0], [3.0, 2.0, 2.0], [7.0, 6.0, 1.0]], [[5.0, 5.0, 4.0], [5.0, 4.0, 5.0], [6.0, 4.0, 8.0]]], [[[2.0, 2.0, 6.0], [2.0, 3.0, 1.0], [4.0, 3.0, 3.0]], [[8.0, 2.0, 2.0], [2.0, 3.0, 3.0], [4.0, 1.0, 6.0]], [[2.0, 2.0, 3.0], [3.0, 3.0, 2.0], [5.0, 7.0, 7.0]]], [[[3.0, 6.0, 2.0], [2.0, 4.0, 3.0], [1.0, 2.0, 8.0]], [[1.0, 1.0, 5.0], [2.0, 1.0, 8.0], [2.0, 2.0, 5.0]], [[7.0, 5.0, 8.0], [1.0, 3.0, 7.0], [1.0, 4.0, 4.0]]], [[[5.0, 3.0, 7.0], [5.0, 1.0, 2.0], [5.0, 8.0, 3.0]], [[7.0, 8.0, 6.0], [3.0, 7.0, 5.0], [4.0, 3.0, 8.0]], [[8.0, 4.0, 5.0], [5.0, 7.0, 4.0], [3.0, 7.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 5.0, 7.0], [3.0, 4.0, 2.0], [2.0, 6.0, 4.0]], [[8.0, 7.0, 2.0], [3.0, 2.0, 2.0], [7.0, 6.0, 1.0]], [[5.0, 5.0, 4.0], [5.0, 4.0, 5.0], [6.0, 4.0, 8.0]]], [[[2.0, 2.0, 6.0], [2.0, 3.0, 1.0], [4.0, 3.0, 3.0]], [[8.0, 2.0, 2.0], [2.0, 3.0, 3.0], [4.0, 1.0, 6.0]], [[2.0, 2.0, 3.0], [3.0, 3.0, 2.0], [5.0, 7.0, 7.0]]], [[[3.0, 6.0, 2.0], [2.0, 4.0, 3.0], [1.0, 2.0, 8.0]], [[1.0, 1.0, 5.0], [2.0, 1.0, 8.0], [2.0, 2.0, 5.0]], [[7.0, 5.0, 8.0], [1.0, 3.0, 7.0], [1.0, 4.0, 4.0]]], [[[5.0, 3.0, 7.0], [5.0, 1.0, 2.0], [5.0, 8.0, 3.0]], [[7.0, 8.0, 6.0], [3.0, 7.0, 5.0], [4.0, 3.0, 8.0]], [[8.0, 4.0, 5.0], [5.0, 7.0, 4.0], [3.0, 7.0, 4.0]]]]),self.functionspace)
9947        arg.setTaggedValue(1,numarray.array([[[[7.0, 5.0, 6.0], [7.0, 7.0, 5.0], [8.0, 1.0, 2.0]], [[1.0, 4.0, 4.0], [4.0, 7.0, 8.0], [3.0, 4.0, 7.0]], [[6.0, 5.0, 1.0], [7.0, 2.0, 7.0], [2.0, 8.0, 8.0]]], [[[5.0, 6.0, 6.0], [1.0, 6.0, 7.0], [2.0, 1.0, 5.0]], [[6.0, 3.0, 8.0], [4.0, 3.0, 5.0], [1.0, 8.0, 7.0]], [[8.0, 6.0, 5.0], [3.0, 3.0, 8.0], [6.0, 4.0, 8.0]]], [[[4.0, 3.0, 3.0], [1.0, 5.0, 8.0], [6.0, 8.0, 8.0]], [[8.0, 6.0, 3.0], [2.0, 3.0, 2.0], [1.0, 8.0, 6.0]], [[5.0, 3.0, 7.0], [4.0, 5.0, 8.0], [8.0, 3.0, 4.0]]], [[[6.0, 2.0, 3.0], [8.0, 2.0, 7.0], [7.0, 1.0, 7.0]], [[7.0, 8.0, 6.0], [5.0, 5.0, 5.0], [8.0, 5.0, 1.0]], [[7.0, 2.0, 5.0], [6.0, 4.0, 1.0], [6.0, 1.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 5.0, 6.0], [7.0, 7.0, 5.0], [8.0, 1.0, 2.0]], [[1.0, 4.0, 4.0], [4.0, 7.0, 8.0], [3.0, 4.0, 7.0]], [[6.0, 5.0, 1.0], [7.0, 2.0, 7.0], [2.0, 8.0, 8.0]]], [[[5.0, 6.0, 6.0], [1.0, 6.0, 7.0], [2.0, 1.0, 5.0]], [[6.0, 3.0, 8.0], [4.0, 3.0, 5.0], [1.0, 8.0, 7.0]], [[8.0, 6.0, 5.0], [3.0, 3.0, 8.0], [6.0, 4.0, 8.0]]], [[[4.0, 3.0, 3.0], [1.0, 5.0, 8.0], [6.0, 8.0, 8.0]], [[8.0, 6.0, 3.0], [2.0, 3.0, 2.0], [1.0, 8.0, 6.0]], [[5.0, 3.0, 7.0], [4.0, 5.0, 8.0], [8.0, 3.0, 4.0]]], [[[6.0, 2.0, 3.0], [8.0, 2.0, 7.0], [7.0, 1.0, 7.0]], [[7.0, 8.0, 6.0], [5.0, 5.0, 5.0], [8.0, 5.0, 1.0]], [[7.0, 2.0, 5.0], [6.0, 4.0, 1.0], [6.0, 1.0, 8.0]]]]))
9948        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9949        val=msk_val*numarray.array([[[8.0, 1.0, 6.0]]])+(1.-msk_val)*numarray.array([[[8.0, 6.0, 1.0]]])        val=msk_val*numarray.array([[[8.0, 1.0, 6.0]]])+(1.-msk_val)*numarray.array([[[8.0, 6.0, 1.0]]])
9950        arg[2,1:2,1:2]=val        arg[2,1:2,1:2]=val
9951        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 9983  class Test_util_slicing_with_tagged_data Line 9983  class Test_util_slicing_with_tagged_data
9983     def test_setslice_taggedData_rank4_expandedData_RPUU(self):     def test_setslice_taggedData_rank4_expandedData_RPUU(self):
9984        arg=Data(numarray.array([[[[8.0, 1.0, 4.0], [7.0, 7.0, 3.0], [2.0, 2.0, 3.0]], [[4.0, 8.0, 3.0], [4.0, 2.0, 3.0], [8.0, 4.0, 1.0]], [[5.0, 3.0, 8.0], [2.0, 2.0, 6.0], [1.0, 3.0, 7.0]]], [[[8.0, 1.0, 4.0], [1.0, 1.0, 2.0], [7.0, 8.0, 1.0]], [[1.0, 4.0, 7.0], [6.0, 3.0, 6.0], [2.0, 6.0, 5.0]], [[6.0, 2.0, 7.0], [1.0, 4.0, 8.0], [6.0, 6.0, 7.0]]], [[[1.0, 2.0, 3.0], [2.0, 1.0, 5.0], [2.0, 8.0, 7.0]], [[8.0, 5.0, 6.0], [2.0, 1.0, 1.0], [6.0, 4.0, 2.0]], [[4.0, 5.0, 7.0], [4.0, 4.0, 2.0], [6.0, 4.0, 1.0]]], [[[1.0, 7.0, 3.0], [6.0, 3.0, 3.0], [2.0, 6.0, 8.0]], [[3.0, 1.0, 3.0], [2.0, 4.0, 4.0], [7.0, 3.0, 5.0]], [[6.0, 6.0, 5.0], [4.0, 6.0, 6.0], [7.0, 5.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 1.0, 4.0], [7.0, 7.0, 3.0], [2.0, 2.0, 3.0]], [[4.0, 8.0, 3.0], [4.0, 2.0, 3.0], [8.0, 4.0, 1.0]], [[5.0, 3.0, 8.0], [2.0, 2.0, 6.0], [1.0, 3.0, 7.0]]], [[[8.0, 1.0, 4.0], [1.0, 1.0, 2.0], [7.0, 8.0, 1.0]], [[1.0, 4.0, 7.0], [6.0, 3.0, 6.0], [2.0, 6.0, 5.0]], [[6.0, 2.0, 7.0], [1.0, 4.0, 8.0], [6.0, 6.0, 7.0]]], [[[1.0, 2.0, 3.0], [2.0, 1.0, 5.0], [2.0, 8.0, 7.0]], [[8.0, 5.0, 6.0], [2.0, 1.0, 1.0], [6.0, 4.0, 2.0]], [[4.0, 5.0, 7.0], [4.0, 4.0, 2.0], [6.0, 4.0, 1.0]]], [[[1.0, 7.0, 3.0], [6.0, 3.0, 3.0], [2.0, 6.0, 8.0]], [[3.0, 1.0, 3.0], [2.0, 4.0, 4.0], [7.0, 3.0, 5.0]], [[6.0, 6.0, 5.0], [4.0, 6.0, 6.0], [7.0, 5.0, 1.0]]]]),self.functionspace)
9985        arg.setTaggedValue(1,numarray.array([[[[2.0, 3.0, 6.0], [8.0, 1.0, 5.0], [8.0, 6.0, 6.0]], [[7.0, 4.0, 1.0], [3.0, 1.0, 3.0], [8.0, 6.0, 2.0]], [[1.0, 1.0, 7.0], [2.0, 8.0, 7.0], [3.0, 5.0, 7.0]]], [[[5.0, 8.0, 7.0], [1.0, 7.0, 1.0], [8.0, 2.0, 2.0]], [[3.0, 4.0, 2.0], [2.0, 7.0, 4.0], [8.0, 2.0, 8.0]], [[1.0, 7.0, 1.0], [1.0, 1.0, 3.0], [5.0, 3.0, 8.0]]], [[[4.0, 6.0, 3.0], [7.0, 2.0, 8.0], [4.0, 4.0, 8.0]], [[3.0, 4.0, 4.0], [2.0, 3.0, 5.0], [8.0, 7.0, 7.0]], [[1.0, 3.0, 6.0], [3.0, 4.0, 3.0], [7.0, 4.0, 2.0]]], [[[3.0, 4.0, 8.0], [5.0, 4.0, 2.0], [6.0, 1.0, 1.0]], [[7.0, 1.0, 5.0], [3.0, 6.0, 1.0], [1.0, 4.0, 7.0]], [[5.0, 4.0, 3.0], [3.0, 8.0, 1.0], [3.0, 4.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 3.0, 6.0], [8.0, 1.0, 5.0], [8.0, 6.0, 6.0]], [[7.0, 4.0, 1.0], [3.0, 1.0, 3.0], [8.0, 6.0, 2.0]], [[1.0, 1.0, 7.0], [2.0, 8.0, 7.0], [3.0, 5.0, 7.0]]], [[[5.0, 8.0, 7.0], [1.0, 7.0, 1.0], [8.0, 2.0, 2.0]], [[3.0, 4.0, 2.0], [2.0, 7.0, 4.0], [8.0, 2.0, 8.0]], [[1.0, 7.0, 1.0], [1.0, 1.0, 3.0], [5.0, 3.0, 8.0]]], [[[4.0, 6.0, 3.0], [7.0, 2.0, 8.0], [4.0, 4.0, 8.0]], [[3.0, 4.0, 4.0], [2.0, 3.0, 5.0], [8.0, 7.0, 7.0]], [[1.0, 3.0, 6.0], [3.0, 4.0, 3.0], [7.0, 4.0, 2.0]]], [[[3.0, 4.0, 8.0], [5.0, 4.0, 2.0], [6.0, 1.0, 1.0]], [[7.0, 1.0, 5.0], [3.0, 6.0, 1.0], [1.0, 4.0, 7.0]], [[5.0, 4.0, 3.0], [3.0, 8.0, 1.0], [3.0, 4.0, 4.0]]]]))
9986        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
9987        val=msk_val*numarray.array([[[2.0, 8.0], [2.0, 2.0]], [[5.0, 3.0], [5.0, 7.0]]])+(1.-msk_val)*numarray.array([[[8.0, 4.0], [6.0, 1.0]], [[6.0, 5.0], [8.0, 5.0]]])        val=msk_val*numarray.array([[[2.0, 8.0], [2.0, 2.0]], [[5.0, 3.0], [5.0, 7.0]]])+(1.-msk_val)*numarray.array([[[8.0, 4.0], [6.0, 1.0]], [[6.0, 5.0], [8.0, 5.0]]])
9988        arg[1:3,1,:2,:2]=val        arg[1:3,1,:2,:2]=val
9989        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10021  class Test_util_slicing_with_tagged_data Line 10021  class Test_util_slicing_with_tagged_data
10021     def test_setslice_taggedData_rank4_expandedData_RPLL(self):     def test_setslice_taggedData_rank4_expandedData_RPLL(self):
10022        arg=Data(numarray.array([[[[1.0, 4.0, 5.0], [4.0, 8.0, 1.0], [6.0, 3.0, 7.0]], [[5.0, 6.0, 8.0], [2.0, 1.0, 1.0], [1.0, 4.0, 3.0]], [[6.0, 3.0, 5.0], [1.0, 2.0, 1.0], [8.0, 6.0, 6.0]]], [[[6.0, 6.0, 8.0], [5.0, 2.0, 5.0], [5.0, 8.0, 3.0]], [[4.0, 3.0, 3.0], [8.0, 2.0, 5.0], [4.0, 3.0, 8.0]], [[2.0, 2.0, 3.0], [5.0, 1.0, 7.0], [1.0, 8.0, 7.0]]], [[[2.0, 7.0, 3.0], [3.0, 2.0, 2.0], [7.0, 2.0, 7.0]], [[6.0, 7.0, 8.0], [2.0, 7.0, 6.0], [2.0, 5.0, 7.0]], [[4.0, 7.0, 1.0], [4.0, 1.0, 7.0], [3.0, 4.0, 4.0]]], [[[7.0, 6.0, 3.0], [7.0, 6.0, 4.0], [5.0, 4.0, 7.0]], [[3.0, 4.0, 1.0], [6.0, 5.0, 7.0], [4.0, 2.0, 8.0]], [[1.0, 2.0, 4.0], [5.0, 2.0, 4.0], [7.0, 1.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 4.0, 5.0], [4.0, 8.0, 1.0], [6.0, 3.0, 7.0]], [[5.0, 6.0, 8.0], [2.0, 1.0, 1.0], [1.0, 4.0, 3.0]], [[6.0, 3.0, 5.0], [1.0, 2.0, 1.0], [8.0, 6.0, 6.0]]], [[[6.0, 6.0, 8.0], [5.0, 2.0, 5.0], [5.0, 8.0, 3.0]], [[4.0, 3.0, 3.0], [8.0, 2.0, 5.0], [4.0, 3.0, 8.0]], [[2.0, 2.0, 3.0], [5.0, 1.0, 7.0], [1.0, 8.0, 7.0]]], [[[2.0, 7.0, 3.0], [3.0, 2.0, 2.0], [7.0, 2.0, 7.0]], [[6.0, 7.0, 8.0], [2.0, 7.0, 6.0], [2.0, 5.0, 7.0]], [[4.0, 7.0, 1.0], [4.0, 1.0, 7.0], [3.0, 4.0, 4.0]]], [[[7.0, 6.0, 3.0], [7.0, 6.0, 4.0], [5.0, 4.0, 7.0]], [[3.0, 4.0, 1.0], [6.0, 5.0, 7.0], [4.0, 2.0, 8.0]], [[1.0, 2.0, 4.0], [5.0, 2.0, 4.0], [7.0, 1.0, 8.0]]]]),self.functionspace)
10023        arg.setTaggedValue(1,numarray.array([[[[3.0, 7.0, 7.0], [6.0, 4.0, 3.0], [5.0, 1.0, 5.0]], [[4.0, 8.0, 7.0], [1.0, 8.0, 4.0], [1.0, 7.0, 6.0]], [[6.0, 7.0, 3.0], [7.0, 1.0, 7.0], [8.0, 2.0, 8.0]]], [[[3.0, 1.0, 4.0], [5.0, 7.0, 2.0], [7.0, 6.0, 4.0]], [[1.0, 3.0, 1.0], [4.0, 1.0, 3.0], [6.0, 5.0, 4.0]], [[3.0, 4.0, 5.0], [5.0, 8.0, 7.0], [1.0, 7.0, 4.0]]], [[[6.0, 2.0, 6.0], [2.0, 7.0, 6.0], [2.0, 1.0, 5.0]], [[5.0, 3.0, 8.0], [2.0, 4.0, 3.0], [3.0, 6.0, 4.0]], [[4.0, 7.0, 2.0], [8.0, 1.0, 8.0], [6.0, 5.0, 6.0]]], [[[6.0, 2.0, 3.0], [1.0, 8.0, 2.0], [2.0, 3.0, 5.0]], [[2.0, 5.0, 8.0], [6.0, 7.0, 2.0], [6.0, 4.0, 8.0]], [[3.0, 5.0, 1.0], [3.0, 7.0, 7.0], [5.0, 2.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 7.0, 7.0], [6.0, 4.0, 3.0], [5.0, 1.0, 5.0]], [[4.0, 8.0, 7.0], [1.0, 8.0, 4.0], [1.0, 7.0, 6.0]], [[6.0, 7.0, 3.0], [7.0, 1.0, 7.0], [8.0, 2.0, 8.0]]], [[[3.0, 1.0, 4.0], [5.0, 7.0, 2.0], [7.0, 6.0, 4.0]], [[1.0, 3.0, 1.0], [4.0, 1.0, 3.0], [6.0, 5.0, 4.0]], [[3.0, 4.0, 5.0], [5.0, 8.0, 7.0], [1.0, 7.0, 4.0]]], [[[6.0, 2.0, 6.0], [2.0, 7.0, 6.0], [2.0, 1.0, 5.0]], [[5.0, 3.0, 8.0], [2.0, 4.0, 3.0], [3.0, 6.0, 4.0]], [[4.0, 7.0, 2.0], [8.0, 1.0, 8.0], [6.0, 5.0, 6.0]]], [[[6.0, 2.0, 3.0], [1.0, 8.0, 2.0], [2.0, 3.0, 5.0]], [[2.0, 5.0, 8.0], [6.0, 7.0, 2.0], [6.0, 4.0, 8.0]], [[3.0, 5.0, 1.0], [3.0, 7.0, 7.0], [5.0, 2.0, 3.0]]]]))
10024        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10025        val=msk_val*numarray.array([[[5.0]], [[3.0]]])+(1.-msk_val)*numarray.array([[[6.0]], [[2.0]]])        val=msk_val*numarray.array([[[5.0]], [[3.0]]])+(1.-msk_val)*numarray.array([[[6.0]], [[2.0]]])
10026        arg[1:3,1,2:,2:]=val        arg[1:3,1,2:,2:]=val
10027        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10059  class Test_util_slicing_with_tagged_data Line 10059  class Test_util_slicing_with_tagged_data
10059     def test_setslice_taggedData_rank4_expandedData_RLCN(self):     def test_setslice_taggedData_rank4_expandedData_RLCN(self):
10060        arg=Data(numarray.array([[[[1.0, 3.0, 2.0], [5.0, 4.0, 3.0], [1.0, 5.0, 5.0]], [[7.0, 5.0, 5.0], [7.0, 7.0, 2.0], [5.0, 6.0, 8.0]], [[7.0, 6.0, 6.0], [3.0, 2.0, 4.0], [7.0, 3.0, 7.0]]], [[[4.0, 2.0, 4.0], [7.0, 3.0, 1.0], [8.0, 6.0, 8.0]], [[6.0, 7.0, 4.0], [1.0, 4.0, 1.0], [7.0, 7.0, 4.0]], [[2.0, 1.0, 5.0], [2.0, 4.0, 4.0], [8.0, 1.0, 5.0]]], [[[5.0, 3.0, 2.0], [4.0, 6.0, 4.0], [5.0, 7.0, 1.0]], [[5.0, 2.0, 6.0], [1.0, 1.0, 6.0], [8.0, 1.0, 5.0]], [[3.0, 2.0, 1.0], [5.0, 4.0, 6.0], [4.0, 7.0, 3.0]]], [[[1.0, 1.0, 3.0], [3.0, 3.0, 6.0], [1.0, 8.0, 7.0]], [[7.0, 8.0, 6.0], [4.0, 7.0, 8.0], [7.0, 1.0, 4.0]], [[2.0, 7.0, 1.0], [5.0, 8.0, 3.0], [7.0, 3.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 3.0, 2.0], [5.0, 4.0, 3.0], [1.0, 5.0, 5.0]], [[7.0, 5.0, 5.0], [7.0, 7.0, 2.0], [5.0, 6.0, 8.0]], [[7.0, 6.0, 6.0], [3.0, 2.0, 4.0], [7.0, 3.0, 7.0]]], [[[4.0, 2.0, 4.0], [7.0, 3.0, 1.0], [8.0, 6.0, 8.0]], [[6.0, 7.0, 4.0], [1.0, 4.0, 1.0], [7.0, 7.0, 4.0]], [[2.0, 1.0, 5.0], [2.0, 4.0, 4.0], [8.0, 1.0, 5.0]]], [[[5.0, 3.0, 2.0], [4.0, 6.0, 4.0], [5.0, 7.0, 1.0]], [[5.0, 2.0, 6.0], [1.0, 1.0, 6.0], [8.0, 1.0, 5.0]], [[3.0, 2.0, 1.0], [5.0, 4.0, 6.0], [4.0, 7.0, 3.0]]], [[[1.0, 1.0, 3.0], [3.0, 3.0, 6.0], [1.0, 8.0, 7.0]], [[7.0, 8.0, 6.0], [4.0, 7.0, 8.0], [7.0, 1.0, 4.0]], [[2.0, 7.0, 1.0], [5.0, 8.0, 3.0], [7.0, 3.0, 8.0]]]]),self.functionspace)
10061        arg.setTaggedValue(1,numarray.array([[[[4.0, 3.0, 7.0], [6.0, 3.0, 3.0], [7.0, 1.0, 4.0]], [[7.0, 7.0, 7.0], [1.0, 1.0, 1.0], [7.0, 5.0, 8.0]], [[3.0, 7.0, 5.0], [3.0, 5.0, 2.0], [7.0, 5.0, 3.0]]], [[[7.0, 7.0, 1.0], [1.0, 7.0, 1.0], [1.0, 1.0, 4.0]], [[3.0, 5.0, 8.0], [7.0, 2.0, 7.0], [5.0, 7.0, 5.0]], [[8.0, 4.0, 8.0], [4.0, 2.0, 2.0], [2.0, 6.0, 4.0]]], [[[4.0, 2.0, 1.0], [2.0, 3.0, 6.0], [1.0, 4.0, 6.0]], [[1.0, 8.0, 4.0], [6.0, 7.0, 7.0], [1.0, 6.0, 5.0]], [[4.0, 4.0, 2.0], [5.0, 5.0, 8.0], [3.0, 2.0, 2.0]]], [[[4.0, 1.0, 6.0], [7.0, 4.0, 2.0], [7.0, 6.0, 5.0]], [[6.0, 1.0, 3.0], [5.0, 8.0, 7.0], [4.0, 6.0, 6.0]], [[5.0, 2.0, 7.0], [1.0, 1.0, 5.0], [7.0, 4.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 3.0, 7.0], [6.0, 3.0, 3.0], [7.0, 1.0, 4.0]], [[7.0, 7.0, 7.0], [1.0, 1.0, 1.0], [7.0, 5.0, 8.0]], [[3.0, 7.0, 5.0], [3.0, 5.0, 2.0], [7.0, 5.0, 3.0]]], [[[7.0, 7.0, 1.0], [1.0, 7.0, 1.0], [1.0, 1.0, 4.0]], [[3.0, 5.0, 8.0], [7.0, 2.0, 7.0], [5.0, 7.0, 5.0]], [[8.0, 4.0, 8.0], [4.0, 2.0, 2.0], [2.0, 6.0, 4.0]]], [[[4.0, 2.0, 1.0], [2.0, 3.0, 6.0], [1.0, 4.0, 6.0]], [[1.0, 8.0, 4.0], [6.0, 7.0, 7.0], [1.0, 6.0, 5.0]], [[4.0, 4.0, 2.0], [5.0, 5.0, 8.0], [3.0, 2.0, 2.0]]], [[[4.0, 1.0, 6.0], [7.0, 4.0, 2.0], [7.0, 6.0, 5.0]], [[6.0, 1.0, 3.0], [5.0, 8.0, 7.0], [4.0, 6.0, 6.0]], [[5.0, 2.0, 7.0], [1.0, 1.0, 5.0], [7.0, 4.0, 5.0]]]]))
10062        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10063        val=msk_val*numarray.array([[[[5.0, 5.0, 2.0], [7.0, 5.0, 6.0], [1.0, 4.0, 4.0]]], [[[4.0, 8.0, 1.0], [7.0, 1.0, 6.0], [7.0, 8.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 6.0, 4.0], [5.0, 3.0, 2.0], [6.0, 3.0, 2.0]]], [[[6.0, 2.0, 2.0], [6.0, 2.0, 5.0], [6.0, 2.0, 2.0]]]])        val=msk_val*numarray.array([[[[5.0, 5.0, 2.0], [7.0, 5.0, 6.0], [1.0, 4.0, 4.0]]], [[[4.0, 8.0, 1.0], [7.0, 1.0, 6.0], [7.0, 8.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 6.0, 4.0], [5.0, 3.0, 2.0], [6.0, 3.0, 2.0]]], [[[6.0, 2.0, 2.0], [6.0, 2.0, 5.0], [6.0, 2.0, 2.0]]]])
10064        arg[1:3,2:,:]=val        arg[1:3,2:,:]=val
10065        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10097  class Test_util_slicing_with_tagged_data Line 10097  class Test_util_slicing_with_tagged_data
10097     def test_setslice_taggedData_rank4_expandedData_UCCU(self):     def test_setslice_taggedData_rank4_expandedData_UCCU(self):
10098        arg=Data(numarray.array([[[[8.0, 7.0, 8.0], [3.0, 1.0, 2.0], [5.0, 8.0, 1.0]], [[1.0, 5.0, 3.0], [6.0, 4.0, 4.0], [7.0, 8.0, 2.0]], [[8.0, 2.0, 4.0], [3.0, 2.0, 8.0], [7.0, 7.0, 1.0]]], [[[7.0, 3.0, 4.0], [5.0, 4.0, 4.0], [3.0, 5.0, 5.0]], [[7.0, 1.0, 7.0], [4.0, 3.0, 3.0], [3.0, 2.0, 5.0]], [[7.0, 5.0, 5.0], [7.0, 8.0, 3.0], [7.0, 4.0, 6.0]]], [[[3.0, 7.0, 1.0], [4.0, 3.0, 2.0], [3.0, 6.0, 5.0]], [[3.0, 5.0, 2.0], [6.0, 4.0, 8.0], [2.0, 2.0, 8.0]], [[4.0, 7.0, 4.0], [5.0, 6.0, 5.0], [5.0, 5.0, 6.0]]], [[[5.0, 8.0, 5.0], [3.0, 1.0, 3.0], [6.0, 5.0, 7.0]], [[3.0, 1.0, 2.0], [7.0, 2.0, 8.0], [8.0, 7.0, 4.0]], [[8.0, 6.0, 2.0], [2.0, 6.0, 3.0], [2.0, 6.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 7.0, 8.0], [3.0, 1.0, 2.0], [5.0, 8.0, 1.0]], [[1.0, 5.0, 3.0], [6.0, 4.0, 4.0], [7.0, 8.0, 2.0]], [[8.0, 2.0, 4.0], [3.0, 2.0, 8.0], [7.0, 7.0, 1.0]]], [[[7.0, 3.0, 4.0], [5.0, 4.0, 4.0], [3.0, 5.0, 5.0]], [[7.0, 1.0, 7.0], [4.0, 3.0, 3.0], [3.0, 2.0, 5.0]], [[7.0, 5.0, 5.0], [7.0, 8.0, 3.0], [7.0, 4.0, 6.0]]], [[[3.0, 7.0, 1.0], [4.0, 3.0, 2.0], [3.0, 6.0, 5.0]], [[3.0, 5.0, 2.0], [6.0, 4.0, 8.0], [2.0, 2.0, 8.0]], [[4.0, 7.0, 4.0], [5.0, 6.0, 5.0], [5.0, 5.0, 6.0]]], [[[5.0, 8.0, 5.0], [3.0, 1.0, 3.0], [6.0, 5.0, 7.0]], [[3.0, 1.0, 2.0], [7.0, 2.0, 8.0], [8.0, 7.0, 4.0]], [[8.0, 6.0, 2.0], [2.0, 6.0, 3.0], [2.0, 6.0, 5.0]]]]),self.functionspace)
10099        arg.setTaggedValue(1,numarray.array([[[[6.0, 5.0, 6.0], [4.0, 8.0, 5.0], [2.0, 4.0, 3.0]], [[5.0, 4.0, 5.0], [4.0, 3.0, 5.0], [3.0, 4.0, 4.0]], [[7.0, 6.0, 2.0], [1.0, 6.0, 1.0], [7.0, 7.0, 1.0]]], [[[5.0, 5.0, 3.0], [6.0, 7.0, 5.0], [8.0, 2.0, 7.0]], [[7.0, 1.0, 8.0], [2.0, 2.0, 5.0], [7.0, 3.0, 7.0]], [[4.0, 8.0, 1.0], [5.0, 3.0, 3.0], [2.0, 2.0, 4.0]]], [[[8.0, 7.0, 8.0], [4.0, 3.0, 5.0], [6.0, 3.0, 8.0]], [[5.0, 5.0, 1.0], [2.0, 3.0, 1.0], [2.0, 1.0, 8.0]], [[8.0, 3.0, 5.0], [5.0, 1.0, 5.0], [8.0, 6.0, 8.0]]], [[[5.0, 3.0, 4.0], [1.0, 2.0, 7.0], [6.0, 2.0, 7.0]], [[6.0, 8.0, 1.0], [3.0, 5.0, 4.0], [2.0, 7.0, 5.0]], [[8.0, 3.0, 2.0], [3.0, 7.0, 5.0], [2.0, 8.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 5.0, 6.0], [4.0, 8.0, 5.0], [2.0, 4.0, 3.0]], [[5.0, 4.0, 5.0], [4.0, 3.0, 5.0], [3.0, 4.0, 4.0]], [[7.0, 6.0, 2.0], [1.0, 6.0, 1.0], [7.0, 7.0, 1.0]]], [[[5.0, 5.0, 3.0], [6.0, 7.0, 5.0], [8.0, 2.0, 7.0]], [[7.0, 1.0, 8.0], [2.0, 2.0, 5.0], [7.0, 3.0, 7.0]], [[4.0, 8.0, 1.0], [5.0, 3.0, 3.0], [2.0, 2.0, 4.0]]], [[[8.0, 7.0, 8.0], [4.0, 3.0, 5.0], [6.0, 3.0, 8.0]], [[5.0, 5.0, 1.0], [2.0, 3.0, 1.0], [2.0, 1.0, 8.0]], [[8.0, 3.0, 5.0], [5.0, 1.0, 5.0], [8.0, 6.0, 8.0]]], [[[5.0, 3.0, 4.0], [1.0, 2.0, 7.0], [6.0, 2.0, 7.0]], [[6.0, 8.0, 1.0], [3.0, 5.0, 4.0], [2.0, 7.0, 5.0]], [[8.0, 3.0, 2.0], [3.0, 7.0, 5.0], [2.0, 8.0, 4.0]]]]))
10100        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10101        val=msk_val*numarray.array([[[[7.0, 6.0], [8.0, 7.0], [7.0, 6.0]], [[3.0, 6.0], [4.0, 1.0], [5.0, 6.0]], [[6.0, 7.0], [6.0, 3.0], [8.0, 8.0]]], [[[1.0, 3.0], [5.0, 4.0], [4.0, 3.0]], [[7.0, 7.0], [7.0, 2.0], [3.0, 2.0]], [[2.0, 7.0], [6.0, 7.0], [3.0, 6.0]]], [[[5.0, 4.0], [7.0, 2.0], [6.0, 3.0]], [[4.0, 3.0], [7.0, 7.0], [5.0, 2.0]], [[1.0, 8.0], [6.0, 2.0], [1.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 2.0], [5.0, 4.0], [1.0, 3.0]], [[2.0, 4.0], [7.0, 5.0], [5.0, 5.0]], [[5.0, 8.0], [4.0, 2.0], [8.0, 6.0]]], [[[8.0, 6.0], [5.0, 5.0], [2.0, 4.0]], [[2.0, 7.0], [7.0, 8.0], [2.0, 7.0]], [[2.0, 5.0], [4.0, 4.0], [4.0, 8.0]]], [[[3.0, 7.0], [7.0, 5.0], [5.0, 4.0]], [[4.0, 8.0], [1.0, 2.0], [8.0, 5.0]], [[8.0, 1.0], [2.0, 1.0], [7.0, 4.0]]]])        val=msk_val*numarray.array([[[[7.0, 6.0], [8.0, 7.0], [7.0, 6.0]], [[3.0, 6.0], [4.0, 1.0], [5.0, 6.0]], [[6.0, 7.0], [6.0, 3.0], [8.0, 8.0]]], [[[1.0, 3.0], [5.0, 4.0], [4.0, 3.0]], [[7.0, 7.0], [7.0, 2.0], [3.0, 2.0]], [[2.0, 7.0], [6.0, 7.0], [3.0, 6.0]]], [[[5.0, 4.0], [7.0, 2.0], [6.0, 3.0]], [[4.0, 3.0], [7.0, 7.0], [5.0, 2.0]], [[1.0, 8.0], [6.0, 2.0], [1.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 2.0], [5.0, 4.0], [1.0, 3.0]], [[2.0, 4.0], [7.0, 5.0], [5.0, 5.0]], [[5.0, 8.0], [4.0, 2.0], [8.0, 6.0]]], [[[8.0, 6.0], [5.0, 5.0], [2.0, 4.0]], [[2.0, 7.0], [7.0, 8.0], [2.0, 7.0]], [[2.0, 5.0], [4.0, 4.0], [4.0, 8.0]]], [[[3.0, 7.0], [7.0, 5.0], [5.0, 4.0]], [[4.0, 8.0], [1.0, 2.0], [8.0, 5.0]], [[8.0, 1.0], [2.0, 1.0], [7.0, 4.0]]]])
10102        arg[:3,:,:,:2]=val        arg[:3,:,:,:2]=val
10103        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10135  class Test_util_slicing_with_tagged_data Line 10135  class Test_util_slicing_with_tagged_data
10135     def test_setslice_taggedData_rank4_expandedData_URCN(self):     def test_setslice_taggedData_rank4_expandedData_URCN(self):
10136        arg=Data(numarray.array([[[[4.0, 3.0, 6.0], [6.0, 2.0, 7.0], [5.0, 8.0, 1.0]], [[3.0, 4.0, 5.0], [6.0, 4.0, 4.0], [1.0, 3.0, 1.0]], [[3.0, 8.0, 1.0], [8.0, 8.0, 2.0], [5.0, 6.0, 5.0]]], [[[5.0, 5.0, 4.0], [5.0, 7.0, 7.0], [7.0, 4.0, 4.0]], [[4.0, 3.0, 5.0], [7.0, 1.0, 4.0], [1.0, 5.0, 5.0]], [[8.0, 5.0, 8.0], [5.0, 4.0, 6.0], [1.0, 8.0, 4.0]]], [[[3.0, 8.0, 5.0], [3.0, 5.0, 3.0], [5.0, 7.0, 5.0]], [[4.0, 6.0, 5.0], [8.0, 6.0, 8.0], [1.0, 4.0, 4.0]], [[8.0, 2.0, 5.0], [3.0, 1.0, 6.0], [3.0, 2.0, 7.0]]], [[[1.0, 2.0, 5.0], [4.0, 1.0, 5.0], [5.0, 8.0, 2.0]], [[1.0, 3.0, 6.0], [4.0, 3.0, 2.0], [1.0, 7.0, 5.0]], [[7.0, 2.0, 6.0], [2.0, 7.0, 5.0], [1.0, 2.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 3.0, 6.0], [6.0, 2.0, 7.0], [5.0, 8.0, 1.0]], [[3.0, 4.0, 5.0], [6.0, 4.0, 4.0], [1.0, 3.0, 1.0]], [[3.0, 8.0, 1.0], [8.0, 8.0, 2.0], [5.0, 6.0, 5.0]]], [[[5.0, 5.0, 4.0], [5.0, 7.0, 7.0], [7.0, 4.0, 4.0]], [[4.0, 3.0, 5.0], [7.0, 1.0, 4.0], [1.0, 5.0, 5.0]], [[8.0, 5.0, 8.0], [5.0, 4.0, 6.0], [1.0, 8.0, 4.0]]], [[[3.0, 8.0, 5.0], [3.0, 5.0, 3.0], [5.0, 7.0, 5.0]], [[4.0, 6.0, 5.0], [8.0, 6.0, 8.0], [1.0, 4.0, 4.0]], [[8.0, 2.0, 5.0], [3.0, 1.0, 6.0], [3.0, 2.0, 7.0]]], [[[1.0, 2.0, 5.0], [4.0, 1.0, 5.0], [5.0, 8.0, 2.0]], [[1.0, 3.0, 6.0], [4.0, 3.0, 2.0], [1.0, 7.0, 5.0]], [[7.0, 2.0, 6.0], [2.0, 7.0, 5.0], [1.0, 2.0, 5.0]]]]),self.functionspace)
10137        arg.setTaggedValue(1,numarray.array([[[[1.0, 8.0, 7.0], [1.0, 6.0, 4.0], [6.0, 5.0, 7.0]], [[6.0, 4.0, 8.0], [1.0, 6.0, 7.0], [8.0, 4.0, 7.0]], [[8.0, 8.0, 1.0], [8.0, 8.0, 7.0], [1.0, 5.0, 2.0]]], [[[8.0, 7.0, 7.0], [6.0, 7.0, 6.0], [4.0, 1.0, 2.0]], [[2.0, 1.0, 8.0], [7.0, 7.0, 1.0], [6.0, 7.0, 3.0]], [[2.0, 8.0, 3.0], [5.0, 5.0, 7.0], [3.0, 2.0, 5.0]]], [[[5.0, 6.0, 1.0], [1.0, 1.0, 3.0], [5.0, 1.0, 3.0]], [[8.0, 5.0, 3.0], [7.0, 3.0, 2.0], [2.0, 8.0, 5.0]], [[6.0, 1.0, 1.0], [3.0, 4.0, 8.0], [5.0, 8.0, 3.0]]], [[[6.0, 1.0, 6.0], [6.0, 6.0, 1.0], [4.0, 4.0, 5.0]], [[7.0, 1.0, 8.0], [7.0, 6.0, 7.0], [7.0, 4.0, 5.0]], [[7.0, 3.0, 6.0], [4.0, 1.0, 6.0], [6.0, 7.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 8.0, 7.0], [1.0, 6.0, 4.0], [6.0, 5.0, 7.0]], [[6.0, 4.0, 8.0], [1.0, 6.0, 7.0], [8.0, 4.0, 7.0]], [[8.0, 8.0, 1.0], [8.0, 8.0, 7.0], [1.0, 5.0, 2.0]]], [[[8.0, 7.0, 7.0], [6.0, 7.0, 6.0], [4.0, 1.0, 2.0]], [[2.0, 1.0, 8.0], [7.0, 7.0, 1.0], [6.0, 7.0, 3.0]], [[2.0, 8.0, 3.0], [5.0, 5.0, 7.0], [3.0, 2.0, 5.0]]], [[[5.0, 6.0, 1.0], [1.0, 1.0, 3.0], [5.0, 1.0, 3.0]], [[8.0, 5.0, 3.0], [7.0, 3.0, 2.0], [2.0, 8.0, 5.0]], [[6.0, 1.0, 1.0], [3.0, 4.0, 8.0], [5.0, 8.0, 3.0]]], [[[6.0, 1.0, 6.0], [6.0, 6.0, 1.0], [4.0, 4.0, 5.0]], [[7.0, 1.0, 8.0], [7.0, 6.0, 7.0], [7.0, 4.0, 5.0]], [[7.0, 3.0, 6.0], [4.0, 1.0, 6.0], [6.0, 7.0, 4.0]]]]))
10138        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10139        val=msk_val*numarray.array([[[[3.0, 8.0, 5.0], [1.0, 5.0, 5.0], [8.0, 8.0, 1.0]]], [[[7.0, 5.0, 2.0], [5.0, 8.0, 7.0], [5.0, 2.0, 2.0]]], [[[8.0, 6.0, 2.0], [6.0, 4.0, 5.0], [2.0, 8.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 5.0, 6.0], [4.0, 2.0, 4.0], [8.0, 3.0, 1.0]]], [[[4.0, 1.0, 4.0], [5.0, 2.0, 3.0], [6.0, 3.0, 6.0]]], [[[7.0, 4.0, 6.0], [4.0, 3.0, 5.0], [8.0, 7.0, 6.0]]]])        val=msk_val*numarray.array([[[[3.0, 8.0, 5.0], [1.0, 5.0, 5.0], [8.0, 8.0, 1.0]]], [[[7.0, 5.0, 2.0], [5.0, 8.0, 7.0], [5.0, 2.0, 2.0]]], [[[8.0, 6.0, 2.0], [6.0, 4.0, 5.0], [2.0, 8.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 5.0, 6.0], [4.0, 2.0, 4.0], [8.0, 3.0, 1.0]]], [[[4.0, 1.0, 4.0], [5.0, 2.0, 3.0], [6.0, 3.0, 6.0]]], [[[7.0, 4.0, 6.0], [4.0, 3.0, 5.0], [8.0, 7.0, 6.0]]]])
10140        arg[:3,1:2,:]=val        arg[:3,1:2,:]=val
10141        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10173  class Test_util_slicing_with_tagged_data Line 10173  class Test_util_slicing_with_tagged_data
10173     def test_setslice_taggedData_rank4_expandedData_RUPN(self):     def test_setslice_taggedData_rank4_expandedData_RUPN(self):
10174        arg=Data(numarray.array([[[[2.0, 7.0, 5.0], [3.0, 1.0, 3.0], [2.0, 4.0, 8.0]], [[8.0, 3.0, 2.0], [2.0, 4.0, 6.0], [8.0, 1.0, 3.0]], [[3.0, 4.0, 1.0], [3.0, 2.0, 8.0], [1.0, 7.0, 7.0]]], [[[1.0, 5.0, 8.0], [6.0, 3.0, 5.0], [8.0, 5.0, 7.0]], [[5.0, 7.0, 3.0], [2.0, 8.0, 3.0], [4.0, 6.0, 7.0]], [[2.0, 1.0, 4.0], [3.0, 5.0, 8.0], [4.0, 8.0, 8.0]]], [[[6.0, 8.0, 3.0], [6.0, 8.0, 6.0], [4.0, 7.0, 4.0]], [[6.0, 6.0, 8.0], [5.0, 5.0, 1.0], [2.0, 7.0, 8.0]], [[3.0, 8.0, 2.0], [2.0, 6.0, 8.0], [1.0, 7.0, 8.0]]], [[[6.0, 8.0, 6.0], [5.0, 5.0, 3.0], [4.0, 1.0, 2.0]], [[4.0, 4.0, 1.0], [1.0, 6.0, 8.0], [2.0, 6.0, 5.0]], [[4.0, 2.0, 2.0], [6.0, 8.0, 2.0], [5.0, 7.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 7.0, 5.0], [3.0, 1.0, 3.0], [2.0, 4.0, 8.0]], [[8.0, 3.0, 2.0], [2.0, 4.0, 6.0], [8.0, 1.0, 3.0]], [[3.0, 4.0, 1.0], [3.0, 2.0, 8.0], [1.0, 7.0, 7.0]]], [[[1.0, 5.0, 8.0], [6.0, 3.0, 5.0], [8.0, 5.0, 7.0]], [[5.0, 7.0, 3.0], [2.0, 8.0, 3.0], [4.0, 6.0, 7.0]], [[2.0, 1.0, 4.0], [3.0, 5.0, 8.0], [4.0, 8.0, 8.0]]], [[[6.0, 8.0, 3.0], [6.0, 8.0, 6.0], [4.0, 7.0, 4.0]], [[6.0, 6.0, 8.0], [5.0, 5.0, 1.0], [2.0, 7.0, 8.0]], [[3.0, 8.0, 2.0], [2.0, 6.0, 8.0], [1.0, 7.0, 8.0]]], [[[6.0, 8.0, 6.0], [5.0, 5.0, 3.0], [4.0, 1.0, 2.0]], [[4.0, 4.0, 1.0], [1.0, 6.0, 8.0], [2.0, 6.0, 5.0]], [[4.0, 2.0, 2.0], [6.0, 8.0, 2.0], [5.0, 7.0, 4.0]]]]),self.functionspace)
10175        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 2.0], [2.0, 1.0, 2.0], [3.0, 7.0, 4.0]], [[4.0, 7.0, 4.0], [3.0, 2.0, 7.0], [1.0, 7.0, 4.0]], [[4.0, 8.0, 1.0], [5.0, 2.0, 7.0], [1.0, 5.0, 5.0]]], [[[2.0, 1.0, 5.0], [2.0, 3.0, 6.0], [3.0, 7.0, 2.0]], [[1.0, 3.0, 1.0], [7.0, 7.0, 2.0], [2.0, 5.0, 7.0]], [[6.0, 7.0, 7.0], [2.0, 2.0, 3.0], [5.0, 1.0, 8.0]]], [[[5.0, 7.0, 7.0], [3.0, 4.0, 8.0], [6.0, 3.0, 8.0]], [[2.0, 2.0, 5.0], [3.0, 3.0, 8.0], [7.0, 5.0, 4.0]], [[6.0, 3.0, 4.0], [8.0, 8.0, 8.0], [2.0, 3.0, 7.0]]], [[[3.0, 4.0, 2.0], [1.0, 3.0, 2.0], [1.0, 4.0, 1.0]], [[7.0, 7.0, 3.0], [5.0, 1.0, 7.0], [4.0, 2.0, 8.0]], [[5.0, 7.0, 5.0], [4.0, 7.0, 5.0], [3.0, 8.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 2.0], [2.0, 1.0, 2.0], [3.0, 7.0, 4.0]], [[4.0, 7.0, 4.0], [3.0, 2.0, 7.0], [1.0, 7.0, 4.0]], [[4.0, 8.0, 1.0], [5.0, 2.0, 7.0], [1.0, 5.0, 5.0]]], [[[2.0, 1.0, 5.0], [2.0, 3.0, 6.0], [3.0, 7.0, 2.0]], [[1.0, 3.0, 1.0], [7.0, 7.0, 2.0], [2.0, 5.0, 7.0]], [[6.0, 7.0, 7.0], [2.0, 2.0, 3.0], [5.0, 1.0, 8.0]]], [[[5.0, 7.0, 7.0], [3.0, 4.0, 8.0], [6.0, 3.0, 8.0]], [[2.0, 2.0, 5.0], [3.0, 3.0, 8.0], [7.0, 5.0, 4.0]], [[6.0, 3.0, 4.0], [8.0, 8.0, 8.0], [2.0, 3.0, 7.0]]], [[[3.0, 4.0, 2.0], [1.0, 3.0, 2.0], [1.0, 4.0, 1.0]], [[7.0, 7.0, 3.0], [5.0, 1.0, 7.0], [4.0, 2.0, 8.0]], [[5.0, 7.0, 5.0], [4.0, 7.0, 5.0], [3.0, 8.0, 8.0]]]]))
10176        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10177        val=msk_val*numarray.array([[[3.0, 3.0, 3.0], [6.0, 8.0, 1.0]], [[5.0, 1.0, 2.0], [8.0, 3.0, 5.0]]])+(1.-msk_val)*numarray.array([[[6.0, 1.0, 1.0], [4.0, 5.0, 3.0]], [[1.0, 8.0, 1.0], [2.0, 2.0, 8.0]]])        val=msk_val*numarray.array([[[3.0, 3.0, 3.0], [6.0, 8.0, 1.0]], [[5.0, 1.0, 2.0], [8.0, 3.0, 5.0]]])+(1.-msk_val)*numarray.array([[[6.0, 1.0, 1.0], [4.0, 5.0, 3.0]], [[1.0, 8.0, 1.0], [2.0, 2.0, 8.0]]])
10178        arg[1:3,:2,1]=val        arg[1:3,:2,1]=val
10179        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10211  class Test_util_slicing_with_tagged_data Line 10211  class Test_util_slicing_with_tagged_data
10211     def test_setslice_taggedData_rank4_expandedData_CRLN(self):     def test_setslice_taggedData_rank4_expandedData_CRLN(self):
10212        arg=Data(numarray.array([[[[8.0, 7.0, 6.0], [2.0, 1.0, 6.0], [3.0, 8.0, 8.0]], [[4.0, 5.0, 5.0], [8.0, 2.0, 6.0], [8.0, 2.0, 7.0]], [[5.0, 6.0, 2.0], [6.0, 2.0, 2.0], [7.0, 1.0, 3.0]]], [[[7.0, 6.0, 4.0], [8.0, 5.0, 7.0], [4.0, 4.0, 1.0]], [[6.0, 2.0, 5.0], [7.0, 2.0, 8.0], [2.0, 8.0, 3.0]], [[4.0, 7.0, 1.0], [5.0, 5.0, 6.0], [7.0, 6.0, 2.0]]], [[[4.0, 1.0, 8.0], [1.0, 1.0, 1.0], [4.0, 7.0, 1.0]], [[4.0, 4.0, 6.0], [7.0, 1.0, 6.0], [5.0, 3.0, 7.0]], [[6.0, 6.0, 5.0], [3.0, 6.0, 1.0], [3.0, 4.0, 4.0]]], [[[1.0, 7.0, 7.0], [8.0, 5.0, 7.0], [6.0, 2.0, 6.0]], [[3.0, 3.0, 5.0], [5.0, 5.0, 8.0], [7.0, 3.0, 7.0]], [[4.0, 4.0, 8.0], [1.0, 6.0, 5.0], [4.0, 8.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 7.0, 6.0], [2.0, 1.0, 6.0], [3.0, 8.0, 8.0]], [[4.0, 5.0, 5.0], [8.0, 2.0, 6.0], [8.0, 2.0, 7.0]], [[5.0, 6.0, 2.0], [6.0, 2.0, 2.0], [7.0, 1.0, 3.0]]], [[[7.0, 6.0, 4.0], [8.0, 5.0, 7.0], [4.0, 4.0, 1.0]], [[6.0, 2.0, 5.0], [7.0, 2.0, 8.0], [2.0, 8.0, 3.0]], [[4.0, 7.0, 1.0], [5.0, 5.0, 6.0], [7.0, 6.0, 2.0]]], [[[4.0, 1.0, 8.0], [1.0, 1.0, 1.0], [4.0, 7.0, 1.0]], [[4.0, 4.0, 6.0], [7.0, 1.0, 6.0], [5.0, 3.0, 7.0]], [[6.0, 6.0, 5.0], [3.0, 6.0, 1.0], [3.0, 4.0, 4.0]]], [[[1.0, 7.0, 7.0], [8.0, 5.0, 7.0], [6.0, 2.0, 6.0]], [[3.0, 3.0, 5.0], [5.0, 5.0, 8.0], [7.0, 3.0, 7.0]], [[4.0, 4.0, 8.0], [1.0, 6.0, 5.0], [4.0, 8.0, 6.0]]]]),self.functionspace)
10213        arg.setTaggedValue(1,numarray.array([[[[3.0, 2.0, 6.0], [6.0, 4.0, 2.0], [6.0, 8.0, 7.0]], [[1.0, 2.0, 1.0], [8.0, 2.0, 1.0], [5.0, 2.0, 5.0]], [[6.0, 4.0, 6.0], [4.0, 4.0, 6.0], [7.0, 7.0, 8.0]]], [[[3.0, 3.0, 4.0], [2.0, 2.0, 1.0], [7.0, 5.0, 1.0]], [[8.0, 5.0, 8.0], [6.0, 4.0, 6.0], [4.0, 3.0, 4.0]], [[7.0, 1.0, 8.0], [8.0, 4.0, 3.0], [2.0, 2.0, 3.0]]], [[[7.0, 3.0, 8.0], [6.0, 1.0, 3.0], [4.0, 6.0, 5.0]], [[6.0, 2.0, 3.0], [4.0, 5.0, 4.0], [4.0, 4.0, 8.0]], [[6.0, 6.0, 3.0], [3.0, 8.0, 2.0], [1.0, 2.0, 6.0]]], [[[1.0, 6.0, 7.0], [5.0, 5.0, 8.0], [6.0, 2.0, 1.0]], [[3.0, 4.0, 5.0], [2.0, 5.0, 3.0], [7.0, 7.0, 2.0]], [[1.0, 7.0, 1.0], [4.0, 2.0, 8.0], [8.0, 4.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 2.0, 6.0], [6.0, 4.0, 2.0], [6.0, 8.0, 7.0]], [[1.0, 2.0, 1.0], [8.0, 2.0, 1.0], [5.0, 2.0, 5.0]], [[6.0, 4.0, 6.0], [4.0, 4.0, 6.0], [7.0, 7.0, 8.0]]], [[[3.0, 3.0, 4.0], [2.0, 2.0, 1.0], [7.0, 5.0, 1.0]], [[8.0, 5.0, 8.0], [6.0, 4.0, 6.0], [4.0, 3.0, 4.0]], [[7.0, 1.0, 8.0], [8.0, 4.0, 3.0], [2.0, 2.0, 3.0]]], [[[7.0, 3.0, 8.0], [6.0, 1.0, 3.0], [4.0, 6.0, 5.0]], [[6.0, 2.0, 3.0], [4.0, 5.0, 4.0], [4.0, 4.0, 8.0]], [[6.0, 6.0, 3.0], [3.0, 8.0, 2.0], [1.0, 2.0, 6.0]]], [[[1.0, 6.0, 7.0], [5.0, 5.0, 8.0], [6.0, 2.0, 1.0]], [[3.0, 4.0, 5.0], [2.0, 5.0, 3.0], [7.0, 7.0, 2.0]], [[1.0, 7.0, 1.0], [4.0, 2.0, 8.0], [8.0, 4.0, 2.0]]]]))
10214        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10215        val=msk_val*numarray.array([[[[2.0, 6.0, 7.0]]], [[[2.0, 3.0, 1.0]]], [[[3.0, 8.0, 6.0]]], [[[4.0, 1.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 1.0, 3.0]]], [[[2.0, 5.0, 4.0]]], [[[3.0, 2.0, 4.0]]], [[[6.0, 6.0, 6.0]]]])        val=msk_val*numarray.array([[[[2.0, 6.0, 7.0]]], [[[2.0, 3.0, 1.0]]], [[[3.0, 8.0, 6.0]]], [[[4.0, 1.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 1.0, 3.0]]], [[[2.0, 5.0, 4.0]]], [[[3.0, 2.0, 4.0]]], [[[6.0, 6.0, 6.0]]]])
10216        arg[:,1:2,2:]=val        arg[:,1:2,2:]=val
10217        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10249  class Test_util_slicing_with_tagged_data Line 10249  class Test_util_slicing_with_tagged_data
10249     def test_setslice_taggedData_rank4_expandedData_LPLU(self):     def test_setslice_taggedData_rank4_expandedData_LPLU(self):
10250        arg=Data(numarray.array([[[[8.0, 3.0, 3.0], [2.0, 8.0, 3.0], [1.0, 6.0, 1.0]], [[5.0, 8.0, 5.0], [8.0, 8.0, 1.0], [1.0, 1.0, 3.0]], [[6.0, 7.0, 5.0], [6.0, 4.0, 2.0], [3.0, 4.0, 5.0]]], [[[5.0, 6.0, 5.0], [2.0, 4.0, 8.0], [4.0, 2.0, 7.0]], [[8.0, 7.0, 7.0], [1.0, 5.0, 2.0], [1.0, 3.0, 2.0]], [[6.0, 4.0, 5.0], [2.0, 1.0, 6.0], [1.0, 7.0, 2.0]]], [[[3.0, 4.0, 8.0], [8.0, 8.0, 7.0], [5.0, 3.0, 1.0]], [[5.0, 4.0, 6.0], [6.0, 8.0, 6.0], [3.0, 5.0, 8.0]], [[6.0, 5.0, 8.0], [5.0, 6.0, 1.0], [6.0, 5.0, 8.0]]], [[[5.0, 2.0, 1.0], [5.0, 1.0, 8.0], [4.0, 7.0, 2.0]], [[7.0, 7.0, 4.0], [7.0, 2.0, 8.0], [4.0, 2.0, 2.0]], [[5.0, 8.0, 1.0], [8.0, 8.0, 1.0], [7.0, 1.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 3.0, 3.0], [2.0, 8.0, 3.0], [1.0, 6.0, 1.0]], [[5.0, 8.0, 5.0], [8.0, 8.0, 1.0], [1.0, 1.0, 3.0]], [[6.0, 7.0, 5.0], [6.0, 4.0, 2.0], [3.0, 4.0, 5.0]]], [[[5.0, 6.0, 5.0], [2.0, 4.0, 8.0], [4.0, 2.0, 7.0]], [[8.0, 7.0, 7.0], [1.0, 5.0, 2.0], [1.0, 3.0, 2.0]], [[6.0, 4.0, 5.0], [2.0, 1.0, 6.0], [1.0, 7.0, 2.0]]], [[[3.0, 4.0, 8.0], [8.0, 8.0, 7.0], [5.0, 3.0, 1.0]], [[5.0, 4.0, 6.0], [6.0, 8.0, 6.0], [3.0, 5.0, 8.0]], [[6.0, 5.0, 8.0], [5.0, 6.0, 1.0], [6.0, 5.0, 8.0]]], [[[5.0, 2.0, 1.0], [5.0, 1.0, 8.0], [4.0, 7.0, 2.0]], [[7.0, 7.0, 4.0], [7.0, 2.0, 8.0], [4.0, 2.0, 2.0]], [[5.0, 8.0, 1.0], [8.0, 8.0, 1.0], [7.0, 1.0, 3.0]]]]),self.functionspace)
10251        arg.setTaggedValue(1,numarray.array([[[[6.0, 8.0, 2.0], [6.0, 7.0, 8.0], [1.0, 8.0, 8.0]], [[2.0, 5.0, 6.0], [7.0, 3.0, 3.0], [2.0, 1.0, 3.0]], [[8.0, 5.0, 7.0], [6.0, 4.0, 3.0], [8.0, 6.0, 3.0]]], [[[6.0, 2.0, 1.0], [2.0, 1.0, 1.0], [8.0, 5.0, 5.0]], [[4.0, 2.0, 8.0], [4.0, 2.0, 5.0], [2.0, 6.0, 5.0]], [[4.0, 2.0, 3.0], [6.0, 8.0, 4.0], [4.0, 2.0, 2.0]]], [[[1.0, 3.0, 3.0], [8.0, 2.0, 7.0], [7.0, 5.0, 7.0]], [[6.0, 6.0, 7.0], [1.0, 4.0, 5.0], [8.0, 5.0, 8.0]], [[7.0, 3.0, 3.0], [4.0, 5.0, 2.0], [3.0, 4.0, 1.0]]], [[[7.0, 4.0, 3.0], [6.0, 1.0, 7.0], [1.0, 6.0, 5.0]], [[8.0, 4.0, 5.0], [5.0, 6.0, 7.0], [7.0, 1.0, 8.0]], [[6.0, 6.0, 8.0], [3.0, 5.0, 2.0], [1.0, 3.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 8.0, 2.0], [6.0, 7.0, 8.0], [1.0, 8.0, 8.0]], [[2.0, 5.0, 6.0], [7.0, 3.0, 3.0], [2.0, 1.0, 3.0]], [[8.0, 5.0, 7.0], [6.0, 4.0, 3.0], [8.0, 6.0, 3.0]]], [[[6.0, 2.0, 1.0], [2.0, 1.0, 1.0], [8.0, 5.0, 5.0]], [[4.0, 2.0, 8.0], [4.0, 2.0, 5.0], [2.0, 6.0, 5.0]], [[4.0, 2.0, 3.0], [6.0, 8.0, 4.0], [4.0, 2.0, 2.0]]], [[[1.0, 3.0, 3.0], [8.0, 2.0, 7.0], [7.0, 5.0, 7.0]], [[6.0, 6.0, 7.0], [1.0, 4.0, 5.0], [8.0, 5.0, 8.0]], [[7.0, 3.0, 3.0], [4.0, 5.0, 2.0], [3.0, 4.0, 1.0]]], [[[7.0, 4.0, 3.0], [6.0, 1.0, 7.0], [1.0, 6.0, 5.0]], [[8.0, 4.0, 5.0], [5.0, 6.0, 7.0], [7.0, 1.0, 8.0]], [[6.0, 6.0, 8.0], [3.0, 5.0, 2.0], [1.0, 3.0, 3.0]]]]))
10252        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10253        val=msk_val*numarray.array([[[7.0, 8.0]], [[1.0, 4.0]]])+(1.-msk_val)*numarray.array([[[6.0, 1.0]], [[3.0, 8.0]]])        val=msk_val*numarray.array([[[7.0, 8.0]], [[1.0, 4.0]]])+(1.-msk_val)*numarray.array([[[6.0, 1.0]], [[3.0, 8.0]]])
10254        arg[2:,1,2:,:2]=val        arg[2:,1,2:,:2]=val
10255        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10287  class Test_util_slicing_with_tagged_data Line 10287  class Test_util_slicing_with_tagged_data
10287     def test_setslice_taggedData_rank4_expandedData_LLCP(self):     def test_setslice_taggedData_rank4_expandedData_LLCP(self):
10288        arg=Data(numarray.array([[[[8.0, 2.0, 6.0], [5.0, 4.0, 8.0], [1.0, 6.0, 8.0]], [[1.0, 6.0, 5.0], [3.0, 7.0, 4.0], [6.0, 2.0, 6.0]], [[1.0, 6.0, 4.0], [8.0, 4.0, 7.0], [8.0, 3.0, 7.0]]], [[[2.0, 7.0, 6.0], [8.0, 2.0, 8.0], [1.0, 7.0, 3.0]], [[7.0, 4.0, 2.0], [1.0, 6.0, 4.0], [3.0, 5.0, 6.0]], [[6.0, 4.0, 2.0], [1.0, 2.0, 8.0], [3.0, 7.0, 1.0]]], [[[3.0, 6.0, 8.0], [2.0, 3.0, 6.0], [5.0, 2.0, 6.0]], [[2.0, 1.0, 4.0], [5.0, 1.0, 4.0], [7.0, 1.0, 3.0]], [[7.0, 4.0, 8.0], [8.0, 6.0, 7.0], [3.0, 7.0, 2.0]]], [[[2.0, 4.0, 7.0], [7.0, 5.0, 1.0], [8.0, 7.0, 2.0]], [[7.0, 2.0, 6.0], [1.0, 6.0, 2.0], [3.0, 7.0, 1.0]], [[2.0, 5.0, 2.0], [5.0, 2.0, 3.0], [1.0, 5.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 2.0, 6.0], [5.0, 4.0, 8.0], [1.0, 6.0, 8.0]], [[1.0, 6.0, 5.0], [3.0, 7.0, 4.0], [6.0, 2.0, 6.0]], [[1.0, 6.0, 4.0], [8.0, 4.0, 7.0], [8.0, 3.0, 7.0]]], [[[2.0, 7.0, 6.0], [8.0, 2.0, 8.0], [1.0, 7.0, 3.0]], [[7.0, 4.0, 2.0], [1.0, 6.0, 4.0], [3.0, 5.0, 6.0]], [[6.0, 4.0, 2.0], [1.0, 2.0, 8.0], [3.0, 7.0, 1.0]]], [[[3.0, 6.0, 8.0], [2.0, 3.0, 6.0], [5.0, 2.0, 6.0]], [[2.0, 1.0, 4.0], [5.0, 1.0, 4.0], [7.0, 1.0, 3.0]], [[7.0, 4.0, 8.0], [8.0, 6.0, 7.0], [3.0, 7.0, 2.0]]], [[[2.0, 4.0, 7.0], [7.0, 5.0, 1.0], [8.0, 7.0, 2.0]], [[7.0, 2.0, 6.0], [1.0, 6.0, 2.0], [3.0, 7.0, 1.0]], [[2.0, 5.0, 2.0], [5.0, 2.0, 3.0], [1.0, 5.0, 4.0]]]]),self.functionspace)
10289        arg.setTaggedValue(1,numarray.array([[[[7.0, 4.0, 1.0], [6.0, 7.0, 1.0], [8.0, 6.0, 8.0]], [[3.0, 5.0, 1.0], [6.0, 6.0, 8.0], [7.0, 8.0, 6.0]], [[4.0, 5.0, 4.0], [4.0, 7.0, 4.0], [3.0, 1.0, 7.0]]], [[[1.0, 6.0, 1.0], [8.0, 5.0, 8.0], [8.0, 4.0, 3.0]], [[7.0, 5.0, 4.0], [7.0, 7.0, 2.0], [6.0, 2.0, 7.0]], [[6.0, 5.0, 5.0], [3.0, 8.0, 4.0], [7.0, 1.0, 6.0]]], [[[5.0, 3.0, 5.0], [5.0, 5.0, 4.0], [3.0, 8.0, 8.0]], [[4.0, 8.0, 4.0], [3.0, 8.0, 3.0], [5.0, 3.0, 1.0]], [[4.0, 1.0, 1.0], [3.0, 8.0, 3.0], [6.0, 6.0, 5.0]]], [[[6.0, 3.0, 7.0], [7.0, 3.0, 8.0], [2.0, 7.0, 7.0]], [[2.0, 1.0, 1.0], [8.0, 1.0, 2.0], [1.0, 4.0, 8.0]], [[5.0, 4.0, 6.0], [3.0, 3.0, 4.0], [2.0, 3.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 4.0, 1.0], [6.0, 7.0, 1.0], [8.0, 6.0, 8.0]], [[3.0, 5.0, 1.0], [6.0, 6.0, 8.0], [7.0, 8.0, 6.0]], [[4.0, 5.0, 4.0], [4.0, 7.0, 4.0], [3.0, 1.0, 7.0]]], [[[1.0, 6.0, 1.0], [8.0, 5.0, 8.0], [8.0, 4.0, 3.0]], [[7.0, 5.0, 4.0], [7.0, 7.0, 2.0], [6.0, 2.0, 7.0]], [[6.0, 5.0, 5.0], [3.0, 8.0, 4.0], [7.0, 1.0, 6.0]]], [[[5.0, 3.0, 5.0], [5.0, 5.0, 4.0], [3.0, 8.0, 8.0]], [[4.0, 8.0, 4.0], [3.0, 8.0, 3.0], [5.0, 3.0, 1.0]], [[4.0, 1.0, 1.0], [3.0, 8.0, 3.0], [6.0, 6.0, 5.0]]], [[[6.0, 3.0, 7.0], [7.0, 3.0, 8.0], [2.0, 7.0, 7.0]], [[2.0, 1.0, 1.0], [8.0, 1.0, 2.0], [1.0, 4.0, 8.0]], [[5.0, 4.0, 6.0], [3.0, 3.0, 4.0], [2.0, 3.0, 5.0]]]]))
10290        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10291        val=msk_val*numarray.array([[[7.0, 4.0, 7.0]], [[6.0, 2.0, 8.0]]])+(1.-msk_val)*numarray.array([[[7.0, 3.0, 3.0]], [[4.0, 2.0, 7.0]]])        val=msk_val*numarray.array([[[7.0, 4.0, 7.0]], [[6.0, 2.0, 8.0]]])+(1.-msk_val)*numarray.array([[[7.0, 3.0, 3.0]], [[4.0, 2.0, 7.0]]])
10292        arg[2:,2:,:,1]=val        arg[2:,2:,:,1]=val
10293        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10325  class Test_util_slicing_with_tagged_data Line 10325  class Test_util_slicing_with_tagged_data
10325     def test_setslice_taggedData_rank4_expandedData_CLUR(self):     def test_setslice_taggedData_rank4_expandedData_CLUR(self):
10326        arg=Data(numarray.array([[[[4.0, 3.0, 6.0], [7.0, 6.0, 7.0], [6.0, 6.0, 5.0]], [[3.0, 8.0, 3.0], [4.0, 8.0, 1.0], [8.0, 1.0, 1.0]], [[2.0, 5.0, 8.0], [2.0, 5.0, 7.0], [3.0, 1.0, 1.0]]], [[[7.0, 6.0, 2.0], [8.0, 5.0, 1.0], [7.0, 6.0, 1.0]], [[6.0, 6.0, 4.0], [3.0, 4.0, 4.0], [4.0, 2.0, 6.0]], [[1.0, 1.0, 4.0], [7.0, 3.0, 7.0], [4.0, 3.0, 4.0]]], [[[6.0, 2.0, 8.0], [4.0, 7.0, 4.0], [6.0, 6.0, 8.0]], [[2.0, 4.0, 4.0], [1.0, 3.0, 8.0], [7.0, 2.0, 2.0]], [[5.0, 2.0, 3.0], [4.0, 1.0, 7.0], [6.0, 1.0, 1.0]]], [[[1.0, 3.0, 6.0], [5.0, 6.0, 7.0], [2.0, 2.0, 8.0]], [[8.0, 3.0, 6.0], [2.0, 8.0, 8.0], [6.0, 3.0, 4.0]], [[5.0, 1.0, 1.0], [8.0, 8.0, 2.0], [3.0, 3.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 3.0, 6.0], [7.0, 6.0, 7.0], [6.0, 6.0, 5.0]], [[3.0, 8.0, 3.0], [4.0, 8.0, 1.0], [8.0, 1.0, 1.0]], [[2.0, 5.0, 8.0], [2.0, 5.0, 7.0], [3.0, 1.0, 1.0]]], [[[7.0, 6.0, 2.0], [8.0, 5.0, 1.0], [7.0, 6.0, 1.0]], [[6.0, 6.0, 4.0], [3.0, 4.0, 4.0], [4.0, 2.0, 6.0]], [[1.0, 1.0, 4.0], [7.0, 3.0, 7.0], [4.0, 3.0, 4.0]]], [[[6.0, 2.0, 8.0], [4.0, 7.0, 4.0], [6.0, 6.0, 8.0]], [[2.0, 4.0, 4.0], [1.0, 3.0, 8.0], [7.0, 2.0, 2.0]], [[5.0, 2.0, 3.0], [4.0, 1.0, 7.0], [6.0, 1.0, 1.0]]], [[[1.0, 3.0, 6.0], [5.0, 6.0, 7.0], [2.0, 2.0, 8.0]], [[8.0, 3.0, 6.0], [2.0, 8.0, 8.0], [6.0, 3.0, 4.0]], [[5.0, 1.0, 1.0], [8.0, 8.0, 2.0], [3.0, 3.0, 3.0]]]]),self.functionspace)
10327        arg.setTaggedValue(1,numarray.array([[[[7.0, 4.0, 3.0], [5.0, 4.0, 3.0], [4.0, 6.0, 6.0]], [[7.0, 5.0, 8.0], [8.0, 3.0, 5.0], [6.0, 1.0, 5.0]], [[6.0, 2.0, 3.0], [1.0, 6.0, 3.0], [5.0, 8.0, 1.0]]], [[[6.0, 4.0, 6.0], [5.0, 3.0, 5.0], [3.0, 5.0, 7.0]], [[6.0, 5.0, 3.0], [4.0, 3.0, 6.0], [2.0, 8.0, 1.0]], [[2.0, 3.0, 4.0], [2.0, 1.0, 8.0], [6.0, 5.0, 3.0]]], [[[4.0, 5.0, 7.0], [5.0, 5.0, 6.0], [5.0, 5.0, 6.0]], [[6.0, 7.0, 4.0], [4.0, 7.0, 5.0], [1.0, 1.0, 3.0]], [[6.0, 6.0, 5.0], [2.0, 6.0, 3.0], [6.0, 1.0, 4.0]]], [[[1.0, 2.0, 1.0], [8.0, 4.0, 8.0], [1.0, 3.0, 7.0]], [[7.0, 1.0, 5.0], [2.0, 4.0, 1.0], [5.0, 6.0, 4.0]], [[3.0, 7.0, 3.0], [2.0, 6.0, 5.0], [6.0, 8.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 4.0, 3.0], [5.0, 4.0, 3.0], [4.0, 6.0, 6.0]], [[7.0, 5.0, 8.0], [8.0, 3.0, 5.0], [6.0, 1.0, 5.0]], [[6.0, 2.0, 3.0], [1.0, 6.0, 3.0], [5.0, 8.0, 1.0]]], [[[6.0, 4.0, 6.0], [5.0, 3.0, 5.0], [3.0, 5.0, 7.0]], [[6.0, 5.0, 3.0], [4.0, 3.0, 6.0], [2.0, 8.0, 1.0]], [[2.0, 3.0, 4.0], [2.0, 1.0, 8.0], [6.0, 5.0, 3.0]]], [[[4.0, 5.0, 7.0], [5.0, 5.0, 6.0], [5.0, 5.0, 6.0]], [[6.0, 7.0, 4.0], [4.0, 7.0, 5.0], [1.0, 1.0, 3.0]], [[6.0, 6.0, 5.0], [2.0, 6.0, 3.0], [6.0, 1.0, 4.0]]], [[[1.0, 2.0, 1.0], [8.0, 4.0, 8.0], [1.0, 3.0, 7.0]], [[7.0, 1.0, 5.0], [2.0, 4.0, 1.0], [5.0, 6.0, 4.0]], [[3.0, 7.0, 3.0], [2.0, 6.0, 5.0], [6.0, 8.0, 8.0]]]]))
10328        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10329        val=msk_val*numarray.array([[[[3.0], [5.0]]], [[[7.0], [5.0]]], [[[3.0], [2.0]]], [[[5.0], [3.0]]]])+(1.-msk_val)*numarray.array([[[[4.0], [8.0]]], [[[8.0], [2.0]]], [[[8.0], [7.0]]], [[[5.0], [5.0]]]])        val=msk_val*numarray.array([[[[3.0], [5.0]]], [[[7.0], [5.0]]], [[[3.0], [2.0]]], [[[5.0], [3.0]]]])+(1.-msk_val)*numarray.array([[[[4.0], [8.0]]], [[[8.0], [2.0]]], [[[8.0], [7.0]]], [[[5.0], [5.0]]]])
10330        arg[:,2:,:2,1:2]=val        arg[:,2:,:2,1:2]=val
10331        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10363  class Test_util_slicing_with_tagged_data Line 10363  class Test_util_slicing_with_tagged_data
10363     def test_setslice_taggedData_rank4_expandedData_LURN(self):     def test_setslice_taggedData_rank4_expandedData_LURN(self):
10364        arg=Data(numarray.array([[[[7.0, 7.0, 4.0], [8.0, 8.0, 7.0], [1.0, 7.0, 8.0]], [[1.0, 8.0, 5.0], [8.0, 2.0, 5.0], [7.0, 8.0, 5.0]], [[7.0, 7.0, 8.0], [2.0, 1.0, 8.0], [5.0, 3.0, 1.0]]], [[[8.0, 5.0, 4.0], [1.0, 3.0, 7.0], [1.0, 2.0, 3.0]], [[8.0, 6.0, 4.0], [2.0, 1.0, 1.0], [3.0, 8.0, 6.0]], [[7.0, 7.0, 2.0], [4.0, 5.0, 6.0], [4.0, 5.0, 6.0]]], [[[1.0, 6.0, 2.0], [8.0, 1.0, 3.0], [8.0, 8.0, 2.0]], [[1.0, 5.0, 1.0], [5.0, 5.0, 8.0], [8.0, 6.0, 5.0]], [[2.0, 4.0, 3.0], [5.0, 8.0, 1.0], [3.0, 6.0, 8.0]]], [[[2.0, 2.0, 5.0], [3.0, 3.0, 1.0], [7.0, 2.0, 1.0]], [[1.0, 8.0, 8.0], [4.0, 1.0, 1.0], [1.0, 8.0, 5.0]], [[8.0, 8.0, 3.0], [2.0, 2.0, 6.0], [2.0, 4.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 7.0, 4.0], [8.0, 8.0, 7.0], [1.0, 7.0, 8.0]], [[1.0, 8.0, 5.0], [8.0, 2.0, 5.0], [7.0, 8.0, 5.0]], [[7.0, 7.0, 8.0], [2.0, 1.0, 8.0], [5.0, 3.0, 1.0]]], [[[8.0, 5.0, 4.0], [1.0, 3.0, 7.0], [1.0, 2.0, 3.0]], [[8.0, 6.0, 4.0], [2.0, 1.0, 1.0], [3.0, 8.0, 6.0]], [[7.0, 7.0, 2.0], [4.0, 5.0, 6.0], [4.0, 5.0, 6.0]]], [[[1.0, 6.0, 2.0], [8.0, 1.0, 3.0], [8.0, 8.0, 2.0]], [[1.0, 5.0, 1.0], [5.0, 5.0, 8.0], [8.0, 6.0, 5.0]], [[2.0, 4.0, 3.0], [5.0, 8.0, 1.0], [3.0, 6.0, 8.0]]], [[[2.0, 2.0, 5.0], [3.0, 3.0, 1.0], [7.0, 2.0, 1.0]], [[1.0, 8.0, 8.0], [4.0, 1.0, 1.0], [1.0, 8.0, 5.0]], [[8.0, 8.0, 3.0], [2.0, 2.0, 6.0], [2.0, 4.0, 8.0]]]]),self.functionspace)
10365        arg.setTaggedValue(1,numarray.array([[[[5.0, 4.0, 3.0], [4.0, 6.0, 7.0], [3.0, 8.0, 3.0]], [[2.0, 8.0, 5.0], [7.0, 6.0, 6.0], [6.0, 1.0, 5.0]], [[2.0, 1.0, 4.0], [6.0, 8.0, 2.0], [5.0, 7.0, 4.0]]], [[[2.0, 4.0, 3.0], [2.0, 5.0, 1.0], [6.0, 3.0, 1.0]], [[5.0, 2.0, 1.0], [1.0, 3.0, 6.0], [4.0, 6.0, 3.0]], [[7.0, 1.0, 2.0], [6.0, 6.0, 5.0], [1.0, 3.0, 5.0]]], [[[7.0, 4.0, 8.0], [4.0, 1.0, 7.0], [2.0, 3.0, 1.0]], [[6.0, 4.0, 1.0], [5.0, 2.0, 3.0], [2.0, 2.0, 5.0]], [[3.0, 4.0, 8.0], [6.0, 8.0, 7.0], [7.0, 2.0, 3.0]]], [[[1.0, 4.0, 6.0], [6.0, 2.0, 8.0], [2.0, 4.0, 2.0]], [[3.0, 5.0, 8.0], [6.0, 8.0, 3.0], [6.0, 3.0, 5.0]], [[6.0, 1.0, 6.0], [8.0, 3.0, 1.0], [3.0, 1.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 4.0, 3.0], [4.0, 6.0, 7.0], [3.0, 8.0, 3.0]], [[2.0, 8.0, 5.0], [7.0, 6.0, 6.0], [6.0, 1.0, 5.0]], [[2.0, 1.0, 4.0], [6.0, 8.0, 2.0], [5.0, 7.0, 4.0]]], [[[2.0, 4.0, 3.0], [2.0, 5.0, 1.0], [6.0, 3.0, 1.0]], [[5.0, 2.0, 1.0], [1.0, 3.0, 6.0], [4.0, 6.0, 3.0]], [[7.0, 1.0, 2.0], [6.0, 6.0, 5.0], [1.0, 3.0, 5.0]]], [[[7.0, 4.0, 8.0], [4.0, 1.0, 7.0], [2.0, 3.0, 1.0]], [[6.0, 4.0, 1.0], [5.0, 2.0, 3.0], [2.0, 2.0, 5.0]], [[3.0, 4.0, 8.0], [6.0, 8.0, 7.0], [7.0, 2.0, 3.0]]], [[[1.0, 4.0, 6.0], [6.0, 2.0, 8.0], [2.0, 4.0, 2.0]], [[3.0, 5.0, 8.0], [6.0, 8.0, 3.0], [6.0, 3.0, 5.0]], [[6.0, 1.0, 6.0], [8.0, 3.0, 1.0], [3.0, 1.0, 1.0]]]]))
10366        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10367        val=msk_val*numarray.array([[[[2.0, 7.0, 3.0]], [[5.0, 6.0, 3.0]]], [[[5.0, 3.0, 7.0]], [[3.0, 8.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 3.0, 6.0]], [[6.0, 2.0, 6.0]]], [[[4.0, 5.0, 8.0]], [[7.0, 8.0, 6.0]]]])        val=msk_val*numarray.array([[[[2.0, 7.0, 3.0]], [[5.0, 6.0, 3.0]]], [[[5.0, 3.0, 7.0]], [[3.0, 8.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 3.0, 6.0]], [[6.0, 2.0, 6.0]]], [[[4.0, 5.0, 8.0]], [[7.0, 8.0, 6.0]]]])
10368        arg[2:,:2,1:2]=val        arg[2:,:2,1:2]=val
10369        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10401  class Test_util_slicing_with_tagged_data Line 10401  class Test_util_slicing_with_tagged_data
10401     def test_setslice_taggedData_rank4_expandedData_RCUN(self):     def test_setslice_taggedData_rank4_expandedData_RCUN(self):
10402        arg=Data(numarray.array([[[[8.0, 7.0, 2.0], [1.0, 4.0, 8.0], [5.0, 4.0, 6.0]], [[7.0, 3.0, 8.0], [8.0, 8.0, 7.0], [8.0, 7.0, 1.0]], [[6.0, 3.0, 5.0], [8.0, 5.0, 7.0], [1.0, 8.0, 2.0]]], [[[5.0, 4.0, 4.0], [7.0, 3.0, 4.0], [3.0, 6.0, 8.0]], [[2.0, 3.0, 5.0], [1.0, 2.0, 1.0], [3.0, 2.0, 6.0]], [[7.0, 1.0, 5.0], [8.0, 8.0, 2.0], [3.0, 3.0, 1.0]]], [[[4.0, 1.0, 1.0], [8.0, 7.0, 8.0], [8.0, 7.0, 7.0]], [[8.0, 7.0, 4.0], [8.0, 2.0, 5.0], [7.0, 4.0, 4.0]], [[6.0, 8.0, 3.0], [3.0, 6.0, 6.0], [3.0, 3.0, 2.0]]], [[[4.0, 2.0, 4.0], [7.0, 3.0, 7.0], [7.0, 7.0, 2.0]], [[4.0, 6.0, 8.0], [8.0, 8.0, 7.0], [2.0, 6.0, 2.0]], [[7.0, 2.0, 1.0], [4.0, 7.0, 1.0], [7.0, 3.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 7.0, 2.0], [1.0, 4.0, 8.0], [5.0, 4.0, 6.0]], [[7.0, 3.0, 8.0], [8.0, 8.0, 7.0], [8.0, 7.0, 1.0]], [[6.0, 3.0, 5.0], [8.0, 5.0, 7.0], [1.0, 8.0, 2.0]]], [[[5.0, 4.0, 4.0], [7.0, 3.0, 4.0], [3.0, 6.0, 8.0]], [[2.0, 3.0, 5.0], [1.0, 2.0, 1.0], [3.0, 2.0, 6.0]], [[7.0, 1.0, 5.0], [8.0, 8.0, 2.0], [3.0, 3.0, 1.0]]], [[[4.0, 1.0, 1.0], [8.0, 7.0, 8.0], [8.0, 7.0, 7.0]], [[8.0, 7.0, 4.0], [8.0, 2.0, 5.0], [7.0, 4.0, 4.0]], [[6.0, 8.0, 3.0], [3.0, 6.0, 6.0], [3.0, 3.0, 2.0]]], [[[4.0, 2.0, 4.0], [7.0, 3.0, 7.0], [7.0, 7.0, 2.0]], [[4.0, 6.0, 8.0], [8.0, 8.0, 7.0], [2.0, 6.0, 2.0]], [[7.0, 2.0, 1.0], [4.0, 7.0, 1.0], [7.0, 3.0, 7.0]]]]),self.functionspace)
10403        arg.setTaggedValue(1,numarray.array([[[[4.0, 1.0, 8.0], [5.0, 7.0, 7.0], [7.0, 3.0, 7.0]], [[2.0, 3.0, 2.0], [2.0, 7.0, 8.0], [8.0, 7.0, 6.0]], [[1.0, 2.0, 3.0], [3.0, 6.0, 8.0], [5.0, 8.0, 6.0]]], [[[7.0, 4.0, 7.0], [8.0, 8.0, 6.0], [4.0, 7.0, 3.0]], [[8.0, 2.0, 4.0], [7.0, 1.0, 8.0], [8.0, 4.0, 7.0]], [[2.0, 7.0, 1.0], [1.0, 6.0, 1.0], [2.0, 6.0, 4.0]]], [[[5.0, 2.0, 4.0], [4.0, 2.0, 6.0], [3.0, 1.0, 7.0]], [[8.0, 4.0, 3.0], [2.0, 1.0, 3.0], [2.0, 1.0, 5.0]], [[8.0, 8.0, 6.0], [5.0, 8.0, 5.0], [4.0, 1.0, 8.0]]], [[[8.0, 4.0, 3.0], [6.0, 7.0, 5.0], [2.0, 4.0, 5.0]], [[3.0, 5.0, 7.0], [8.0, 3.0, 6.0], [1.0, 6.0, 2.0]], [[3.0, 7.0, 4.0], [7.0, 6.0, 8.0], [4.0, 6.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 1.0, 8.0], [5.0, 7.0, 7.0], [7.0, 3.0, 7.0]], [[2.0, 3.0, 2.0], [2.0, 7.0, 8.0], [8.0, 7.0, 6.0]], [[1.0, 2.0, 3.0], [3.0, 6.0, 8.0], [5.0, 8.0, 6.0]]], [[[7.0, 4.0, 7.0], [8.0, 8.0, 6.0], [4.0, 7.0, 3.0]], [[8.0, 2.0, 4.0], [7.0, 1.0, 8.0], [8.0, 4.0, 7.0]], [[2.0, 7.0, 1.0], [1.0, 6.0, 1.0], [2.0, 6.0, 4.0]]], [[[5.0, 2.0, 4.0], [4.0, 2.0, 6.0], [3.0, 1.0, 7.0]], [[8.0, 4.0, 3.0], [2.0, 1.0, 3.0], [2.0, 1.0, 5.0]], [[8.0, 8.0, 6.0], [5.0, 8.0, 5.0], [4.0, 1.0, 8.0]]], [[[8.0, 4.0, 3.0], [6.0, 7.0, 5.0], [2.0, 4.0, 5.0]], [[3.0, 5.0, 7.0], [8.0, 3.0, 6.0], [1.0, 6.0, 2.0]], [[3.0, 7.0, 4.0], [7.0, 6.0, 8.0], [4.0, 6.0, 5.0]]]]))
10404        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10405        val=msk_val*numarray.array([[[[6.0, 2.0, 3.0], [2.0, 5.0, 5.0]], [[4.0, 2.0, 2.0], [5.0, 2.0, 3.0]], [[5.0, 5.0, 8.0], [3.0, 8.0, 1.0]]], [[[5.0, 4.0, 8.0], [8.0, 8.0, 5.0]], [[2.0, 6.0, 4.0], [8.0, 5.0, 3.0]], [[5.0, 5.0, 4.0], [7.0, 1.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 3.0, 7.0], [6.0, 4.0, 1.0]], [[1.0, 7.0, 8.0], [3.0, 1.0, 8.0]], [[2.0, 2.0, 7.0], [2.0, 2.0, 2.0]]], [[[8.0, 4.0, 1.0], [2.0, 2.0, 3.0]], [[5.0, 2.0, 7.0], [3.0, 2.0, 2.0]], [[8.0, 3.0, 3.0], [7.0, 7.0, 1.0]]]])        val=msk_val*numarray.array([[[[6.0, 2.0, 3.0], [2.0, 5.0, 5.0]], [[4.0, 2.0, 2.0], [5.0, 2.0, 3.0]], [[5.0, 5.0, 8.0], [3.0, 8.0, 1.0]]], [[[5.0, 4.0, 8.0], [8.0, 8.0, 5.0]], [[2.0, 6.0, 4.0], [8.0, 5.0, 3.0]], [[5.0, 5.0, 4.0], [7.0, 1.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 3.0, 7.0], [6.0, 4.0, 1.0]], [[1.0, 7.0, 8.0], [3.0, 1.0, 8.0]], [[2.0, 2.0, 7.0], [2.0, 2.0, 2.0]]], [[[8.0, 4.0, 1.0], [2.0, 2.0, 3.0]], [[5.0, 2.0, 7.0], [3.0, 2.0, 2.0]], [[8.0, 3.0, 3.0], [7.0, 7.0, 1.0]]]])
10406        arg[1:3,:,:2]=val        arg[1:3,:,:2]=val
10407        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10439  class Test_util_slicing_with_tagged_data Line 10439  class Test_util_slicing_with_tagged_data
10439     def test_setslice_taggedData_rank4_expandedData_CUCN(self):     def test_setslice_taggedData_rank4_expandedData_CUCN(self):
10440        arg=Data(numarray.array([[[[1.0, 7.0, 6.0], [7.0, 1.0, 1.0], [1.0, 1.0, 2.0]], [[6.0, 4.0, 3.0], [3.0, 4.0, 1.0], [8.0, 4.0, 7.0]], [[7.0, 1.0, 6.0], [3.0, 6.0, 1.0], [4.0, 6.0, 2.0]]], [[[3.0, 1.0, 7.0], [3.0, 7.0, 7.0], [1.0, 1.0, 2.0]], [[1.0, 1.0, 1.0], [4.0, 8.0, 3.0], [2.0, 1.0, 1.0]], [[4.0, 6.0, 1.0], [5.0, 1.0, 6.0], [5.0, 2.0, 7.0]]], [[[7.0, 2.0, 4.0], [4.0, 5.0, 7.0], [8.0, 7.0, 4.0]], [[5.0, 1.0, 3.0], [3.0, 8.0, 7.0], [8.0, 2.0, 8.0]], [[5.0, 5.0, 7.0], [7.0, 7.0, 1.0], [2.0, 3.0, 6.0]]], [[[2.0, 6.0, 6.0], [8.0, 7.0, 3.0], [1.0, 7.0, 5.0]], [[6.0, 4.0, 1.0], [8.0, 5.0, 3.0], [7.0, 2.0, 3.0]], [[2.0, 1.0, 8.0], [8.0, 6.0, 4.0], [3.0, 5.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 7.0, 6.0], [7.0, 1.0, 1.0], [1.0, 1.0, 2.0]], [[6.0, 4.0, 3.0], [3.0, 4.0, 1.0], [8.0, 4.0, 7.0]], [[7.0, 1.0, 6.0], [3.0, 6.0, 1.0], [4.0, 6.0, 2.0]]], [[[3.0, 1.0, 7.0], [3.0, 7.0, 7.0], [1.0, 1.0, 2.0]], [[1.0, 1.0, 1.0], [4.0, 8.0, 3.0], [2.0, 1.0, 1.0]], [[4.0, 6.0, 1.0], [5.0, 1.0, 6.0], [5.0, 2.0, 7.0]]], [[[7.0, 2.0, 4.0], [4.0, 5.0, 7.0], [8.0, 7.0, 4.0]], [[5.0, 1.0, 3.0], [3.0, 8.0, 7.0], [8.0, 2.0, 8.0]], [[5.0, 5.0, 7.0], [7.0, 7.0, 1.0], [2.0, 3.0, 6.0]]], [[[2.0, 6.0, 6.0], [8.0, 7.0, 3.0], [1.0, 7.0, 5.0]], [[6.0, 4.0, 1.0], [8.0, 5.0, 3.0], [7.0, 2.0, 3.0]], [[2.0, 1.0, 8.0], [8.0, 6.0, 4.0], [3.0, 5.0, 5.0]]]]),self.functionspace)
10441        arg.setTaggedValue(1,numarray.array([[[[4.0, 8.0, 6.0], [5.0, 8.0, 4.0], [3.0, 2.0, 1.0]], [[1.0, 3.0, 6.0], [6.0, 7.0, 8.0], [6.0, 5.0, 6.0]], [[3.0, 4.0, 8.0], [6.0, 4.0, 4.0], [6.0, 6.0, 7.0]]], [[[2.0, 4.0, 3.0], [1.0, 8.0, 7.0], [5.0, 5.0, 3.0]], [[6.0, 5.0, 5.0], [1.0, 7.0, 1.0], [5.0, 5.0, 5.0]], [[4.0, 1.0, 5.0], [5.0, 2.0, 1.0], [4.0, 2.0, 3.0]]], [[[5.0, 8.0, 2.0], [3.0, 5.0, 8.0], [6.0, 3.0, 3.0]], [[8.0, 1.0, 3.0], [8.0, 3.0, 2.0], [8.0, 6.0, 5.0]], [[3.0, 5.0, 1.0], [4.0, 2.0, 2.0], [3.0, 6.0, 2.0]]], [[[7.0, 3.0, 6.0], [7.0, 3.0, 1.0], [6.0, 7.0, 6.0]], [[2.0, 8.0, 1.0], [3.0, 4.0, 4.0], [1.0, 3.0, 1.0]], [[7.0, 3.0, 3.0], [5.0, 1.0, 3.0], [1.0, 3.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 8.0, 6.0], [5.0, 8.0, 4.0], [3.0, 2.0, 1.0]], [[1.0, 3.0, 6.0], [6.0, 7.0, 8.0], [6.0, 5.0, 6.0]], [[3.0, 4.0, 8.0], [6.0, 4.0, 4.0], [6.0, 6.0, 7.0]]], [[[2.0, 4.0, 3.0], [1.0, 8.0, 7.0], [5.0, 5.0, 3.0]], [[6.0, 5.0, 5.0], [1.0, 7.0, 1.0], [5.0, 5.0, 5.0]], [[4.0, 1.0, 5.0], [5.0, 2.0, 1.0], [4.0, 2.0, 3.0]]], [[[5.0, 8.0, 2.0], [3.0, 5.0, 8.0], [6.0, 3.0, 3.0]], [[8.0, 1.0, 3.0], [8.0, 3.0, 2.0], [8.0, 6.0, 5.0]], [[3.0, 5.0, 1.0], [4.0, 2.0, 2.0], [3.0, 6.0, 2.0]]], [[[7.0, 3.0, 6.0], [7.0, 3.0, 1.0], [6.0, 7.0, 6.0]], [[2.0, 8.0, 1.0], [3.0, 4.0, 4.0], [1.0, 3.0, 1.0]], [[7.0, 3.0, 3.0], [5.0, 1.0, 3.0], [1.0, 3.0, 3.0]]]]))
10442        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10443        val=msk_val*numarray.array([[[[3.0, 6.0, 3.0], [5.0, 5.0, 2.0], [3.0, 3.0, 4.0]], [[5.0, 6.0, 5.0], [8.0, 7.0, 8.0], [4.0, 2.0, 2.0]]], [[[1.0, 1.0, 1.0], [2.0, 7.0, 4.0], [6.0, 6.0, 8.0]], [[6.0, 5.0, 8.0], [7.0, 7.0, 3.0], [3.0, 7.0, 1.0]]], [[[5.0, 1.0, 4.0], [8.0, 2.0, 6.0], [7.0, 2.0, 1.0]], [[5.0, 4.0, 2.0], [7.0, 2.0, 2.0], [2.0, 3.0, 8.0]]], [[[2.0, 8.0, 4.0], [7.0, 5.0, 8.0], [5.0, 6.0, 8.0]], [[5.0, 4.0, 6.0], [2.0, 6.0, 5.0], [3.0, 5.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 3.0, 4.0], [6.0, 2.0, 1.0], [1.0, 7.0, 3.0]], [[6.0, 8.0, 8.0], [4.0, 6.0, 5.0], [4.0, 1.0, 8.0]]], [[[5.0, 6.0, 3.0], [2.0, 3.0, 4.0], [4.0, 7.0, 4.0]], [[4.0, 4.0, 5.0], [7.0, 4.0, 4.0], [8.0, 7.0, 7.0]]], [[[6.0, 7.0, 1.0], [3.0, 7.0, 4.0], [1.0, 1.0, 5.0]], [[7.0, 2.0, 4.0], [2.0, 3.0, 1.0], [3.0, 7.0, 1.0]]], [[[7.0, 4.0, 5.0], [8.0, 3.0, 1.0], [8.0, 6.0, 8.0]], [[5.0, 1.0, 3.0], [5.0, 1.0, 5.0], [6.0, 7.0, 3.0]]]])        val=msk_val*numarray.array([[[[3.0, 6.0, 3.0], [5.0, 5.0, 2.0], [3.0, 3.0, 4.0]], [[5.0, 6.0, 5.0], [8.0, 7.0, 8.0], [4.0, 2.0, 2.0]]], [[[1.0, 1.0, 1.0], [2.0, 7.0, 4.0], [6.0, 6.0, 8.0]], [[6.0, 5.0, 8.0], [7.0, 7.0, 3.0], [3.0, 7.0, 1.0]]], [[[5.0, 1.0, 4.0], [8.0, 2.0, 6.0], [7.0, 2.0, 1.0]], [[5.0, 4.0, 2.0], [7.0, 2.0, 2.0], [2.0, 3.0, 8.0]]], [[[2.0, 8.0, 4.0], [7.0, 5.0, 8.0], [5.0, 6.0, 8.0]], [[5.0, 4.0, 6.0], [2.0, 6.0, 5.0], [3.0, 5.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 3.0, 4.0], [6.0, 2.0, 1.0], [1.0, 7.0, 3.0]], [[6.0, 8.0, 8.0], [4.0, 6.0, 5.0], [4.0, 1.0, 8.0]]], [[[5.0, 6.0, 3.0], [2.0, 3.0, 4.0], [4.0, 7.0, 4.0]], [[4.0, 4.0, 5.0], [7.0, 4.0, 4.0], [8.0, 7.0, 7.0]]], [[[6.0, 7.0, 1.0], [3.0, 7.0, 4.0], [1.0, 1.0, 5.0]], [[7.0, 2.0, 4.0], [2.0, 3.0, 1.0], [3.0, 7.0, 1.0]]], [[[7.0, 4.0, 5.0], [8.0, 3.0, 1.0], [8.0, 6.0, 8.0]], [[5.0, 1.0, 3.0], [5.0, 1.0, 5.0], [6.0, 7.0, 3.0]]]])
10444        arg[:,:2,:]=val        arg[:,:2,:]=val
10445        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10477  class Test_util_slicing_with_tagged_data Line 10477  class Test_util_slicing_with_tagged_data
10477     def test_setslice_taggedData_rank4_expandedData_PPRU(self):     def test_setslice_taggedData_rank4_expandedData_PPRU(self):
10478        arg=Data(numarray.array([[[[2.0, 4.0, 8.0], [2.0, 7.0, 5.0], [7.0, 4.0, 1.0]], [[8.0, 6.0, 8.0], [3.0, 1.0, 2.0], [4.0, 7.0, 7.0]], [[4.0, 7.0, 4.0], [1.0, 7.0, 2.0], [4.0, 3.0, 5.0]]], [[[1.0, 8.0, 2.0], [8.0, 4.0, 2.0], [5.0, 1.0, 4.0]], [[1.0, 3.0, 3.0], [6.0, 7.0, 4.0], [6.0, 2.0, 7.0]], [[4.0, 5.0, 1.0], [3.0, 7.0, 5.0], [8.0, 5.0, 4.0]]], [[[3.0, 6.0, 8.0], [7.0, 4.0, 4.0], [4.0, 5.0, 3.0]], [[5.0, 6.0, 3.0], [8.0, 3.0, 5.0], [5.0, 7.0, 7.0]], [[7.0, 3.0, 1.0], [8.0, 7.0, 2.0], [1.0, 2.0, 1.0]]], [[[4.0, 5.0, 3.0], [5.0, 2.0, 4.0], [5.0, 6.0, 6.0]], [[5.0, 5.0, 8.0], [7.0, 2.0, 1.0], [8.0, 4.0, 2.0]], [[2.0, 4.0, 8.0], [2.0, 5.0, 1.0], [7.0, 3.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 4.0, 8.0], [2.0, 7.0, 5.0], [7.0, 4.0, 1.0]], [[8.0, 6.0, 8.0], [3.0, 1.0, 2.0], [4.0, 7.0, 7.0]], [[4.0, 7.0, 4.0], [1.0, 7.0, 2.0], [4.0, 3.0, 5.0]]], [[[1.0, 8.0, 2.0], [8.0, 4.0, 2.0], [5.0, 1.0, 4.0]], [[1.0, 3.0, 3.0], [6.0, 7.0, 4.0], [6.0, 2.0, 7.0]], [[4.0, 5.0, 1.0], [3.0, 7.0, 5.0], [8.0, 5.0, 4.0]]], [[[3.0, 6.0, 8.0], [7.0, 4.0, 4.0], [4.0, 5.0, 3.0]], [[5.0, 6.0, 3.0], [8.0, 3.0, 5.0], [5.0, 7.0, 7.0]], [[7.0, 3.0, 1.0], [8.0, 7.0, 2.0], [1.0, 2.0, 1.0]]], [[[4.0, 5.0, 3.0], [5.0, 2.0, 4.0], [5.0, 6.0, 6.0]], [[5.0, 5.0, 8.0], [7.0, 2.0, 1.0], [8.0, 4.0, 2.0]], [[2.0, 4.0, 8.0], [2.0, 5.0, 1.0], [7.0, 3.0, 8.0]]]]),self.functionspace)
10479        arg.setTaggedValue(1,numarray.array([[[[4.0, 5.0, 6.0], [8.0, 3.0, 5.0], [3.0, 4.0, 8.0]], [[6.0, 7.0, 1.0], [1.0, 4.0, 2.0], [5.0, 4.0, 6.0]], [[3.0, 7.0, 3.0], [4.0, 1.0, 5.0], [4.0, 1.0, 4.0]]], [[[5.0, 5.0, 7.0], [5.0, 8.0, 5.0], [5.0, 2.0, 2.0]], [[1.0, 7.0, 2.0], [4.0, 7.0, 6.0], [7.0, 5.0, 8.0]], [[8.0, 8.0, 8.0], [5.0, 3.0, 6.0], [5.0, 8.0, 5.0]]], [[[5.0, 5.0, 4.0], [6.0, 5.0, 2.0], [4.0, 3.0, 2.0]], [[3.0, 7.0, 4.0], [3.0, 5.0, 5.0], [4.0, 6.0, 5.0]], [[7.0, 4.0, 8.0], [1.0, 6.0, 5.0], [8.0, 1.0, 5.0]]], [[[8.0, 2.0, 4.0], [7.0, 5.0, 7.0], [1.0, 2.0, 3.0]], [[6.0, 6.0, 7.0], [8.0, 2.0, 6.0], [4.0, 7.0, 8.0]], [[4.0, 3.0, 5.0], [1.0, 4.0, 7.0], [5.0, 7.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 5.0, 6.0], [8.0, 3.0, 5.0], [3.0, 4.0, 8.0]], [[6.0, 7.0, 1.0], [1.0, 4.0, 2.0], [5.0, 4.0, 6.0]], [[3.0, 7.0, 3.0], [4.0, 1.0, 5.0], [4.0, 1.0, 4.0]]], [[[5.0, 5.0, 7.0], [5.0, 8.0, 5.0], [5.0, 2.0, 2.0]], [[1.0, 7.0, 2.0], [4.0, 7.0, 6.0], [7.0, 5.0, 8.0]], [[8.0, 8.0, 8.0], [5.0, 3.0, 6.0], [5.0, 8.0, 5.0]]], [[[5.0, 5.0, 4.0], [6.0, 5.0, 2.0], [4.0, 3.0, 2.0]], [[3.0, 7.0, 4.0], [3.0, 5.0, 5.0], [4.0, 6.0, 5.0]], [[7.0, 4.0, 8.0], [1.0, 6.0, 5.0], [8.0, 1.0, 5.0]]], [[[8.0, 2.0, 4.0], [7.0, 5.0, 7.0], [1.0, 2.0, 3.0]], [[6.0, 6.0, 7.0], [8.0, 2.0, 6.0], [4.0, 7.0, 8.0]], [[4.0, 3.0, 5.0], [1.0, 4.0, 7.0], [5.0, 7.0, 4.0]]]]))
10480        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10481        val=msk_val*numarray.array([[8.0, 8.0]])+(1.-msk_val)*numarray.array([[1.0, 3.0]])        val=msk_val*numarray.array([[8.0, 8.0]])+(1.-msk_val)*numarray.array([[1.0, 3.0]])
10482        arg[2,1,1:2,:2]=val        arg[2,1,1:2,:2]=val
10483        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10515  class Test_util_slicing_with_tagged_data Line 10515  class Test_util_slicing_with_tagged_data
10515     def test_setslice_taggedData_rank4_expandedData_CCCP(self):     def test_setslice_taggedData_rank4_expandedData_CCCP(self):
10516        arg=Data(numarray.array([[[[2.0, 6.0, 1.0], [2.0, 7.0, 5.0], [4.0, 8.0, 2.0]], [[6.0, 3.0, 7.0], [1.0, 8.0, 7.0], [6.0, 7.0, 2.0]], [[5.0, 2.0, 7.0], [8.0, 3.0, 6.0], [3.0, 2.0, 7.0]]], [[[2.0, 2.0, 4.0], [2.0, 7.0, 8.0], [8.0, 1.0, 8.0]], [[8.0, 4.0, 5.0], [1.0, 1.0, 1.0], [5.0, 7.0, 3.0]], [[5.0, 7.0, 1.0], [7.0, 7.0, 2.0], [4.0, 5.0, 5.0]]], [[[8.0, 6.0, 1.0], [2.0, 5.0, 6.0], [2.0, 6.0, 4.0]], [[2.0, 1.0, 5.0], [3.0, 1.0, 1.0], [4.0, 4.0, 1.0]], [[2.0, 5.0, 4.0], [6.0, 3.0, 2.0], [3.0, 1.0, 4.0]]], [[[4.0, 2.0, 1.0], [1.0, 3.0, 7.0], [6.0, 2.0, 1.0]], [[4.0, 4.0, 7.0], [6.0, 1.0, 7.0], [3.0, 5.0, 2.0]], [[1.0, 6.0, 1.0], [6.0, 3.0, 5.0], [5.0, 3.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 6.0, 1.0], [2.0, 7.0, 5.0], [4.0, 8.0, 2.0]], [[6.0, 3.0, 7.0], [1.0, 8.0, 7.0], [6.0, 7.0, 2.0]], [[5.0, 2.0, 7.0], [8.0, 3.0, 6.0], [3.0, 2.0, 7.0]]], [[[2.0, 2.0, 4.0], [2.0, 7.0, 8.0], [8.0, 1.0, 8.0]], [[8.0, 4.0, 5.0], [1.0, 1.0, 1.0], [5.0, 7.0, 3.0]], [[5.0, 7.0, 1.0], [7.0, 7.0, 2.0], [4.0, 5.0, 5.0]]], [[[8.0, 6.0, 1.0], [2.0, 5.0, 6.0], [2.0, 6.0, 4.0]], [[2.0, 1.0, 5.0], [3.0, 1.0, 1.0], [4.0, 4.0, 1.0]], [[2.0, 5.0, 4.0], [6.0, 3.0, 2.0], [3.0, 1.0, 4.0]]], [[[4.0, 2.0, 1.0], [1.0, 3.0, 7.0], [6.0, 2.0, 1.0]], [[4.0, 4.0, 7.0], [6.0, 1.0, 7.0], [3.0, 5.0, 2.0]], [[1.0, 6.0, 1.0], [6.0, 3.0, 5.0], [5.0, 3.0, 2.0]]]]),self.functionspace)
10517        arg.setTaggedValue(1,numarray.array([[[[3.0, 3.0, 7.0], [2.0, 7.0, 1.0], [4.0, 2.0, 8.0]], [[7.0, 5.0, 8.0], [2.0, 8.0, 7.0], [8.0, 3.0, 6.0]], [[6.0, 2.0, 3.0], [7.0, 3.0, 1.0], [3.0, 1.0, 6.0]]], [[[4.0, 7.0, 4.0], [6.0, 1.0, 2.0], [5.0, 2.0, 6.0]], [[2.0, 7.0, 5.0], [2.0, 7.0, 1.0], [3.0, 1.0, 5.0]], [[1.0, 4.0, 5.0], [6.0, 1.0, 7.0], [7.0, 4.0, 8.0]]], [[[1.0, 3.0, 3.0], [3.0, 4.0, 5.0], [3.0, 5.0, 5.0]], [[2.0, 1.0, 4.0], [1.0, 7.0, 2.0], [8.0, 7.0, 1.0]], [[2.0, 4.0, 8.0], [2.0, 4.0, 2.0], [3.0, 4.0, 7.0]]], [[[3.0, 6.0, 2.0], [4.0, 8.0, 7.0], [3.0, 8.0, 6.0]], [[4.0, 1.0, 5.0], [1.0, 7.0, 5.0], [7.0, 4.0, 4.0]], [[2.0, 5.0, 8.0], [5.0, 2.0, 8.0], [7.0, 1.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 3.0, 7.0], [2.0, 7.0, 1.0], [4.0, 2.0, 8.0]], [[7.0, 5.0, 8.0], [2.0, 8.0, 7.0], [8.0, 3.0, 6.0]], [[6.0, 2.0, 3.0], [7.0, 3.0, 1.0], [3.0, 1.0, 6.0]]], [[[4.0, 7.0, 4.0], [6.0, 1.0, 2.0], [5.0, 2.0, 6.0]], [[2.0, 7.0, 5.0], [2.0, 7.0, 1.0], [3.0, 1.0, 5.0]], [[1.0, 4.0, 5.0], [6.0, 1.0, 7.0], [7.0, 4.0, 8.0]]], [[[1.0, 3.0, 3.0], [3.0, 4.0, 5.0], [3.0, 5.0, 5.0]], [[2.0, 1.0, 4.0], [1.0, 7.0, 2.0], [8.0, 7.0, 1.0]], [[2.0, 4.0, 8.0], [2.0, 4.0, 2.0], [3.0, 4.0, 7.0]]], [[[3.0, 6.0, 2.0], [4.0, 8.0, 7.0], [3.0, 8.0, 6.0]], [[4.0, 1.0, 5.0], [1.0, 7.0, 5.0], [7.0, 4.0, 4.0]], [[2.0, 5.0, 8.0], [5.0, 2.0, 8.0], [7.0, 1.0, 3.0]]]]))
10518        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10519        val=msk_val*numarray.array([[[8.0, 5.0, 3.0], [3.0, 3.0, 1.0], [5.0, 4.0, 8.0]], [[2.0, 6.0, 5.0], [6.0, 5.0, 2.0], [7.0, 7.0, 3.0]], [[7.0, 2.0, 1.0], [6.0, 6.0, 8.0], [5.0, 3.0, 6.0]], [[2.0, 1.0, 1.0], [2.0, 5.0, 7.0], [2.0, 1.0, 2.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 3.0], [3.0, 7.0, 4.0], [7.0, 2.0, 2.0]], [[7.0, 7.0, 3.0], [1.0, 2.0, 6.0], [3.0, 4.0, 8.0]], [[4.0, 1.0, 8.0], [2.0, 8.0, 8.0], [2.0, 4.0, 3.0]], [[1.0, 5.0, 1.0], [4.0, 5.0, 3.0], [4.0, 5.0, 6.0]]])        val=msk_val*numarray.array([[[8.0, 5.0, 3.0], [3.0, 3.0, 1.0], [5.0, 4.0, 8.0]], [[2.0, 6.0, 5.0], [6.0, 5.0, 2.0], [7.0, 7.0, 3.0]], [[7.0, 2.0, 1.0], [6.0, 6.0, 8.0], [5.0, 3.0, 6.0]], [[2.0, 1.0, 1.0], [2.0, 5.0, 7.0], [2.0, 1.0, 2.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 3.0], [3.0, 7.0, 4.0], [7.0, 2.0, 2.0]], [[7.0, 7.0, 3.0], [1.0, 2.0, 6.0], [3.0, 4.0, 8.0]], [[4.0, 1.0, 8.0], [2.0, 8.0, 8.0], [2.0, 4.0, 3.0]], [[1.0, 5.0, 1.0], [4.0, 5.0, 3.0], [4.0, 5.0, 6.0]]])
10520        arg[:,:,:,1]=val        arg[:,:,:,1]=val
10521        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10553  class Test_util_slicing_with_tagged_data Line 10553  class Test_util_slicing_with_tagged_data
10553     def test_setslice_taggedData_rank4_expandedData_LRUR(self):     def test_setslice_taggedData_rank4_expandedData_LRUR(self):
10554        arg=Data(numarray.array([[[[5.0, 4.0, 8.0], [8.0, 4.0, 8.0], [7.0, 4.0, 5.0]], [[3.0, 6.0, 3.0], [8.0, 7.0, 3.0], [7.0, 3.0, 7.0]], [[3.0, 5.0, 7.0], [3.0, 5.0, 6.0], [2.0, 8.0, 1.0]]], [[[3.0, 7.0, 1.0], [5.0, 2.0, 5.0], [5.0, 2.0, 8.0]], [[5.0, 4.0, 5.0], [5.0, 6.0, 5.0], [6.0, 4.0, 2.0]], [[7.0, 4.0, 3.0], [8.0, 5.0, 2.0], [2.0, 3.0, 2.0]]], [[[7.0, 5.0, 1.0], [8.0, 4.0, 2.0], [5.0, 6.0, 4.0]], [[2.0, 3.0, 8.0], [2.0, 3.0, 4.0], [3.0, 7.0, 8.0]], [[2.0, 3.0, 5.0], [3.0, 2.0, 1.0], [5.0, 3.0, 2.0]]], [[[7.0, 6.0, 6.0], [3.0, 4.0, 6.0], [6.0, 7.0, 4.0]], [[4.0, 8.0, 5.0], [8.0, 7.0, 1.0], [4.0, 7.0, 1.0]], [[3.0, 2.0, 6.0], [6.0, 3.0, 6.0], [6.0, 6.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 4.0, 8.0], [8.0, 4.0, 8.0], [7.0, 4.0, 5.0]], [[3.0, 6.0, 3.0], [8.0, 7.0, 3.0], [7.0, 3.0, 7.0]], [[3.0, 5.0, 7.0], [3.0, 5.0, 6.0], [2.0, 8.0, 1.0]]], [[[3.0, 7.0, 1.0], [5.0, 2.0, 5.0], [5.0, 2.0, 8.0]], [[5.0, 4.0, 5.0], [5.0, 6.0, 5.0], [6.0, 4.0, 2.0]], [[7.0, 4.0, 3.0], [8.0, 5.0, 2.0], [2.0, 3.0, 2.0]]], [[[7.0, 5.0, 1.0], [8.0, 4.0, 2.0], [5.0, 6.0, 4.0]], [[2.0, 3.0, 8.0], [2.0, 3.0, 4.0], [3.0, 7.0, 8.0]], [[2.0, 3.0, 5.0], [3.0, 2.0, 1.0], [5.0, 3.0, 2.0]]], [[[7.0, 6.0, 6.0], [3.0, 4.0, 6.0], [6.0, 7.0, 4.0]], [[4.0, 8.0, 5.0], [8.0, 7.0, 1.0], [4.0, 7.0, 1.0]], [[3.0, 2.0, 6.0], [6.0, 3.0, 6.0], [6.0, 6.0, 6.0]]]]),self.functionspace)
10555        arg.setTaggedValue(1,numarray.array([[[[6.0, 2.0, 4.0], [3.0, 3.0, 7.0], [5.0, 3.0, 1.0]], [[2.0, 1.0, 1.0], [8.0, 6.0, 6.0], [7.0, 7.0, 7.0]], [[3.0, 8.0, 7.0], [8.0, 1.0, 4.0], [5.0, 2.0, 7.0]]], [[[1.0, 2.0, 6.0], [2.0, 7.0, 1.0], [7.0, 8.0, 6.0]], [[5.0, 5.0, 5.0], [1.0, 8.0, 8.0], [2.0, 5.0, 3.0]], [[4.0, 7.0, 4.0], [2.0, 2.0, 3.0], [7.0, 3.0, 6.0]]], [[[1.0, 2.0, 6.0], [2.0, 8.0, 3.0], [7.0, 5.0, 4.0]], [[1.0, 5.0, 1.0], [3.0, 2.0, 6.0], [6.0, 5.0, 3.0]], [[8.0, 2.0, 7.0], [7.0, 6.0, 1.0], [6.0, 3.0, 3.0]]], [[[2.0, 4.0, 5.0], [1.0, 7.0, 6.0], [1.0, 8.0, 3.0]], [[1.0, 1.0, 7.0], [7.0, 5.0, 5.0], [7.0, 5.0, 7.0]], [[6.0, 1.0, 5.0], [5.0, 6.0, 4.0], [4.0, 7.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 2.0, 4.0], [3.0, 3.0, 7.0], [5.0, 3.0, 1.0]], [[2.0, 1.0, 1.0], [8.0, 6.0, 6.0], [7.0, 7.0, 7.0]], [[3.0, 8.0, 7.0], [8.0, 1.0, 4.0], [5.0, 2.0, 7.0]]], [[[1.0, 2.0, 6.0], [2.0, 7.0, 1.0], [7.0, 8.0, 6.0]], [[5.0, 5.0, 5.0], [1.0, 8.0, 8.0], [2.0, 5.0, 3.0]], [[4.0, 7.0, 4.0], [2.0, 2.0, 3.0], [7.0, 3.0, 6.0]]], [[[1.0, 2.0, 6.0], [2.0, 8.0, 3.0], [7.0, 5.0, 4.0]], [[1.0, 5.0, 1.0], [3.0, 2.0, 6.0], [6.0, 5.0, 3.0]], [[8.0, 2.0, 7.0], [7.0, 6.0, 1.0], [6.0, 3.0, 3.0]]], [[[2.0, 4.0, 5.0], [1.0, 7.0, 6.0], [1.0, 8.0, 3.0]], [[1.0, 1.0, 7.0], [7.0, 5.0, 5.0], [7.0, 5.0, 7.0]], [[6.0, 1.0, 5.0], [5.0, 6.0, 4.0], [4.0, 7.0, 1.0]]]]))
10556        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10557        val=msk_val*numarray.array([[[[1.0], [6.0]]], [[[8.0], [5.0]]]])+(1.-msk_val)*numarray.array([[[[3.0], [4.0]]], [[[5.0], [8.0]]]])        val=msk_val*numarray.array([[[[1.0], [6.0]]], [[[8.0], [5.0]]]])+(1.-msk_val)*numarray.array([[[[3.0], [4.0]]], [[[5.0], [8.0]]]])
10558        arg[2:,1:2,:2,1:2]=val        arg[2:,1:2,:2,1:2]=val
10559        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10591  class Test_util_slicing_with_tagged_data Line 10591  class Test_util_slicing_with_tagged_data
10591     def test_setslice_taggedData_rank4_expandedData_PPRP(self):     def test_setslice_taggedData_rank4_expandedData_PPRP(self):
10592        arg=Data(numarray.array([[[[1.0, 1.0, 8.0], [4.0, 4.0, 1.0], [2.0, 4.0, 3.0]], [[4.0, 8.0, 5.0], [3.0, 5.0, 8.0], [4.0, 1.0, 3.0]], [[3.0, 3.0, 1.0], [8.0, 7.0, 3.0], [5.0, 5.0, 7.0]]], [[[1.0, 7.0, 1.0], [2.0, 5.0, 4.0], [5.0, 6.0, 7.0]], [[5.0, 6.0, 6.0], [2.0, 2.0, 1.0], [4.0, 4.0, 7.0]], [[8.0, 8.0, 6.0], [7.0, 6.0, 8.0], [6.0, 7.0, 2.0]]], [[[4.0, 8.0, 1.0], [1.0, 5.0, 5.0], [1.0, 7.0, 4.0]], [[6.0, 5.0, 5.0], [2.0, 7.0, 2.0], [4.0, 5.0, 4.0]], [[2.0, 2.0, 8.0], [5.0, 5.0, 8.0], [4.0, 1.0, 8.0]]], [[[6.0, 4.0, 2.0], [4.0, 7.0, 1.0], [8.0, 4.0, 3.0]], [[3.0, 7.0, 3.0], [7.0, 5.0, 2.0], [3.0, 7.0, 3.0]], [[6.0, 7.0, 5.0], [7.0, 4.0, 2.0], [5.0, 8.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 1.0, 8.0], [4.0, 4.0, 1.0], [2.0, 4.0, 3.0]], [[4.0, 8.0, 5.0], [3.0, 5.0, 8.0], [4.0, 1.0, 3.0]], [[3.0, 3.0, 1.0], [8.0, 7.0, 3.0], [5.0, 5.0, 7.0]]], [[[1.0, 7.0, 1.0], [2.0, 5.0, 4.0], [5.0, 6.0, 7.0]], [[5.0, 6.0, 6.0], [2.0, 2.0, 1.0], [4.0, 4.0, 7.0]], [[8.0, 8.0, 6.0], [7.0, 6.0, 8.0], [6.0, 7.0, 2.0]]], [[[4.0, 8.0, 1.0], [1.0, 5.0, 5.0], [1.0, 7.0, 4.0]], [[6.0, 5.0, 5.0], [2.0, 7.0, 2.0], [4.0, 5.0, 4.0]], [[2.0, 2.0, 8.0], [5.0, 5.0, 8.0], [4.0, 1.0, 8.0]]], [[[6.0, 4.0, 2.0], [4.0, 7.0, 1.0], [8.0, 4.0, 3.0]], [[3.0, 7.0, 3.0], [7.0, 5.0, 2.0], [3.0, 7.0, 3.0]], [[6.0, 7.0, 5.0], [7.0, 4.0, 2.0], [5.0, 8.0, 4.0]]]]),self.functionspace)
10593        arg.setTaggedValue(1,numarray.array([[[[7.0, 1.0, 2.0], [4.0, 1.0, 6.0], [4.0, 4.0, 8.0]], [[8.0, 5.0, 6.0], [2.0, 8.0, 2.0], [6.0, 6.0, 8.0]], [[1.0, 7.0, 8.0], [2.0, 8.0, 7.0], [8.0, 6.0, 6.0]]], [[[6.0, 4.0, 8.0], [2.0, 4.0, 6.0], [4.0, 7.0, 4.0]], [[3.0, 8.0, 4.0], [6.0, 6.0, 8.0], [1.0, 4.0, 7.0]], [[2.0, 2.0, 2.0], [8.0, 8.0, 4.0], [6.0, 2.0, 1.0]]], [[[8.0, 5.0, 1.0], [8.0, 6.0, 5.0], [1.0, 1.0, 5.0]], [[2.0, 6.0, 6.0], [7.0, 3.0, 1.0], [6.0, 8.0, 5.0]], [[4.0, 3.0, 6.0], [1.0, 7.0, 7.0], [4.0, 6.0, 2.0]]], [[[8.0, 4.0, 7.0], [8.0, 5.0, 3.0], [4.0, 3.0, 5.0]], [[3.0, 4.0, 2.0], [8.0, 1.0, 2.0], [8.0, 3.0, 5.0]], [[4.0, 7.0, 7.0], [8.0, 7.0, 4.0], [2.0, 4.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 1.0, 2.0], [4.0, 1.0, 6.0], [4.0, 4.0, 8.0]], [[8.0, 5.0, 6.0], [2.0, 8.0, 2.0], [6.0, 6.0, 8.0]], [[1.0, 7.0, 8.0], [2.0, 8.0, 7.0], [8.0, 6.0, 6.0]]], [[[6.0, 4.0, 8.0], [2.0, 4.0, 6.0], [4.0, 7.0, 4.0]], [[3.0, 8.0, 4.0], [6.0, 6.0, 8.0], [1.0, 4.0, 7.0]], [[2.0, 2.0, 2.0], [8.0, 8.0, 4.0], [6.0, 2.0, 1.0]]], [[[8.0, 5.0, 1.0], [8.0, 6.0, 5.0], [1.0, 1.0, 5.0]], [[2.0, 6.0, 6.0], [7.0, 3.0, 1.0], [6.0, 8.0, 5.0]], [[4.0, 3.0, 6.0], [1.0, 7.0, 7.0], [4.0, 6.0, 2.0]]], [[[8.0, 4.0, 7.0], [8.0, 5.0, 3.0], [4.0, 3.0, 5.0]], [[3.0, 4.0, 2.0], [8.0, 1.0, 2.0], [8.0, 3.0, 5.0]], [[4.0, 7.0, 7.0], [8.0, 7.0, 4.0], [2.0, 4.0, 3.0]]]]))
10594        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10595        val=msk_val*numarray.array([2.0])+(1.-msk_val)*numarray.array([3.0])        val=msk_val*numarray.array([2.0])+(1.-msk_val)*numarray.array([3.0])
10596        arg[2,1,1:2,1]=val        arg[2,1,1:2,1]=val
10597        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10629  class Test_util_slicing_with_tagged_data Line 10629  class Test_util_slicing_with_tagged_data
10629     def test_setslice_taggedData_rank4_expandedData_CRLP(self):     def test_setslice_taggedData_rank4_expandedData_CRLP(self):
10630        arg=Data(numarray.array([[[[5.0, 1.0, 6.0], [2.0, 2.0, 4.0], [5.0, 8.0, 2.0]], [[1.0, 4.0, 4.0], [1.0, 4.0, 4.0], [6.0, 8.0, 1.0]], [[2.0, 8.0, 4.0], [8.0, 3.0, 1.0], [1.0, 7.0, 4.0]]], [[[2.0, 1.0, 1.0], [7.0, 4.0, 8.0], [4.0, 3.0, 5.0]], [[2.0, 8.0, 5.0], [3.0, 8.0, 5.0], [7.0, 2.0, 4.0]], [[5.0, 1.0, 1.0], [4.0, 3.0, 5.0], [5.0, 2.0, 8.0]]], [[[4.0, 5.0, 7.0], [7.0, 8.0, 8.0], [3.0, 1.0, 8.0]], [[4.0, 1.0, 2.0], [7.0, 6.0, 2.0], [8.0, 4.0, 3.0]], [[2.0, 3.0, 8.0], [8.0, 5.0, 8.0], [3.0, 1.0, 4.0]]], [[[2.0, 7.0, 4.0], [5.0, 2.0, 7.0], [8.0, 4.0, 4.0]], [[1.0, 5.0, 7.0], [8.0, 4.0, 8.0], [3.0, 5.0, 6.0]], [[4.0, 5.0, 8.0], [5.0, 4.0, 7.0], [7.0, 1.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 1.0, 6.0], [2.0, 2.0, 4.0], [5.0, 8.0, 2.0]], [[1.0, 4.0, 4.0], [1.0, 4.0, 4.0], [6.0, 8.0, 1.0]], [[2.0, 8.0, 4.0], [8.0, 3.0, 1.0], [1.0, 7.0, 4.0]]], [[[2.0, 1.0, 1.0], [7.0, 4.0, 8.0], [4.0, 3.0, 5.0]], [[2.0, 8.0, 5.0], [3.0, 8.0, 5.0], [7.0, 2.0, 4.0]], [[5.0, 1.0, 1.0], [4.0, 3.0, 5.0], [5.0, 2.0, 8.0]]], [[[4.0, 5.0, 7.0], [7.0, 8.0, 8.0], [3.0, 1.0, 8.0]], [[4.0, 1.0, 2.0], [7.0, 6.0, 2.0], [8.0, 4.0, 3.0]], [[2.0, 3.0, 8.0], [8.0, 5.0, 8.0], [3.0, 1.0, 4.0]]], [[[2.0, 7.0, 4.0], [5.0, 2.0, 7.0], [8.0, 4.0, 4.0]], [[1.0, 5.0, 7.0], [8.0, 4.0, 8.0], [3.0, 5.0, 6.0]], [[4.0, 5.0, 8.0], [5.0, 4.0, 7.0], [7.0, 1.0, 8.0]]]]),self.functionspace)
10631        arg.setTaggedValue(1,numarray.array([[[[5.0, 3.0, 8.0], [3.0, 1.0, 1.0], [6.0, 8.0, 4.0]], [[8.0, 5.0, 3.0], [7.0, 1.0, 3.0], [8.0, 6.0, 3.0]], [[1.0, 3.0, 1.0], [3.0, 2.0, 5.0], [4.0, 7.0, 4.0]]], [[[8.0, 6.0, 7.0], [4.0, 1.0, 6.0], [7.0, 7.0, 1.0]], [[4.0, 6.0, 3.0], [7.0, 2.0, 5.0], [4.0, 3.0, 4.0]], [[3.0, 4.0, 4.0], [4.0, 3.0, 3.0], [2.0, 3.0, 3.0]]], [[[2.0, 3.0, 8.0], [3.0, 8.0, 5.0], [8.0, 1.0, 8.0]], [[4.0, 8.0, 1.0], [1.0, 1.0, 1.0], [4.0, 6.0, 6.0]], [[6.0, 4.0, 6.0], [5.0, 1.0, 1.0], [7.0, 1.0, 8.0]]], [[[3.0, 4.0, 2.0], [1.0, 7.0, 8.0], [2.0, 3.0, 1.0]], [[1.0, 4.0, 6.0], [3.0, 1.0, 3.0], [4.0, 3.0, 2.0]], [[7.0, 4.0, 2.0], [7.0, 1.0, 7.0], [4.0, 8.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 3.0, 8.0], [3.0, 1.0, 1.0], [6.0, 8.0, 4.0]], [[8.0, 5.0, 3.0], [7.0, 1.0, 3.0], [8.0, 6.0, 3.0]], [[1.0, 3.0, 1.0], [3.0, 2.0, 5.0], [4.0, 7.0, 4.0]]], [[[8.0, 6.0, 7.0], [4.0, 1.0, 6.0], [7.0, 7.0, 1.0]], [[4.0, 6.0, 3.0], [7.0, 2.0, 5.0], [4.0, 3.0, 4.0]], [[3.0, 4.0, 4.0], [4.0, 3.0, 3.0], [2.0, 3.0, 3.0]]], [[[2.0, 3.0, 8.0], [3.0, 8.0, 5.0], [8.0, 1.0, 8.0]], [[4.0, 8.0, 1.0], [1.0, 1.0, 1.0], [4.0, 6.0, 6.0]], [[6.0, 4.0, 6.0], [5.0, 1.0, 1.0], [7.0, 1.0, 8.0]]], [[[3.0, 4.0, 2.0], [1.0, 7.0, 8.0], [2.0, 3.0, 1.0]], [[1.0, 4.0, 6.0], [3.0, 1.0, 3.0], [4.0, 3.0, 2.0]], [[7.0, 4.0, 2.0], [7.0, 1.0, 7.0], [4.0, 8.0, 6.0]]]]))
10632        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10633        val=msk_val*numarray.array([[[1.0]], [[8.0]], [[2.0]], [[4.0]]])+(1.-msk_val)*numarray.array([[[3.0]], [[4.0]], [[4.0]], [[4.0]]])        val=msk_val*numarray.array([[[1.0]], [[8.0]], [[2.0]], [[4.0]]])+(1.-msk_val)*numarray.array([[[3.0]], [[4.0]], [[4.0]], [[4.0]]])
10634        arg[:,1:2,2:,1]=val        arg[:,1:2,2:,1]=val
10635        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10667  class Test_util_slicing_with_tagged_data Line 10667  class Test_util_slicing_with_tagged_data
10667     def test_setslice_taggedData_rank4_expandedData_RCLN(self):     def test_setslice_taggedData_rank4_expandedData_RCLN(self):
10668        arg=Data(numarray.array([[[[3.0, 5.0, 4.0], [6.0, 7.0, 1.0], [1.0, 1.0, 4.0]], [[3.0, 8.0, 3.0], [3.0, 1.0, 2.0], [1.0, 5.0, 4.0]], [[6.0, 5.0, 1.0], [2.0, 7.0, 4.0], [7.0, 2.0, 2.0]]], [[[8.0, 3.0, 5.0], [5.0, 5.0, 8.0], [4.0, 1.0, 6.0]], [[7.0, 4.0, 7.0], [6.0, 4.0, 6.0], [7.0, 3.0, 5.0]], [[2.0, 6.0, 6.0], [3.0, 3.0, 3.0], [5.0, 7.0, 4.0]]], [[[4.0, 5.0, 6.0], [8.0, 1.0, 3.0], [5.0, 5.0, 7.0]], [[6.0, 5.0, 3.0], [2.0, 4.0, 7.0], [8.0, 8.0, 6.0]], [[5.0, 3.0, 5.0], [1.0, 5.0, 6.0], [3.0, 4.0, 3.0]]], [[[8.0, 5.0, 6.0], [7.0, 1.0, 5.0], [5.0, 1.0, 1.0]], [[6.0, 7.0, 6.0], [6.0, 1.0, 6.0], [6.0, 7.0, 8.0]], [[5.0, 4.0, 3.0], [7.0, 1.0, 3.0], [8.0, 7.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 5.0, 4.0], [6.0, 7.0, 1.0], [1.0, 1.0, 4.0]], [[3.0, 8.0, 3.0], [3.0, 1.0, 2.0], [1.0, 5.0, 4.0]], [[6.0, 5.0, 1.0], [2.0, 7.0, 4.0], [7.0, 2.0, 2.0]]], [[[8.0, 3.0, 5.0], [5.0, 5.0, 8.0], [4.0, 1.0, 6.0]], [[7.0, 4.0, 7.0], [6.0, 4.0, 6.0], [7.0, 3.0, 5.0]], [[2.0, 6.0, 6.0], [3.0, 3.0, 3.0], [5.0, 7.0, 4.0]]], [[[4.0, 5.0, 6.0], [8.0, 1.0, 3.0], [5.0, 5.0, 7.0]], [[6.0, 5.0, 3.0], [2.0, 4.0, 7.0], [8.0, 8.0, 6.0]], [[5.0, 3.0, 5.0], [1.0, 5.0, 6.0], [3.0, 4.0, 3.0]]], [[[8.0, 5.0, 6.0], [7.0, 1.0, 5.0], [5.0, 1.0, 1.0]], [[6.0, 7.0, 6.0], [6.0, 1.0, 6.0], [6.0, 7.0, 8.0]], [[5.0, 4.0, 3.0], [7.0, 1.0, 3.0], [8.0, 7.0, 6.0]]]]),self.functionspace)
10669        arg.setTaggedValue(1,numarray.array([[[[8.0, 1.0, 7.0], [4.0, 2.0, 5.0], [6.0, 4.0, 8.0]], [[4.0, 2.0, 1.0], [1.0, 5.0, 5.0], [8.0, 4.0, 8.0]], [[8.0, 5.0, 4.0], [8.0, 2.0, 3.0], [7.0, 6.0, 8.0]]], [[[2.0, 8.0, 1.0], [3.0, 1.0, 8.0], [8.0, 4.0, 1.0]], [[5.0, 8.0, 1.0], [8.0, 7.0, 1.0], [2.0, 6.0, 4.0]], [[3.0, 5.0, 8.0], [7.0, 8.0, 8.0], [5.0, 4.0, 6.0]]], [[[4.0, 7.0, 4.0], [6.0, 8.0, 4.0], [6.0, 3.0, 5.0]], [[8.0, 5.0, 4.0], [2.0, 3.0, 3.0], [5.0, 4.0, 5.0]], [[4.0, 1.0, 8.0], [6.0, 5.0, 7.0], [5.0, 4.0, 1.0]]], [[[5.0, 4.0, 1.0], [4.0, 8.0, 6.0], [8.0, 3.0, 7.0]], [[6.0, 2.0, 8.0], [5.0, 7.0, 8.0], [5.0, 1.0, 8.0]], [[6.0, 7.0, 2.0], [5.0, 7.0, 1.0], [1.0, 3.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 1.0, 7.0], [4.0, 2.0, 5.0], [6.0, 4.0, 8.0]], [[4.0, 2.0, 1.0], [1.0, 5.0, 5.0], [8.0, 4.0, 8.0]], [[8.0, 5.0, 4.0], [8.0, 2.0, 3.0], [7.0, 6.0, 8.0]]], [[[2.0, 8.0, 1.0], [3.0, 1.0, 8.0], [8.0, 4.0, 1.0]], [[5.0, 8.0, 1.0], [8.0, 7.0, 1.0], [2.0, 6.0, 4.0]], [[3.0, 5.0, 8.0], [7.0, 8.0, 8.0], [5.0, 4.0, 6.0]]], [[[4.0, 7.0, 4.0], [6.0, 8.0, 4.0], [6.0, 3.0, 5.0]], [[8.0, 5.0, 4.0], [2.0, 3.0, 3.0], [5.0, 4.0, 5.0]], [[4.0, 1.0, 8.0], [6.0, 5.0, 7.0], [5.0, 4.0, 1.0]]], [[[5.0, 4.0, 1.0], [4.0, 8.0, 6.0], [8.0, 3.0, 7.0]], [[6.0, 2.0, 8.0], [5.0, 7.0, 8.0], [5.0, 1.0, 8.0]], [[6.0, 7.0, 2.0], [5.0, 7.0, 1.0], [1.0, 3.0, 3.0]]]]))
10670        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10671        val=msk_val*numarray.array([[[[3.0, 6.0, 2.0]], [[2.0, 5.0, 1.0]], [[1.0, 4.0, 8.0]]], [[[2.0, 6.0, 8.0]], [[1.0, 7.0, 6.0]], [[6.0, 6.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 6.0, 6.0]], [[6.0, 7.0, 4.0]], [[8.0, 1.0, 1.0]]], [[[3.0, 6.0, 2.0]], [[5.0, 4.0, 6.0]], [[4.0, 7.0, 3.0]]]])        val=msk_val*numarray.array([[[[3.0, 6.0, 2.0]], [[2.0, 5.0, 1.0]], [[1.0, 4.0, 8.0]]], [[[2.0, 6.0, 8.0]], [[1.0, 7.0, 6.0]], [[6.0, 6.0, 5.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 6.0, 6.0]], [[6.0, 7.0, 4.0]], [[8.0, 1.0, 1.0]]], [[[3.0, 6.0, 2.0]], [[5.0, 4.0, 6.0]], [[4.0, 7.0, 3.0]]]])
10672        arg[1:3,:,2:]=val        arg[1:3,:,2:]=val
10673        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10705  class Test_util_slicing_with_tagged_data Line 10705  class Test_util_slicing_with_tagged_data
10705     def test_setslice_taggedData_rank4_expandedData_UUPP(self):     def test_setslice_taggedData_rank4_expandedData_UUPP(self):
10706        arg=Data(numarray.array([[[[5.0, 6.0, 8.0], [5.0, 6.0, 3.0], [5.0, 3.0, 4.0]], [[2.0, 6.0, 2.0], [7.0, 7.0, 4.0], [7.0, 2.0, 6.0]], [[3.0, 2.0, 8.0], [7.0, 2.0, 5.0], [2.0, 2.0, 5.0]]], [[[8.0, 7.0, 5.0], [5.0, 3.0, 6.0], [8.0, 7.0, 2.0]], [[2.0, 8.0, 2.0], [6.0, 7.0, 6.0], [4.0, 2.0, 4.0]], [[2.0, 4.0, 7.0], [1.0, 8.0, 5.0], [4.0, 8.0, 6.0]]], [[[4.0, 3.0, 1.0], [8.0, 6.0, 7.0], [2.0, 6.0, 2.0]], [[6.0, 8.0, 8.0], [1.0, 6.0, 7.0], [8.0, 4.0, 6.0]], [[2.0, 7.0, 8.0], [3.0, 5.0, 3.0], [1.0, 1.0, 6.0]]], [[[7.0, 2.0, 3.0], [5.0, 8.0, 1.0], [8.0, 3.0, 3.0]], [[1.0, 6.0, 2.0], [4.0, 6.0, 1.0], [2.0, 8.0, 7.0]], [[4.0, 3.0, 2.0], [7.0, 4.0, 8.0], [7.0, 1.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 6.0, 8.0], [5.0, 6.0, 3.0], [5.0, 3.0, 4.0]], [[2.0, 6.0, 2.0], [7.0, 7.0, 4.0], [7.0, 2.0, 6.0]], [[3.0, 2.0, 8.0], [7.0, 2.0, 5.0], [2.0, 2.0, 5.0]]], [[[8.0, 7.0, 5.0], [5.0, 3.0, 6.0], [8.0, 7.0, 2.0]], [[2.0, 8.0, 2.0], [6.0, 7.0, 6.0], [4.0, 2.0, 4.0]], [[2.0, 4.0, 7.0], [1.0, 8.0, 5.0], [4.0, 8.0, 6.0]]], [[[4.0, 3.0, 1.0], [8.0, 6.0, 7.0], [2.0, 6.0, 2.0]], [[6.0, 8.0, 8.0], [1.0, 6.0, 7.0], [8.0, 4.0, 6.0]], [[2.0, 7.0, 8.0], [3.0, 5.0, 3.0], [1.0, 1.0, 6.0]]], [[[7.0, 2.0, 3.0], [5.0, 8.0, 1.0], [8.0, 3.0, 3.0]], [[1.0, 6.0, 2.0], [4.0, 6.0, 1.0], [2.0, 8.0, 7.0]], [[4.0, 3.0, 2.0], [7.0, 4.0, 8.0], [7.0, 1.0, 1.0]]]]),self.functionspace)
10707        arg.setTaggedValue(1,numarray.array([[[[3.0, 6.0, 7.0], [3.0, 2.0, 3.0], [5.0, 4.0, 8.0]], [[3.0, 7.0, 6.0], [5.0, 3.0, 6.0], [5.0, 4.0, 4.0]], [[4.0, 6.0, 4.0], [5.0, 4.0, 6.0], [5.0, 6.0, 5.0]]], [[[8.0, 7.0, 8.0], [7.0, 2.0, 4.0], [4.0, 8.0, 5.0]], [[3.0, 3.0, 7.0], [3.0, 4.0, 6.0], [5.0, 7.0, 2.0]], [[4.0, 3.0, 6.0], [8.0, 8.0, 7.0], [7.0, 5.0, 6.0]]], [[[1.0, 4.0, 8.0], [8.0, 5.0, 6.0], [7.0, 1.0, 7.0]], [[8.0, 8.0, 8.0], [5.0, 3.0, 8.0], [1.0, 4.0, 7.0]], [[4.0, 7.0, 7.0], [3.0, 3.0, 1.0], [6.0, 8.0, 8.0]]], [[[2.0, 6.0, 4.0], [2.0, 2.0, 5.0], [8.0, 3.0, 8.0]], [[2.0, 1.0, 2.0], [6.0, 8.0, 4.0], [5.0, 5.0, 2.0]], [[5.0, 4.0, 4.0], [4.0, 7.0, 1.0], [7.0, 1.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 6.0, 7.0], [3.0, 2.0, 3.0], [5.0, 4.0, 8.0]], [[3.0, 7.0, 6.0], [5.0, 3.0, 6.0], [5.0, 4.0, 4.0]], [[4.0, 6.0, 4.0], [5.0, 4.0, 6.0], [5.0, 6.0, 5.0]]], [[[8.0, 7.0, 8.0], [7.0, 2.0, 4.0], [4.0, 8.0, 5.0]], [[3.0, 3.0, 7.0], [3.0, 4.0, 6.0], [5.0, 7.0, 2.0]], [[4.0, 3.0, 6.0], [8.0, 8.0, 7.0], [7.0, 5.0, 6.0]]], [[[1.0, 4.0, 8.0], [8.0, 5.0, 6.0], [7.0, 1.0, 7.0]], [[8.0, 8.0, 8.0], [5.0, 3.0, 8.0], [1.0, 4.0, 7.0]], [[4.0, 7.0, 7.0], [3.0, 3.0, 1.0], [6.0, 8.0, 8.0]]], [[[2.0, 6.0, 4.0], [2.0, 2.0, 5.0], [8.0, 3.0, 8.0]], [[2.0, 1.0, 2.0], [6.0, 8.0, 4.0], [5.0, 5.0, 2.0]], [[5.0, 4.0, 4.0], [4.0, 7.0, 1.0], [7.0, 1.0, 8.0]]]]))
10708        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10709        val=msk_val*numarray.array([[5.0, 6.0], [3.0, 5.0], [5.0, 7.0]])+(1.-msk_val)*numarray.array([[2.0, 4.0], [7.0, 2.0], [6.0, 2.0]])        val=msk_val*numarray.array([[5.0, 6.0], [3.0, 5.0], [5.0, 7.0]])+(1.-msk_val)*numarray.array([[2.0, 4.0], [7.0, 2.0], [6.0, 2.0]])
10710        arg[:3,:2,1,1]=val        arg[:3,:2,1,1]=val
10711        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10743  class Test_util_slicing_with_tagged_data Line 10743  class Test_util_slicing_with_tagged_data
10743     def test_setslice_taggedData_rank4_expandedData_PRCC(self):     def test_setslice_taggedData_rank4_expandedData_PRCC(self):
10744        arg=Data(numarray.array([[[[5.0, 7.0, 3.0], [1.0, 2.0, 2.0], [3.0, 2.0, 6.0]], [[5.0, 2.0, 3.0], [7.0, 2.0, 2.0], [7.0, 6.0, 5.0]], [[2.0, 6.0, 2.0], [6.0, 3.0, 3.0], [8.0, 1.0, 2.0]]], [[[3.0, 3.0, 5.0], [7.0, 3.0, 1.0], [5.0, 7.0, 2.0]], [[2.0, 6.0, 8.0], [2.0, 5.0, 2.0], [8.0, 3.0, 7.0]], [[5.0, 7.0, 2.0], [8.0, 4.0, 4.0], [3.0, 2.0, 2.0]]], [[[5.0, 4.0, 1.0], [3.0, 3.0, 5.0], [8.0, 8.0, 5.0]], [[1.0, 2.0, 8.0], [2.0, 1.0, 7.0], [5.0, 2.0, 5.0]], [[1.0, 8.0, 3.0], [5.0, 3.0, 1.0], [7.0, 3.0, 1.0]]], [[[5.0, 2.0, 2.0], [2.0, 7.0, 3.0], [5.0, 7.0, 6.0]], [[2.0, 6.0, 5.0], [3.0, 6.0, 2.0], [7.0, 5.0, 8.0]], [[3.0, 2.0, 2.0], [7.0, 5.0, 3.0], [1.0, 5.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 7.0, 3.0], [1.0, 2.0, 2.0], [3.0, 2.0, 6.0]], [[5.0, 2.0, 3.0], [7.0, 2.0, 2.0], [7.0, 6.0, 5.0]], [[2.0, 6.0, 2.0], [6.0, 3.0, 3.0], [8.0, 1.0, 2.0]]], [[[3.0, 3.0, 5.0], [7.0, 3.0, 1.0], [5.0, 7.0, 2.0]], [[2.0, 6.0, 8.0], [2.0, 5.0, 2.0], [8.0, 3.0, 7.0]], [[5.0, 7.0, 2.0], [8.0, 4.0, 4.0], [3.0, 2.0, 2.0]]], [[[5.0, 4.0, 1.0], [3.0, 3.0, 5.0], [8.0, 8.0, 5.0]], [[1.0, 2.0, 8.0], [2.0, 1.0, 7.0], [5.0, 2.0, 5.0]], [[1.0, 8.0, 3.0], [5.0, 3.0, 1.0], [7.0, 3.0, 1.0]]], [[[5.0, 2.0, 2.0], [2.0, 7.0, 3.0], [5.0, 7.0, 6.0]], [[2.0, 6.0, 5.0], [3.0, 6.0, 2.0], [7.0, 5.0, 8.0]], [[3.0, 2.0, 2.0], [7.0, 5.0, 3.0], [1.0, 5.0, 4.0]]]]),self.functionspace)
10745        arg.setTaggedValue(1,numarray.array([[[[6.0, 5.0, 8.0], [1.0, 8.0, 1.0], [7.0, 7.0, 4.0]], [[2.0, 4.0, 5.0], [4.0, 1.0, 3.0], [5.0, 4.0, 4.0]], [[8.0, 1.0, 3.0], [8.0, 5.0, 7.0], [4.0, 1.0, 7.0]]], [[[5.0, 3.0, 7.0], [1.0, 3.0, 5.0], [8.0, 3.0, 7.0]], [[2.0, 1.0, 3.0], [1.0, 3.0, 3.0], [6.0, 6.0, 2.0]], [[3.0, 8.0, 5.0], [1.0, 4.0, 1.0], [4.0, 1.0, 4.0]]], [[[4.0, 7.0, 8.0], [3.0, 7.0, 5.0], [6.0, 4.0, 5.0]], [[7.0, 5.0, 8.0], [2.0, 6.0, 6.0], [6.0, 4.0, 7.0]], [[8.0, 8.0, 6.0], [4.0, 1.0, 8.0], [3.0, 6.0, 5.0]]], [[[4.0, 4.0, 5.0], [5.0, 6.0, 5.0], [4.0, 6.0, 6.0]], [[4.0, 6.0, 3.0], [6.0, 3.0, 6.0], [5.0, 3.0, 2.0]], [[2.0, 7.0, 8.0], [6.0, 1.0, 2.0], [3.0, 7.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 5.0, 8.0], [1.0, 8.0, 1.0], [7.0, 7.0, 4.0]], [[2.0, 4.0, 5.0], [4.0, 1.0, 3.0], [5.0, 4.0, 4.0]], [[8.0, 1.0, 3.0], [8.0, 5.0, 7.0], [4.0, 1.0, 7.0]]], [[[5.0, 3.0, 7.0], [1.0, 3.0, 5.0], [8.0, 3.0, 7.0]], [[2.0, 1.0, 3.0], [1.0, 3.0, 3.0], [6.0, 6.0, 2.0]], [[3.0, 8.0, 5.0], [1.0, 4.0, 1.0], [4.0, 1.0, 4.0]]], [[[4.0, 7.0, 8.0], [3.0, 7.0, 5.0], [6.0, 4.0, 5.0]], [[7.0, 5.0, 8.0], [2.0, 6.0, 6.0], [6.0, 4.0, 7.0]], [[8.0, 8.0, 6.0], [4.0, 1.0, 8.0], [3.0, 6.0, 5.0]]], [[[4.0, 4.0, 5.0], [5.0, 6.0, 5.0], [4.0, 6.0, 6.0]], [[4.0, 6.0, 3.0], [6.0, 3.0, 6.0], [5.0, 3.0, 2.0]], [[2.0, 7.0, 8.0], [6.0, 1.0, 2.0], [3.0, 7.0, 3.0]]]]))
10746        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10747        val=msk_val*numarray.array([[[4.0, 3.0, 2.0], [3.0, 2.0, 6.0], [4.0, 1.0, 3.0]]])+(1.-msk_val)*numarray.array([[[5.0, 7.0, 7.0], [3.0, 3.0, 6.0], [2.0, 3.0, 4.0]]])        val=msk_val*numarray.array([[[4.0, 3.0, 2.0], [3.0, 2.0, 6.0], [4.0, 1.0, 3.0]]])+(1.-msk_val)*numarray.array([[[5.0, 7.0, 7.0], [3.0, 3.0, 6.0], [2.0, 3.0, 4.0]]])
10748        arg[2,1:2,:,:]=val        arg[2,1:2,:,:]=val
10749        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10781  class Test_util_slicing_with_tagged_data Line 10781  class Test_util_slicing_with_tagged_data
10781     def test_setslice_taggedData_rank4_expandedData_RRCC(self):     def test_setslice_taggedData_rank4_expandedData_RRCC(self):
10782        arg=Data(numarray.array([[[[8.0, 6.0, 1.0], [7.0, 5.0, 7.0], [6.0, 4.0, 1.0]], [[6.0, 8.0, 2.0], [8.0, 5.0, 6.0], [2.0, 2.0, 4.0]], [[4.0, 3.0, 3.0], [2.0, 5.0, 7.0], [2.0, 8.0, 6.0]]], [[[3.0, 1.0, 6.0], [1.0, 3.0, 3.0], [3.0, 1.0, 7.0]], [[5.0, 1.0, 2.0], [1.0, 2.0, 3.0], [8.0, 3.0, 7.0]], [[6.0, 3.0, 8.0], [7.0, 1.0, 4.0], [5.0, 3.0, 4.0]]], [[[2.0, 3.0, 6.0], [1.0, 6.0, 2.0], [8.0, 2.0, 8.0]], [[7.0, 1.0, 5.0], [8.0, 7.0, 3.0], [4.0, 3.0, 8.0]], [[2.0, 4.0, 7.0], [8.0, 1.0, 8.0], [5.0, 3.0, 5.0]]], [[[4.0, 5.0, 1.0], [8.0, 3.0, 6.0], [6.0, 1.0, 1.0]], [[5.0, 6.0, 2.0], [2.0, 7.0, 5.0], [1.0, 3.0, 4.0]], [[6.0, 2.0, 3.0], [3.0, 5.0, 3.0], [2.0, 5.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 6.0, 1.0], [7.0, 5.0, 7.0], [6.0, 4.0, 1.0]], [[6.0, 8.0, 2.0], [8.0, 5.0, 6.0], [2.0, 2.0, 4.0]], [[4.0, 3.0, 3.0], [2.0, 5.0, 7.0], [2.0, 8.0, 6.0]]], [[[3.0, 1.0, 6.0], [1.0, 3.0, 3.0], [3.0, 1.0, 7.0]], [[5.0, 1.0, 2.0], [1.0, 2.0, 3.0], [8.0, 3.0, 7.0]], [[6.0, 3.0, 8.0], [7.0, 1.0, 4.0], [5.0, 3.0, 4.0]]], [[[2.0, 3.0, 6.0], [1.0, 6.0, 2.0], [8.0, 2.0, 8.0]], [[7.0, 1.0, 5.0], [8.0, 7.0, 3.0], [4.0, 3.0, 8.0]], [[2.0, 4.0, 7.0], [8.0, 1.0, 8.0], [5.0, 3.0, 5.0]]], [[[4.0, 5.0, 1.0], [8.0, 3.0, 6.0], [6.0, 1.0, 1.0]], [[5.0, 6.0, 2.0], [2.0, 7.0, 5.0], [1.0, 3.0, 4.0]], [[6.0, 2.0, 3.0], [3.0, 5.0, 3.0], [2.0, 5.0, 1.0]]]]),self.functionspace)
10783        arg.setTaggedValue(1,numarray.array([[[[2.0, 4.0, 1.0], [7.0, 7.0, 7.0], [6.0, 5.0, 8.0]], [[8.0, 7.0, 2.0], [8.0, 2.0, 7.0], [8.0, 1.0, 8.0]], [[8.0, 8.0, 8.0], [3.0, 6.0, 1.0], [3.0, 6.0, 8.0]]], [[[5.0, 6.0, 6.0], [1.0, 3.0, 8.0], [8.0, 8.0, 3.0]], [[3.0, 6.0, 5.0], [8.0, 4.0, 8.0], [4.0, 4.0, 8.0]], [[8.0, 2.0, 3.0], [8.0, 4.0, 7.0], [6.0, 4.0, 8.0]]], [[[8.0, 7.0, 7.0], [8.0, 5.0, 3.0], [8.0, 7.0, 3.0]], [[5.0, 8.0, 6.0], [2.0, 8.0, 6.0], [7.0, 7.0, 6.0]], [[8.0, 1.0, 3.0], [7.0, 6.0, 7.0], [2.0, 4.0, 7.0]]], [[[4.0, 5.0, 8.0], [2.0, 4.0, 5.0], [1.0, 8.0, 7.0]], [[1.0, 7.0, 8.0], [8.0, 2.0, 4.0], [7.0, 1.0, 7.0]], [[7.0, 5.0, 6.0], [1.0, 3.0, 8.0], [7.0, 3.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 4.0, 1.0], [7.0, 7.0, 7.0], [6.0, 5.0, 8.0]], [[8.0, 7.0, 2.0], [8.0, 2.0, 7.0], [8.0, 1.0, 8.0]], [[8.0, 8.0, 8.0], [3.0, 6.0, 1.0], [3.0, 6.0, 8.0]]], [[[5.0, 6.0, 6.0], [1.0, 3.0, 8.0], [8.0, 8.0, 3.0]], [[3.0, 6.0, 5.0], [8.0, 4.0, 8.0], [4.0, 4.0, 8.0]], [[8.0, 2.0, 3.0], [8.0, 4.0, 7.0], [6.0, 4.0, 8.0]]], [[[8.0, 7.0, 7.0], [8.0, 5.0, 3.0], [8.0, 7.0, 3.0]], [[5.0, 8.0, 6.0], [2.0, 8.0, 6.0], [7.0, 7.0, 6.0]], [[8.0, 1.0, 3.0], [7.0, 6.0, 7.0], [2.0, 4.0, 7.0]]], [[[4.0, 5.0, 8.0], [2.0, 4.0, 5.0], [1.0, 8.0, 7.0]], [[1.0, 7.0, 8.0], [8.0, 2.0, 4.0], [7.0, 1.0, 7.0]], [[7.0, 5.0, 6.0], [1.0, 3.0, 8.0], [7.0, 3.0, 7.0]]]]))
10784        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10785        val=msk_val*numarray.array([[[[6.0, 3.0, 1.0], [6.0, 5.0, 4.0], [1.0, 3.0, 5.0]]], [[[7.0, 4.0, 1.0], [7.0, 7.0, 4.0], [4.0, 7.0, 4.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 8.0, 4.0], [8.0, 8.0, 2.0], [8.0, 3.0, 2.0]]], [[[1.0, 2.0, 6.0], [3.0, 6.0, 1.0], [8.0, 2.0, 6.0]]]])        val=msk_val*numarray.array([[[[6.0, 3.0, 1.0], [6.0, 5.0, 4.0], [1.0, 3.0, 5.0]]], [[[7.0, 4.0, 1.0], [7.0, 7.0, 4.0], [4.0, 7.0, 4.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 8.0, 4.0], [8.0, 8.0, 2.0], [8.0, 3.0, 2.0]]], [[[1.0, 2.0, 6.0], [3.0, 6.0, 1.0], [8.0, 2.0, 6.0]]]])
10786        arg[1:3,1:2,:,:]=val        arg[1:3,1:2,:,:]=val
10787        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10819  class Test_util_slicing_with_tagged_data Line 10819  class Test_util_slicing_with_tagged_data
10819     def test_setslice_taggedData_rank4_expandedData_RPRL(self):     def test_setslice_taggedData_rank4_expandedData_RPRL(self):
10820        arg=Data(numarray.array([[[[3.0, 7.0, 1.0], [6.0, 8.0, 3.0], [4.0, 3.0, 5.0]], [[8.0, 6.0, 5.0], [6.0, 6.0, 2.0], [6.0, 4.0, 2.0]], [[8.0, 7.0, 2.0], [1.0, 2.0, 6.0], [6.0, 4.0, 5.0]]], [[[7.0, 3.0, 1.0], [2.0, 7.0, 3.0], [4.0, 4.0, 7.0]], [[3.0, 3.0, 2.0], [6.0, 6.0, 3.0], [3.0, 3.0, 6.0]], [[2.0, 4.0, 5.0], [8.0, 4.0, 3.0], [2.0, 7.0, 3.0]]], [[[8.0, 4.0, 3.0], [3.0, 1.0, 5.0], [4.0, 6.0, 4.0]], [[8.0, 6.0, 5.0], [4.0, 5.0, 4.0], [7.0, 3.0, 8.0]], [[2.0, 2.0, 7.0], [1.0, 2.0, 2.0], [5.0, 4.0, 5.0]]], [[[5.0, 4.0, 3.0], [1.0, 5.0, 8.0], [6.0, 1.0, 2.0]], [[4.0, 5.0, 4.0], [3.0, 5.0, 3.0], [1.0, 8.0, 5.0]], [[3.0, 3.0, 4.0], [7.0, 5.0, 8.0], [4.0, 6.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 7.0, 1.0], [6.0, 8.0, 3.0], [4.0, 3.0, 5.0]], [[8.0, 6.0, 5.0], [6.0, 6.0, 2.0], [6.0, 4.0, 2.0]], [[8.0, 7.0, 2.0], [1.0, 2.0, 6.0], [6.0, 4.0, 5.0]]], [[[7.0, 3.0, 1.0], [2.0, 7.0, 3.0], [4.0, 4.0, 7.0]], [[3.0, 3.0, 2.0], [6.0, 6.0, 3.0], [3.0, 3.0, 6.0]], [[2.0, 4.0, 5.0], [8.0, 4.0, 3.0], [2.0, 7.0, 3.0]]], [[[8.0, 4.0, 3.0], [3.0, 1.0, 5.0], [4.0, 6.0, 4.0]], [[8.0, 6.0, 5.0], [4.0, 5.0, 4.0], [7.0, 3.0, 8.0]], [[2.0, 2.0, 7.0], [1.0, 2.0, 2.0], [5.0, 4.0, 5.0]]], [[[5.0, 4.0, 3.0], [1.0, 5.0, 8.0], [6.0, 1.0, 2.0]], [[4.0, 5.0, 4.0], [3.0, 5.0, 3.0], [1.0, 8.0, 5.0]], [[3.0, 3.0, 4.0], [7.0, 5.0, 8.0], [4.0, 6.0, 7.0]]]]),self.functionspace)
10821        arg.setTaggedValue(1,numarray.array([[[[5.0, 6.0, 6.0], [1.0, 8.0, 6.0], [6.0, 3.0, 2.0]], [[5.0, 7.0, 1.0], [6.0, 3.0, 1.0], [3.0, 3.0, 8.0]], [[1.0, 6.0, 3.0], [1.0, 6.0, 3.0], [4.0, 5.0, 5.0]]], [[[8.0, 4.0, 5.0], [8.0, 1.0, 2.0], [8.0, 6.0, 7.0]], [[3.0, 5.0, 3.0], [2.0, 3.0, 2.0], [4.0, 8.0, 7.0]], [[1.0, 6.0, 1.0], [6.0, 8.0, 6.0], [3.0, 5.0, 2.0]]], [[[4.0, 7.0, 7.0], [1.0, 8.0, 5.0], [2.0, 5.0, 4.0]], [[1.0, 3.0, 6.0], [8.0, 4.0, 1.0], [8.0, 5.0, 2.0]], [[7.0, 5.0, 6.0], [5.0, 5.0, 1.0], [7.0, 3.0, 3.0]]], [[[8.0, 3.0, 1.0], [6.0, 7.0, 2.0], [8.0, 1.0, 5.0]], [[7.0, 7.0, 7.0], [7.0, 5.0, 7.0], [7.0, 3.0, 4.0]], [[8.0, 3.0, 5.0], [3.0, 6.0, 6.0], [1.0, 1.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 6.0, 6.0], [1.0, 8.0, 6.0], [6.0, 3.0, 2.0]], [[5.0, 7.0, 1.0], [6.0, 3.0, 1.0], [3.0, 3.0, 8.0]], [[1.0, 6.0, 3.0], [1.0, 6.0, 3.0], [4.0, 5.0, 5.0]]], [[[8.0, 4.0, 5.0], [8.0, 1.0, 2.0], [8.0, 6.0, 7.0]], [[3.0, 5.0, 3.0], [2.0, 3.0, 2.0], [4.0, 8.0, 7.0]], [[1.0, 6.0, 1.0], [6.0, 8.0, 6.0], [3.0, 5.0, 2.0]]], [[[4.0, 7.0, 7.0], [1.0, 8.0, 5.0], [2.0, 5.0, 4.0]], [[1.0, 3.0, 6.0], [8.0, 4.0, 1.0], [8.0, 5.0, 2.0]], [[7.0, 5.0, 6.0], [5.0, 5.0, 1.0], [7.0, 3.0, 3.0]]], [[[8.0, 3.0, 1.0], [6.0, 7.0, 2.0], [8.0, 1.0, 5.0]], [[7.0, 7.0, 7.0], [7.0, 5.0, 7.0], [7.0, 3.0, 4.0]], [[8.0, 3.0, 5.0], [3.0, 6.0, 6.0], [1.0, 1.0, 4.0]]]]))
10822        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10823        val=msk_val*numarray.array([[[8.0]], [[1.0]]])+(1.-msk_val)*numarray.array([[[7.0]], [[3.0]]])        val=msk_val*numarray.array([[[8.0]], [[1.0]]])+(1.-msk_val)*numarray.array([[[7.0]], [[3.0]]])
10824        arg[1:3,1,1:2,2:]=val        arg[1:3,1,1:2,2:]=val
10825        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10857  class Test_util_slicing_with_tagged_data Line 10857  class Test_util_slicing_with_tagged_data
10857     def test_setslice_taggedData_rank4_expandedData_RCRN(self):     def test_setslice_taggedData_rank4_expandedData_RCRN(self):
10858        arg=Data(numarray.array([[[[1.0, 8.0, 4.0], [2.0, 1.0, 6.0], [5.0, 3.0, 7.0]], [[7.0, 2.0, 5.0], [6.0, 4.0, 4.0], [8.0, 1.0, 2.0]], [[8.0, 8.0, 3.0], [1.0, 8.0, 2.0], [2.0, 7.0, 7.0]]], [[[3.0, 2.0, 1.0], [5.0, 8.0, 6.0], [4.0, 8.0, 4.0]], [[2.0, 5.0, 6.0], [8.0, 8.0, 5.0], [8.0, 8.0, 4.0]], [[8.0, 8.0, 7.0], [7.0, 5.0, 3.0], [4.0, 3.0, 6.0]]], [[[5.0, 8.0, 8.0], [6.0, 6.0, 2.0], [3.0, 4.0, 6.0]], [[7.0, 8.0, 1.0], [1.0, 5.0, 4.0], [1.0, 2.0, 3.0]], [[3.0, 4.0, 1.0], [7.0, 7.0, 5.0], [4.0, 7.0, 3.0]]], [[[1.0, 8.0, 8.0], [8.0, 3.0, 2.0], [5.0, 1.0, 1.0]], [[8.0, 5.0, 8.0], [1.0, 1.0, 4.0], [5.0, 4.0, 1.0]], [[2.0, 4.0, 7.0], [1.0, 8.0, 2.0], [3.0, 8.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 8.0, 4.0], [2.0, 1.0, 6.0], [5.0, 3.0, 7.0]], [[7.0, 2.0, 5.0], [6.0, 4.0, 4.0], [8.0, 1.0, 2.0]], [[8.0, 8.0, 3.0], [1.0, 8.0, 2.0], [2.0, 7.0, 7.0]]], [[[3.0, 2.0, 1.0], [5.0, 8.0, 6.0], [4.0, 8.0, 4.0]], [[2.0, 5.0, 6.0], [8.0, 8.0, 5.0], [8.0, 8.0, 4.0]], [[8.0, 8.0, 7.0], [7.0, 5.0, 3.0], [4.0, 3.0, 6.0]]], [[[5.0, 8.0, 8.0], [6.0, 6.0, 2.0], [3.0, 4.0, 6.0]], [[7.0, 8.0, 1.0], [1.0, 5.0, 4.0], [1.0, 2.0, 3.0]], [[3.0, 4.0, 1.0], [7.0, 7.0, 5.0], [4.0, 7.0, 3.0]]], [[[1.0, 8.0, 8.0], [8.0, 3.0, 2.0], [5.0, 1.0, 1.0]], [[8.0, 5.0, 8.0], [1.0, 1.0, 4.0], [5.0, 4.0, 1.0]], [[2.0, 4.0, 7.0], [1.0, 8.0, 2.0], [3.0, 8.0, 6.0]]]]),self.functionspace)
10859        arg.setTaggedValue(1,numarray.array([[[[7.0, 3.0, 6.0], [5.0, 4.0, 6.0], [4.0, 1.0, 2.0]], [[4.0, 8.0, 5.0], [2.0, 4.0, 4.0], [8.0, 3.0, 2.0]], [[2.0, 5.0, 6.0], [4.0, 2.0, 4.0], [7.0, 1.0, 1.0]]], [[[4.0, 1.0, 1.0], [5.0, 6.0, 2.0], [1.0, 1.0, 8.0]], [[6.0, 3.0, 2.0], [5.0, 8.0, 1.0], [1.0, 6.0, 7.0]], [[5.0, 6.0, 7.0], [5.0, 2.0, 3.0], [2.0, 3.0, 7.0]]], [[[8.0, 3.0, 5.0], [4.0, 7.0, 8.0], [7.0, 3.0, 5.0]], [[6.0, 5.0, 7.0], [1.0, 4.0, 2.0], [8.0, 2.0, 6.0]], [[5.0, 2.0, 4.0], [5.0, 3.0, 2.0], [2.0, 6.0, 8.0]]], [[[2.0, 8.0, 2.0], [4.0, 3.0, 5.0], [6.0, 2.0, 6.0]], [[6.0, 5.0, 2.0], [2.0, 4.0, 8.0], [7.0, 7.0, 8.0]], [[1.0, 5.0, 4.0], [3.0, 8.0, 3.0], [4.0, 8.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 3.0, 6.0], [5.0, 4.0, 6.0], [4.0, 1.0, 2.0]], [[4.0, 8.0, 5.0], [2.0, 4.0, 4.0], [8.0, 3.0, 2.0]], [[2.0, 5.0, 6.0], [4.0, 2.0, 4.0], [7.0, 1.0, 1.0]]], [[[4.0, 1.0, 1.0], [5.0, 6.0, 2.0], [1.0, 1.0, 8.0]], [[6.0, 3.0, 2.0], [5.0, 8.0, 1.0], [1.0, 6.0, 7.0]], [[5.0, 6.0, 7.0], [5.0, 2.0, 3.0], [2.0, 3.0, 7.0]]], [[[8.0, 3.0, 5.0], [4.0, 7.0, 8.0], [7.0, 3.0, 5.0]], [[6.0, 5.0, 7.0], [1.0, 4.0, 2.0], [8.0, 2.0, 6.0]], [[5.0, 2.0, 4.0], [5.0, 3.0, 2.0], [2.0, 6.0, 8.0]]], [[[2.0, 8.0, 2.0], [4.0, 3.0, 5.0], [6.0, 2.0, 6.0]], [[6.0, 5.0, 2.0], [2.0, 4.0, 8.0], [7.0, 7.0, 8.0]], [[1.0, 5.0, 4.0], [3.0, 8.0, 3.0], [4.0, 8.0, 4.0]]]]))
10860        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10861        val=msk_val*numarray.array([[[[5.0, 6.0, 4.0]], [[8.0, 7.0, 6.0]], [[6.0, 4.0, 5.0]]], [[[4.0, 8.0, 4.0]], [[2.0, 1.0, 7.0]], [[2.0, 8.0, 1.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 5.0, 3.0]], [[4.0, 7.0, 2.0]], [[5.0, 7.0, 4.0]]], [[[4.0, 2.0, 8.0]], [[8.0, 1.0, 3.0]], [[2.0, 3.0, 2.0]]]])        val=msk_val*numarray.array([[[[5.0, 6.0, 4.0]], [[8.0, 7.0, 6.0]], [[6.0, 4.0, 5.0]]], [[[4.0, 8.0, 4.0]], [[2.0, 1.0, 7.0]], [[2.0, 8.0, 1.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 5.0, 3.0]], [[4.0, 7.0, 2.0]], [[5.0, 7.0, 4.0]]], [[[4.0, 2.0, 8.0]], [[8.0, 1.0, 3.0]], [[2.0, 3.0, 2.0]]]])
10862        arg[1:3,:,1:2]=val        arg[1:3,:,1:2]=val
10863        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10895  class Test_util_slicing_with_tagged_data Line 10895  class Test_util_slicing_with_tagged_data
10895     def test_setslice_taggedData_rank4_expandedData_LLCR(self):     def test_setslice_taggedData_rank4_expandedData_LLCR(self):
10896        arg=Data(numarray.array([[[[7.0, 2.0, 4.0], [4.0, 3.0, 5.0], [1.0, 6.0, 6.0]], [[3.0, 3.0, 4.0], [3.0, 7.0, 2.0], [6.0, 7.0, 7.0]], [[5.0, 6.0, 8.0], [3.0, 4.0, 7.0], [1.0, 1.0, 4.0]]], [[[8.0, 7.0, 2.0], [6.0, 1.0, 3.0], [8.0, 8.0, 6.0]], [[6.0, 3.0, 5.0], [4.0, 1.0, 1.0], [1.0, 3.0, 2.0]], [[6.0, 3.0, 3.0], [6.0, 7.0, 7.0], [1.0, 1.0, 4.0]]], [[[2.0, 2.0, 3.0], [3.0, 3.0, 3.0], [6.0, 4.0, 3.0]], [[6.0, 4.0, 1.0], [1.0, 3.0, 4.0], [6.0, 5.0, 8.0]], [[3.0, 8.0, 7.0], [4.0, 2.0, 3.0], [3.0, 4.0, 3.0]]], [[[2.0, 1.0, 1.0], [2.0, 2.0, 5.0], [4.0, 4.0, 8.0]], [[8.0, 1.0, 6.0], [4.0, 5.0, 6.0], [5.0, 2.0, 1.0]], [[7.0, 1.0, 6.0], [7.0, 7.0, 7.0], [7.0, 7.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 2.0, 4.0], [4.0, 3.0, 5.0], [1.0, 6.0, 6.0]], [[3.0, 3.0, 4.0], [3.0, 7.0, 2.0], [6.0, 7.0, 7.0]], [[5.0, 6.0, 8.0], [3.0, 4.0, 7.0], [1.0, 1.0, 4.0]]], [[[8.0, 7.0, 2.0], [6.0, 1.0, 3.0], [8.0, 8.0, 6.0]], [[6.0, 3.0, 5.0], [4.0, 1.0, 1.0], [1.0, 3.0, 2.0]], [[6.0, 3.0, 3.0], [6.0, 7.0, 7.0], [1.0, 1.0, 4.0]]], [[[2.0, 2.0, 3.0], [3.0, 3.0, 3.0], [6.0, 4.0, 3.0]], [[6.0, 4.0, 1.0], [1.0, 3.0, 4.0], [6.0, 5.0, 8.0]], [[3.0, 8.0, 7.0], [4.0, 2.0, 3.0], [3.0, 4.0, 3.0]]], [[[2.0, 1.0, 1.0], [2.0, 2.0, 5.0], [4.0, 4.0, 8.0]], [[8.0, 1.0, 6.0], [4.0, 5.0, 6.0], [5.0, 2.0, 1.0]], [[7.0, 1.0, 6.0], [7.0, 7.0, 7.0], [7.0, 7.0, 7.0]]]]),self.functionspace)
10897        arg.setTaggedValue(1,numarray.array([[[[5.0, 7.0, 4.0], [1.0, 4.0, 5.0], [4.0, 4.0, 2.0]], [[1.0, 1.0, 6.0], [6.0, 7.0, 2.0], [5.0, 3.0, 5.0]], [[2.0, 6.0, 2.0], [1.0, 4.0, 5.0], [3.0, 5.0, 2.0]]], [[[7.0, 6.0, 1.0], [8.0, 6.0, 4.0], [5.0, 4.0, 2.0]], [[2.0, 5.0, 3.0], [8.0, 7.0, 6.0], [5.0, 5.0, 4.0]], [[6.0, 1.0, 3.0], [7.0, 1.0, 8.0], [6.0, 8.0, 5.0]]], [[[5.0, 2.0, 8.0], [5.0, 5.0, 4.0], [7.0, 3.0, 5.0]], [[4.0, 4.0, 4.0], [8.0, 4.0, 5.0], [7.0, 5.0, 7.0]], [[8.0, 3.0, 2.0], [1.0, 6.0, 1.0], [2.0, 1.0, 7.0]]], [[[2.0, 4.0, 7.0], [5.0, 4.0, 6.0], [2.0, 5.0, 2.0]], [[4.0, 3.0, 8.0], [4.0, 6.0, 4.0], [5.0, 8.0, 2.0]], [[7.0, 1.0, 2.0], [6.0, 8.0, 2.0], [5.0, 1.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 7.0, 4.0], [1.0, 4.0, 5.0], [4.0, 4.0, 2.0]], [[1.0, 1.0, 6.0], [6.0, 7.0, 2.0], [5.0, 3.0, 5.0]], [[2.0, 6.0, 2.0], [1.0, 4.0, 5.0], [3.0, 5.0, 2.0]]], [[[7.0, 6.0, 1.0], [8.0, 6.0, 4.0], [5.0, 4.0, 2.0]], [[2.0, 5.0, 3.0], [8.0, 7.0, 6.0], [5.0, 5.0, 4.0]], [[6.0, 1.0, 3.0], [7.0, 1.0, 8.0], [6.0, 8.0, 5.0]]], [[[5.0, 2.0, 8.0], [5.0, 5.0, 4.0], [7.0, 3.0, 5.0]], [[4.0, 4.0, 4.0], [8.0, 4.0, 5.0], [7.0, 5.0, 7.0]], [[8.0, 3.0, 2.0], [1.0, 6.0, 1.0], [2.0, 1.0, 7.0]]], [[[2.0, 4.0, 7.0], [5.0, 4.0, 6.0], [2.0, 5.0, 2.0]], [[4.0, 3.0, 8.0], [4.0, 6.0, 4.0], [5.0, 8.0, 2.0]], [[7.0, 1.0, 2.0], [6.0, 8.0, 2.0], [5.0, 1.0, 2.0]]]]))
10898        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10899        val=msk_val*numarray.array([[[[2.0], [5.0], [6.0]]], [[[6.0], [5.0], [5.0]]]])+(1.-msk_val)*numarray.array([[[[8.0], [1.0], [8.0]]], [[[2.0], [1.0], [3.0]]]])        val=msk_val*numarray.array([[[[2.0], [5.0], [6.0]]], [[[6.0], [5.0], [5.0]]]])+(1.-msk_val)*numarray.array([[[[8.0], [1.0], [8.0]]], [[[2.0], [1.0], [3.0]]]])
10900        arg[2:,2:,:,1:2]=val        arg[2:,2:,:,1:2]=val
10901        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10933  class Test_util_slicing_with_tagged_data Line 10933  class Test_util_slicing_with_tagged_data
10933     def test_setslice_taggedData_rank4_expandedData_RRCU(self):     def test_setslice_taggedData_rank4_expandedData_RRCU(self):
10934        arg=Data(numarray.array([[[[3.0, 2.0, 2.0], [1.0, 6.0, 8.0], [6.0, 8.0, 3.0]], [[8.0, 3.0, 4.0], [8.0, 7.0, 3.0], [2.0, 7.0, 7.0]], [[7.0, 3.0, 2.0], [2.0, 2.0, 1.0], [6.0, 7.0, 1.0]]], [[[5.0, 5.0, 5.0], [2.0, 7.0, 8.0], [5.0, 5.0, 1.0]], [[6.0, 1.0, 6.0], [4.0, 8.0, 1.0], [3.0, 7.0, 4.0]], [[6.0, 4.0, 8.0], [4.0, 5.0, 1.0], [7.0, 2.0, 5.0]]], [[[3.0, 3.0, 7.0], [7.0, 7.0, 5.0], [1.0, 2.0, 5.0]], [[2.0, 3.0, 2.0], [1.0, 4.0, 4.0], [4.0, 4.0, 6.0]], [[7.0, 3.0, 6.0], [6.0, 1.0, 3.0], [7.0, 2.0, 5.0]]], [[[7.0, 8.0, 4.0], [4.0, 5.0, 6.0], [5.0, 8.0, 1.0]], [[8.0, 7.0, 1.0], [1.0, 4.0, 8.0], [4.0, 4.0, 1.0]], [[6.0, 5.0, 3.0], [5.0, 6.0, 6.0], [6.0, 3.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 2.0, 2.0], [1.0, 6.0, 8.0], [6.0, 8.0, 3.0]], [[8.0, 3.0, 4.0], [8.0, 7.0, 3.0], [2.0, 7.0, 7.0]], [[7.0, 3.0, 2.0], [2.0, 2.0, 1.0], [6.0, 7.0, 1.0]]], [[[5.0, 5.0, 5.0], [2.0, 7.0, 8.0], [5.0, 5.0, 1.0]], [[6.0, 1.0, 6.0], [4.0, 8.0, 1.0], [3.0, 7.0, 4.0]], [[6.0, 4.0, 8.0], [4.0, 5.0, 1.0], [7.0, 2.0, 5.0]]], [[[3.0, 3.0, 7.0], [7.0, 7.0, 5.0], [1.0, 2.0, 5.0]], [[2.0, 3.0, 2.0], [1.0, 4.0, 4.0], [4.0, 4.0, 6.0]], [[7.0, 3.0, 6.0], [6.0, 1.0, 3.0], [7.0, 2.0, 5.0]]], [[[7.0, 8.0, 4.0], [4.0, 5.0, 6.0], [5.0, 8.0, 1.0]], [[8.0, 7.0, 1.0], [1.0, 4.0, 8.0], [4.0, 4.0, 1.0]], [[6.0, 5.0, 3.0], [5.0, 6.0, 6.0], [6.0, 3.0, 8.0]]]]),self.functionspace)
10935        arg.setTaggedValue(1,numarray.array([[[[5.0, 7.0, 4.0], [4.0, 6.0, 4.0], [5.0, 4.0, 3.0]], [[8.0, 8.0, 4.0], [6.0, 6.0, 7.0], [6.0, 2.0, 2.0]], [[3.0, 8.0, 4.0], [3.0, 2.0, 3.0], [8.0, 6.0, 5.0]]], [[[6.0, 8.0, 1.0], [2.0, 2.0, 1.0], [4.0, 4.0, 3.0]], [[1.0, 6.0, 5.0], [4.0, 1.0, 7.0], [2.0, 8.0, 3.0]], [[6.0, 3.0, 6.0], [5.0, 3.0, 8.0], [4.0, 4.0, 6.0]]], [[[4.0, 4.0, 2.0], [7.0, 8.0, 8.0], [1.0, 3.0, 3.0]], [[7.0, 3.0, 8.0], [2.0, 5.0, 6.0], [3.0, 7.0, 6.0]], [[3.0, 7.0, 2.0], [4.0, 8.0, 3.0], [3.0, 2.0, 8.0]]], [[[4.0, 6.0, 2.0], [8.0, 7.0, 3.0], [7.0, 3.0, 8.0]], [[7.0, 3.0, 2.0], [8.0, 5.0, 7.0], [1.0, 6.0, 2.0]], [[7.0, 1.0, 3.0], [5.0, 4.0, 5.0], [3.0, 1.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 7.0, 4.0], [4.0, 6.0, 4.0], [5.0, 4.0, 3.0]], [[8.0, 8.0, 4.0], [6.0, 6.0, 7.0], [6.0, 2.0, 2.0]], [[3.0, 8.0, 4.0], [3.0, 2.0, 3.0], [8.0, 6.0, 5.0]]], [[[6.0, 8.0, 1.0], [2.0, 2.0, 1.0], [4.0, 4.0, 3.0]], [[1.0, 6.0, 5.0], [4.0, 1.0, 7.0], [2.0, 8.0, 3.0]], [[6.0, 3.0, 6.0], [5.0, 3.0, 8.0], [4.0, 4.0, 6.0]]], [[[4.0, 4.0, 2.0], [7.0, 8.0, 8.0], [1.0, 3.0, 3.0]], [[7.0, 3.0, 8.0], [2.0, 5.0, 6.0], [3.0, 7.0, 6.0]], [[3.0, 7.0, 2.0], [4.0, 8.0, 3.0], [3.0, 2.0, 8.0]]], [[[4.0, 6.0, 2.0], [8.0, 7.0, 3.0], [7.0, 3.0, 8.0]], [[7.0, 3.0, 2.0], [8.0, 5.0, 7.0], [1.0, 6.0, 2.0]], [[7.0, 1.0, 3.0], [5.0, 4.0, 5.0], [3.0, 1.0, 4.0]]]]))
10936        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10937        val=msk_val*numarray.array([[[[7.0, 3.0], [3.0, 6.0], [6.0, 2.0]]], [[[4.0, 7.0], [1.0, 8.0], [2.0, 6.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 4.0], [5.0, 4.0], [6.0, 6.0]]], [[[2.0, 1.0], [5.0, 1.0], [2.0, 1.0]]]])        val=msk_val*numarray.array([[[[7.0, 3.0], [3.0, 6.0], [6.0, 2.0]]], [[[4.0, 7.0], [1.0, 8.0], [2.0, 6.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 4.0], [5.0, 4.0], [6.0, 6.0]]], [[[2.0, 1.0], [5.0, 1.0], [2.0, 1.0]]]])
10938        arg[1:3,1:2,:,:2]=val        arg[1:3,1:2,:,:2]=val
10939        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 10971  class Test_util_slicing_with_tagged_data Line 10971  class Test_util_slicing_with_tagged_data
10971     def test_setslice_taggedData_rank4_expandedData_RLCR(self):     def test_setslice_taggedData_rank4_expandedData_RLCR(self):
10972        arg=Data(numarray.array([[[[7.0, 8.0, 5.0], [8.0, 6.0, 4.0], [3.0, 6.0, 4.0]], [[6.0, 6.0, 5.0], [3.0, 5.0, 1.0], [5.0, 2.0, 3.0]], [[7.0, 4.0, 5.0], [5.0, 7.0, 1.0], [1.0, 4.0, 6.0]]], [[[2.0, 5.0, 1.0], [7.0, 4.0, 4.0], [8.0, 1.0, 2.0]], [[3.0, 4.0, 8.0], [3.0, 7.0, 6.0], [6.0, 7.0, 8.0]], [[3.0, 5.0, 5.0], [7.0, 8.0, 5.0], [8.0, 3.0, 7.0]]], [[[2.0, 1.0, 2.0], [8.0, 2.0, 8.0], [4.0, 6.0, 1.0]], [[7.0, 4.0, 6.0], [4.0, 4.0, 3.0], [1.0, 7.0, 2.0]], [[3.0, 8.0, 4.0], [6.0, 7.0, 8.0], [8.0, 4.0, 1.0]]], [[[5.0, 8.0, 4.0], [3.0, 5.0, 2.0], [4.0, 6.0, 5.0]], [[3.0, 4.0, 6.0], [5.0, 7.0, 3.0], [6.0, 3.0, 2.0]], [[1.0, 2.0, 3.0], [8.0, 1.0, 8.0], [3.0, 6.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 8.0, 5.0], [8.0, 6.0, 4.0], [3.0, 6.0, 4.0]], [[6.0, 6.0, 5.0], [3.0, 5.0, 1.0], [5.0, 2.0, 3.0]], [[7.0, 4.0, 5.0], [5.0, 7.0, 1.0], [1.0, 4.0, 6.0]]], [[[2.0, 5.0, 1.0], [7.0, 4.0, 4.0], [8.0, 1.0, 2.0]], [[3.0, 4.0, 8.0], [3.0, 7.0, 6.0], [6.0, 7.0, 8.0]], [[3.0, 5.0, 5.0], [7.0, 8.0, 5.0], [8.0, 3.0, 7.0]]], [[[2.0, 1.0, 2.0], [8.0, 2.0, 8.0], [4.0, 6.0, 1.0]], [[7.0, 4.0, 6.0], [4.0, 4.0, 3.0], [1.0, 7.0, 2.0]], [[3.0, 8.0, 4.0], [6.0, 7.0, 8.0], [8.0, 4.0, 1.0]]], [[[5.0, 8.0, 4.0], [3.0, 5.0, 2.0], [4.0, 6.0, 5.0]], [[3.0, 4.0, 6.0], [5.0, 7.0, 3.0], [6.0, 3.0, 2.0]], [[1.0, 2.0, 3.0], [8.0, 1.0, 8.0], [3.0, 6.0, 8.0]]]]),self.functionspace)
10973        arg.setTaggedValue(1,numarray.array([[[[8.0, 3.0, 2.0], [1.0, 3.0, 4.0], [8.0, 2.0, 6.0]], [[5.0, 4.0, 1.0], [4.0, 6.0, 6.0], [4.0, 5.0, 6.0]], [[1.0, 7.0, 4.0], [5.0, 5.0, 1.0], [6.0, 3.0, 6.0]]], [[[1.0, 5.0, 5.0], [7.0, 5.0, 2.0], [8.0, 3.0, 1.0]], [[4.0, 7.0, 6.0], [8.0, 7.0, 3.0], [6.0, 3.0, 8.0]], [[4.0, 1.0, 8.0], [7.0, 4.0, 7.0], [5.0, 4.0, 5.0]]], [[[7.0, 8.0, 4.0], [6.0, 6.0, 6.0], [3.0, 7.0, 8.0]], [[1.0, 6.0, 7.0], [2.0, 5.0, 2.0], [8.0, 4.0, 1.0]], [[4.0, 1.0, 3.0], [3.0, 5.0, 5.0], [1.0, 6.0, 1.0]]], [[[7.0, 7.0, 8.0], [3.0, 6.0, 5.0], [2.0, 2.0, 4.0]], [[7.0, 8.0, 3.0], [3.0, 5.0, 2.0], [8.0, 3.0, 1.0]], [[1.0, 1.0, 3.0], [1.0, 4.0, 3.0], [3.0, 5.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 3.0, 2.0], [1.0, 3.0, 4.0], [8.0, 2.0, 6.0]], [[5.0, 4.0, 1.0], [4.0, 6.0, 6.0], [4.0, 5.0, 6.0]], [[1.0, 7.0, 4.0], [5.0, 5.0, 1.0], [6.0, 3.0, 6.0]]], [[[1.0, 5.0, 5.0], [7.0, 5.0, 2.0], [8.0, 3.0, 1.0]], [[4.0, 7.0, 6.0], [8.0, 7.0, 3.0], [6.0, 3.0, 8.0]], [[4.0, 1.0, 8.0], [7.0, 4.0, 7.0], [5.0, 4.0, 5.0]]], [[[7.0, 8.0, 4.0], [6.0, 6.0, 6.0], [3.0, 7.0, 8.0]], [[1.0, 6.0, 7.0], [2.0, 5.0, 2.0], [8.0, 4.0, 1.0]], [[4.0, 1.0, 3.0], [3.0, 5.0, 5.0], [1.0, 6.0, 1.0]]], [[[7.0, 7.0, 8.0], [3.0, 6.0, 5.0], [2.0, 2.0, 4.0]], [[7.0, 8.0, 3.0], [3.0, 5.0, 2.0], [8.0, 3.0, 1.0]], [[1.0, 1.0, 3.0], [1.0, 4.0, 3.0], [3.0, 5.0, 5.0]]]]))
10974        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
10975        val=msk_val*numarray.array([[[[4.0], [1.0], [1.0]]], [[[2.0], [7.0], [4.0]]]])+(1.-msk_val)*numarray.array([[[[5.0], [4.0], [4.0]]], [[[2.0], [3.0], [8.0]]]])        val=msk_val*numarray.array([[[[4.0], [1.0], [1.0]]], [[[2.0], [7.0], [4.0]]]])+(1.-msk_val)*numarray.array([[[[5.0], [4.0], [4.0]]], [[[2.0], [3.0], [8.0]]]])
10976        arg[1:3,2:,:,1:2]=val        arg[1:3,2:,:,1:2]=val
10977        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11009  class Test_util_slicing_with_tagged_data Line 11009  class Test_util_slicing_with_tagged_data
11009     def test_setslice_taggedData_rank4_expandedData_CRPN(self):     def test_setslice_taggedData_rank4_expandedData_CRPN(self):
11010        arg=Data(numarray.array([[[[5.0, 3.0, 7.0], [3.0, 1.0, 1.0], [1.0, 4.0, 4.0]], [[7.0, 4.0, 2.0], [8.0, 5.0, 2.0], [5.0, 6.0, 8.0]], [[3.0, 6.0, 3.0], [6.0, 6.0, 3.0], [3.0, 2.0, 4.0]]], [[[2.0, 6.0, 7.0], [4.0, 5.0, 5.0], [2.0, 8.0, 3.0]], [[5.0, 5.0, 1.0], [7.0, 6.0, 6.0], [6.0, 2.0, 3.0]], [[7.0, 1.0, 8.0], [6.0, 7.0, 3.0], [3.0, 3.0, 3.0]]], [[[7.0, 7.0, 2.0], [6.0, 3.0, 1.0], [3.0, 7.0, 6.0]], [[3.0, 3.0, 3.0], [4.0, 1.0, 5.0], [1.0, 2.0, 8.0]], [[7.0, 7.0, 1.0], [5.0, 4.0, 1.0], [8.0, 8.0, 3.0]]], [[[6.0, 3.0, 6.0], [5.0, 8.0, 8.0], [1.0, 3.0, 4.0]], [[8.0, 1.0, 6.0], [4.0, 3.0, 8.0], [8.0, 5.0, 4.0]], [[1.0, 1.0, 6.0], [3.0, 8.0, 8.0], [2.0, 6.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 3.0, 7.0], [3.0, 1.0, 1.0], [1.0, 4.0, 4.0]], [[7.0, 4.0, 2.0], [8.0, 5.0, 2.0], [5.0, 6.0, 8.0]], [[3.0, 6.0, 3.0], [6.0, 6.0, 3.0], [3.0, 2.0, 4.0]]], [[[2.0, 6.0, 7.0], [4.0, 5.0, 5.0], [2.0, 8.0, 3.0]], [[5.0, 5.0, 1.0], [7.0, 6.0, 6.0], [6.0, 2.0, 3.0]], [[7.0, 1.0, 8.0], [6.0, 7.0, 3.0], [3.0, 3.0, 3.0]]], [[[7.0, 7.0, 2.0], [6.0, 3.0, 1.0], [3.0, 7.0, 6.0]], [[3.0, 3.0, 3.0], [4.0, 1.0, 5.0], [1.0, 2.0, 8.0]], [[7.0, 7.0, 1.0], [5.0, 4.0, 1.0], [8.0, 8.0, 3.0]]], [[[6.0, 3.0, 6.0], [5.0, 8.0, 8.0], [1.0, 3.0, 4.0]], [[8.0, 1.0, 6.0], [4.0, 3.0, 8.0], [8.0, 5.0, 4.0]], [[1.0, 1.0, 6.0], [3.0, 8.0, 8.0], [2.0, 6.0, 8.0]]]]),self.functionspace)
11011        arg.setTaggedValue(1,numarray.array([[[[1.0, 1.0, 8.0], [8.0, 5.0, 2.0], [3.0, 6.0, 6.0]], [[3.0, 3.0, 8.0], [8.0, 3.0, 4.0], [7.0, 7.0, 4.0]], [[2.0, 6.0, 5.0], [4.0, 1.0, 6.0], [6.0, 3.0, 3.0]]], [[[8.0, 6.0, 2.0], [7.0, 5.0, 4.0], [3.0, 4.0, 1.0]], [[4.0, 5.0, 4.0], [1.0, 4.0, 1.0], [7.0, 8.0, 2.0]], [[3.0, 4.0, 3.0], [2.0, 5.0, 6.0], [2.0, 8.0, 1.0]]], [[[5.0, 1.0, 4.0], [7.0, 4.0, 3.0], [7.0, 6.0, 3.0]], [[4.0, 2.0, 1.0], [8.0, 7.0, 2.0], [7.0, 1.0, 8.0]], [[4.0, 7.0, 6.0], [3.0, 3.0, 2.0], [5.0, 7.0, 4.0]]], [[[7.0, 5.0, 6.0], [2.0, 2.0, 3.0], [3.0, 3.0, 3.0]], [[3.0, 6.0, 2.0], [8.0, 3.0, 8.0], [2.0, 2.0, 6.0]], [[7.0, 2.0, 5.0], [2.0, 6.0, 8.0], [2.0, 8.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 1.0, 8.0], [8.0, 5.0, 2.0], [3.0, 6.0, 6.0]], [[3.0, 3.0, 8.0], [8.0, 3.0, 4.0], [7.0, 7.0, 4.0]], [[2.0, 6.0, 5.0], [4.0, 1.0, 6.0], [6.0, 3.0, 3.0]]], [[[8.0, 6.0, 2.0], [7.0, 5.0, 4.0], [3.0, 4.0, 1.0]], [[4.0, 5.0, 4.0], [1.0, 4.0, 1.0], [7.0, 8.0, 2.0]], [[3.0, 4.0, 3.0], [2.0, 5.0, 6.0], [2.0, 8.0, 1.0]]], [[[5.0, 1.0, 4.0], [7.0, 4.0, 3.0], [7.0, 6.0, 3.0]], [[4.0, 2.0, 1.0], [8.0, 7.0, 2.0], [7.0, 1.0, 8.0]], [[4.0, 7.0, 6.0], [3.0, 3.0, 2.0], [5.0, 7.0, 4.0]]], [[[7.0, 5.0, 6.0], [2.0, 2.0, 3.0], [3.0, 3.0, 3.0]], [[3.0, 6.0, 2.0], [8.0, 3.0, 8.0], [2.0, 2.0, 6.0]], [[7.0, 2.0, 5.0], [2.0, 6.0, 8.0], [2.0, 8.0, 7.0]]]]))
11012        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11013        val=msk_val*numarray.array([[[6.0, 6.0, 6.0]], [[8.0, 7.0, 7.0]], [[6.0, 8.0, 2.0]], [[6.0, 8.0, 3.0]]])+(1.-msk_val)*numarray.array([[[8.0, 3.0, 3.0]], [[6.0, 7.0, 4.0]], [[4.0, 7.0, 4.0]], [[8.0, 8.0, 3.0]]])        val=msk_val*numarray.array([[[6.0, 6.0, 6.0]], [[8.0, 7.0, 7.0]], [[6.0, 8.0, 2.0]], [[6.0, 8.0, 3.0]]])+(1.-msk_val)*numarray.array([[[8.0, 3.0, 3.0]], [[6.0, 7.0, 4.0]], [[4.0, 7.0, 4.0]], [[8.0, 8.0, 3.0]]])
11014        arg[:,1:2,1]=val        arg[:,1:2,1]=val
11015        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11047  class Test_util_slicing_with_tagged_data Line 11047  class Test_util_slicing_with_tagged_data
11047     def test_setslice_taggedData_rank4_expandedData_UUPC(self):     def test_setslice_taggedData_rank4_expandedData_UUPC(self):
11048        arg=Data(numarray.array([[[[7.0, 6.0, 6.0], [5.0, 7.0, 8.0], [5.0, 5.0, 4.0]], [[3.0, 1.0, 3.0], [7.0, 8.0, 6.0], [1.0, 3.0, 6.0]], [[6.0, 3.0, 1.0], [1.0, 1.0, 8.0], [1.0, 2.0, 5.0]]], [[[3.0, 7.0, 3.0], [8.0, 3.0, 1.0], [3.0, 8.0, 5.0]], [[1.0, 8.0, 1.0], [1.0, 6.0, 4.0], [1.0, 6.0, 1.0]], [[3.0, 5.0, 4.0], [8.0, 1.0, 3.0], [1.0, 1.0, 2.0]]], [[[3.0, 2.0, 2.0], [6.0, 2.0, 6.0], [3.0, 2.0, 4.0]], [[8.0, 7.0, 3.0], [5.0, 4.0, 4.0], [2.0, 3.0, 7.0]], [[3.0, 2.0, 3.0], [7.0, 5.0, 2.0], [6.0, 2.0, 4.0]]], [[[2.0, 1.0, 6.0], [4.0, 3.0, 2.0], [6.0, 8.0, 7.0]], [[2.0, 6.0, 5.0], [7.0, 5.0, 8.0], [3.0, 2.0, 7.0]], [[5.0, 8.0, 7.0], [1.0, 6.0, 2.0], [8.0, 1.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 6.0, 6.0], [5.0, 7.0, 8.0], [5.0, 5.0, 4.0]], [[3.0, 1.0, 3.0], [7.0, 8.0, 6.0], [1.0, 3.0, 6.0]], [[6.0, 3.0, 1.0], [1.0, 1.0, 8.0], [1.0, 2.0, 5.0]]], [[[3.0, 7.0, 3.0], [8.0, 3.0, 1.0], [3.0, 8.0, 5.0]], [[1.0, 8.0, 1.0], [1.0, 6.0, 4.0], [1.0, 6.0, 1.0]], [[3.0, 5.0, 4.0], [8.0, 1.0, 3.0], [1.0, 1.0, 2.0]]], [[[3.0, 2.0, 2.0], [6.0, 2.0, 6.0], [3.0, 2.0, 4.0]], [[8.0, 7.0, 3.0], [5.0, 4.0, 4.0], [2.0, 3.0, 7.0]], [[3.0, 2.0, 3.0], [7.0, 5.0, 2.0], [6.0, 2.0, 4.0]]], [[[2.0, 1.0, 6.0], [4.0, 3.0, 2.0], [6.0, 8.0, 7.0]], [[2.0, 6.0, 5.0], [7.0, 5.0, 8.0], [3.0, 2.0, 7.0]], [[5.0, 8.0, 7.0], [1.0, 6.0, 2.0], [8.0, 1.0, 1.0]]]]),self.functionspace)
11049        arg.setTaggedValue(1,numarray.array([[[[8.0, 4.0, 5.0], [4.0, 2.0, 1.0], [3.0, 2.0, 4.0]], [[3.0, 6.0, 4.0], [6.0, 5.0, 7.0], [1.0, 3.0, 3.0]], [[2.0, 7.0, 8.0], [2.0, 4.0, 7.0], [3.0, 5.0, 2.0]]], [[[5.0, 5.0, 5.0], [1.0, 6.0, 1.0], [1.0, 4.0, 1.0]], [[3.0, 8.0, 5.0], [8.0, 1.0, 3.0], [3.0, 7.0, 8.0]], [[8.0, 8.0, 5.0], [7.0, 5.0, 3.0], [2.0, 6.0, 8.0]]], [[[3.0, 2.0, 8.0], [7.0, 5.0, 2.0], [8.0, 6.0, 1.0]], [[1.0, 3.0, 4.0], [7.0, 5.0, 2.0], [4.0, 3.0, 1.0]], [[4.0, 3.0, 6.0], [6.0, 7.0, 8.0], [7.0, 6.0, 4.0]]], [[[6.0, 3.0, 6.0], [8.0, 1.0, 1.0], [3.0, 4.0, 4.0]], [[1.0, 5.0, 1.0], [7.0, 2.0, 2.0], [8.0, 5.0, 1.0]], [[5.0, 4.0, 7.0], [2.0, 1.0, 8.0], [1.0, 4.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 4.0, 5.0], [4.0, 2.0, 1.0], [3.0, 2.0, 4.0]], [[3.0, 6.0, 4.0], [6.0, 5.0, 7.0], [1.0, 3.0, 3.0]], [[2.0, 7.0, 8.0], [2.0, 4.0, 7.0], [3.0, 5.0, 2.0]]], [[[5.0, 5.0, 5.0], [1.0, 6.0, 1.0], [1.0, 4.0, 1.0]], [[3.0, 8.0, 5.0], [8.0, 1.0, 3.0], [3.0, 7.0, 8.0]], [[8.0, 8.0, 5.0], [7.0, 5.0, 3.0], [2.0, 6.0, 8.0]]], [[[3.0, 2.0, 8.0], [7.0, 5.0, 2.0], [8.0, 6.0, 1.0]], [[1.0, 3.0, 4.0], [7.0, 5.0, 2.0], [4.0, 3.0, 1.0]], [[4.0, 3.0, 6.0], [6.0, 7.0, 8.0], [7.0, 6.0, 4.0]]], [[[6.0, 3.0, 6.0], [8.0, 1.0, 1.0], [3.0, 4.0, 4.0]], [[1.0, 5.0, 1.0], [7.0, 2.0, 2.0], [8.0, 5.0, 1.0]], [[5.0, 4.0, 7.0], [2.0, 1.0, 8.0], [1.0, 4.0, 3.0]]]]))
11050        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11051        val=msk_val*numarray.array([[[2.0, 3.0, 3.0], [3.0, 3.0, 3.0]], [[7.0, 8.0, 7.0], [5.0, 2.0, 7.0]], [[3.0, 6.0, 5.0], [8.0, 1.0, 7.0]]])+(1.-msk_val)*numarray.array([[[8.0, 5.0, 3.0], [2.0, 2.0, 7.0]], [[8.0, 2.0, 1.0], [1.0, 7.0, 1.0]], [[5.0, 5.0, 8.0], [7.0, 3.0, 4.0]]])        val=msk_val*numarray.array([[[2.0, 3.0, 3.0], [3.0, 3.0, 3.0]], [[7.0, 8.0, 7.0], [5.0, 2.0, 7.0]], [[3.0, 6.0, 5.0], [8.0, 1.0, 7.0]]])+(1.-msk_val)*numarray.array([[[8.0, 5.0, 3.0], [2.0, 2.0, 7.0]], [[8.0, 2.0, 1.0], [1.0, 7.0, 1.0]], [[5.0, 5.0, 8.0], [7.0, 3.0, 4.0]]])
11052        arg[:3,:2,1,:]=val        arg[:3,:2,1,:]=val
11053        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11085  class Test_util_slicing_with_tagged_data Line 11085  class Test_util_slicing_with_tagged_data
11085     def test_setslice_taggedData_rank4_expandedData_URRR(self):     def test_setslice_taggedData_rank4_expandedData_URRR(self):
11086        arg=Data(numarray.array([[[[3.0, 3.0, 4.0], [2.0, 8.0, 8.0], [1.0, 1.0, 1.0]], [[6.0, 4.0, 8.0], [4.0, 5.0, 4.0], [2.0, 8.0, 7.0]], [[7.0, 8.0, 1.0], [7.0, 6.0, 8.0], [4.0, 4.0, 2.0]]], [[[8.0, 5.0, 8.0], [5.0, 4.0, 4.0], [6.0, 2.0, 8.0]], [[5.0, 7.0, 8.0], [6.0, 5.0, 8.0], [6.0, 4.0, 4.0]], [[2.0, 8.0, 4.0], [7.0, 5.0, 6.0], [7.0, 8.0, 4.0]]], [[[1.0, 2.0, 4.0], [7.0, 5.0, 5.0], [2.0, 3.0, 8.0]], [[1.0, 8.0, 4.0], [5.0, 1.0, 8.0], [3.0, 4.0, 5.0]], [[3.0, 1.0, 1.0], [1.0, 8.0, 5.0], [2.0, 6.0, 2.0]]], [[[8.0, 4.0, 2.0], [4.0, 5.0, 5.0], [2.0, 4.0, 8.0]], [[7.0, 7.0, 8.0], [5.0, 2.0, 6.0], [4.0, 7.0, 7.0]], [[4.0, 7.0, 7.0], [5.0, 6.0, 4.0], [4.0, 7.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 3.0, 4.0], [2.0, 8.0, 8.0], [1.0, 1.0, 1.0]], [[6.0, 4.0, 8.0], [4.0, 5.0, 4.0], [2.0, 8.0, 7.0]], [[7.0, 8.0, 1.0], [7.0, 6.0, 8.0], [4.0, 4.0, 2.0]]], [[[8.0, 5.0, 8.0], [5.0, 4.0, 4.0], [6.0, 2.0, 8.0]], [[5.0, 7.0, 8.0], [6.0, 5.0, 8.0], [6.0, 4.0, 4.0]], [[2.0, 8.0, 4.0], [7.0, 5.0, 6.0], [7.0, 8.0, 4.0]]], [[[1.0, 2.0, 4.0], [7.0, 5.0, 5.0], [2.0, 3.0, 8.0]], [[1.0, 8.0, 4.0], [5.0, 1.0, 8.0], [3.0, 4.0, 5.0]], [[3.0, 1.0, 1.0], [1.0, 8.0, 5.0], [2.0, 6.0, 2.0]]], [[[8.0, 4.0, 2.0], [4.0, 5.0, 5.0], [2.0, 4.0, 8.0]], [[7.0, 7.0, 8.0], [5.0, 2.0, 6.0], [4.0, 7.0, 7.0]], [[4.0, 7.0, 7.0], [5.0, 6.0, 4.0], [4.0, 7.0, 2.0]]]]),self.functionspace)
11087        arg.setTaggedValue(1,numarray.array([[[[5.0, 3.0, 3.0], [5.0, 2.0, 6.0], [3.0, 1.0, 1.0]], [[3.0, 1.0, 8.0], [8.0, 5.0, 7.0], [4.0, 2.0, 7.0]], [[3.0, 2.0, 5.0], [6.0, 3.0, 1.0], [5.0, 3.0, 7.0]]], [[[4.0, 3.0, 1.0], [2.0, 8.0, 4.0], [5.0, 8.0, 4.0]], [[1.0, 7.0, 7.0], [5.0, 6.0, 3.0], [6.0, 4.0, 4.0]], [[7.0, 8.0, 5.0], [3.0, 6.0, 6.0], [6.0, 1.0, 8.0]]], [[[7.0, 8.0, 7.0], [3.0, 6.0, 4.0], [8.0, 1.0, 5.0]], [[3.0, 2.0, 7.0], [1.0, 3.0, 1.0], [5.0, 3.0, 3.0]], [[5.0, 2.0, 8.0], [7.0, 6.0, 2.0], [1.0, 5.0, 8.0]]], [[[5.0, 2.0, 2.0], [8.0, 2.0, 7.0], [8.0, 5.0, 1.0]], [[1.0, 2.0, 1.0], [6.0, 8.0, 1.0], [5.0, 5.0, 1.0]], [[3.0, 3.0, 8.0], [1.0, 4.0, 5.0], [2.0, 6.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 3.0, 3.0], [5.0, 2.0, 6.0], [3.0, 1.0, 1.0]], [[3.0, 1.0, 8.0], [8.0, 5.0, 7.0], [4.0, 2.0, 7.0]], [[3.0, 2.0, 5.0], [6.0, 3.0, 1.0], [5.0, 3.0, 7.0]]], [[[4.0, 3.0, 1.0], [2.0, 8.0, 4.0], [5.0, 8.0, 4.0]], [[1.0, 7.0, 7.0], [5.0, 6.0, 3.0], [6.0, 4.0, 4.0]], [[7.0, 8.0, 5.0], [3.0, 6.0, 6.0], [6.0, 1.0, 8.0]]], [[[7.0, 8.0, 7.0], [3.0, 6.0, 4.0], [8.0, 1.0, 5.0]], [[3.0, 2.0, 7.0], [1.0, 3.0, 1.0], [5.0, 3.0, 3.0]], [[5.0, 2.0, 8.0], [7.0, 6.0, 2.0], [1.0, 5.0, 8.0]]], [[[5.0, 2.0, 2.0], [8.0, 2.0, 7.0], [8.0, 5.0, 1.0]], [[1.0, 2.0, 1.0], [6.0, 8.0, 1.0], [5.0, 5.0, 1.0]], [[3.0, 3.0, 8.0], [1.0, 4.0, 5.0], [2.0, 6.0, 6.0]]]]))
11088        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11089        val=msk_val*numarray.array([[[[7.0]]], [[[1.0]]], [[[2.0]]]])+(1.-msk_val)*numarray.array([[[[3.0]]], [[[3.0]]], [[[7.0]]]])        val=msk_val*numarray.array([[[[7.0]]], [[[1.0]]], [[[2.0]]]])+(1.-msk_val)*numarray.array([[[[3.0]]], [[[3.0]]], [[[7.0]]]])
11090        arg[:3,1:2,1:2,1:2]=val        arg[:3,1:2,1:2,1:2]=val
11091        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11123  class Test_util_slicing_with_tagged_data Line 11123  class Test_util_slicing_with_tagged_data
11123     def test_setslice_taggedData_rank4_expandedData_PLCN(self):     def test_setslice_taggedData_rank4_expandedData_PLCN(self):
11124        arg=Data(numarray.array([[[[6.0, 7.0, 7.0], [1.0, 3.0, 7.0], [7.0, 2.0, 7.0]], [[6.0, 6.0, 4.0], [4.0, 2.0, 1.0], [3.0, 5.0, 6.0]], [[7.0, 4.0, 2.0], [4.0, 7.0, 6.0], [3.0, 2.0, 2.0]]], [[[8.0, 6.0, 7.0], [1.0, 7.0, 2.0], [8.0, 3.0, 2.0]], [[7.0, 8.0, 8.0], [6.0, 7.0, 4.0], [2.0, 4.0, 5.0]], [[4.0, 5.0, 2.0], [3.0, 3.0, 5.0], [6.0, 8.0, 5.0]]], [[[8.0, 5.0, 2.0], [8.0, 6.0, 1.0], [8.0, 5.0, 8.0]], [[2.0, 6.0, 2.0], [6.0, 4.0, 7.0], [7.0, 7.0, 2.0]], [[3.0, 3.0, 6.0], [8.0, 8.0, 8.0], [8.0, 1.0, 6.0]]], [[[1.0, 3.0, 2.0], [2.0, 1.0, 3.0], [4.0, 7.0, 4.0]], [[7.0, 1.0, 1.0], [8.0, 6.0, 8.0], [8.0, 3.0, 3.0]], [[1.0, 5.0, 2.0], [1.0, 6.0, 1.0], [5.0, 8.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[6.0, 7.0, 7.0], [1.0, 3.0, 7.0], [7.0, 2.0, 7.0]], [[6.0, 6.0, 4.0], [4.0, 2.0, 1.0], [3.0, 5.0, 6.0]], [[7.0, 4.0, 2.0], [4.0, 7.0, 6.0], [3.0, 2.0, 2.0]]], [[[8.0, 6.0, 7.0], [1.0, 7.0, 2.0], [8.0, 3.0, 2.0]], [[7.0, 8.0, 8.0], [6.0, 7.0, 4.0], [2.0, 4.0, 5.0]], [[4.0, 5.0, 2.0], [3.0, 3.0, 5.0], [6.0, 8.0, 5.0]]], [[[8.0, 5.0, 2.0], [8.0, 6.0, 1.0], [8.0, 5.0, 8.0]], [[2.0, 6.0, 2.0], [6.0, 4.0, 7.0], [7.0, 7.0, 2.0]], [[3.0, 3.0, 6.0], [8.0, 8.0, 8.0], [8.0, 1.0, 6.0]]], [[[1.0, 3.0, 2.0], [2.0, 1.0, 3.0], [4.0, 7.0, 4.0]], [[7.0, 1.0, 1.0], [8.0, 6.0, 8.0], [8.0, 3.0, 3.0]], [[1.0, 5.0, 2.0], [1.0, 6.0, 1.0], [5.0, 8.0, 1.0]]]]),self.functionspace)
11125        arg.setTaggedValue(1,numarray.array([[[[2.0, 7.0, 1.0], [1.0, 4.0, 2.0], [3.0, 7.0, 8.0]], [[2.0, 2.0, 7.0], [3.0, 3.0, 1.0], [4.0, 7.0, 8.0]], [[5.0, 2.0, 5.0], [7.0, 1.0, 8.0], [5.0, 5.0, 5.0]]], [[[5.0, 4.0, 4.0], [6.0, 6.0, 4.0], [5.0, 3.0, 1.0]], [[7.0, 3.0, 3.0], [3.0, 3.0, 8.0], [2.0, 3.0, 5.0]], [[8.0, 8.0, 5.0], [8.0, 3.0, 7.0], [5.0, 3.0, 7.0]]], [[[1.0, 7.0, 1.0], [6.0, 6.0, 4.0], [8.0, 6.0, 2.0]], [[4.0, 6.0, 6.0], [6.0, 4.0, 6.0], [4.0, 4.0, 7.0]], [[8.0, 5.0, 8.0], [7.0, 4.0, 1.0], [5.0, 4.0, 1.0]]], [[[6.0, 3.0, 6.0], [2.0, 7.0, 8.0], [3.0, 7.0, 6.0]], [[7.0, 6.0, 2.0], [8.0, 6.0, 4.0], [3.0, 6.0, 1.0]], [[4.0, 3.0, 6.0], [1.0, 2.0, 6.0], [2.0, 7.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 7.0, 1.0], [1.0, 4.0, 2.0], [3.0, 7.0, 8.0]], [[2.0, 2.0, 7.0], [3.0, 3.0, 1.0], [4.0, 7.0, 8.0]], [[5.0, 2.0, 5.0], [7.0, 1.0, 8.0], [5.0, 5.0, 5.0]]], [[[5.0, 4.0, 4.0], [6.0, 6.0, 4.0], [5.0, 3.0, 1.0]], [[7.0, 3.0, 3.0], [3.0, 3.0, 8.0], [2.0, 3.0, 5.0]], [[8.0, 8.0, 5.0], [8.0, 3.0, 7.0], [5.0, 3.0, 7.0]]], [[[1.0, 7.0, 1.0], [6.0, 6.0, 4.0], [8.0, 6.0, 2.0]], [[4.0, 6.0, 6.0], [6.0, 4.0, 6.0], [4.0, 4.0, 7.0]], [[8.0, 5.0, 8.0], [7.0, 4.0, 1.0], [5.0, 4.0, 1.0]]], [[[6.0, 3.0, 6.0], [2.0, 7.0, 8.0], [3.0, 7.0, 6.0]], [[7.0, 6.0, 2.0], [8.0, 6.0, 4.0], [3.0, 6.0, 1.0]], [[4.0, 3.0, 6.0], [1.0, 2.0, 6.0], [2.0, 7.0, 1.0]]]]))
11126        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11127        val=msk_val*numarray.array([[[3.0, 5.0, 4.0], [7.0, 4.0, 4.0], [7.0, 3.0, 5.0]]])+(1.-msk_val)*numarray.array([[[5.0, 4.0, 1.0], [7.0, 8.0, 4.0], [6.0, 2.0, 2.0]]])        val=msk_val*numarray.array([[[3.0, 5.0, 4.0], [7.0, 4.0, 4.0], [7.0, 3.0, 5.0]]])+(1.-msk_val)*numarray.array([[[5.0, 4.0, 1.0], [7.0, 8.0, 4.0], [6.0, 2.0, 2.0]]])
11128        arg[2,2:,:]=val        arg[2,2:,:]=val
11129        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11161  class Test_util_slicing_with_tagged_data Line 11161  class Test_util_slicing_with_tagged_data
11161     def test_setslice_taggedData_rank4_expandedData_PLPU(self):     def test_setslice_taggedData_rank4_expandedData_PLPU(self):
11162        arg=Data(numarray.array([[[[1.0, 2.0, 4.0], [8.0, 3.0, 4.0], [3.0, 2.0, 5.0]], [[4.0, 4.0, 7.0], [2.0, 4.0, 8.0], [7.0, 1.0, 8.0]], [[4.0, 3.0, 1.0], [6.0, 1.0, 1.0], [6.0, 7.0, 5.0]]], [[[4.0, 4.0, 3.0], [6.0, 8.0, 3.0], [7.0, 4.0, 5.0]], [[8.0, 7.0, 4.0], [5.0, 7.0, 2.0], [6.0, 7.0, 3.0]], [[3.0, 5.0, 7.0], [1.0, 1.0, 2.0], [1.0, 1.0, 3.0]]], [[[4.0, 4.0, 7.0], [6.0, 5.0, 8.0], [1.0, 5.0, 3.0]], [[5.0, 1.0, 2.0], [1.0, 4.0, 4.0], [4.0, 2.0, 4.0]], [[6.0, 7.0, 1.0], [7.0, 2.0, 5.0], [7.0, 2.0, 7.0]]], [[[1.0, 5.0, 3.0], [2.0, 1.0, 3.0], [2.0, 2.0, 5.0]], [[3.0, 8.0, 2.0], [6.0, 5.0, 4.0], [6.0, 5.0, 7.0]], [[2.0, 8.0, 4.0], [5.0, 1.0, 8.0], [5.0, 8.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 2.0, 4.0], [8.0, 3.0, 4.0], [3.0, 2.0, 5.0]], [[4.0, 4.0, 7.0], [2.0, 4.0, 8.0], [7.0, 1.0, 8.0]], [[4.0, 3.0, 1.0], [6.0, 1.0, 1.0], [6.0, 7.0, 5.0]]], [[[4.0, 4.0, 3.0], [6.0, 8.0, 3.0], [7.0, 4.0, 5.0]], [[8.0, 7.0, 4.0], [5.0, 7.0, 2.0], [6.0, 7.0, 3.0]], [[3.0, 5.0, 7.0], [1.0, 1.0, 2.0], [1.0, 1.0, 3.0]]], [[[4.0, 4.0, 7.0], [6.0, 5.0, 8.0], [1.0, 5.0, 3.0]], [[5.0, 1.0, 2.0], [1.0, 4.0, 4.0], [4.0, 2.0, 4.0]], [[6.0, 7.0, 1.0], [7.0, 2.0, 5.0], [7.0, 2.0, 7.0]]], [[[1.0, 5.0, 3.0], [2.0, 1.0, 3.0], [2.0, 2.0, 5.0]], [[3.0, 8.0, 2.0], [6.0, 5.0, 4.0], [6.0, 5.0, 7.0]], [[2.0, 8.0, 4.0], [5.0, 1.0, 8.0], [5.0, 8.0, 5.0]]]]),self.functionspace)
11163        arg.setTaggedValue(1,numarray.array([[[[4.0, 6.0, 1.0], [8.0, 2.0, 6.0], [3.0, 1.0, 6.0]], [[1.0, 3.0, 1.0], [7.0, 3.0, 7.0], [6.0, 4.0, 5.0]], [[3.0, 2.0, 5.0], [7.0, 3.0, 3.0], [4.0, 8.0, 7.0]]], [[[8.0, 2.0, 5.0], [3.0, 1.0, 2.0], [4.0, 6.0, 3.0]], [[8.0, 6.0, 3.0], [6.0, 7.0, 2.0], [4.0, 7.0, 2.0]], [[4.0, 1.0, 1.0], [5.0, 4.0, 7.0], [8.0, 7.0, 6.0]]], [[[6.0, 1.0, 3.0], [6.0, 7.0, 2.0], [1.0, 1.0, 5.0]], [[5.0, 8.0, 2.0], [4.0, 6.0, 2.0], [5.0, 7.0, 5.0]], [[3.0, 7.0, 6.0], [7.0, 2.0, 2.0], [4.0, 5.0, 1.0]]], [[[5.0, 7.0, 5.0], [5.0, 4.0, 7.0], [8.0, 6.0, 1.0]], [[1.0, 8.0, 1.0], [5.0, 3.0, 5.0], [5.0, 2.0, 1.0]], [[3.0, 3.0, 6.0], [4.0, 6.0, 7.0], [1.0, 5.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 6.0, 1.0], [8.0, 2.0, 6.0], [3.0, 1.0, 6.0]], [[1.0, 3.0, 1.0], [7.0, 3.0, 7.0], [6.0, 4.0, 5.0]], [[3.0, 2.0, 5.0], [7.0, 3.0, 3.0], [4.0, 8.0, 7.0]]], [[[8.0, 2.0, 5.0], [3.0, 1.0, 2.0], [4.0, 6.0, 3.0]], [[8.0, 6.0, 3.0], [6.0, 7.0, 2.0], [4.0, 7.0, 2.0]], [[4.0, 1.0, 1.0], [5.0, 4.0, 7.0], [8.0, 7.0, 6.0]]], [[[6.0, 1.0, 3.0], [6.0, 7.0, 2.0], [1.0, 1.0, 5.0]], [[5.0, 8.0, 2.0], [4.0, 6.0, 2.0], [5.0, 7.0, 5.0]], [[3.0, 7.0, 6.0], [7.0, 2.0, 2.0], [4.0, 5.0, 1.0]]], [[[5.0, 7.0, 5.0], [5.0, 4.0, 7.0], [8.0, 6.0, 1.0]], [[1.0, 8.0, 1.0], [5.0, 3.0, 5.0], [5.0, 2.0, 1.0]], [[3.0, 3.0, 6.0], [4.0, 6.0, 7.0], [1.0, 5.0, 1.0]]]]))
11164        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11165        val=msk_val*numarray.array([[6.0, 7.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0]])        val=msk_val*numarray.array([[6.0, 7.0]])+(1.-msk_val)*numarray.array([[1.0, 2.0]])
11166        arg[2,2:,1,:2]=val        arg[2,2:,1,:2]=val
11167        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11199  class Test_util_slicing_with_tagged_data Line 11199  class Test_util_slicing_with_tagged_data
11199     def test_setslice_taggedData_rank4_expandedData_CRPP(self):     def test_setslice_taggedData_rank4_expandedData_CRPP(self):
11200        arg=Data(numarray.array([[[[6.0, 1.0, 6.0], [5.0, 3.0, 3.0], [1.0, 6.0, 2.0]], [[1.0, 6.0, 2.0], [7.0, 4.0, 1.0], [1.0, 1.0, 3.0]], [[3.0, 4.0, 4.0], [3.0, 5.0, 5.0], [5.0, 1.0, 1.0]]], [[[8.0, 7.0, 6.0], [5.0, 3.0, 1.0], [4.0, 1.0, 3.0]], [[8.0, 8.0, 1.0], [1.0, 7.0, 6.0], [2.0, 6.0, 6.0]], [[5.0, 3.0, 1.0], [1.0, 6.0, 8.0], [3.0, 5.0, 5.0]]], [[[7.0, 4.0, 7.0], [2.0, 1.0, 6.0], [1.0, 3.0, 8.0]], [[6.0, 1.0, 1.0], [2.0, 7.0, 3.0], [4.0, 3.0, 3.0]], [[4.0, 7.0, 7.0], [1.0, 6.0, 1.0], [7.0, 7.0, 1.0]]], [[[6.0, 7.0, 1.0], [8.0, 5.0, 7.0], [6.0, 2.0, 2.0]], [[8.0, 3.0, 5.0], [8.0, 8.0, 6.0], [3.0, 3.0, 5.0]], [[6.0, 4.0, 3.0], [7.0, 4.0, 5.0], [4.0, 7.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[6.0, 1.0, 6.0], [5.0, 3.0, 3.0], [1.0, 6.0, 2.0]], [[1.0, 6.0, 2.0], [7.0, 4.0, 1.0], [1.0, 1.0, 3.0]], [[3.0, 4.0, 4.0], [3.0, 5.0, 5.0], [5.0, 1.0, 1.0]]], [[[8.0, 7.0, 6.0], [5.0, 3.0, 1.0], [4.0, 1.0, 3.0]], [[8.0, 8.0, 1.0], [1.0, 7.0, 6.0], [2.0, 6.0, 6.0]], [[5.0, 3.0, 1.0], [1.0, 6.0, 8.0], [3.0, 5.0, 5.0]]], [[[7.0, 4.0, 7.0], [2.0, 1.0, 6.0], [1.0, 3.0, 8.0]], [[6.0, 1.0, 1.0], [2.0, 7.0, 3.0], [4.0, 3.0, 3.0]], [[4.0, 7.0, 7.0], [1.0, 6.0, 1.0], [7.0, 7.0, 1.0]]], [[[6.0, 7.0, 1.0], [8.0, 5.0, 7.0], [6.0, 2.0, 2.0]], [[8.0, 3.0, 5.0], [8.0, 8.0, 6.0], [3.0, 3.0, 5.0]], [[6.0, 4.0, 3.0], [7.0, 4.0, 5.0], [4.0, 7.0, 7.0]]]]),self.functionspace)
11201        arg.setTaggedValue(1,numarray.array([[[[1.0, 5.0, 8.0], [4.0, 3.0, 7.0], [7.0, 7.0, 1.0]], [[2.0, 2.0, 7.0], [3.0, 2.0, 5.0], [7.0, 2.0, 5.0]], [[1.0, 2.0, 4.0], [7.0, 2.0, 7.0], [5.0, 2.0, 7.0]]], [[[7.0, 5.0, 1.0], [8.0, 6.0, 4.0], [7.0, 5.0, 6.0]], [[2.0, 4.0, 5.0], [4.0, 1.0, 3.0], [8.0, 7.0, 7.0]], [[1.0, 1.0, 7.0], [8.0, 7.0, 3.0], [7.0, 8.0, 6.0]]], [[[4.0, 2.0, 8.0], [8.0, 7.0, 6.0], [8.0, 1.0, 6.0]], [[2.0, 8.0, 2.0], [3.0, 1.0, 2.0], [6.0, 8.0, 4.0]], [[7.0, 8.0, 4.0], [7.0, 7.0, 8.0], [5.0, 4.0, 4.0]]], [[[3.0, 3.0, 1.0], [1.0, 7.0, 4.0], [1.0, 8.0, 8.0]], [[5.0, 5.0, 8.0], [1.0, 4.0, 7.0], [1.0, 4.0, 5.0]], [[6.0, 5.0, 8.0], [4.0, 3.0, 5.0], [2.0, 6.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 5.0, 8.0], [4.0, 3.0, 7.0], [7.0, 7.0, 1.0]], [[2.0, 2.0, 7.0], [3.0, 2.0, 5.0], [7.0, 2.0, 5.0]], [[1.0, 2.0, 4.0], [7.0, 2.0, 7.0], [5.0, 2.0, 7.0]]], [[[7.0, 5.0, 1.0], [8.0, 6.0, 4.0], [7.0, 5.0, 6.0]], [[2.0, 4.0, 5.0], [4.0, 1.0, 3.0], [8.0, 7.0, 7.0]], [[1.0, 1.0, 7.0], [8.0, 7.0, 3.0], [7.0, 8.0, 6.0]]], [[[4.0, 2.0, 8.0], [8.0, 7.0, 6.0], [8.0, 1.0, 6.0]], [[2.0, 8.0, 2.0], [3.0, 1.0, 2.0], [6.0, 8.0, 4.0]], [[7.0, 8.0, 4.0], [7.0, 7.0, 8.0], [5.0, 4.0, 4.0]]], [[[3.0, 3.0, 1.0], [1.0, 7.0, 4.0], [1.0, 8.0, 8.0]], [[5.0, 5.0, 8.0], [1.0, 4.0, 7.0], [1.0, 4.0, 5.0]], [[6.0, 5.0, 8.0], [4.0, 3.0, 5.0], [2.0, 6.0, 2.0]]]]))
11202        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11203        val=msk_val*numarray.array([[2.0], [3.0], [5.0], [3.0]])+(1.-msk_val)*numarray.array([[6.0], [6.0], [5.0], [1.0]])        val=msk_val*numarray.array([[2.0], [3.0], [5.0], [3.0]])+(1.-msk_val)*numarray.array([[6.0], [6.0], [5.0], [1.0]])
11204        arg[:,1:2,1,1]=val        arg[:,1:2,1,1]=val
11205        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11237  class Test_util_slicing_with_tagged_data Line 11237  class Test_util_slicing_with_tagged_data
11237     def test_setslice_taggedData_rank4_expandedData_PCCN(self):     def test_setslice_taggedData_rank4_expandedData_PCCN(self):
11238        arg=Data(numarray.array([[[[7.0, 6.0, 7.0], [3.0, 7.0, 4.0], [2.0, 5.0, 3.0]], [[4.0, 2.0, 4.0], [8.0, 8.0, 6.0], [1.0, 3.0, 4.0]], [[7.0, 2.0, 2.0], [3.0, 3.0, 1.0], [6.0, 7.0, 8.0]]], [[[5.0, 1.0, 5.0], [8.0, 7.0, 2.0], [8.0, 8.0, 1.0]], [[2.0, 7.0, 1.0], [1.0, 1.0, 1.0], [7.0, 7.0, 8.0]], [[7.0, 1.0, 2.0], [4.0, 4.0, 3.0], [7.0, 4.0, 1.0]]], [[[1.0, 2.0, 2.0], [4.0, 8.0, 6.0], [7.0, 8.0, 7.0]], [[7.0, 7.0, 8.0], [1.0, 1.0, 3.0], [8.0, 1.0, 7.0]], [[1.0, 5.0, 1.0], [2.0, 4.0, 8.0], [8.0, 1.0, 6.0]]], [[[2.0, 7.0, 7.0], [1.0, 5.0, 4.0], [7.0, 8.0, 4.0]], [[7.0, 1.0, 3.0], [1.0, 3.0, 3.0], [4.0, 1.0, 2.0]], [[5.0, 8.0, 7.0], [4.0, 8.0, 3.0], [8.0, 3.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 6.0, 7.0], [3.0, 7.0, 4.0], [2.0, 5.0, 3.0]], [[4.0, 2.0, 4.0], [8.0, 8.0, 6.0], [1.0, 3.0, 4.0]], [[7.0, 2.0, 2.0], [3.0, 3.0, 1.0], [6.0, 7.0, 8.0]]], [[[5.0, 1.0, 5.0], [8.0, 7.0, 2.0], [8.0, 8.0, 1.0]], [[2.0, 7.0, 1.0], [1.0, 1.0, 1.0], [7.0, 7.0, 8.0]], [[7.0, 1.0, 2.0], [4.0, 4.0, 3.0], [7.0, 4.0, 1.0]]], [[[1.0, 2.0, 2.0], [4.0, 8.0, 6.0], [7.0, 8.0, 7.0]], [[7.0, 7.0, 8.0], [1.0, 1.0, 3.0], [8.0, 1.0, 7.0]], [[1.0, 5.0, 1.0], [2.0, 4.0, 8.0], [8.0, 1.0, 6.0]]], [[[2.0, 7.0, 7.0], [1.0, 5.0, 4.0], [7.0, 8.0, 4.0]], [[7.0, 1.0, 3.0], [1.0, 3.0, 3.0], [4.0, 1.0, 2.0]], [[5.0, 8.0, 7.0], [4.0, 8.0, 3.0], [8.0, 3.0, 6.0]]]]),self.functionspace)
11239        arg.setTaggedValue(1,numarray.array([[[[3.0, 1.0, 6.0], [2.0, 5.0, 2.0], [5.0, 6.0, 1.0]], [[4.0, 8.0, 4.0], [3.0, 6.0, 7.0], [2.0, 4.0, 8.0]], [[8.0, 3.0, 5.0], [4.0, 3.0, 4.0], [5.0, 2.0, 2.0]]], [[[4.0, 1.0, 3.0], [5.0, 4.0, 3.0], [6.0, 6.0, 6.0]], [[1.0, 2.0, 5.0], [1.0, 6.0, 3.0], [5.0, 6.0, 6.0]], [[7.0, 8.0, 5.0], [5.0, 2.0, 4.0], [7.0, 3.0, 2.0]]], [[[2.0, 3.0, 1.0], [8.0, 3.0, 3.0], [8.0, 2.0, 3.0]], [[2.0, 2.0, 1.0], [3.0, 5.0, 2.0], [7.0, 2.0, 5.0]], [[4.0, 5.0, 3.0], [3.0, 4.0, 7.0], [7.0, 7.0, 1.0]]], [[[7.0, 8.0, 6.0], [1.0, 5.0, 8.0], [8.0, 2.0, 5.0]], [[2.0, 5.0, 5.0], [4.0, 7.0, 8.0], [2.0, 4.0, 5.0]], [[4.0, 5.0, 4.0], [6.0, 3.0, 4.0], [8.0, 3.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 1.0, 6.0], [2.0, 5.0, 2.0], [5.0, 6.0, 1.0]], [[4.0, 8.0, 4.0], [3.0, 6.0, 7.0], [2.0, 4.0, 8.0]], [[8.0, 3.0, 5.0], [4.0, 3.0, 4.0], [5.0, 2.0, 2.0]]], [[[4.0, 1.0, 3.0], [5.0, 4.0, 3.0], [6.0, 6.0, 6.0]], [[1.0, 2.0, 5.0], [1.0, 6.0, 3.0], [5.0, 6.0, 6.0]], [[7.0, 8.0, 5.0], [5.0, 2.0, 4.0], [7.0, 3.0, 2.0]]], [[[2.0, 3.0, 1.0], [8.0, 3.0, 3.0], [8.0, 2.0, 3.0]], [[2.0, 2.0, 1.0], [3.0, 5.0, 2.0], [7.0, 2.0, 5.0]], [[4.0, 5.0, 3.0], [3.0, 4.0, 7.0], [7.0, 7.0, 1.0]]], [[[7.0, 8.0, 6.0], [1.0, 5.0, 8.0], [8.0, 2.0, 5.0]], [[2.0, 5.0, 5.0], [4.0, 7.0, 8.0], [2.0, 4.0, 5.0]], [[4.0, 5.0, 4.0], [6.0, 3.0, 4.0], [8.0, 3.0, 7.0]]]]))
11240        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11241        val=msk_val*numarray.array([[[2.0, 6.0, 5.0], [5.0, 7.0, 6.0], [6.0, 8.0, 7.0]], [[8.0, 1.0, 2.0], [1.0, 2.0, 6.0], [4.0, 8.0, 1.0]], [[8.0, 4.0, 5.0], [8.0, 8.0, 7.0], [2.0, 5.0, 6.0]]])+(1.-msk_val)*numarray.array([[[3.0, 4.0, 6.0], [1.0, 5.0, 5.0], [3.0, 4.0, 8.0]], [[4.0, 7.0, 5.0], [1.0, 8.0, 1.0], [2.0, 1.0, 1.0]], [[1.0, 7.0, 4.0], [2.0, 6.0, 5.0], [5.0, 2.0, 7.0]]])        val=msk_val*numarray.array([[[2.0, 6.0, 5.0], [5.0, 7.0, 6.0], [6.0, 8.0, 7.0]], [[8.0, 1.0, 2.0], [1.0, 2.0, 6.0], [4.0, 8.0, 1.0]], [[8.0, 4.0, 5.0], [8.0, 8.0, 7.0], [2.0, 5.0, 6.0]]])+(1.-msk_val)*numarray.array([[[3.0, 4.0, 6.0], [1.0, 5.0, 5.0], [3.0, 4.0, 8.0]], [[4.0, 7.0, 5.0], [1.0, 8.0, 1.0], [2.0, 1.0, 1.0]], [[1.0, 7.0, 4.0], [2.0, 6.0, 5.0], [5.0, 2.0, 7.0]]])
11242        arg[2,:,:]=val        arg[2,:,:]=val
11243        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11275  class Test_util_slicing_with_tagged_data Line 11275  class Test_util_slicing_with_tagged_data
11275     def test_setslice_taggedData_rank4_expandedData_RURN(self):     def test_setslice_taggedData_rank4_expandedData_RURN(self):
11276        arg=Data(numarray.array([[[[5.0, 5.0, 7.0], [2.0, 4.0, 1.0], [1.0, 7.0, 5.0]], [[6.0, 7.0, 2.0], [1.0, 1.0, 1.0], [7.0, 3.0, 6.0]], [[5.0, 6.0, 3.0], [5.0, 2.0, 3.0], [3.0, 3.0, 8.0]]], [[[2.0, 6.0, 2.0], [6.0, 6.0, 7.0], [1.0, 8.0, 7.0]], [[5.0, 1.0, 4.0], [5.0, 1.0, 8.0], [5.0, 2.0, 1.0]], [[6.0, 8.0, 3.0], [4.0, 4.0, 8.0], [5.0, 4.0, 7.0]]], [[[8.0, 4.0, 2.0], [2.0, 1.0, 4.0], [2.0, 3.0, 3.0]], [[8.0, 8.0, 6.0], [4.0, 5.0, 8.0], [1.0, 2.0, 2.0]], [[1.0, 8.0, 6.0], [8.0, 3.0, 2.0], [8.0, 7.0, 7.0]]], [[[3.0, 6.0, 1.0], [4.0, 5.0, 1.0], [5.0, 1.0, 4.0]], [[5.0, 2.0, 2.0], [1.0, 7.0, 8.0], [2.0, 1.0, 5.0]], [[8.0, 6.0, 1.0], [5.0, 7.0, 8.0], [7.0, 6.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 5.0, 7.0], [2.0, 4.0, 1.0], [1.0, 7.0, 5.0]], [[6.0, 7.0, 2.0], [1.0, 1.0, 1.0], [7.0, 3.0, 6.0]], [[5.0, 6.0, 3.0], [5.0, 2.0, 3.0], [3.0, 3.0, 8.0]]], [[[2.0, 6.0, 2.0], [6.0, 6.0, 7.0], [1.0, 8.0, 7.0]], [[5.0, 1.0, 4.0], [5.0, 1.0, 8.0], [5.0, 2.0, 1.0]], [[6.0, 8.0, 3.0], [4.0, 4.0, 8.0], [5.0, 4.0, 7.0]]], [[[8.0, 4.0, 2.0], [2.0, 1.0, 4.0], [2.0, 3.0, 3.0]], [[8.0, 8.0, 6.0], [4.0, 5.0, 8.0], [1.0, 2.0, 2.0]], [[1.0, 8.0, 6.0], [8.0, 3.0, 2.0], [8.0, 7.0, 7.0]]], [[[3.0, 6.0, 1.0], [4.0, 5.0, 1.0], [5.0, 1.0, 4.0]], [[5.0, 2.0, 2.0], [1.0, 7.0, 8.0], [2.0, 1.0, 5.0]], [[8.0, 6.0, 1.0], [5.0, 7.0, 8.0], [7.0, 6.0, 4.0]]]]),self.functionspace)
11277        arg.setTaggedValue(1,numarray.array([[[[1.0, 5.0, 3.0], [2.0, 4.0, 1.0], [7.0, 5.0, 4.0]], [[4.0, 8.0, 6.0], [8.0, 4.0, 5.0], [5.0, 7.0, 7.0]], [[4.0, 7.0, 5.0], [5.0, 1.0, 2.0], [1.0, 7.0, 6.0]]], [[[4.0, 8.0, 3.0], [8.0, 2.0, 7.0], [8.0, 5.0, 2.0]], [[5.0, 3.0, 2.0], [5.0, 5.0, 2.0], [3.0, 7.0, 3.0]], [[6.0, 5.0, 2.0], [1.0, 8.0, 4.0], [8.0, 8.0, 3.0]]], [[[7.0, 7.0, 8.0], [3.0, 1.0, 6.0], [1.0, 4.0, 8.0]], [[8.0, 4.0, 7.0], [6.0, 3.0, 2.0], [5.0, 6.0, 5.0]], [[2.0, 8.0, 8.0], [1.0, 6.0, 2.0], [6.0, 6.0, 4.0]]], [[[5.0, 7.0, 2.0], [8.0, 4.0, 4.0], [6.0, 4.0, 4.0]], [[1.0, 7.0, 7.0], [6.0, 6.0, 8.0], [6.0, 3.0, 1.0]], [[2.0, 5.0, 2.0], [3.0, 8.0, 6.0], [7.0, 3.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 5.0, 3.0], [2.0, 4.0, 1.0], [7.0, 5.0, 4.0]], [[4.0, 8.0, 6.0], [8.0, 4.0, 5.0], [5.0, 7.0, 7.0]], [[4.0, 7.0, 5.0], [5.0, 1.0, 2.0], [1.0, 7.0, 6.0]]], [[[4.0, 8.0, 3.0], [8.0, 2.0, 7.0], [8.0, 5.0, 2.0]], [[5.0, 3.0, 2.0], [5.0, 5.0, 2.0], [3.0, 7.0, 3.0]], [[6.0, 5.0, 2.0], [1.0, 8.0, 4.0], [8.0, 8.0, 3.0]]], [[[7.0, 7.0, 8.0], [3.0, 1.0, 6.0], [1.0, 4.0, 8.0]], [[8.0, 4.0, 7.0], [6.0, 3.0, 2.0], [5.0, 6.0, 5.0]], [[2.0, 8.0, 8.0], [1.0, 6.0, 2.0], [6.0, 6.0, 4.0]]], [[[5.0, 7.0, 2.0], [8.0, 4.0, 4.0], [6.0, 4.0, 4.0]], [[1.0, 7.0, 7.0], [6.0, 6.0, 8.0], [6.0, 3.0, 1.0]], [[2.0, 5.0, 2.0], [3.0, 8.0, 6.0], [7.0, 3.0, 6.0]]]]))
11278        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11279        val=msk_val*numarray.array([[[[2.0, 1.0, 6.0]], [[6.0, 8.0, 3.0]]], [[[6.0, 4.0, 7.0]], [[2.0, 1.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 1.0, 2.0]], [[3.0, 7.0, 8.0]]], [[[3.0, 7.0, 2.0]], [[1.0, 5.0, 4.0]]]])        val=msk_val*numarray.array([[[[2.0, 1.0, 6.0]], [[6.0, 8.0, 3.0]]], [[[6.0, 4.0, 7.0]], [[2.0, 1.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 1.0, 2.0]], [[3.0, 7.0, 8.0]]], [[[3.0, 7.0, 2.0]], [[1.0, 5.0, 4.0]]]])
11280        arg[1:3,:2,1:2]=val        arg[1:3,:2,1:2]=val
11281        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11313  class Test_util_slicing_with_tagged_data Line 11313  class Test_util_slicing_with_tagged_data
11313     def test_setslice_taggedData_rank4_expandedData_URUL(self):     def test_setslice_taggedData_rank4_expandedData_URUL(self):
11314        arg=Data(numarray.array([[[[5.0, 1.0, 6.0], [1.0, 5.0, 3.0], [6.0, 6.0, 1.0]], [[4.0, 7.0, 4.0], [7.0, 7.0, 3.0], [8.0, 1.0, 1.0]], [[4.0, 8.0, 4.0], [3.0, 2.0, 8.0], [7.0, 3.0, 8.0]]], [[[8.0, 3.0, 3.0], [1.0, 8.0, 4.0], [3.0, 4.0, 8.0]], [[8.0, 2.0, 6.0], [6.0, 1.0, 3.0], [8.0, 3.0, 7.0]], [[8.0, 8.0, 3.0], [6.0, 6.0, 4.0], [4.0, 4.0, 4.0]]], [[[2.0, 7.0, 1.0], [4.0, 5.0, 8.0], [8.0, 2.0, 1.0]], [[3.0, 4.0, 6.0], [5.0, 1.0, 7.0], [2.0, 3.0, 2.0]], [[5.0, 3.0, 5.0], [7.0, 4.0, 6.0], [7.0, 2.0, 5.0]]], [[[7.0, 5.0, 6.0], [3.0, 3.0, 4.0], [8.0, 8.0, 6.0]], [[3.0, 5.0, 5.0], [6.0, 8.0, 6.0], [2.0, 5.0, 1.0]], [[4.0, 5.0, 6.0], [3.0, 1.0, 6.0], [2.0, 8.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 1.0, 6.0], [1.0, 5.0, 3.0], [6.0, 6.0, 1.0]], [[4.0, 7.0, 4.0], [7.0, 7.0, 3.0], [8.0, 1.0, 1.0]], [[4.0, 8.0, 4.0], [3.0, 2.0, 8.0], [7.0, 3.0, 8.0]]], [[[8.0, 3.0, 3.0], [1.0, 8.0, 4.0], [3.0, 4.0, 8.0]], [[8.0, 2.0, 6.0], [6.0, 1.0, 3.0], [8.0, 3.0, 7.0]], [[8.0, 8.0, 3.0], [6.0, 6.0, 4.0], [4.0, 4.0, 4.0]]], [[[2.0, 7.0, 1.0], [4.0, 5.0, 8.0], [8.0, 2.0, 1.0]], [[3.0, 4.0, 6.0], [5.0, 1.0, 7.0], [2.0, 3.0, 2.0]], [[5.0, 3.0, 5.0], [7.0, 4.0, 6.0], [7.0, 2.0, 5.0]]], [[[7.0, 5.0, 6.0], [3.0, 3.0, 4.0], [8.0, 8.0, 6.0]], [[3.0, 5.0, 5.0], [6.0, 8.0, 6.0], [2.0, 5.0, 1.0]], [[4.0, 5.0, 6.0], [3.0, 1.0, 6.0], [2.0, 8.0, 4.0]]]]),self.functionspace)
11315        arg.setTaggedValue(1,numarray.array([[[[5.0, 3.0, 6.0], [4.0, 3.0, 4.0], [1.0, 4.0, 5.0]], [[4.0, 5.0, 1.0], [2.0, 2.0, 5.0], [8.0, 5.0, 6.0]], [[5.0, 7.0, 1.0], [4.0, 6.0, 1.0], [2.0, 6.0, 6.0]]], [[[2.0, 2.0, 5.0], [3.0, 5.0, 4.0], [7.0, 2.0, 2.0]], [[5.0, 1.0, 1.0], [5.0, 4.0, 2.0], [2.0, 3.0, 3.0]], [[4.0, 5.0, 2.0], [2.0, 1.0, 6.0], [8.0, 1.0, 4.0]]], [[[5.0, 3.0, 3.0], [4.0, 6.0, 3.0], [8.0, 8.0, 3.0]], [[1.0, 4.0, 7.0], [3.0, 7.0, 5.0], [3.0, 7.0, 4.0]], [[3.0, 6.0, 5.0], [5.0, 5.0, 6.0], [5.0, 7.0, 2.0]]], [[[3.0, 8.0, 8.0], [1.0, 4.0, 5.0], [7.0, 7.0, 6.0]], [[4.0, 2.0, 5.0], [7.0, 6.0, 7.0], [5.0, 2.0, 5.0]], [[3.0, 3.0, 1.0], [4.0, 1.0, 3.0], [1.0, 8.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 3.0, 6.0], [4.0, 3.0, 4.0], [1.0, 4.0, 5.0]], [[4.0, 5.0, 1.0], [2.0, 2.0, 5.0], [8.0, 5.0, 6.0]], [[5.0, 7.0, 1.0], [4.0, 6.0, 1.0], [2.0, 6.0, 6.0]]], [[[2.0, 2.0, 5.0], [3.0, 5.0, 4.0], [7.0, 2.0, 2.0]], [[5.0, 1.0, 1.0], [5.0, 4.0, 2.0], [2.0, 3.0, 3.0]], [[4.0, 5.0, 2.0], [2.0, 1.0, 6.0], [8.0, 1.0, 4.0]]], [[[5.0, 3.0, 3.0], [4.0, 6.0, 3.0], [8.0, 8.0, 3.0]], [[1.0, 4.0, 7.0], [3.0, 7.0, 5.0], [3.0, 7.0, 4.0]], [[3.0, 6.0, 5.0], [5.0, 5.0, 6.0], [5.0, 7.0, 2.0]]], [[[3.0, 8.0, 8.0], [1.0, 4.0, 5.0], [7.0, 7.0, 6.0]], [[4.0, 2.0, 5.0], [7.0, 6.0, 7.0], [5.0, 2.0, 5.0]], [[3.0, 3.0, 1.0], [4.0, 1.0, 3.0], [1.0, 8.0, 1.0]]]]))
11316        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11317        val=msk_val*numarray.array([[[[3.0], [2.0]]], [[[8.0], [1.0]]], [[[8.0], [7.0]]]])+(1.-msk_val)*numarray.array([[[[4.0], [8.0]]], [[[2.0], [1.0]]], [[[6.0], [5.0]]]])        val=msk_val*numarray.array([[[[3.0], [2.0]]], [[[8.0], [1.0]]], [[[8.0], [7.0]]]])+(1.-msk_val)*numarray.array([[[[4.0], [8.0]]], [[[2.0], [1.0]]], [[[6.0], [5.0]]]])
11318        arg[:3,1:2,:2,2:]=val        arg[:3,1:2,:2,2:]=val
11319        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11351  class Test_util_slicing_with_tagged_data Line 11351  class Test_util_slicing_with_tagged_data
11351     def test_setslice_taggedData_rank4_expandedData_LPLN(self):     def test_setslice_taggedData_rank4_expandedData_LPLN(self):
11352        arg=Data(numarray.array([[[[2.0, 8.0, 8.0], [2.0, 6.0, 5.0], [8.0, 6.0, 6.0]], [[4.0, 4.0, 5.0], [6.0, 1.0, 8.0], [5.0, 5.0, 5.0]], [[5.0, 1.0, 4.0], [1.0, 8.0, 5.0], [1.0, 7.0, 3.0]]], [[[7.0, 1.0, 2.0], [5.0, 2.0, 8.0], [3.0, 6.0, 8.0]], [[7.0, 2.0, 4.0], [3.0, 6.0, 5.0], [5.0, 3.0, 4.0]], [[2.0, 1.0, 3.0], [5.0, 8.0, 2.0], [3.0, 8.0, 1.0]]], [[[6.0, 8.0, 7.0], [3.0, 8.0, 6.0], [6.0, 3.0, 5.0]], [[4.0, 7.0, 2.0], [3.0, 2.0, 7.0], [4.0, 2.0, 4.0]], [[5.0, 4.0, 1.0], [8.0, 4.0, 8.0], [1.0, 3.0, 6.0]]], [[[1.0, 5.0, 6.0], [8.0, 4.0, 1.0], [7.0, 4.0, 7.0]], [[1.0, 7.0, 8.0], [1.0, 7.0, 2.0], [3.0, 6.0, 4.0]], [[3.0, 3.0, 5.0], [4.0, 1.0, 7.0], [3.0, 2.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 8.0, 8.0], [2.0, 6.0, 5.0], [8.0, 6.0, 6.0]], [[4.0, 4.0, 5.0], [6.0, 1.0, 8.0], [5.0, 5.0, 5.0]], [[5.0, 1.0, 4.0], [1.0, 8.0, 5.0], [1.0, 7.0, 3.0]]], [[[7.0, 1.0, 2.0], [5.0, 2.0, 8.0], [3.0, 6.0, 8.0]], [[7.0, 2.0, 4.0], [3.0, 6.0, 5.0], [5.0, 3.0, 4.0]], [[2.0, 1.0, 3.0], [5.0, 8.0, 2.0], [3.0, 8.0, 1.0]]], [[[6.0, 8.0, 7.0], [3.0, 8.0, 6.0], [6.0, 3.0, 5.0]], [[4.0, 7.0, 2.0], [3.0, 2.0, 7.0], [4.0, 2.0, 4.0]], [[5.0, 4.0, 1.0], [8.0, 4.0, 8.0], [1.0, 3.0, 6.0]]], [[[1.0, 5.0, 6.0], [8.0, 4.0, 1.0], [7.0, 4.0, 7.0]], [[1.0, 7.0, 8.0], [1.0, 7.0, 2.0], [3.0, 6.0, 4.0]], [[3.0, 3.0, 5.0], [4.0, 1.0, 7.0], [3.0, 2.0, 8.0]]]]),self.functionspace)
11353        arg.setTaggedValue(1,numarray.array([[[[1.0, 6.0, 8.0], [5.0, 5.0, 4.0], [6.0, 1.0, 3.0]], [[2.0, 7.0, 5.0], [8.0, 2.0, 4.0], [4.0, 4.0, 6.0]], [[7.0, 6.0, 1.0], [4.0, 2.0, 3.0], [1.0, 7.0, 8.0]]], [[[1.0, 5.0, 7.0], [1.0, 6.0, 3.0], [4.0, 1.0, 6.0]], [[4.0, 7.0, 2.0], [4.0, 2.0, 4.0], [6.0, 8.0, 4.0]], [[4.0, 3.0, 8.0], [5.0, 7.0, 1.0], [3.0, 8.0, 2.0]]], [[[1.0, 5.0, 7.0], [7.0, 7.0, 7.0], [2.0, 8.0, 8.0]], [[6.0, 7.0, 7.0], [5.0, 6.0, 7.0], [3.0, 6.0, 4.0]], [[3.0, 5.0, 3.0], [2.0, 2.0, 2.0], [5.0, 8.0, 6.0]]], [[[8.0, 6.0, 4.0], [4.0, 3.0, 3.0], [3.0, 1.0, 2.0]], [[2.0, 1.0, 7.0], [7.0, 3.0, 1.0], [4.0, 6.0, 8.0]], [[8.0, 6.0, 1.0], [6.0, 2.0, 6.0], [2.0, 4.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 6.0, 8.0], [5.0, 5.0, 4.0], [6.0, 1.0, 3.0]], [[2.0, 7.0, 5.0], [8.0, 2.0, 4.0], [4.0, 4.0, 6.0]], [[7.0, 6.0, 1.0], [4.0, 2.0, 3.0], [1.0, 7.0, 8.0]]], [[[1.0, 5.0, 7.0], [1.0, 6.0, 3.0], [4.0, 1.0, 6.0]], [[4.0, 7.0, 2.0], [4.0, 2.0, 4.0], [6.0, 8.0, 4.0]], [[4.0, 3.0, 8.0], [5.0, 7.0, 1.0], [3.0, 8.0, 2.0]]], [[[1.0, 5.0, 7.0], [7.0, 7.0, 7.0], [2.0, 8.0, 8.0]], [[6.0, 7.0, 7.0], [5.0, 6.0, 7.0], [3.0, 6.0, 4.0]], [[3.0, 5.0, 3.0], [2.0, 2.0, 2.0], [5.0, 8.0, 6.0]]], [[[8.0, 6.0, 4.0], [4.0, 3.0, 3.0], [3.0, 1.0, 2.0]], [[2.0, 1.0, 7.0], [7.0, 3.0, 1.0], [4.0, 6.0, 8.0]], [[8.0, 6.0, 1.0], [6.0, 2.0, 6.0], [2.0, 4.0, 6.0]]]]))
11354        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11355        val=msk_val*numarray.array([[[7.0, 1.0, 1.0]], [[4.0, 8.0, 5.0]]])+(1.-msk_val)*numarray.array([[[5.0, 7.0, 8.0]], [[8.0, 8.0, 6.0]]])        val=msk_val*numarray.array([[[7.0, 1.0, 1.0]], [[4.0, 8.0, 5.0]]])+(1.-msk_val)*numarray.array([[[5.0, 7.0, 8.0]], [[8.0, 8.0, 6.0]]])
11356        arg[2:,1,2:]=val        arg[2:,1,2:]=val
11357        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11389  class Test_util_slicing_with_tagged_data Line 11389  class Test_util_slicing_with_tagged_data
11389     def test_setslice_taggedData_rank4_expandedData_CPPP(self):     def test_setslice_taggedData_rank4_expandedData_CPPP(self):
11390        arg=Data(numarray.array([[[[5.0, 6.0, 3.0], [7.0, 2.0, 3.0], [4.0, 3.0, 2.0]], [[7.0, 5.0, 1.0], [2.0, 3.0, 2.0], [3.0, 8.0, 1.0]], [[3.0, 4.0, 5.0], [2.0, 4.0, 1.0], [7.0, 1.0, 7.0]]], [[[8.0, 2.0, 2.0], [6.0, 6.0, 4.0], [8.0, 2.0, 6.0]], [[4.0, 2.0, 5.0], [8.0, 3.0, 5.0], [1.0, 8.0, 2.0]], [[8.0, 1.0, 8.0], [4.0, 5.0, 4.0], [5.0, 6.0, 6.0]]], [[[5.0, 7.0, 5.0], [4.0, 5.0, 8.0], [8.0, 7.0, 7.0]], [[1.0, 8.0, 8.0], [7.0, 2.0, 6.0], [3.0, 2.0, 7.0]], [[8.0, 6.0, 2.0], [4.0, 1.0, 6.0], [6.0, 7.0, 3.0]]], [[[8.0, 4.0, 7.0], [1.0, 4.0, 6.0], [6.0, 3.0, 7.0]], [[3.0, 8.0, 1.0], [6.0, 4.0, 2.0], [8.0, 1.0, 2.0]], [[5.0, 6.0, 1.0], [7.0, 1.0, 1.0], [4.0, 3.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 6.0, 3.0], [7.0, 2.0, 3.0], [4.0, 3.0, 2.0]], [[7.0, 5.0, 1.0], [2.0, 3.0, 2.0], [3.0, 8.0, 1.0]], [[3.0, 4.0, 5.0], [2.0, 4.0, 1.0], [7.0, 1.0, 7.0]]], [[[8.0, 2.0, 2.0], [6.0, 6.0, 4.0], [8.0, 2.0, 6.0]], [[4.0, 2.0, 5.0], [8.0, 3.0, 5.0], [1.0, 8.0, 2.0]], [[8.0, 1.0, 8.0], [4.0, 5.0, 4.0], [5.0, 6.0, 6.0]]], [[[5.0, 7.0, 5.0], [4.0, 5.0, 8.0], [8.0, 7.0, 7.0]], [[1.0, 8.0, 8.0], [7.0, 2.0, 6.0], [3.0, 2.0, 7.0]], [[8.0, 6.0, 2.0], [4.0, 1.0, 6.0], [6.0, 7.0, 3.0]]], [[[8.0, 4.0, 7.0], [1.0, 4.0, 6.0], [6.0, 3.0, 7.0]], [[3.0, 8.0, 1.0], [6.0, 4.0, 2.0], [8.0, 1.0, 2.0]], [[5.0, 6.0, 1.0], [7.0, 1.0, 1.0], [4.0, 3.0, 2.0]]]]),self.functionspace)
11391        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 7.0], [2.0, 5.0, 1.0], [3.0, 5.0, 3.0]], [[4.0, 1.0, 4.0], [3.0, 1.0, 8.0], [7.0, 1.0, 1.0]], [[3.0, 8.0, 6.0], [4.0, 1.0, 6.0], [8.0, 8.0, 5.0]]], [[[6.0, 7.0, 1.0], [7.0, 4.0, 6.0], [6.0, 1.0, 5.0]], [[2.0, 5.0, 4.0], [4.0, 2.0, 2.0], [6.0, 3.0, 2.0]], [[4.0, 6.0, 8.0], [4.0, 5.0, 1.0], [3.0, 5.0, 7.0]]], [[[8.0, 7.0, 7.0], [2.0, 1.0, 1.0], [1.0, 2.0, 1.0]], [[2.0, 8.0, 5.0], [3.0, 1.0, 2.0], [7.0, 5.0, 1.0]], [[2.0, 6.0, 2.0], [4.0, 1.0, 1.0], [6.0, 4.0, 4.0]]], [[[1.0, 2.0, 7.0], [1.0, 6.0, 3.0], [5.0, 3.0, 5.0]], [[6.0, 6.0, 6.0], [4.0, 3.0, 6.0], [4.0, 7.0, 1.0]], [[6.0, 8.0, 4.0], [2.0, 6.0, 3.0], [6.0, 7.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 7.0], [2.0, 5.0, 1.0], [3.0, 5.0, 3.0]], [[4.0, 1.0, 4.0], [3.0, 1.0, 8.0], [7.0, 1.0, 1.0]], [[3.0, 8.0, 6.0], [4.0, 1.0, 6.0], [8.0, 8.0, 5.0]]], [[[6.0, 7.0, 1.0], [7.0, 4.0, 6.0], [6.0, 1.0, 5.0]], [[2.0, 5.0, 4.0], [4.0, 2.0, 2.0], [6.0, 3.0, 2.0]], [[4.0, 6.0, 8.0], [4.0, 5.0, 1.0], [3.0, 5.0, 7.0]]], [[[8.0, 7.0, 7.0], [2.0, 1.0, 1.0], [1.0, 2.0, 1.0]], [[2.0, 8.0, 5.0], [3.0, 1.0, 2.0], [7.0, 5.0, 1.0]], [[2.0, 6.0, 2.0], [4.0, 1.0, 1.0], [6.0, 4.0, 4.0]]], [[[1.0, 2.0, 7.0], [1.0, 6.0, 3.0], [5.0, 3.0, 5.0]], [[6.0, 6.0, 6.0], [4.0, 3.0, 6.0], [4.0, 7.0, 1.0]], [[6.0, 8.0, 4.0], [2.0, 6.0, 3.0], [6.0, 7.0, 8.0]]]]))
11392        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11393        val=msk_val*numarray.array([6.0, 3.0, 8.0, 1.0])+(1.-msk_val)*numarray.array([3.0, 4.0, 5.0, 5.0])        val=msk_val*numarray.array([6.0, 3.0, 8.0, 1.0])+(1.-msk_val)*numarray.array([3.0, 4.0, 5.0, 5.0])
11394        arg[:,1,1,1]=val        arg[:,1,1,1]=val
11395        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11427  class Test_util_slicing_with_tagged_data Line 11427  class Test_util_slicing_with_tagged_data
11427     def test_setslice_taggedData_rank4_expandedData_PUUN(self):     def test_setslice_taggedData_rank4_expandedData_PUUN(self):
11428        arg=Data(numarray.array([[[[3.0, 6.0, 6.0], [3.0, 8.0, 2.0], [2.0, 1.0, 4.0]], [[4.0, 1.0, 7.0], [2.0, 5.0, 3.0], [5.0, 1.0, 3.0]], [[8.0, 5.0, 7.0], [7.0, 6.0, 5.0], [3.0, 8.0, 1.0]]], [[[6.0, 1.0, 6.0], [3.0, 3.0, 5.0], [2.0, 5.0, 7.0]], [[2.0, 3.0, 8.0], [1.0, 7.0, 4.0], [4.0, 7.0, 7.0]], [[3.0, 6.0, 2.0], [6.0, 5.0, 2.0], [1.0, 6.0, 8.0]]], [[[2.0, 8.0, 2.0], [3.0, 7.0, 1.0], [5.0, 1.0, 2.0]], [[6.0, 5.0, 6.0], [3.0, 8.0, 6.0], [6.0, 1.0, 7.0]], [[2.0, 4.0, 6.0], [5.0, 7.0, 4.0], [1.0, 1.0, 8.0]]], [[[1.0, 6.0, 5.0], [1.0, 8.0, 5.0], [7.0, 5.0, 5.0]], [[8.0, 4.0, 8.0], [7.0, 4.0, 4.0], [3.0, 2.0, 5.0]], [[4.0, 3.0, 5.0], [2.0, 4.0, 6.0], [5.0, 7.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 6.0, 6.0], [3.0, 8.0, 2.0], [2.0, 1.0, 4.0]], [[4.0, 1.0, 7.0], [2.0, 5.0, 3.0], [5.0, 1.0, 3.0]], [[8.0, 5.0, 7.0], [7.0, 6.0, 5.0], [3.0, 8.0, 1.0]]], [[[6.0, 1.0, 6.0], [3.0, 3.0, 5.0], [2.0, 5.0, 7.0]], [[2.0, 3.0, 8.0], [1.0, 7.0, 4.0], [4.0, 7.0, 7.0]], [[3.0, 6.0, 2.0], [6.0, 5.0, 2.0], [1.0, 6.0, 8.0]]], [[[2.0, 8.0, 2.0], [3.0, 7.0, 1.0], [5.0, 1.0, 2.0]], [[6.0, 5.0, 6.0], [3.0, 8.0, 6.0], [6.0, 1.0, 7.0]], [[2.0, 4.0, 6.0], [5.0, 7.0, 4.0], [1.0, 1.0, 8.0]]], [[[1.0, 6.0, 5.0], [1.0, 8.0, 5.0], [7.0, 5.0, 5.0]], [[8.0, 4.0, 8.0], [7.0, 4.0, 4.0], [3.0, 2.0, 5.0]], [[4.0, 3.0, 5.0], [2.0, 4.0, 6.0], [5.0, 7.0, 2.0]]]]),self.functionspace)
11429        arg.setTaggedValue(1,numarray.array([[[[3.0, 1.0, 8.0], [2.0, 5.0, 7.0], [8.0, 7.0, 8.0]], [[5.0, 1.0, 4.0], [6.0, 4.0, 3.0], [8.0, 5.0, 6.0]], [[3.0, 7.0, 8.0], [8.0, 6.0, 5.0], [6.0, 2.0, 8.0]]], [[[8.0, 3.0, 8.0], [2.0, 1.0, 7.0], [4.0, 6.0, 1.0]], [[1.0, 6.0, 6.0], [7.0, 8.0, 4.0], [4.0, 1.0, 1.0]], [[4.0, 7.0, 8.0], [8.0, 6.0, 7.0], [8.0, 4.0, 4.0]]], [[[3.0, 5.0, 5.0], [5.0, 3.0, 3.0], [7.0, 2.0, 8.0]], [[8.0, 4.0, 7.0], [2.0, 1.0, 6.0], [8.0, 2.0, 5.0]], [[2.0, 6.0, 8.0], [5.0, 5.0, 1.0], [4.0, 6.0, 3.0]]], [[[5.0, 2.0, 2.0], [3.0, 8.0, 7.0], [4.0, 1.0, 1.0]], [[7.0, 5.0, 6.0], [5.0, 3.0, 4.0], [1.0, 5.0, 3.0]], [[2.0, 7.0, 5.0], [6.0, 6.0, 5.0], [8.0, 2.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 1.0, 8.0], [2.0, 5.0, 7.0], [8.0, 7.0, 8.0]], [[5.0, 1.0, 4.0], [6.0, 4.0, 3.0], [8.0, 5.0, 6.0]], [[3.0, 7.0, 8.0], [8.0, 6.0, 5.0], [6.0, 2.0, 8.0]]], [[[8.0, 3.0, 8.0], [2.0, 1.0, 7.0], [4.0, 6.0, 1.0]], [[1.0, 6.0, 6.0], [7.0, 8.0, 4.0], [4.0, 1.0, 1.0]], [[4.0, 7.0, 8.0], [8.0, 6.0, 7.0], [8.0, 4.0, 4.0]]], [[[3.0, 5.0, 5.0], [5.0, 3.0, 3.0], [7.0, 2.0, 8.0]], [[8.0, 4.0, 7.0], [2.0, 1.0, 6.0], [8.0, 2.0, 5.0]], [[2.0, 6.0, 8.0], [5.0, 5.0, 1.0], [4.0, 6.0, 3.0]]], [[[5.0, 2.0, 2.0], [3.0, 8.0, 7.0], [4.0, 1.0, 1.0]], [[7.0, 5.0, 6.0], [5.0, 3.0, 4.0], [1.0, 5.0, 3.0]], [[2.0, 7.0, 5.0], [6.0, 6.0, 5.0], [8.0, 2.0, 2.0]]]]))
11430        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11431        val=msk_val*numarray.array([[[3.0, 8.0, 2.0], [8.0, 5.0, 8.0]], [[4.0, 3.0, 1.0], [8.0, 7.0, 7.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 7.0], [4.0, 4.0, 5.0]], [[3.0, 3.0, 5.0], [6.0, 3.0, 1.0]]])        val=msk_val*numarray.array([[[3.0, 8.0, 2.0], [8.0, 5.0, 8.0]], [[4.0, 3.0, 1.0], [8.0, 7.0, 7.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 7.0], [4.0, 4.0, 5.0]], [[3.0, 3.0, 5.0], [6.0, 3.0, 1.0]]])
11432        arg[2,:2,:2]=val        arg[2,:2,:2]=val
11433        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11465  class Test_util_slicing_with_tagged_data Line 11465  class Test_util_slicing_with_tagged_data
11465     def test_setslice_taggedData_rank4_expandedData_RUUC(self):     def test_setslice_taggedData_rank4_expandedData_RUUC(self):
11466        arg=Data(numarray.array([[[[1.0, 6.0, 3.0], [7.0, 5.0, 6.0], [7.0, 6.0, 1.0]], [[7.0, 5.0, 8.0], [3.0, 1.0, 4.0], [7.0, 3.0, 4.0]], [[8.0, 7.0, 5.0], [6.0, 2.0, 5.0], [3.0, 8.0, 7.0]]], [[[4.0, 4.0, 8.0], [2.0, 2.0, 5.0], [2.0, 3.0, 8.0]], [[2.0, 7.0, 1.0], [1.0, 5.0, 6.0], [7.0, 1.0, 7.0]], [[3.0, 1.0, 6.0], [7.0, 8.0, 2.0], [2.0, 3.0, 7.0]]], [[[4.0, 5.0, 8.0], [8.0, 1.0, 3.0], [1.0, 3.0, 4.0]], [[3.0, 5.0, 4.0], [8.0, 6.0, 4.0], [4.0, 2.0, 6.0]], [[8.0, 2.0, 3.0], [4.0, 2.0, 8.0], [8.0, 2.0, 6.0]]], [[[1.0, 7.0, 6.0], [6.0, 5.0, 5.0], [7.0, 2.0, 7.0]], [[8.0, 8.0, 1.0], [5.0, 1.0, 5.0], [4.0, 8.0, 6.0]], [[6.0, 2.0, 2.0], [1.0, 4.0, 3.0], [2.0, 3.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 6.0, 3.0], [7.0, 5.0, 6.0], [7.0, 6.0, 1.0]], [[7.0, 5.0, 8.0], [3.0, 1.0, 4.0], [7.0, 3.0, 4.0]], [[8.0, 7.0, 5.0], [6.0, 2.0, 5.0], [3.0, 8.0, 7.0]]], [[[4.0, 4.0, 8.0], [2.0, 2.0, 5.0], [2.0, 3.0, 8.0]], [[2.0, 7.0, 1.0], [1.0, 5.0, 6.0], [7.0, 1.0, 7.0]], [[3.0, 1.0, 6.0], [7.0, 8.0, 2.0], [2.0, 3.0, 7.0]]], [[[4.0, 5.0, 8.0], [8.0, 1.0, 3.0], [1.0, 3.0, 4.0]], [[3.0, 5.0, 4.0], [8.0, 6.0, 4.0], [4.0, 2.0, 6.0]], [[8.0, 2.0, 3.0], [4.0, 2.0, 8.0], [8.0, 2.0, 6.0]]], [[[1.0, 7.0, 6.0], [6.0, 5.0, 5.0], [7.0, 2.0, 7.0]], [[8.0, 8.0, 1.0], [5.0, 1.0, 5.0], [4.0, 8.0, 6.0]], [[6.0, 2.0, 2.0], [1.0, 4.0, 3.0], [2.0, 3.0, 6.0]]]]),self.functionspace)
11467        arg.setTaggedValue(1,numarray.array([[[[5.0, 1.0, 5.0], [7.0, 1.0, 5.0], [5.0, 2.0, 3.0]], [[5.0, 5.0, 1.0], [7.0, 3.0, 4.0], [7.0, 7.0, 8.0]], [[6.0, 1.0, 4.0], [3.0, 2.0, 7.0], [8.0, 3.0, 6.0]]], [[[4.0, 8.0, 5.0], [3.0, 5.0, 3.0], [3.0, 7.0, 4.0]], [[3.0, 8.0, 2.0], [5.0, 6.0, 7.0], [1.0, 4.0, 2.0]], [[1.0, 6.0, 3.0], [7.0, 4.0, 2.0], [8.0, 2.0, 2.0]]], [[[8.0, 6.0, 7.0], [6.0, 1.0, 2.0], [7.0, 5.0, 2.0]], [[8.0, 7.0, 2.0], [7.0, 4.0, 1.0], [1.0, 4.0, 5.0]], [[2.0, 4.0, 7.0], [2.0, 6.0, 8.0], [1.0, 6.0, 2.0]]], [[[6.0, 4.0, 2.0], [7.0, 1.0, 3.0], [5.0, 8.0, 2.0]], [[6.0, 6.0, 1.0], [1.0, 7.0, 6.0], [3.0, 7.0, 8.0]], [[3.0, 3.0, 8.0], [6.0, 8.0, 5.0], [2.0, 6.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 1.0, 5.0], [7.0, 1.0, 5.0], [5.0, 2.0, 3.0]], [[5.0, 5.0, 1.0], [7.0, 3.0, 4.0], [7.0, 7.0, 8.0]], [[6.0, 1.0, 4.0], [3.0, 2.0, 7.0], [8.0, 3.0, 6.0]]], [[[4.0, 8.0, 5.0], [3.0, 5.0, 3.0], [3.0, 7.0, 4.0]], [[3.0, 8.0, 2.0], [5.0, 6.0, 7.0], [1.0, 4.0, 2.0]], [[1.0, 6.0, 3.0], [7.0, 4.0, 2.0], [8.0, 2.0, 2.0]]], [[[8.0, 6.0, 7.0], [6.0, 1.0, 2.0], [7.0, 5.0, 2.0]], [[8.0, 7.0, 2.0], [7.0, 4.0, 1.0], [1.0, 4.0, 5.0]], [[2.0, 4.0, 7.0], [2.0, 6.0, 8.0], [1.0, 6.0, 2.0]]], [[[6.0, 4.0, 2.0], [7.0, 1.0, 3.0], [5.0, 8.0, 2.0]], [[6.0, 6.0, 1.0], [1.0, 7.0, 6.0], [3.0, 7.0, 8.0]], [[3.0, 3.0, 8.0], [6.0, 8.0, 5.0], [2.0, 6.0, 7.0]]]]))
11468        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11469        val=msk_val*numarray.array([[[[8.0, 4.0, 2.0], [8.0, 4.0, 1.0]], [[5.0, 8.0, 2.0], [1.0, 7.0, 2.0]]], [[[5.0, 1.0, 8.0], [5.0, 4.0, 1.0]], [[1.0, 2.0, 5.0], [2.0, 2.0, 4.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 3.0, 8.0], [2.0, 2.0, 3.0]], [[6.0, 7.0, 8.0], [1.0, 8.0, 2.0]]], [[[5.0, 4.0, 6.0], [2.0, 8.0, 1.0]], [[2.0, 8.0, 2.0], [5.0, 3.0, 7.0]]]])        val=msk_val*numarray.array([[[[8.0, 4.0, 2.0], [8.0, 4.0, 1.0]], [[5.0, 8.0, 2.0], [1.0, 7.0, 2.0]]], [[[5.0, 1.0, 8.0], [5.0, 4.0, 1.0]], [[1.0, 2.0, 5.0], [2.0, 2.0, 4.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 3.0, 8.0], [2.0, 2.0, 3.0]], [[6.0, 7.0, 8.0], [1.0, 8.0, 2.0]]], [[[5.0, 4.0, 6.0], [2.0, 8.0, 1.0]], [[2.0, 8.0, 2.0], [5.0, 3.0, 7.0]]]])
11470        arg[1:3,:2,:2,:]=val        arg[1:3,:2,:2,:]=val
11471        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11503  class Test_util_slicing_with_tagged_data Line 11503  class Test_util_slicing_with_tagged_data
11503     def test_setslice_taggedData_rank4_expandedData_PRRR(self):     def test_setslice_taggedData_rank4_expandedData_PRRR(self):
11504        arg=Data(numarray.array([[[[1.0, 1.0, 4.0], [4.0, 2.0, 7.0], [3.0, 6.0, 5.0]], [[4.0, 4.0, 8.0], [4.0, 7.0, 4.0], [6.0, 4.0, 3.0]], [[8.0, 1.0, 2.0], [1.0, 4.0, 1.0], [1.0, 7.0, 8.0]]], [[[7.0, 2.0, 8.0], [2.0, 3.0, 4.0], [8.0, 4.0, 3.0]], [[4.0, 2.0, 2.0], [8.0, 5.0, 7.0], [1.0, 8.0, 2.0]], [[3.0, 3.0, 6.0], [7.0, 4.0, 8.0], [6.0, 7.0, 6.0]]], [[[3.0, 4.0, 8.0], [2.0, 1.0, 3.0], [8.0, 7.0, 5.0]], [[8.0, 6.0, 6.0], [6.0, 1.0, 3.0], [2.0, 4.0, 5.0]], [[2.0, 7.0, 1.0], [5.0, 8.0, 7.0], [4.0, 5.0, 5.0]]], [[[4.0, 8.0, 7.0], [5.0, 8.0, 3.0], [5.0, 8.0, 3.0]], [[8.0, 1.0, 2.0], [1.0, 1.0, 8.0], [6.0, 7.0, 6.0]], [[6.0, 1.0, 3.0], [6.0, 1.0, 6.0], [3.0, 3.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 1.0, 4.0], [4.0, 2.0, 7.0], [3.0, 6.0, 5.0]], [[4.0, 4.0, 8.0], [4.0, 7.0, 4.0], [6.0, 4.0, 3.0]], [[8.0, 1.0, 2.0], [1.0, 4.0, 1.0], [1.0, 7.0, 8.0]]], [[[7.0, 2.0, 8.0], [2.0, 3.0, 4.0], [8.0, 4.0, 3.0]], [[4.0, 2.0, 2.0], [8.0, 5.0, 7.0], [1.0, 8.0, 2.0]], [[3.0, 3.0, 6.0], [7.0, 4.0, 8.0], [6.0, 7.0, 6.0]]], [[[3.0, 4.0, 8.0], [2.0, 1.0, 3.0], [8.0, 7.0, 5.0]], [[8.0, 6.0, 6.0], [6.0, 1.0, 3.0], [2.0, 4.0, 5.0]], [[2.0, 7.0, 1.0], [5.0, 8.0, 7.0], [4.0, 5.0, 5.0]]], [[[4.0, 8.0, 7.0], [5.0, 8.0, 3.0], [5.0, 8.0, 3.0]], [[8.0, 1.0, 2.0], [1.0, 1.0, 8.0], [6.0, 7.0, 6.0]], [[6.0, 1.0, 3.0], [6.0, 1.0, 6.0], [3.0, 3.0, 6.0]]]]),self.functionspace)
11505        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 6.0], [2.0, 8.0, 4.0], [3.0, 7.0, 4.0]], [[5.0, 2.0, 2.0], [1.0, 4.0, 1.0], [3.0, 6.0, 8.0]], [[2.0, 6.0, 5.0], [1.0, 3.0, 6.0], [8.0, 4.0, 2.0]]], [[[4.0, 1.0, 2.0], [3.0, 6.0, 7.0], [2.0, 6.0, 2.0]], [[5.0, 5.0, 6.0], [8.0, 4.0, 4.0], [7.0, 2.0, 8.0]], [[8.0, 8.0, 8.0], [2.0, 5.0, 1.0], [4.0, 4.0, 7.0]]], [[[7.0, 2.0, 8.0], [6.0, 8.0, 5.0], [2.0, 7.0, 1.0]], [[6.0, 2.0, 5.0], [4.0, 6.0, 4.0], [8.0, 1.0, 2.0]], [[3.0, 2.0, 4.0], [7.0, 5.0, 3.0], [3.0, 4.0, 3.0]]], [[[8.0, 4.0, 6.0], [8.0, 3.0, 4.0], [4.0, 2.0, 5.0]], [[8.0, 8.0, 4.0], [1.0, 7.0, 6.0], [3.0, 2.0, 6.0]], [[8.0, 4.0, 7.0], [3.0, 1.0, 3.0], [7.0, 1.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 1.0, 6.0], [2.0, 8.0, 4.0], [3.0, 7.0, 4.0]], [[5.0, 2.0, 2.0], [1.0, 4.0, 1.0], [3.0, 6.0, 8.0]], [[2.0, 6.0, 5.0], [1.0, 3.0, 6.0], [8.0, 4.0, 2.0]]], [[[4.0, 1.0, 2.0], [3.0, 6.0, 7.0], [2.0, 6.0, 2.0]], [[5.0, 5.0, 6.0], [8.0, 4.0, 4.0], [7.0, 2.0, 8.0]], [[8.0, 8.0, 8.0], [2.0, 5.0, 1.0], [4.0, 4.0, 7.0]]], [[[7.0, 2.0, 8.0], [6.0, 8.0, 5.0], [2.0, 7.0, 1.0]], [[6.0, 2.0, 5.0], [4.0, 6.0, 4.0], [8.0, 1.0, 2.0]], [[3.0, 2.0, 4.0], [7.0, 5.0, 3.0], [3.0, 4.0, 3.0]]], [[[8.0, 4.0, 6.0], [8.0, 3.0, 4.0], [4.0, 2.0, 5.0]], [[8.0, 8.0, 4.0], [1.0, 7.0, 6.0], [3.0, 2.0, 6.0]], [[8.0, 4.0, 7.0], [3.0, 1.0, 3.0], [7.0, 1.0, 8.0]]]]))
11506        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11507        val=msk_val*numarray.array([[[5.0]]])+(1.-msk_val)*numarray.array([[[2.0]]])        val=msk_val*numarray.array([[[5.0]]])+(1.-msk_val)*numarray.array([[[2.0]]])
11508        arg[2,1:2,1:2,1:2]=val        arg[2,1:2,1:2,1:2]=val
11509        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11541  class Test_util_slicing_with_tagged_data Line 11541  class Test_util_slicing_with_tagged_data
11541     def test_setslice_taggedData_rank4_expandedData_CRUN(self):     def test_setslice_taggedData_rank4_expandedData_CRUN(self):
11542        arg=Data(numarray.array([[[[3.0, 5.0, 5.0], [1.0, 6.0, 5.0], [3.0, 8.0, 4.0]], [[1.0, 3.0, 5.0], [7.0, 6.0, 1.0], [5.0, 1.0, 8.0]], [[8.0, 2.0, 1.0], [8.0, 1.0, 2.0], [3.0, 4.0, 5.0]]], [[[2.0, 3.0, 6.0], [6.0, 6.0, 4.0], [2.0, 5.0, 3.0]], [[7.0, 6.0, 6.0], [5.0, 6.0, 1.0], [6.0, 8.0, 5.0]], [[4.0, 7.0, 6.0], [6.0, 2.0, 7.0], [7.0, 7.0, 5.0]]], [[[7.0, 5.0, 4.0], [7.0, 5.0, 8.0], [3.0, 5.0, 6.0]], [[6.0, 4.0, 1.0], [4.0, 4.0, 1.0], [1.0, 7.0, 3.0]], [[6.0, 4.0, 3.0], [7.0, 4.0, 4.0], [7.0, 3.0, 3.0]]], [[[3.0, 3.0, 3.0], [8.0, 1.0, 6.0], [4.0, 1.0, 2.0]], [[1.0, 8.0, 7.0], [4.0, 2.0, 7.0], [4.0, 5.0, 2.0]], [[3.0, 7.0, 2.0], [4.0, 6.0, 8.0], [1.0, 8.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 5.0, 5.0], [1.0, 6.0, 5.0], [3.0, 8.0, 4.0]], [[1.0, 3.0, 5.0], [7.0, 6.0, 1.0], [5.0, 1.0, 8.0]], [[8.0, 2.0, 1.0], [8.0, 1.0, 2.0], [3.0, 4.0, 5.0]]], [[[2.0, 3.0, 6.0], [6.0, 6.0, 4.0], [2.0, 5.0, 3.0]], [[7.0, 6.0, 6.0], [5.0, 6.0, 1.0], [6.0, 8.0, 5.0]], [[4.0, 7.0, 6.0], [6.0, 2.0, 7.0], [7.0, 7.0, 5.0]]], [[[7.0, 5.0, 4.0], [7.0, 5.0, 8.0], [3.0, 5.0, 6.0]], [[6.0, 4.0, 1.0], [4.0, 4.0, 1.0], [1.0, 7.0, 3.0]], [[6.0, 4.0, 3.0], [7.0, 4.0, 4.0], [7.0, 3.0, 3.0]]], [[[3.0, 3.0, 3.0], [8.0, 1.0, 6.0], [4.0, 1.0, 2.0]], [[1.0, 8.0, 7.0], [4.0, 2.0, 7.0], [4.0, 5.0, 2.0]], [[3.0, 7.0, 2.0], [4.0, 6.0, 8.0], [1.0, 8.0, 7.0]]]]),self.functionspace)
11543        arg.setTaggedValue(1,numarray.array([[[[2.0, 4.0, 5.0], [4.0, 6.0, 4.0], [8.0, 6.0, 4.0]], [[7.0, 1.0, 7.0], [6.0, 8.0, 2.0], [1.0, 6.0, 7.0]], [[1.0, 1.0, 7.0], [8.0, 6.0, 4.0], [4.0, 2.0, 4.0]]], [[[1.0, 4.0, 6.0], [1.0, 6.0, 2.0], [7.0, 8.0, 3.0]], [[2.0, 3.0, 2.0], [4.0, 8.0, 2.0], [2.0, 7.0, 1.0]], [[2.0, 2.0, 3.0], [1.0, 2.0, 1.0], [1.0, 2.0, 5.0]]], [[[1.0, 4.0, 7.0], [1.0, 4.0, 3.0], [4.0, 5.0, 4.0]], [[1.0, 5.0, 5.0], [7.0, 5.0, 4.0], [3.0, 5.0, 2.0]], [[4.0, 6.0, 8.0], [7.0, 5.0, 6.0], [6.0, 1.0, 7.0]]], [[[7.0, 8.0, 7.0], [3.0, 5.0, 8.0], [1.0, 3.0, 6.0]], [[1.0, 5.0, 1.0], [4.0, 2.0, 7.0], [4.0, 3.0, 2.0]], [[8.0, 5.0, 7.0], [2.0, 8.0, 3.0], [2.0, 5.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 4.0, 5.0], [4.0, 6.0, 4.0], [8.0, 6.0, 4.0]], [[7.0, 1.0, 7.0], [6.0, 8.0, 2.0], [1.0, 6.0, 7.0]], [[1.0, 1.0, 7.0], [8.0, 6.0, 4.0], [4.0, 2.0, 4.0]]], [[[1.0, 4.0, 6.0], [1.0, 6.0, 2.0], [7.0, 8.0, 3.0]], [[2.0, 3.0, 2.0], [4.0, 8.0, 2.0], [2.0, 7.0, 1.0]], [[2.0, 2.0, 3.0], [1.0, 2.0, 1.0], [1.0, 2.0, 5.0]]], [[[1.0, 4.0, 7.0], [1.0, 4.0, 3.0], [4.0, 5.0, 4.0]], [[1.0, 5.0, 5.0], [7.0, 5.0, 4.0], [3.0, 5.0, 2.0]], [[4.0, 6.0, 8.0], [7.0, 5.0, 6.0], [6.0, 1.0, 7.0]]], [[[7.0, 8.0, 7.0], [3.0, 5.0, 8.0], [1.0, 3.0, 6.0]], [[1.0, 5.0, 1.0], [4.0, 2.0, 7.0], [4.0, 3.0, 2.0]], [[8.0, 5.0, 7.0], [2.0, 8.0, 3.0], [2.0, 5.0, 5.0]]]]))
11544        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11545        val=msk_val*numarray.array([[[[2.0, 5.0, 8.0], [8.0, 1.0, 5.0]]], [[[7.0, 1.0, 3.0], [8.0, 5.0, 1.0]]], [[[4.0, 1.0, 5.0], [3.0, 7.0, 3.0]]], [[[6.0, 1.0, 3.0], [7.0, 4.0, 4.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 2.0, 3.0], [5.0, 2.0, 2.0]]], [[[5.0, 6.0, 5.0], [4.0, 2.0, 6.0]]], [[[3.0, 6.0, 7.0], [7.0, 6.0, 7.0]]], [[[3.0, 1.0, 8.0], [7.0, 3.0, 6.0]]]])        val=msk_val*numarray.array([[[[2.0, 5.0, 8.0], [8.0, 1.0, 5.0]]], [[[7.0, 1.0, 3.0], [8.0, 5.0, 1.0]]], [[[4.0, 1.0, 5.0], [3.0, 7.0, 3.0]]], [[[6.0, 1.0, 3.0], [7.0, 4.0, 4.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 2.0, 3.0], [5.0, 2.0, 2.0]]], [[[5.0, 6.0, 5.0], [4.0, 2.0, 6.0]]], [[[3.0, 6.0, 7.0], [7.0, 6.0, 7.0]]], [[[3.0, 1.0, 8.0], [7.0, 3.0, 6.0]]]])
11546        arg[:,1:2,:2]=val        arg[:,1:2,:2]=val
11547        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11579  class Test_util_slicing_with_tagged_data Line 11579  class Test_util_slicing_with_tagged_data
11579     def test_setslice_taggedData_rank4_expandedData_CRCL(self):     def test_setslice_taggedData_rank4_expandedData_CRCL(self):
11580        arg=Data(numarray.array([[[[1.0, 6.0, 1.0], [8.0, 4.0, 8.0], [6.0, 8.0, 2.0]], [[7.0, 7.0, 7.0], [8.0, 4.0, 5.0], [5.0, 2.0, 1.0]], [[4.0, 8.0, 3.0], [1.0, 7.0, 5.0], [2.0, 8.0, 2.0]]], [[[8.0, 2.0, 2.0], [2.0, 7.0, 6.0], [2.0, 6.0, 6.0]], [[5.0, 2.0, 8.0], [1.0, 5.0, 4.0], [6.0, 2.0, 1.0]], [[3.0, 7.0, 3.0], [2.0, 1.0, 1.0], [3.0, 2.0, 8.0]]], [[[4.0, 6.0, 2.0], [6.0, 6.0, 3.0], [2.0, 3.0, 7.0]], [[5.0, 6.0, 1.0], [3.0, 8.0, 7.0], [2.0, 4.0, 4.0]], [[8.0, 6.0, 6.0], [3.0, 4.0, 8.0], [6.0, 1.0, 3.0]]], [[[1.0, 6.0, 8.0], [4.0, 3.0, 6.0], [6.0, 5.0, 6.0]], [[7.0, 2.0, 1.0], [7.0, 8.0, 1.0], [5.0, 1.0, 8.0]], [[3.0, 1.0, 2.0], [5.0, 4.0, 7.0], [8.0, 3.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 6.0, 1.0], [8.0, 4.0, 8.0], [6.0, 8.0, 2.0]], [[7.0, 7.0, 7.0], [8.0, 4.0, 5.0], [5.0, 2.0, 1.0]], [[4.0, 8.0, 3.0], [1.0, 7.0, 5.0], [2.0, 8.0, 2.0]]], [[[8.0, 2.0, 2.0], [2.0, 7.0, 6.0], [2.0, 6.0, 6.0]], [[5.0, 2.0, 8.0], [1.0, 5.0, 4.0], [6.0, 2.0, 1.0]], [[3.0, 7.0, 3.0], [2.0, 1.0, 1.0], [3.0, 2.0, 8.0]]], [[[4.0, 6.0, 2.0], [6.0, 6.0, 3.0], [2.0, 3.0, 7.0]], [[5.0, 6.0, 1.0], [3.0, 8.0, 7.0], [2.0, 4.0, 4.0]], [[8.0, 6.0, 6.0], [3.0, 4.0, 8.0], [6.0, 1.0, 3.0]]], [[[1.0, 6.0, 8.0], [4.0, 3.0, 6.0], [6.0, 5.0, 6.0]], [[7.0, 2.0, 1.0], [7.0, 8.0, 1.0], [5.0, 1.0, 8.0]], [[3.0, 1.0, 2.0], [5.0, 4.0, 7.0], [8.0, 3.0, 8.0]]]]),self.functionspace)
11581        arg.setTaggedValue(1,numarray.array([[[[3.0, 3.0, 7.0], [5.0, 2.0, 5.0], [7.0, 4.0, 1.0]], [[5.0, 2.0, 7.0], [6.0, 2.0, 3.0], [6.0, 6.0, 2.0]], [[8.0, 2.0, 2.0], [8.0, 1.0, 5.0], [2.0, 3.0, 4.0]]], [[[3.0, 4.0, 2.0], [8.0, 7.0, 2.0], [5.0, 6.0, 8.0]], [[7.0, 5.0, 5.0], [1.0, 7.0, 4.0], [6.0, 3.0, 1.0]], [[6.0, 2.0, 6.0], [4.0, 1.0, 2.0], [6.0, 6.0, 1.0]]], [[[8.0, 2.0, 2.0], [6.0, 7.0, 6.0], [3.0, 7.0, 3.0]], [[7.0, 6.0, 4.0], [5.0, 1.0, 4.0], [5.0, 4.0, 5.0]], [[7.0, 5.0, 5.0], [6.0, 3.0, 1.0], [3.0, 6.0, 1.0]]], [[[8.0, 2.0, 4.0], [1.0, 8.0, 1.0], [6.0, 1.0, 2.0]], [[3.0, 8.0, 1.0], [4.0, 2.0, 5.0], [2.0, 1.0, 7.0]], [[1.0, 3.0, 7.0], [1.0, 5.0, 5.0], [8.0, 7.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 3.0, 7.0], [5.0, 2.0, 5.0], [7.0, 4.0, 1.0]], [[5.0, 2.0, 7.0], [6.0, 2.0, 3.0], [6.0, 6.0, 2.0]], [[8.0, 2.0, 2.0], [8.0, 1.0, 5.0], [2.0, 3.0, 4.0]]], [[[3.0, 4.0, 2.0], [8.0, 7.0, 2.0], [5.0, 6.0, 8.0]], [[7.0, 5.0, 5.0], [1.0, 7.0, 4.0], [6.0, 3.0, 1.0]], [[6.0, 2.0, 6.0], [4.0, 1.0, 2.0], [6.0, 6.0, 1.0]]], [[[8.0, 2.0, 2.0], [6.0, 7.0, 6.0], [3.0, 7.0, 3.0]], [[7.0, 6.0, 4.0], [5.0, 1.0, 4.0], [5.0, 4.0, 5.0]], [[7.0, 5.0, 5.0], [6.0, 3.0, 1.0], [3.0, 6.0, 1.0]]], [[[8.0, 2.0, 4.0], [1.0, 8.0, 1.0], [6.0, 1.0, 2.0]], [[3.0, 8.0, 1.0], [4.0, 2.0, 5.0], [2.0, 1.0, 7.0]], [[1.0, 3.0, 7.0], [1.0, 5.0, 5.0], [8.0, 7.0, 6.0]]]]))
11582        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11583        val=msk_val*numarray.array([[[[7.0], [4.0], [7.0]]], [[[2.0], [8.0], [3.0]]], [[[3.0], [3.0], [8.0]]], [[[8.0], [7.0], [2.0]]]])+(1.-msk_val)*numarray.array([[[[7.0], [7.0], [3.0]]], [[[2.0], [5.0], [3.0]]], [[[4.0], [3.0], [6.0]]], [[[3.0], [5.0], [4.0]]]])        val=msk_val*numarray.array([[[[7.0], [4.0], [7.0]]], [[[2.0], [8.0], [3.0]]], [[[3.0], [3.0], [8.0]]], [[[8.0], [7.0], [2.0]]]])+(1.-msk_val)*numarray.array([[[[7.0], [7.0], [3.0]]], [[[2.0], [5.0], [3.0]]], [[[4.0], [3.0], [6.0]]], [[[3.0], [5.0], [4.0]]]])
11584        arg[:,1:2,:,2:]=val        arg[:,1:2,:,2:]=val
11585        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11617  class Test_util_slicing_with_tagged_data Line 11617  class Test_util_slicing_with_tagged_data
11617     def test_setslice_taggedData_rank4_expandedData_CPPL(self):     def test_setslice_taggedData_rank4_expandedData_CPPL(self):
11618        arg=Data(numarray.array([[[[1.0, 5.0, 4.0], [1.0, 6.0, 3.0], [3.0, 7.0, 4.0]], [[8.0, 2.0, 4.0], [5.0, 1.0, 8.0], [6.0, 1.0, 6.0]], [[6.0, 2.0, 5.0], [8.0, 5.0, 5.0], [8.0, 8.0, 1.0]]], [[[7.0, 7.0, 7.0], [5.0, 1.0, 7.0], [3.0, 1.0, 2.0]], [[7.0, 1.0, 1.0], [7.0, 5.0, 4.0], [2.0, 1.0, 3.0]], [[8.0, 1.0, 5.0], [4.0, 2.0, 8.0], [3.0, 1.0, 5.0]]], [[[3.0, 4.0, 7.0], [6.0, 1.0, 8.0], [2.0, 8.0, 4.0]], [[4.0, 8.0, 3.0], [5.0, 4.0, 3.0], [2.0, 3.0, 2.0]], [[3.0, 5.0, 5.0], [1.0, 3.0, 2.0], [7.0, 5.0, 7.0]]], [[[5.0, 8.0, 6.0], [5.0, 2.0, 4.0], [8.0, 3.0, 1.0]], [[3.0, 5.0, 1.0], [6.0, 6.0, 1.0], [3.0, 2.0, 2.0]], [[4.0, 5.0, 4.0], [8.0, 1.0, 8.0], [4.0, 1.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 5.0, 4.0], [1.0, 6.0, 3.0], [3.0, 7.0, 4.0]], [[8.0, 2.0, 4.0], [5.0, 1.0, 8.0], [6.0, 1.0, 6.0]], [[6.0, 2.0, 5.0], [8.0, 5.0, 5.0], [8.0, 8.0, 1.0]]], [[[7.0, 7.0, 7.0], [5.0, 1.0, 7.0], [3.0, 1.0, 2.0]], [[7.0, 1.0, 1.0], [7.0, 5.0, 4.0], [2.0, 1.0, 3.0]], [[8.0, 1.0, 5.0], [4.0, 2.0, 8.0], [3.0, 1.0, 5.0]]], [[[3.0, 4.0, 7.0], [6.0, 1.0, 8.0], [2.0, 8.0, 4.0]], [[4.0, 8.0, 3.0], [5.0, 4.0, 3.0], [2.0, 3.0, 2.0]], [[3.0, 5.0, 5.0], [1.0, 3.0, 2.0], [7.0, 5.0, 7.0]]], [[[5.0, 8.0, 6.0], [5.0, 2.0, 4.0], [8.0, 3.0, 1.0]], [[3.0, 5.0, 1.0], [6.0, 6.0, 1.0], [3.0, 2.0, 2.0]], [[4.0, 5.0, 4.0], [8.0, 1.0, 8.0], [4.0, 1.0, 2.0]]]]),self.functionspace)
11619        arg.setTaggedValue(1,numarray.array([[[[6.0, 8.0, 7.0], [8.0, 4.0, 8.0], [8.0, 3.0, 1.0]], [[3.0, 7.0, 8.0], [5.0, 5.0, 2.0], [2.0, 3.0, 6.0]], [[5.0, 3.0, 2.0], [7.0, 7.0, 8.0], [6.0, 4.0, 1.0]]], [[[2.0, 8.0, 1.0], [8.0, 4.0, 4.0], [3.0, 1.0, 4.0]], [[6.0, 1.0, 5.0], [6.0, 1.0, 1.0], [2.0, 7.0, 5.0]], [[6.0, 2.0, 7.0], [1.0, 3.0, 7.0], [8.0, 8.0, 7.0]]], [[[8.0, 1.0, 2.0], [7.0, 2.0, 4.0], [3.0, 1.0, 2.0]], [[6.0, 2.0, 3.0], [7.0, 3.0, 1.0], [6.0, 3.0, 6.0]], [[4.0, 5.0, 3.0], [5.0, 5.0, 4.0], [6.0, 2.0, 5.0]]], [[[1.0, 4.0, 4.0], [1.0, 7.0, 1.0], [8.0, 3.0, 8.0]], [[1.0, 8.0, 2.0], [7.0, 1.0, 2.0], [8.0, 4.0, 1.0]], [[4.0, 2.0, 4.0], [1.0, 6.0, 8.0], [4.0, 5.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 8.0, 7.0], [8.0, 4.0, 8.0], [8.0, 3.0, 1.0]], [[3.0, 7.0, 8.0], [5.0, 5.0, 2.0], [2.0, 3.0, 6.0]], [[5.0, 3.0, 2.0], [7.0, 7.0, 8.0], [6.0, 4.0, 1.0]]], [[[2.0, 8.0, 1.0], [8.0, 4.0, 4.0], [3.0, 1.0, 4.0]], [[6.0, 1.0, 5.0], [6.0, 1.0, 1.0], [2.0, 7.0, 5.0]], [[6.0, 2.0, 7.0], [1.0, 3.0, 7.0], [8.0, 8.0, 7.0]]], [[[8.0, 1.0, 2.0], [7.0, 2.0, 4.0], [3.0, 1.0, 2.0]], [[6.0, 2.0, 3.0], [7.0, 3.0, 1.0], [6.0, 3.0, 6.0]], [[4.0, 5.0, 3.0], [5.0, 5.0, 4.0], [6.0, 2.0, 5.0]]], [[[1.0, 4.0, 4.0], [1.0, 7.0, 1.0], [8.0, 3.0, 8.0]], [[1.0, 8.0, 2.0], [7.0, 1.0, 2.0], [8.0, 4.0, 1.0]], [[4.0, 2.0, 4.0], [1.0, 6.0, 8.0], [4.0, 5.0, 3.0]]]]))
11620        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11621        val=msk_val*numarray.array([[3.0], [8.0], [8.0], [7.0]])+(1.-msk_val)*numarray.array([[4.0], [3.0], [5.0], [7.0]])        val=msk_val*numarray.array([[3.0], [8.0], [8.0], [7.0]])+(1.-msk_val)*numarray.array([[4.0], [3.0], [5.0], [7.0]])
11622        arg[:,1,1,2:]=val        arg[:,1,1,2:]=val
11623        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11655  class Test_util_slicing_with_tagged_data Line 11655  class Test_util_slicing_with_tagged_data
11655     def test_setslice_taggedData_rank4_expandedData_RLPN(self):     def test_setslice_taggedData_rank4_expandedData_RLPN(self):
11656        arg=Data(numarray.array([[[[3.0, 5.0, 8.0], [2.0, 1.0, 2.0], [3.0, 7.0, 6.0]], [[7.0, 4.0, 5.0], [6.0, 5.0, 4.0], [3.0, 5.0, 8.0]], [[2.0, 1.0, 7.0], [5.0, 2.0, 8.0], [7.0, 3.0, 6.0]]], [[[2.0, 3.0, 6.0], [3.0, 3.0, 1.0], [4.0, 2.0, 1.0]], [[5.0, 8.0, 7.0], [8.0, 4.0, 4.0], [6.0, 1.0, 6.0]], [[1.0, 7.0, 8.0], [3.0, 1.0, 4.0], [5.0, 7.0, 2.0]]], [[[2.0, 2.0, 6.0], [1.0, 1.0, 2.0], [6.0, 7.0, 3.0]], [[4.0, 2.0, 5.0], [1.0, 8.0, 4.0], [4.0, 3.0, 8.0]], [[7.0, 6.0, 7.0], [5.0, 7.0, 1.0], [7.0, 8.0, 6.0]]], [[[1.0, 1.0, 5.0], [7.0, 5.0, 1.0], [5.0, 4.0, 3.0]], [[2.0, 5.0, 2.0], [5.0, 6.0, 7.0], [7.0, 8.0, 7.0]], [[7.0, 5.0, 4.0], [5.0, 4.0, 6.0], [7.0, 7.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 5.0, 8.0], [2.0, 1.0, 2.0], [3.0, 7.0, 6.0]], [[7.0, 4.0, 5.0], [6.0, 5.0, 4.0], [3.0, 5.0, 8.0]], [[2.0, 1.0, 7.0], [5.0, 2.0, 8.0], [7.0, 3.0, 6.0]]], [[[2.0, 3.0, 6.0], [3.0, 3.0, 1.0], [4.0, 2.0, 1.0]], [[5.0, 8.0, 7.0], [8.0, 4.0, 4.0], [6.0, 1.0, 6.0]], [[1.0, 7.0, 8.0], [3.0, 1.0, 4.0], [5.0, 7.0, 2.0]]], [[[2.0, 2.0, 6.0], [1.0, 1.0, 2.0], [6.0, 7.0, 3.0]], [[4.0, 2.0, 5.0], [1.0, 8.0, 4.0], [4.0, 3.0, 8.0]], [[7.0, 6.0, 7.0], [5.0, 7.0, 1.0], [7.0, 8.0, 6.0]]], [[[1.0, 1.0, 5.0], [7.0, 5.0, 1.0], [5.0, 4.0, 3.0]], [[2.0, 5.0, 2.0], [5.0, 6.0, 7.0], [7.0, 8.0, 7.0]], [[7.0, 5.0, 4.0], [5.0, 4.0, 6.0], [7.0, 7.0, 7.0]]]]),self.functionspace)
11657        arg.setTaggedValue(1,numarray.array([[[[6.0, 6.0, 8.0], [7.0, 6.0, 4.0], [5.0, 7.0, 6.0]], [[1.0, 3.0, 3.0], [4.0, 7.0, 3.0], [3.0, 2.0, 4.0]], [[3.0, 3.0, 1.0], [5.0, 8.0, 7.0], [2.0, 5.0, 1.0]]], [[[3.0, 2.0, 2.0], [2.0, 1.0, 2.0], [3.0, 7.0, 3.0]], [[7.0, 1.0, 3.0], [5.0, 3.0, 5.0], [8.0, 3.0, 5.0]], [[2.0, 6.0, 3.0], [7.0, 8.0, 5.0], [1.0, 7.0, 8.0]]], [[[6.0, 6.0, 5.0], [4.0, 2.0, 5.0], [4.0, 5.0, 7.0]], [[4.0, 8.0, 1.0], [6.0, 2.0, 4.0], [8.0, 2.0, 8.0]], [[5.0, 4.0, 2.0], [3.0, 5.0, 7.0], [6.0, 5.0, 2.0]]], [[[3.0, 1.0, 3.0], [5.0, 5.0, 3.0], [8.0, 3.0, 3.0]], [[2.0, 6.0, 2.0], [6.0, 5.0, 6.0], [3.0, 4.0, 5.0]], [[1.0, 1.0, 2.0], [7.0, 2.0, 6.0], [5.0, 3.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 6.0, 8.0], [7.0, 6.0, 4.0], [5.0, 7.0, 6.0]], [[1.0, 3.0, 3.0], [4.0, 7.0, 3.0], [3.0, 2.0, 4.0]], [[3.0, 3.0, 1.0], [5.0, 8.0, 7.0], [2.0, 5.0, 1.0]]], [[[3.0, 2.0, 2.0], [2.0, 1.0, 2.0], [3.0, 7.0, 3.0]], [[7.0, 1.0, 3.0], [5.0, 3.0, 5.0], [8.0, 3.0, 5.0]], [[2.0, 6.0, 3.0], [7.0, 8.0, 5.0], [1.0, 7.0, 8.0]]], [[[6.0, 6.0, 5.0], [4.0, 2.0, 5.0], [4.0, 5.0, 7.0]], [[4.0, 8.0, 1.0], [6.0, 2.0, 4.0], [8.0, 2.0, 8.0]], [[5.0, 4.0, 2.0], [3.0, 5.0, 7.0], [6.0, 5.0, 2.0]]], [[[3.0, 1.0, 3.0], [5.0, 5.0, 3.0], [8.0, 3.0, 3.0]], [[2.0, 6.0, 2.0], [6.0, 5.0, 6.0], [3.0, 4.0, 5.0]], [[1.0, 1.0, 2.0], [7.0, 2.0, 6.0], [5.0, 3.0, 6.0]]]]))
11658        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11659        val=msk_val*numarray.array([[[1.0, 5.0, 1.0]], [[6.0, 1.0, 4.0]]])+(1.-msk_val)*numarray.array([[[3.0, 3.0, 4.0]], [[4.0, 6.0, 5.0]]])        val=msk_val*numarray.array([[[1.0, 5.0, 1.0]], [[6.0, 1.0, 4.0]]])+(1.-msk_val)*numarray.array([[[3.0, 3.0, 4.0]], [[4.0, 6.0, 5.0]]])
11660        arg[1:3,2:,1]=val        arg[1:3,2:,1]=val
11661        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11693  class Test_util_slicing_with_tagged_data Line 11693  class Test_util_slicing_with_tagged_data
11693     def test_setslice_taggedData_rank4_expandedData_CPCP(self):     def test_setslice_taggedData_rank4_expandedData_CPCP(self):
11694        arg=Data(numarray.array([[[[7.0, 2.0, 1.0], [4.0, 3.0, 2.0], [4.0, 5.0, 6.0]], [[4.0, 5.0, 2.0], [6.0, 2.0, 6.0], [3.0, 5.0, 2.0]], [[6.0, 3.0, 5.0], [4.0, 4.0, 4.0], [4.0, 4.0, 6.0]]], [[[1.0, 6.0, 7.0], [3.0, 5.0, 2.0], [7.0, 3.0, 6.0]], [[7.0, 7.0, 3.0], [7.0, 3.0, 7.0], [8.0, 5.0, 2.0]], [[6.0, 2.0, 6.0], [1.0, 4.0, 3.0], [8.0, 7.0, 4.0]]], [[[1.0, 8.0, 7.0], [6.0, 7.0, 4.0], [3.0, 5.0, 3.0]], [[1.0, 1.0, 8.0], [6.0, 2.0, 4.0], [5.0, 2.0, 7.0]], [[4.0, 1.0, 2.0], [1.0, 1.0, 2.0], [2.0, 5.0, 8.0]]], [[[8.0, 5.0, 1.0], [6.0, 4.0, 6.0], [3.0, 4.0, 5.0]], [[5.0, 7.0, 6.0], [6.0, 3.0, 8.0], [7.0, 6.0, 6.0]], [[8.0, 3.0, 7.0], [2.0, 8.0, 6.0], [5.0, 3.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 2.0, 1.0], [4.0, 3.0, 2.0], [4.0, 5.0, 6.0]], [[4.0, 5.0, 2.0], [6.0, 2.0, 6.0], [3.0, 5.0, 2.0]], [[6.0, 3.0, 5.0], [4.0, 4.0, 4.0], [4.0, 4.0, 6.0]]], [[[1.0, 6.0, 7.0], [3.0, 5.0, 2.0], [7.0, 3.0, 6.0]], [[7.0, 7.0, 3.0], [7.0, 3.0, 7.0], [8.0, 5.0, 2.0]], [[6.0, 2.0, 6.0], [1.0, 4.0, 3.0], [8.0, 7.0, 4.0]]], [[[1.0, 8.0, 7.0], [6.0, 7.0, 4.0], [3.0, 5.0, 3.0]], [[1.0, 1.0, 8.0], [6.0, 2.0, 4.0], [5.0, 2.0, 7.0]], [[4.0, 1.0, 2.0], [1.0, 1.0, 2.0], [2.0, 5.0, 8.0]]], [[[8.0, 5.0, 1.0], [6.0, 4.0, 6.0], [3.0, 4.0, 5.0]], [[5.0, 7.0, 6.0], [6.0, 3.0, 8.0], [7.0, 6.0, 6.0]], [[8.0, 3.0, 7.0], [2.0, 8.0, 6.0], [5.0, 3.0, 1.0]]]]),self.functionspace)
11695        arg.setTaggedValue(1,numarray.array([[[[1.0, 1.0, 4.0], [4.0, 3.0, 8.0], [5.0, 4.0, 3.0]], [[4.0, 4.0, 2.0], [7.0, 6.0, 5.0], [6.0, 5.0, 6.0]], [[5.0, 6.0, 8.0], [8.0, 3.0, 2.0], [2.0, 2.0, 8.0]]], [[[4.0, 3.0, 1.0], [3.0, 3.0, 7.0], [4.0, 3.0, 6.0]], [[3.0, 4.0, 1.0], [2.0, 5.0, 8.0], [3.0, 4.0, 8.0]], [[6.0, 7.0, 5.0], [8.0, 4.0, 6.0], [3.0, 7.0, 4.0]]], [[[6.0, 6.0, 6.0], [4.0, 3.0, 2.0], [8.0, 7.0, 3.0]], [[2.0, 2.0, 3.0], [3.0, 7.0, 3.0], [2.0, 7.0, 4.0]], [[6.0, 1.0, 6.0], [1.0, 2.0, 8.0], [7.0, 6.0, 3.0]]], [[[4.0, 7.0, 2.0], [5.0, 6.0, 7.0], [6.0, 3.0, 6.0]], [[2.0, 1.0, 6.0], [3.0, 5.0, 2.0], [8.0, 1.0, 6.0]], [[5.0, 8.0, 8.0], [1.0, 2.0, 1.0], [8.0, 7.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 1.0, 4.0], [4.0, 3.0, 8.0], [5.0, 4.0, 3.0]], [[4.0, 4.0, 2.0], [7.0, 6.0, 5.0], [6.0, 5.0, 6.0]], [[5.0, 6.0, 8.0], [8.0, 3.0, 2.0], [2.0, 2.0, 8.0]]], [[[4.0, 3.0, 1.0], [3.0, 3.0, 7.0], [4.0, 3.0, 6.0]], [[3.0, 4.0, 1.0], [2.0, 5.0, 8.0], [3.0, 4.0, 8.0]], [[6.0, 7.0, 5.0], [8.0, 4.0, 6.0], [3.0, 7.0, 4.0]]], [[[6.0, 6.0, 6.0], [4.0, 3.0, 2.0], [8.0, 7.0, 3.0]], [[2.0, 2.0, 3.0], [3.0, 7.0, 3.0], [2.0, 7.0, 4.0]], [[6.0, 1.0, 6.0], [1.0, 2.0, 8.0], [7.0, 6.0, 3.0]]], [[[4.0, 7.0, 2.0], [5.0, 6.0, 7.0], [6.0, 3.0, 6.0]], [[2.0, 1.0, 6.0], [3.0, 5.0, 2.0], [8.0, 1.0, 6.0]], [[5.0, 8.0, 8.0], [1.0, 2.0, 1.0], [8.0, 7.0, 6.0]]]]))
11696        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11697        val=msk_val*numarray.array([[4.0, 2.0, 7.0], [7.0, 6.0, 5.0], [6.0, 3.0, 3.0], [1.0, 8.0, 7.0]])+(1.-msk_val)*numarray.array([[3.0, 1.0, 2.0], [2.0, 3.0, 8.0], [8.0, 5.0, 1.0], [2.0, 4.0, 4.0]])        val=msk_val*numarray.array([[4.0, 2.0, 7.0], [7.0, 6.0, 5.0], [6.0, 3.0, 3.0], [1.0, 8.0, 7.0]])+(1.-msk_val)*numarray.array([[3.0, 1.0, 2.0], [2.0, 3.0, 8.0], [8.0, 5.0, 1.0], [2.0, 4.0, 4.0]])
11698        arg[:,1,:,1]=val        arg[:,1,:,1]=val
11699        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11731  class Test_util_slicing_with_tagged_data Line 11731  class Test_util_slicing_with_tagged_data
11731     def test_setslice_taggedData_rank4_expandedData_LCRN(self):     def test_setslice_taggedData_rank4_expandedData_LCRN(self):
11732        arg=Data(numarray.array([[[[2.0, 2.0, 8.0], [1.0, 8.0, 5.0], [8.0, 2.0, 2.0]], [[3.0, 3.0, 2.0], [3.0, 7.0, 8.0], [7.0, 2.0, 7.0]], [[4.0, 2.0, 1.0], [4.0, 4.0, 1.0], [2.0, 1.0, 5.0]]], [[[8.0, 6.0, 6.0], [3.0, 3.0, 6.0], [7.0, 4.0, 1.0]], [[5.0, 1.0, 1.0], [2.0, 2.0, 8.0], [5.0, 6.0, 6.0]], [[2.0, 5.0, 1.0], [4.0, 4.0, 7.0], [1.0, 2.0, 1.0]]], [[[1.0, 3.0, 3.0], [7.0, 6.0, 8.0], [6.0, 8.0, 6.0]], [[8.0, 5.0, 3.0], [6.0, 6.0, 2.0], [8.0, 8.0, 8.0]], [[3.0, 3.0, 7.0], [4.0, 6.0, 1.0], [8.0, 4.0, 4.0]]], [[[3.0, 8.0, 6.0], [8.0, 8.0, 8.0], [8.0, 2.0, 6.0]], [[4.0, 5.0, 7.0], [6.0, 5.0, 3.0], [4.0, 3.0, 2.0]], [[2.0, 6.0, 1.0], [1.0, 1.0, 1.0], [7.0, 4.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 2.0, 8.0], [1.0, 8.0, 5.0], [8.0, 2.0, 2.0]], [[3.0, 3.0, 2.0], [3.0, 7.0, 8.0], [7.0, 2.0, 7.0]], [[4.0, 2.0, 1.0], [4.0, 4.0, 1.0], [2.0, 1.0, 5.0]]], [[[8.0, 6.0, 6.0], [3.0, 3.0, 6.0], [7.0, 4.0, 1.0]], [[5.0, 1.0, 1.0], [2.0, 2.0, 8.0], [5.0, 6.0, 6.0]], [[2.0, 5.0, 1.0], [4.0, 4.0, 7.0], [1.0, 2.0, 1.0]]], [[[1.0, 3.0, 3.0], [7.0, 6.0, 8.0], [6.0, 8.0, 6.0]], [[8.0, 5.0, 3.0], [6.0, 6.0, 2.0], [8.0, 8.0, 8.0]], [[3.0, 3.0, 7.0], [4.0, 6.0, 1.0], [8.0, 4.0, 4.0]]], [[[3.0, 8.0, 6.0], [8.0, 8.0, 8.0], [8.0, 2.0, 6.0]], [[4.0, 5.0, 7.0], [6.0, 5.0, 3.0], [4.0, 3.0, 2.0]], [[2.0, 6.0, 1.0], [1.0, 1.0, 1.0], [7.0, 4.0, 6.0]]]]),self.functionspace)
11733        arg.setTaggedValue(1,numarray.array([[[[7.0, 8.0, 8.0], [4.0, 4.0, 3.0], [6.0, 2.0, 5.0]], [[6.0, 7.0, 3.0], [4.0, 5.0, 7.0], [5.0, 7.0, 3.0]], [[6.0, 1.0, 4.0], [2.0, 7.0, 8.0], [5.0, 2.0, 4.0]]], [[[6.0, 1.0, 8.0], [2.0, 4.0, 8.0], [3.0, 4.0, 3.0]], [[4.0, 3.0, 5.0], [1.0, 3.0, 2.0], [7.0, 7.0, 2.0]], [[2.0, 8.0, 4.0], [8.0, 1.0, 3.0], [5.0, 6.0, 5.0]]], [[[3.0, 5.0, 3.0], [8.0, 5.0, 3.0], [2.0, 6.0, 8.0]], [[3.0, 8.0, 8.0], [5.0, 4.0, 5.0], [5.0, 6.0, 4.0]], [[7.0, 6.0, 6.0], [4.0, 6.0, 8.0], [6.0, 3.0, 8.0]]], [[[8.0, 8.0, 7.0], [8.0, 2.0, 1.0], [4.0, 2.0, 1.0]], [[4.0, 6.0, 1.0], [3.0, 2.0, 5.0], [4.0, 4.0, 7.0]], [[7.0, 5.0, 6.0], [5.0, 2.0, 5.0], [8.0, 4.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 8.0, 8.0], [4.0, 4.0, 3.0], [6.0, 2.0, 5.0]], [[6.0, 7.0, 3.0], [4.0, 5.0, 7.0], [5.0, 7.0, 3.0]], [[6.0, 1.0, 4.0], [2.0, 7.0, 8.0], [5.0, 2.0, 4.0]]], [[[6.0, 1.0, 8.0], [2.0, 4.0, 8.0], [3.0, 4.0, 3.0]], [[4.0, 3.0, 5.0], [1.0, 3.0, 2.0], [7.0, 7.0, 2.0]], [[2.0, 8.0, 4.0], [8.0, 1.0, 3.0], [5.0, 6.0, 5.0]]], [[[3.0, 5.0, 3.0], [8.0, 5.0, 3.0], [2.0, 6.0, 8.0]], [[3.0, 8.0, 8.0], [5.0, 4.0, 5.0], [5.0, 6.0, 4.0]], [[7.0, 6.0, 6.0], [4.0, 6.0, 8.0], [6.0, 3.0, 8.0]]], [[[8.0, 8.0, 7.0], [8.0, 2.0, 1.0], [4.0, 2.0, 1.0]], [[4.0, 6.0, 1.0], [3.0, 2.0, 5.0], [4.0, 4.0, 7.0]], [[7.0, 5.0, 6.0], [5.0, 2.0, 5.0], [8.0, 4.0, 6.0]]]]))
11734        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11735        val=msk_val*numarray.array([[[[4.0, 1.0, 4.0]], [[8.0, 7.0, 5.0]], [[2.0, 7.0, 2.0]]], [[[2.0, 5.0, 1.0]], [[6.0, 4.0, 5.0]], [[8.0, 1.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 7.0, 1.0]], [[1.0, 5.0, 2.0]], [[6.0, 6.0, 8.0]]], [[[6.0, 6.0, 3.0]], [[5.0, 7.0, 7.0]], [[5.0, 1.0, 3.0]]]])        val=msk_val*numarray.array([[[[4.0, 1.0, 4.0]], [[8.0, 7.0, 5.0]], [[2.0, 7.0, 2.0]]], [[[2.0, 5.0, 1.0]], [[6.0, 4.0, 5.0]], [[8.0, 1.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 7.0, 1.0]], [[1.0, 5.0, 2.0]], [[6.0, 6.0, 8.0]]], [[[6.0, 6.0, 3.0]], [[5.0, 7.0, 7.0]], [[5.0, 1.0, 3.0]]]])
11736        arg[2:,:,1:2]=val        arg[2:,:,1:2]=val
11737        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11769  class Test_util_slicing_with_tagged_data Line 11769  class Test_util_slicing_with_tagged_data
11769     def test_setslice_taggedData_rank4_expandedData_UCCC(self):     def test_setslice_taggedData_rank4_expandedData_UCCC(self):
11770        arg=Data(numarray.array([[[[4.0, 5.0, 2.0], [7.0, 7.0, 6.0], [3.0, 7.0, 2.0]], [[5.0, 4.0, 6.0], [8.0, 6.0, 8.0], [1.0, 5.0, 1.0]], [[7.0, 3.0, 1.0], [5.0, 7.0, 6.0], [5.0, 4.0, 5.0]]], [[[3.0, 7.0, 2.0], [3.0, 4.0, 7.0], [1.0, 3.0, 1.0]], [[5.0, 1.0, 4.0], [8.0, 3.0, 6.0], [7.0, 4.0, 4.0]], [[8.0, 7.0, 5.0], [6.0, 2.0, 5.0], [5.0, 5.0, 4.0]]], [[[3.0, 7.0, 7.0], [7.0, 1.0, 8.0], [5.0, 2.0, 5.0]], [[8.0, 8.0, 5.0], [4.0, 5.0, 7.0], [7.0, 1.0, 3.0]], [[5.0, 3.0, 1.0], [5.0, 3.0, 8.0], [8.0, 3.0, 2.0]]], [[[6.0, 1.0, 1.0], [6.0, 6.0, 8.0], [8.0, 8.0, 3.0]], [[2.0, 8.0, 7.0], [8.0, 2.0, 3.0], [6.0, 4.0, 1.0]], [[7.0, 3.0, 2.0], [2.0, 3.0, 6.0], [7.0, 4.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 5.0, 2.0], [7.0, 7.0, 6.0], [3.0, 7.0, 2.0]], [[5.0, 4.0, 6.0], [8.0, 6.0, 8.0], [1.0, 5.0, 1.0]], [[7.0, 3.0, 1.0], [5.0, 7.0, 6.0], [5.0, 4.0, 5.0]]], [[[3.0, 7.0, 2.0], [3.0, 4.0, 7.0], [1.0, 3.0, 1.0]], [[5.0, 1.0, 4.0], [8.0, 3.0, 6.0], [7.0, 4.0, 4.0]], [[8.0, 7.0, 5.0], [6.0, 2.0, 5.0], [5.0, 5.0, 4.0]]], [[[3.0, 7.0, 7.0], [7.0, 1.0, 8.0], [5.0, 2.0, 5.0]], [[8.0, 8.0, 5.0], [4.0, 5.0, 7.0], [7.0, 1.0, 3.0]], [[5.0, 3.0, 1.0], [5.0, 3.0, 8.0], [8.0, 3.0, 2.0]]], [[[6.0, 1.0, 1.0], [6.0, 6.0, 8.0], [8.0, 8.0, 3.0]], [[2.0, 8.0, 7.0], [8.0, 2.0, 3.0], [6.0, 4.0, 1.0]], [[7.0, 3.0, 2.0], [2.0, 3.0, 6.0], [7.0, 4.0, 6.0]]]]),self.functionspace)
11771        arg.setTaggedValue(1,numarray.array([[[[5.0, 5.0, 8.0], [4.0, 4.0, 4.0], [3.0, 3.0, 8.0]], [[2.0, 5.0, 4.0], [5.0, 7.0, 8.0], [4.0, 2.0, 2.0]], [[6.0, 8.0, 8.0], [4.0, 4.0, 7.0], [7.0, 3.0, 3.0]]], [[[4.0, 6.0, 6.0], [7.0, 3.0, 1.0], [6.0, 4.0, 5.0]], [[2.0, 4.0, 6.0], [3.0, 8.0, 8.0], [4.0, 2.0, 2.0]], [[3.0, 4.0, 4.0], [7.0, 3.0, 7.0], [2.0, 5.0, 4.0]]], [[[5.0, 3.0, 4.0], [7.0, 3.0, 6.0], [2.0, 8.0, 6.0]], [[4.0, 7.0, 5.0], [8.0, 2.0, 8.0], [3.0, 4.0, 2.0]], [[3.0, 8.0, 7.0], [2.0, 7.0, 2.0], [6.0, 6.0, 5.0]]], [[[4.0, 1.0, 1.0], [2.0, 6.0, 8.0], [4.0, 6.0, 8.0]], [[7.0, 4.0, 8.0], [6.0, 7.0, 6.0], [8.0, 3.0, 6.0]], [[3.0, 1.0, 5.0], [3.0, 4.0, 3.0], [7.0, 1.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 5.0, 8.0], [4.0, 4.0, 4.0], [3.0, 3.0, 8.0]], [[2.0, 5.0, 4.0], [5.0, 7.0, 8.0], [4.0, 2.0, 2.0]], [[6.0, 8.0, 8.0], [4.0, 4.0, 7.0], [7.0, 3.0, 3.0]]], [[[4.0, 6.0, 6.0], [7.0, 3.0, 1.0], [6.0, 4.0, 5.0]], [[2.0, 4.0, 6.0], [3.0, 8.0, 8.0], [4.0, 2.0, 2.0]], [[3.0, 4.0, 4.0], [7.0, 3.0, 7.0], [2.0, 5.0, 4.0]]], [[[5.0, 3.0, 4.0], [7.0, 3.0, 6.0], [2.0, 8.0, 6.0]], [[4.0, 7.0, 5.0], [8.0, 2.0, 8.0], [3.0, 4.0, 2.0]], [[3.0, 8.0, 7.0], [2.0, 7.0, 2.0], [6.0, 6.0, 5.0]]], [[[4.0, 1.0, 1.0], [2.0, 6.0, 8.0], [4.0, 6.0, 8.0]], [[7.0, 4.0, 8.0], [6.0, 7.0, 6.0], [8.0, 3.0, 6.0]], [[3.0, 1.0, 5.0], [3.0, 4.0, 3.0], [7.0, 1.0, 8.0]]]]))
11772        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11773        val=msk_val*numarray.array([[[[3.0, 7.0, 1.0], [8.0, 8.0, 8.0], [5.0, 6.0, 7.0]], [[1.0, 2.0, 5.0], [5.0, 4.0, 6.0], [2.0, 6.0, 6.0]], [[6.0, 1.0, 1.0], [1.0, 7.0, 1.0], [3.0, 2.0, 4.0]]], [[[4.0, 3.0, 6.0], [3.0, 7.0, 3.0], [2.0, 8.0, 7.0]], [[7.0, 8.0, 4.0], [1.0, 3.0, 2.0], [3.0, 1.0, 4.0]], [[7.0, 5.0, 2.0], [3.0, 6.0, 4.0], [3.0, 4.0, 5.0]]], [[[3.0, 7.0, 6.0], [3.0, 3.0, 5.0], [5.0, 5.0, 4.0]], [[8.0, 3.0, 2.0], [8.0, 4.0, 8.0], [3.0, 6.0, 5.0]], [[5.0, 7.0, 8.0], [1.0, 5.0, 8.0], [2.0, 7.0, 6.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 4.0, 6.0], [3.0, 7.0, 6.0], [8.0, 6.0, 3.0]], [[2.0, 4.0, 2.0], [1.0, 2.0, 1.0], [5.0, 6.0, 2.0]], [[3.0, 1.0, 8.0], [5.0, 2.0, 7.0], [7.0, 3.0, 2.0]]], [[[7.0, 7.0, 5.0], [8.0, 3.0, 6.0], [8.0, 2.0, 6.0]], [[1.0, 4.0, 7.0], [4.0, 7.0, 1.0], [2.0, 8.0, 3.0]], [[1.0, 1.0, 7.0], [7.0, 8.0, 7.0], [7.0, 8.0, 4.0]]], [[[5.0, 5.0, 2.0], [1.0, 7.0, 4.0], [2.0, 1.0, 4.0]], [[5.0, 5.0, 8.0], [8.0, 3.0, 2.0], [5.0, 7.0, 6.0]], [[4.0, 2.0, 6.0], [1.0, 1.0, 4.0], [8.0, 1.0, 2.0]]]])        val=msk_val*numarray.array([[[[3.0, 7.0, 1.0], [8.0, 8.0, 8.0], [5.0, 6.0, 7.0]], [[1.0, 2.0, 5.0], [5.0, 4.0, 6.0], [2.0, 6.0, 6.0]], [[6.0, 1.0, 1.0], [1.0, 7.0, 1.0], [3.0, 2.0, 4.0]]], [[[4.0, 3.0, 6.0], [3.0, 7.0, 3.0], [2.0, 8.0, 7.0]], [[7.0, 8.0, 4.0], [1.0, 3.0, 2.0], [3.0, 1.0, 4.0]], [[7.0, 5.0, 2.0], [3.0, 6.0, 4.0], [3.0, 4.0, 5.0]]], [[[3.0, 7.0, 6.0], [3.0, 3.0, 5.0], [5.0, 5.0, 4.0]], [[8.0, 3.0, 2.0], [8.0, 4.0, 8.0], [3.0, 6.0, 5.0]], [[5.0, 7.0, 8.0], [1.0, 5.0, 8.0], [2.0, 7.0, 6.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 4.0, 6.0], [3.0, 7.0, 6.0], [8.0, 6.0, 3.0]], [[2.0, 4.0, 2.0], [1.0, 2.0, 1.0], [5.0, 6.0, 2.0]], [[3.0, 1.0, 8.0], [5.0, 2.0, 7.0], [7.0, 3.0, 2.0]]], [[[7.0, 7.0, 5.0], [8.0, 3.0, 6.0], [8.0, 2.0, 6.0]], [[1.0, 4.0, 7.0], [4.0, 7.0, 1.0], [2.0, 8.0, 3.0]], [[1.0, 1.0, 7.0], [7.0, 8.0, 7.0], [7.0, 8.0, 4.0]]], [[[5.0, 5.0, 2.0], [1.0, 7.0, 4.0], [2.0, 1.0, 4.0]], [[5.0, 5.0, 8.0], [8.0, 3.0, 2.0], [5.0, 7.0, 6.0]], [[4.0, 2.0, 6.0], [1.0, 1.0, 4.0], [8.0, 1.0, 2.0]]]])
11774        arg[:3,:,:,:]=val        arg[:3,:,:,:]=val
11775        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11807  class Test_util_slicing_with_tagged_data Line 11807  class Test_util_slicing_with_tagged_data
11807     def test_setslice_taggedData_rank4_expandedData_ULPN(self):     def test_setslice_taggedData_rank4_expandedData_ULPN(self):
11808        arg=Data(numarray.array([[[[3.0, 3.0, 7.0], [2.0, 3.0, 4.0], [6.0, 8.0, 2.0]], [[4.0, 7.0, 3.0], [7.0, 8.0, 4.0], [4.0, 5.0, 3.0]], [[1.0, 6.0, 2.0], [6.0, 2.0, 6.0], [5.0, 4.0, 3.0]]], [[[2.0, 2.0, 1.0], [8.0, 7.0, 7.0], [5.0, 8.0, 7.0]], [[1.0, 4.0, 2.0], [5.0, 4.0, 4.0], [5.0, 7.0, 7.0]], [[2.0, 2.0, 4.0], [8.0, 4.0, 5.0], [4.0, 7.0, 3.0]]], [[[1.0, 2.0, 3.0], [4.0, 7.0, 3.0], [1.0, 7.0, 4.0]], [[1.0, 1.0, 6.0], [3.0, 7.0, 5.0], [4.0, 2.0, 1.0]], [[1.0, 3.0, 6.0], [8.0, 5.0, 1.0], [5.0, 8.0, 8.0]]], [[[8.0, 1.0, 8.0], [3.0, 7.0, 1.0], [1.0, 7.0, 2.0]], [[3.0, 5.0, 7.0], [5.0, 5.0, 4.0], [1.0, 2.0, 1.0]], [[3.0, 5.0, 8.0], [6.0, 4.0, 2.0], [8.0, 2.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 3.0, 7.0], [2.0, 3.0, 4.0], [6.0, 8.0, 2.0]], [[4.0, 7.0, 3.0], [7.0, 8.0, 4.0], [4.0, 5.0, 3.0]], [[1.0, 6.0, 2.0], [6.0, 2.0, 6.0], [5.0, 4.0, 3.0]]], [[[2.0, 2.0, 1.0], [8.0, 7.0, 7.0], [5.0, 8.0, 7.0]], [[1.0, 4.0, 2.0], [5.0, 4.0, 4.0], [5.0, 7.0, 7.0]], [[2.0, 2.0, 4.0], [8.0, 4.0, 5.0], [4.0, 7.0, 3.0]]], [[[1.0, 2.0, 3.0], [4.0, 7.0, 3.0], [1.0, 7.0, 4.0]], [[1.0, 1.0, 6.0], [3.0, 7.0, 5.0], [4.0, 2.0, 1.0]], [[1.0, 3.0, 6.0], [8.0, 5.0, 1.0], [5.0, 8.0, 8.0]]], [[[8.0, 1.0, 8.0], [3.0, 7.0, 1.0], [1.0, 7.0, 2.0]], [[3.0, 5.0, 7.0], [5.0, 5.0, 4.0], [1.0, 2.0, 1.0]], [[3.0, 5.0, 8.0], [6.0, 4.0, 2.0], [8.0, 2.0, 3.0]]]]),self.functionspace)
11809        arg.setTaggedValue(1,numarray.array([[[[3.0, 6.0, 6.0], [6.0, 5.0, 6.0], [3.0, 2.0, 4.0]], [[7.0, 3.0, 8.0], [1.0, 5.0, 7.0], [8.0, 7.0, 7.0]], [[5.0, 8.0, 8.0], [1.0, 1.0, 4.0], [3.0, 8.0, 5.0]]], [[[6.0, 5.0, 5.0], [8.0, 8.0, 1.0], [2.0, 7.0, 5.0]], [[8.0, 4.0, 2.0], [1.0, 5.0, 6.0], [6.0, 7.0, 4.0]], [[6.0, 5.0, 1.0], [1.0, 6.0, 6.0], [8.0, 1.0, 4.0]]], [[[4.0, 5.0, 4.0], [1.0, 4.0, 6.0], [1.0, 3.0, 8.0]], [[8.0, 7.0, 1.0], [6.0, 2.0, 2.0], [6.0, 7.0, 1.0]], [[7.0, 7.0, 6.0], [4.0, 6.0, 6.0], [1.0, 5.0, 3.0]]], [[[6.0, 6.0, 3.0], [5.0, 1.0, 2.0], [4.0, 4.0, 6.0]], [[7.0, 3.0, 2.0], [4.0, 2.0, 3.0], [1.0, 7.0, 5.0]], [[4.0, 4.0, 2.0], [4.0, 2.0, 1.0], [6.0, 3.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 6.0, 6.0], [6.0, 5.0, 6.0], [3.0, 2.0, 4.0]], [[7.0, 3.0, 8.0], [1.0, 5.0, 7.0], [8.0, 7.0, 7.0]], [[5.0, 8.0, 8.0], [1.0, 1.0, 4.0], [3.0, 8.0, 5.0]]], [[[6.0, 5.0, 5.0], [8.0, 8.0, 1.0], [2.0, 7.0, 5.0]], [[8.0, 4.0, 2.0], [1.0, 5.0, 6.0], [6.0, 7.0, 4.0]], [[6.0, 5.0, 1.0], [1.0, 6.0, 6.0], [8.0, 1.0, 4.0]]], [[[4.0, 5.0, 4.0], [1.0, 4.0, 6.0], [1.0, 3.0, 8.0]], [[8.0, 7.0, 1.0], [6.0, 2.0, 2.0], [6.0, 7.0, 1.0]], [[7.0, 7.0, 6.0], [4.0, 6.0, 6.0], [1.0, 5.0, 3.0]]], [[[6.0, 6.0, 3.0], [5.0, 1.0, 2.0], [4.0, 4.0, 6.0]], [[7.0, 3.0, 2.0], [4.0, 2.0, 3.0], [1.0, 7.0, 5.0]], [[4.0, 4.0, 2.0], [4.0, 2.0, 1.0], [6.0, 3.0, 4.0]]]]))
11810        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11811        val=msk_val*numarray.array([[[1.0, 8.0, 2.0]], [[6.0, 2.0, 1.0]], [[5.0, 5.0, 3.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 3.0]], [[3.0, 7.0, 7.0]], [[3.0, 5.0, 6.0]]])        val=msk_val*numarray.array([[[1.0, 8.0, 2.0]], [[6.0, 2.0, 1.0]], [[5.0, 5.0, 3.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 3.0]], [[3.0, 7.0, 7.0]], [[3.0, 5.0, 6.0]]])
11812        arg[:3,2:,1]=val        arg[:3,2:,1]=val
11813        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11845  class Test_util_slicing_with_tagged_data Line 11845  class Test_util_slicing_with_tagged_data
11845     def test_setslice_taggedData_rank4_expandedData_RPRU(self):     def test_setslice_taggedData_rank4_expandedData_RPRU(self):
11846        arg=Data(numarray.array([[[[8.0, 5.0, 4.0], [5.0, 4.0, 2.0], [8.0, 4.0, 4.0]], [[7.0, 1.0, 7.0], [1.0, 8.0, 1.0], [3.0, 8.0, 6.0]], [[4.0, 1.0, 7.0], [4.0, 4.0, 8.0], [2.0, 2.0, 6.0]]], [[[7.0, 1.0, 7.0], [2.0, 8.0, 5.0], [4.0, 2.0, 5.0]], [[2.0, 5.0, 4.0], [3.0, 4.0, 5.0], [1.0, 1.0, 2.0]], [[3.0, 3.0, 6.0], [5.0, 8.0, 6.0], [6.0, 6.0, 8.0]]], [[[1.0, 2.0, 5.0], [8.0, 1.0, 8.0], [3.0, 3.0, 8.0]], [[4.0, 4.0, 2.0], [6.0, 6.0, 8.0], [7.0, 8.0, 6.0]], [[1.0, 2.0, 6.0], [4.0, 4.0, 3.0], [5.0, 1.0, 2.0]]], [[[5.0, 2.0, 5.0], [1.0, 7.0, 6.0], [6.0, 3.0, 8.0]], [[2.0, 8.0, 1.0], [3.0, 6.0, 2.0], [2.0, 1.0, 1.0]], [[6.0, 7.0, 3.0], [7.0, 8.0, 8.0], [1.0, 6.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 5.0, 4.0], [5.0, 4.0, 2.0], [8.0, 4.0, 4.0]], [[7.0, 1.0, 7.0], [1.0, 8.0, 1.0], [3.0, 8.0, 6.0]], [[4.0, 1.0, 7.0], [4.0, 4.0, 8.0], [2.0, 2.0, 6.0]]], [[[7.0, 1.0, 7.0], [2.0, 8.0, 5.0], [4.0, 2.0, 5.0]], [[2.0, 5.0, 4.0], [3.0, 4.0, 5.0], [1.0, 1.0, 2.0]], [[3.0, 3.0, 6.0], [5.0, 8.0, 6.0], [6.0, 6.0, 8.0]]], [[[1.0, 2.0, 5.0], [8.0, 1.0, 8.0], [3.0, 3.0, 8.0]], [[4.0, 4.0, 2.0], [6.0, 6.0, 8.0], [7.0, 8.0, 6.0]], [[1.0, 2.0, 6.0], [4.0, 4.0, 3.0], [5.0, 1.0, 2.0]]], [[[5.0, 2.0, 5.0], [1.0, 7.0, 6.0], [6.0, 3.0, 8.0]], [[2.0, 8.0, 1.0], [3.0, 6.0, 2.0], [2.0, 1.0, 1.0]], [[6.0, 7.0, 3.0], [7.0, 8.0, 8.0], [1.0, 6.0, 8.0]]]]),self.functionspace)
11847        arg.setTaggedValue(1,numarray.array([[[[3.0, 5.0, 7.0], [3.0, 6.0, 8.0], [8.0, 2.0, 6.0]], [[8.0, 5.0, 2.0], [7.0, 5.0, 5.0], [5.0, 6.0, 6.0]], [[7.0, 5.0, 2.0], [6.0, 8.0, 8.0], [1.0, 2.0, 7.0]]], [[[7.0, 3.0, 6.0], [5.0, 8.0, 2.0], [4.0, 4.0, 2.0]], [[8.0, 6.0, 8.0], [8.0, 7.0, 8.0], [6.0, 4.0, 1.0]], [[5.0, 5.0, 6.0], [6.0, 3.0, 7.0], [5.0, 2.0, 5.0]]], [[[2.0, 8.0, 6.0], [6.0, 7.0, 8.0], [6.0, 5.0, 2.0]], [[1.0, 2.0, 4.0], [2.0, 3.0, 4.0], [7.0, 1.0, 6.0]], [[1.0, 7.0, 7.0], [7.0, 8.0, 5.0], [3.0, 1.0, 2.0]]], [[[8.0, 4.0, 4.0], [3.0, 7.0, 7.0], [3.0, 8.0, 2.0]], [[4.0, 3.0, 3.0], [7.0, 3.0, 2.0], [3.0, 7.0, 7.0]], [[7.0, 7.0, 3.0], [3.0, 4.0, 7.0], [7.0, 8.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 5.0, 7.0], [3.0, 6.0, 8.0], [8.0, 2.0, 6.0]], [[8.0, 5.0, 2.0], [7.0, 5.0, 5.0], [5.0, 6.0, 6.0]], [[7.0, 5.0, 2.0], [6.0, 8.0, 8.0], [1.0, 2.0, 7.0]]], [[[7.0, 3.0, 6.0], [5.0, 8.0, 2.0], [4.0, 4.0, 2.0]], [[8.0, 6.0, 8.0], [8.0, 7.0, 8.0], [6.0, 4.0, 1.0]], [[5.0, 5.0, 6.0], [6.0, 3.0, 7.0], [5.0, 2.0, 5.0]]], [[[2.0, 8.0, 6.0], [6.0, 7.0, 8.0], [6.0, 5.0, 2.0]], [[1.0, 2.0, 4.0], [2.0, 3.0, 4.0], [7.0, 1.0, 6.0]], [[1.0, 7.0, 7.0], [7.0, 8.0, 5.0], [3.0, 1.0, 2.0]]], [[[8.0, 4.0, 4.0], [3.0, 7.0, 7.0], [3.0, 8.0, 2.0]], [[4.0, 3.0, 3.0], [7.0, 3.0, 2.0], [3.0, 7.0, 7.0]], [[7.0, 7.0, 3.0], [3.0, 4.0, 7.0], [7.0, 8.0, 8.0]]]]))
11848        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11849        val=msk_val*numarray.array([[[4.0, 3.0]], [[5.0, 8.0]]])+(1.-msk_val)*numarray.array([[[5.0, 1.0]], [[5.0, 1.0]]])        val=msk_val*numarray.array([[[4.0, 3.0]], [[5.0, 8.0]]])+(1.-msk_val)*numarray.array([[[5.0, 1.0]], [[5.0, 1.0]]])
11850        arg[1:3,1,1:2,:2]=val        arg[1:3,1,1:2,:2]=val
11851        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11883  class Test_util_slicing_with_tagged_data Line 11883  class Test_util_slicing_with_tagged_data
11883     def test_setslice_taggedData_rank4_expandedData_RPPN(self):     def test_setslice_taggedData_rank4_expandedData_RPPN(self):
11884        arg=Data(numarray.array([[[[6.0, 1.0, 5.0], [1.0, 7.0, 8.0], [7.0, 5.0, 4.0]], [[3.0, 4.0, 5.0], [6.0, 5.0, 2.0], [5.0, 8.0, 6.0]], [[1.0, 8.0, 5.0], [8.0, 3.0, 4.0], [4.0, 1.0, 4.0]]], [[[1.0, 7.0, 1.0], [6.0, 8.0, 2.0], [2.0, 7.0, 5.0]], [[6.0, 4.0, 1.0], [3.0, 5.0, 7.0], [1.0, 7.0, 8.0]], [[1.0, 3.0, 2.0], [6.0, 8.0, 2.0], [4.0, 4.0, 4.0]]], [[[1.0, 3.0, 5.0], [1.0, 6.0, 6.0], [3.0, 1.0, 2.0]], [[7.0, 8.0, 3.0], [4.0, 4.0, 5.0], [2.0, 7.0, 2.0]], [[6.0, 6.0, 7.0], [5.0, 1.0, 5.0], [3.0, 3.0, 7.0]]], [[[4.0, 8.0, 7.0], [3.0, 1.0, 3.0], [3.0, 7.0, 6.0]], [[5.0, 1.0, 1.0], [7.0, 1.0, 7.0], [7.0, 2.0, 2.0]], [[1.0, 2.0, 5.0], [6.0, 2.0, 2.0], [1.0, 1.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[6.0, 1.0, 5.0], [1.0, 7.0, 8.0], [7.0, 5.0, 4.0]], [[3.0, 4.0, 5.0], [6.0, 5.0, 2.0], [5.0, 8.0, 6.0]], [[1.0, 8.0, 5.0], [8.0, 3.0, 4.0], [4.0, 1.0, 4.0]]], [[[1.0, 7.0, 1.0], [6.0, 8.0, 2.0], [2.0, 7.0, 5.0]], [[6.0, 4.0, 1.0], [3.0, 5.0, 7.0], [1.0, 7.0, 8.0]], [[1.0, 3.0, 2.0], [6.0, 8.0, 2.0], [4.0, 4.0, 4.0]]], [[[1.0, 3.0, 5.0], [1.0, 6.0, 6.0], [3.0, 1.0, 2.0]], [[7.0, 8.0, 3.0], [4.0, 4.0, 5.0], [2.0, 7.0, 2.0]], [[6.0, 6.0, 7.0], [5.0, 1.0, 5.0], [3.0, 3.0, 7.0]]], [[[4.0, 8.0, 7.0], [3.0, 1.0, 3.0], [3.0, 7.0, 6.0]], [[5.0, 1.0, 1.0], [7.0, 1.0, 7.0], [7.0, 2.0, 2.0]], [[1.0, 2.0, 5.0], [6.0, 2.0, 2.0], [1.0, 1.0, 8.0]]]]),self.functionspace)
11885        arg.setTaggedValue(1,numarray.array([[[[3.0, 5.0, 7.0], [1.0, 6.0, 6.0], [7.0, 8.0, 7.0]], [[7.0, 8.0, 3.0], [3.0, 8.0, 2.0], [5.0, 7.0, 5.0]], [[4.0, 7.0, 8.0], [8.0, 1.0, 3.0], [4.0, 7.0, 1.0]]], [[[4.0, 7.0, 6.0], [8.0, 1.0, 7.0], [7.0, 8.0, 5.0]], [[5.0, 5.0, 5.0], [1.0, 7.0, 2.0], [4.0, 7.0, 2.0]], [[5.0, 5.0, 3.0], [2.0, 7.0, 7.0], [8.0, 2.0, 3.0]]], [[[4.0, 1.0, 6.0], [3.0, 6.0, 7.0], [6.0, 2.0, 2.0]], [[5.0, 2.0, 1.0], [8.0, 7.0, 8.0], [3.0, 5.0, 6.0]], [[1.0, 6.0, 6.0], [2.0, 3.0, 3.0], [5.0, 5.0, 5.0]]], [[[1.0, 8.0, 7.0], [8.0, 4.0, 6.0], [4.0, 4.0, 6.0]], [[6.0, 1.0, 2.0], [5.0, 8.0, 6.0], [6.0, 3.0, 1.0]], [[1.0, 2.0, 2.0], [3.0, 8.0, 5.0], [2.0, 2.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 5.0, 7.0], [1.0, 6.0, 6.0], [7.0, 8.0, 7.0]], [[7.0, 8.0, 3.0], [3.0, 8.0, 2.0], [5.0, 7.0, 5.0]], [[4.0, 7.0, 8.0], [8.0, 1.0, 3.0], [4.0, 7.0, 1.0]]], [[[4.0, 7.0, 6.0], [8.0, 1.0, 7.0], [7.0, 8.0, 5.0]], [[5.0, 5.0, 5.0], [1.0, 7.0, 2.0], [4.0, 7.0, 2.0]], [[5.0, 5.0, 3.0], [2.0, 7.0, 7.0], [8.0, 2.0, 3.0]]], [[[4.0, 1.0, 6.0], [3.0, 6.0, 7.0], [6.0, 2.0, 2.0]], [[5.0, 2.0, 1.0], [8.0, 7.0, 8.0], [3.0, 5.0, 6.0]], [[1.0, 6.0, 6.0], [2.0, 3.0, 3.0], [5.0, 5.0, 5.0]]], [[[1.0, 8.0, 7.0], [8.0, 4.0, 6.0], [4.0, 4.0, 6.0]], [[6.0, 1.0, 2.0], [5.0, 8.0, 6.0], [6.0, 3.0, 1.0]], [[1.0, 2.0, 2.0], [3.0, 8.0, 5.0], [2.0, 2.0, 2.0]]]]))
11886        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11887        val=msk_val*numarray.array([[1.0, 7.0, 3.0], [8.0, 8.0, 6.0]])+(1.-msk_val)*numarray.array([[6.0, 2.0, 6.0], [6.0, 8.0, 5.0]])        val=msk_val*numarray.array([[1.0, 7.0, 3.0], [8.0, 8.0, 6.0]])+(1.-msk_val)*numarray.array([[6.0, 2.0, 6.0], [6.0, 8.0, 5.0]])
11888        arg[1:3,1,1]=val        arg[1:3,1,1]=val
11889        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11921  class Test_util_slicing_with_tagged_data Line 11921  class Test_util_slicing_with_tagged_data
11921     def test_setslice_taggedData_rank4_expandedData_LCUN(self):     def test_setslice_taggedData_rank4_expandedData_LCUN(self):
11922        arg=Data(numarray.array([[[[6.0, 6.0, 8.0], [3.0, 2.0, 2.0], [5.0, 1.0, 2.0]], [[6.0, 7.0, 1.0], [8.0, 1.0, 7.0], [1.0, 1.0, 8.0]], [[3.0, 3.0, 6.0], [3.0, 6.0, 3.0], [8.0, 2.0, 6.0]]], [[[7.0, 7.0, 1.0], [7.0, 8.0, 4.0], [1.0, 2.0, 5.0]], [[5.0, 5.0, 1.0], [7.0, 4.0, 7.0], [4.0, 2.0, 3.0]], [[4.0, 2.0, 3.0], [3.0, 8.0, 1.0], [8.0, 6.0, 8.0]]], [[[3.0, 8.0, 7.0], [2.0, 8.0, 3.0], [7.0, 6.0, 4.0]], [[3.0, 1.0, 3.0], [7.0, 6.0, 8.0], [6.0, 8.0, 7.0]], [[2.0, 7.0, 1.0], [3.0, 3.0, 4.0], [3.0, 4.0, 7.0]]], [[[6.0, 1.0, 6.0], [3.0, 7.0, 5.0], [5.0, 3.0, 7.0]], [[4.0, 1.0, 5.0], [1.0, 2.0, 2.0], [1.0, 1.0, 5.0]], [[7.0, 5.0, 4.0], [4.0, 3.0, 6.0], [4.0, 4.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[6.0, 6.0, 8.0], [3.0, 2.0, 2.0], [5.0, 1.0, 2.0]], [[6.0, 7.0, 1.0], [8.0, 1.0, 7.0], [1.0, 1.0, 8.0]], [[3.0, 3.0, 6.0], [3.0, 6.0, 3.0], [8.0, 2.0, 6.0]]], [[[7.0, 7.0, 1.0], [7.0, 8.0, 4.0], [1.0, 2.0, 5.0]], [[5.0, 5.0, 1.0], [7.0, 4.0, 7.0], [4.0, 2.0, 3.0]], [[4.0, 2.0, 3.0], [3.0, 8.0, 1.0], [8.0, 6.0, 8.0]]], [[[3.0, 8.0, 7.0], [2.0, 8.0, 3.0], [7.0, 6.0, 4.0]], [[3.0, 1.0, 3.0], [7.0, 6.0, 8.0], [6.0, 8.0, 7.0]], [[2.0, 7.0, 1.0], [3.0, 3.0, 4.0], [3.0, 4.0, 7.0]]], [[[6.0, 1.0, 6.0], [3.0, 7.0, 5.0], [5.0, 3.0, 7.0]], [[4.0, 1.0, 5.0], [1.0, 2.0, 2.0], [1.0, 1.0, 5.0]], [[7.0, 5.0, 4.0], [4.0, 3.0, 6.0], [4.0, 4.0, 4.0]]]]),self.functionspace)
11923        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 4.0], [3.0, 6.0, 5.0], [2.0, 3.0, 6.0]], [[5.0, 7.0, 2.0], [2.0, 5.0, 5.0], [4.0, 3.0, 6.0]], [[5.0, 2.0, 8.0], [2.0, 5.0, 5.0], [3.0, 7.0, 1.0]]], [[[3.0, 5.0, 4.0], [1.0, 5.0, 3.0], [2.0, 4.0, 6.0]], [[5.0, 2.0, 8.0], [3.0, 4.0, 8.0], [4.0, 2.0, 7.0]], [[2.0, 3.0, 3.0], [4.0, 1.0, 1.0], [3.0, 7.0, 5.0]]], [[[8.0, 5.0, 4.0], [2.0, 2.0, 6.0], [7.0, 3.0, 5.0]], [[8.0, 8.0, 3.0], [6.0, 6.0, 1.0], [6.0, 1.0, 1.0]], [[3.0, 8.0, 3.0], [8.0, 2.0, 4.0], [6.0, 8.0, 6.0]]], [[[7.0, 2.0, 7.0], [3.0, 4.0, 2.0], [4.0, 4.0, 6.0]], [[8.0, 2.0, 2.0], [1.0, 6.0, 6.0], [2.0, 6.0, 3.0]], [[2.0, 1.0, 5.0], [3.0, 3.0, 7.0], [8.0, 1.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 4.0], [3.0, 6.0, 5.0], [2.0, 3.0, 6.0]], [[5.0, 7.0, 2.0], [2.0, 5.0, 5.0], [4.0, 3.0, 6.0]], [[5.0, 2.0, 8.0], [2.0, 5.0, 5.0], [3.0, 7.0, 1.0]]], [[[3.0, 5.0, 4.0], [1.0, 5.0, 3.0], [2.0, 4.0, 6.0]], [[5.0, 2.0, 8.0], [3.0, 4.0, 8.0], [4.0, 2.0, 7.0]], [[2.0, 3.0, 3.0], [4.0, 1.0, 1.0], [3.0, 7.0, 5.0]]], [[[8.0, 5.0, 4.0], [2.0, 2.0, 6.0], [7.0, 3.0, 5.0]], [[8.0, 8.0, 3.0], [6.0, 6.0, 1.0], [6.0, 1.0, 1.0]], [[3.0, 8.0, 3.0], [8.0, 2.0, 4.0], [6.0, 8.0, 6.0]]], [[[7.0, 2.0, 7.0], [3.0, 4.0, 2.0], [4.0, 4.0, 6.0]], [[8.0, 2.0, 2.0], [1.0, 6.0, 6.0], [2.0, 6.0, 3.0]], [[2.0, 1.0, 5.0], [3.0, 3.0, 7.0], [8.0, 1.0, 2.0]]]]))
11924        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11925        val=msk_val*numarray.array([[[[7.0, 6.0, 1.0], [8.0, 6.0, 5.0]], [[2.0, 3.0, 4.0], [5.0, 4.0, 7.0]], [[7.0, 8.0, 1.0], [7.0, 1.0, 6.0]]], [[[2.0, 2.0, 3.0], [4.0, 5.0, 7.0]], [[5.0, 8.0, 2.0], [6.0, 2.0, 8.0]], [[8.0, 6.0, 4.0], [6.0, 6.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 3.0, 5.0], [5.0, 6.0, 4.0]], [[1.0, 7.0, 8.0], [6.0, 5.0, 6.0]], [[4.0, 6.0, 1.0], [7.0, 2.0, 6.0]]], [[[6.0, 8.0, 8.0], [3.0, 5.0, 5.0]], [[2.0, 8.0, 3.0], [2.0, 6.0, 6.0]], [[6.0, 6.0, 8.0], [1.0, 3.0, 4.0]]]])        val=msk_val*numarray.array([[[[7.0, 6.0, 1.0], [8.0, 6.0, 5.0]], [[2.0, 3.0, 4.0], [5.0, 4.0, 7.0]], [[7.0, 8.0, 1.0], [7.0, 1.0, 6.0]]], [[[2.0, 2.0, 3.0], [4.0, 5.0, 7.0]], [[5.0, 8.0, 2.0], [6.0, 2.0, 8.0]], [[8.0, 6.0, 4.0], [6.0, 6.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[1.0, 3.0, 5.0], [5.0, 6.0, 4.0]], [[1.0, 7.0, 8.0], [6.0, 5.0, 6.0]], [[4.0, 6.0, 1.0], [7.0, 2.0, 6.0]]], [[[6.0, 8.0, 8.0], [3.0, 5.0, 5.0]], [[2.0, 8.0, 3.0], [2.0, 6.0, 6.0]], [[6.0, 6.0, 8.0], [1.0, 3.0, 4.0]]]])
11926        arg[2:,:,:2]=val        arg[2:,:,:2]=val
11927        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11959  class Test_util_slicing_with_tagged_data Line 11959  class Test_util_slicing_with_tagged_data
11959     def test_setslice_taggedData_rank4_expandedData_LCCU(self):     def test_setslice_taggedData_rank4_expandedData_LCCU(self):
11960        arg=Data(numarray.array([[[[5.0, 8.0, 1.0], [1.0, 7.0, 2.0], [4.0, 4.0, 7.0]], [[7.0, 4.0, 6.0], [3.0, 4.0, 4.0], [7.0, 2.0, 8.0]], [[5.0, 4.0, 6.0], [5.0, 6.0, 8.0], [4.0, 5.0, 7.0]]], [[[8.0, 1.0, 7.0], [6.0, 8.0, 4.0], [5.0, 3.0, 3.0]], [[1.0, 2.0, 4.0], [2.0, 7.0, 3.0], [7.0, 6.0, 8.0]], [[4.0, 7.0, 4.0], [2.0, 3.0, 2.0], [3.0, 2.0, 8.0]]], [[[8.0, 7.0, 7.0], [5.0, 6.0, 3.0], [3.0, 7.0, 7.0]], [[6.0, 5.0, 7.0], [1.0, 1.0, 3.0], [3.0, 7.0, 3.0]], [[1.0, 1.0, 4.0], [1.0, 3.0, 7.0], [1.0, 7.0, 7.0]]], [[[6.0, 7.0, 4.0], [8.0, 8.0, 6.0], [8.0, 4.0, 7.0]], [[3.0, 1.0, 5.0], [4.0, 7.0, 3.0], [7.0, 8.0, 8.0]], [[6.0, 2.0, 4.0], [6.0, 1.0, 3.0], [7.0, 2.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 8.0, 1.0], [1.0, 7.0, 2.0], [4.0, 4.0, 7.0]], [[7.0, 4.0, 6.0], [3.0, 4.0, 4.0], [7.0, 2.0, 8.0]], [[5.0, 4.0, 6.0], [5.0, 6.0, 8.0], [4.0, 5.0, 7.0]]], [[[8.0, 1.0, 7.0], [6.0, 8.0, 4.0], [5.0, 3.0, 3.0]], [[1.0, 2.0, 4.0], [2.0, 7.0, 3.0], [7.0, 6.0, 8.0]], [[4.0, 7.0, 4.0], [2.0, 3.0, 2.0], [3.0, 2.0, 8.0]]], [[[8.0, 7.0, 7.0], [5.0, 6.0, 3.0], [3.0, 7.0, 7.0]], [[6.0, 5.0, 7.0], [1.0, 1.0, 3.0], [3.0, 7.0, 3.0]], [[1.0, 1.0, 4.0], [1.0, 3.0, 7.0], [1.0, 7.0, 7.0]]], [[[6.0, 7.0, 4.0], [8.0, 8.0, 6.0], [8.0, 4.0, 7.0]], [[3.0, 1.0, 5.0], [4.0, 7.0, 3.0], [7.0, 8.0, 8.0]], [[6.0, 2.0, 4.0], [6.0, 1.0, 3.0], [7.0, 2.0, 2.0]]]]),self.functionspace)
11961        arg.setTaggedValue(1,numarray.array([[[[5.0, 6.0, 7.0], [7.0, 7.0, 3.0], [5.0, 7.0, 5.0]], [[6.0, 4.0, 1.0], [2.0, 2.0, 5.0], [4.0, 5.0, 1.0]], [[7.0, 8.0, 8.0], [7.0, 5.0, 5.0], [6.0, 7.0, 8.0]]], [[[3.0, 2.0, 5.0], [6.0, 5.0, 5.0], [6.0, 7.0, 7.0]], [[8.0, 3.0, 3.0], [1.0, 8.0, 1.0], [6.0, 2.0, 8.0]], [[1.0, 6.0, 7.0], [4.0, 8.0, 1.0], [3.0, 1.0, 1.0]]], [[[1.0, 4.0, 6.0], [6.0, 8.0, 6.0], [7.0, 2.0, 5.0]], [[2.0, 8.0, 1.0], [7.0, 5.0, 2.0], [2.0, 6.0, 7.0]], [[6.0, 1.0, 2.0], [4.0, 7.0, 2.0], [5.0, 8.0, 6.0]]], [[[3.0, 5.0, 6.0], [3.0, 5.0, 5.0], [6.0, 3.0, 5.0]], [[2.0, 6.0, 6.0], [2.0, 5.0, 2.0], [6.0, 5.0, 7.0]], [[7.0, 4.0, 7.0], [3.0, 3.0, 7.0], [4.0, 2.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 6.0, 7.0], [7.0, 7.0, 3.0], [5.0, 7.0, 5.0]], [[6.0, 4.0, 1.0], [2.0, 2.0, 5.0], [4.0, 5.0, 1.0]], [[7.0, 8.0, 8.0], [7.0, 5.0, 5.0], [6.0, 7.0, 8.0]]], [[[3.0, 2.0, 5.0], [6.0, 5.0, 5.0], [6.0, 7.0, 7.0]], [[8.0, 3.0, 3.0], [1.0, 8.0, 1.0], [6.0, 2.0, 8.0]], [[1.0, 6.0, 7.0], [4.0, 8.0, 1.0], [3.0, 1.0, 1.0]]], [[[1.0, 4.0, 6.0], [6.0, 8.0, 6.0], [7.0, 2.0, 5.0]], [[2.0, 8.0, 1.0], [7.0, 5.0, 2.0], [2.0, 6.0, 7.0]], [[6.0, 1.0, 2.0], [4.0, 7.0, 2.0], [5.0, 8.0, 6.0]]], [[[3.0, 5.0, 6.0], [3.0, 5.0, 5.0], [6.0, 3.0, 5.0]], [[2.0, 6.0, 6.0], [2.0, 5.0, 2.0], [6.0, 5.0, 7.0]], [[7.0, 4.0, 7.0], [3.0, 3.0, 7.0], [4.0, 2.0, 4.0]]]]))
11962        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
11963        val=msk_val*numarray.array([[[[1.0, 4.0], [6.0, 1.0], [6.0, 4.0]], [[4.0, 5.0], [3.0, 7.0], [8.0, 8.0]], [[1.0, 5.0], [4.0, 8.0], [7.0, 3.0]]], [[[3.0, 2.0], [3.0, 4.0], [2.0, 1.0]], [[6.0, 8.0], [6.0, 5.0], [4.0, 2.0]], [[4.0, 5.0], [3.0, 4.0], [7.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 1.0], [7.0, 6.0], [7.0, 3.0]], [[4.0, 5.0], [5.0, 1.0], [2.0, 1.0]], [[8.0, 1.0], [2.0, 1.0], [5.0, 2.0]]], [[[5.0, 3.0], [2.0, 5.0], [3.0, 8.0]], [[1.0, 3.0], [3.0, 7.0], [6.0, 8.0]], [[8.0, 3.0], [8.0, 4.0], [6.0, 3.0]]]])        val=msk_val*numarray.array([[[[1.0, 4.0], [6.0, 1.0], [6.0, 4.0]], [[4.0, 5.0], [3.0, 7.0], [8.0, 8.0]], [[1.0, 5.0], [4.0, 8.0], [7.0, 3.0]]], [[[3.0, 2.0], [3.0, 4.0], [2.0, 1.0]], [[6.0, 8.0], [6.0, 5.0], [4.0, 2.0]], [[4.0, 5.0], [3.0, 4.0], [7.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 1.0], [7.0, 6.0], [7.0, 3.0]], [[4.0, 5.0], [5.0, 1.0], [2.0, 1.0]], [[8.0, 1.0], [2.0, 1.0], [5.0, 2.0]]], [[[5.0, 3.0], [2.0, 5.0], [3.0, 8.0]], [[1.0, 3.0], [3.0, 7.0], [6.0, 8.0]], [[8.0, 3.0], [8.0, 4.0], [6.0, 3.0]]]])
11964        arg[2:,:,:,:2]=val        arg[2:,:,:,:2]=val
11965        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 11997  class Test_util_slicing_with_tagged_data Line 11997  class Test_util_slicing_with_tagged_data
11997     def test_setslice_taggedData_rank4_expandedData_PPLN(self):     def test_setslice_taggedData_rank4_expandedData_PPLN(self):
11998        arg=Data(numarray.array([[[[5.0, 5.0, 7.0], [4.0, 6.0, 8.0], [4.0, 8.0, 2.0]], [[7.0, 3.0, 3.0], [5.0, 2.0, 4.0], [5.0, 4.0, 5.0]], [[3.0, 3.0, 3.0], [6.0, 7.0, 7.0], [6.0, 4.0, 8.0]]], [[[4.0, 6.0, 5.0], [2.0, 2.0, 6.0], [3.0, 4.0, 2.0]], [[4.0, 5.0, 4.0], [3.0, 8.0, 5.0], [4.0, 5.0, 3.0]], [[1.0, 5.0, 5.0], [4.0, 6.0, 8.0], [1.0, 4.0, 2.0]]], [[[7.0, 4.0, 4.0], [5.0, 4.0, 3.0], [8.0, 1.0, 2.0]], [[6.0, 3.0, 4.0], [7.0, 7.0, 2.0], [4.0, 5.0, 1.0]], [[1.0, 2.0, 1.0], [5.0, 3.0, 3.0], [8.0, 3.0, 1.0]]], [[[3.0, 3.0, 2.0], [8.0, 1.0, 6.0], [7.0, 7.0, 1.0]], [[1.0, 7.0, 8.0], [3.0, 3.0, 6.0], [1.0, 5.0, 5.0]], [[7.0, 5.0, 3.0], [1.0, 1.0, 7.0], [2.0, 3.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 5.0, 7.0], [4.0, 6.0, 8.0], [4.0, 8.0, 2.0]], [[7.0, 3.0, 3.0], [5.0, 2.0, 4.0], [5.0, 4.0, 5.0]], [[3.0, 3.0, 3.0], [6.0, 7.0, 7.0], [6.0, 4.0, 8.0]]], [[[4.0, 6.0, 5.0], [2.0, 2.0, 6.0], [3.0, 4.0, 2.0]], [[4.0, 5.0, 4.0], [3.0, 8.0, 5.0], [4.0, 5.0, 3.0]], [[1.0, 5.0, 5.0], [4.0, 6.0, 8.0], [1.0, 4.0, 2.0]]], [[[7.0, 4.0, 4.0], [5.0, 4.0, 3.0], [8.0, 1.0, 2.0]], [[6.0, 3.0, 4.0], [7.0, 7.0, 2.0], [4.0, 5.0, 1.0]], [[1.0, 2.0, 1.0], [5.0, 3.0, 3.0], [8.0, 3.0, 1.0]]], [[[3.0, 3.0, 2.0], [8.0, 1.0, 6.0], [7.0, 7.0, 1.0]], [[1.0, 7.0, 8.0], [3.0, 3.0, 6.0], [1.0, 5.0, 5.0]], [[7.0, 5.0, 3.0], [1.0, 1.0, 7.0], [2.0, 3.0, 3.0]]]]),self.functionspace)
11999        arg.setTaggedValue(1,numarray.array([[[[5.0, 5.0, 4.0], [2.0, 2.0, 8.0], [2.0, 4.0, 4.0]], [[1.0, 1.0, 5.0], [4.0, 7.0, 2.0], [5.0, 2.0, 3.0]], [[3.0, 5.0, 4.0], [3.0, 6.0, 7.0], [3.0, 5.0, 7.0]]], [[[1.0, 8.0, 7.0], [6.0, 4.0, 3.0], [3.0, 6.0, 6.0]], [[8.0, 3.0, 6.0], [3.0, 1.0, 8.0], [5.0, 2.0, 8.0]], [[3.0, 2.0, 7.0], [8.0, 5.0, 8.0], [2.0, 5.0, 5.0]]], [[[1.0, 3.0, 4.0], [5.0, 8.0, 2.0], [6.0, 6.0, 3.0]], [[2.0, 4.0, 6.0], [6.0, 7.0, 7.0], [1.0, 7.0, 2.0]], [[7.0, 6.0, 6.0], [2.0, 5.0, 2.0], [5.0, 3.0, 2.0]]], [[[5.0, 4.0, 8.0], [1.0, 8.0, 5.0], [6.0, 3.0, 5.0]], [[5.0, 1.0, 1.0], [6.0, 7.0, 3.0], [5.0, 5.0, 4.0]], [[7.0, 5.0, 3.0], [3.0, 1.0, 2.0], [8.0, 3.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 5.0, 4.0], [2.0, 2.0, 8.0], [2.0, 4.0, 4.0]], [[1.0, 1.0, 5.0], [4.0, 7.0, 2.0], [5.0, 2.0, 3.0]], [[3.0, 5.0, 4.0], [3.0, 6.0, 7.0], [3.0, 5.0, 7.0]]], [[[1.0, 8.0, 7.0], [6.0, 4.0, 3.0], [3.0, 6.0, 6.0]], [[8.0, 3.0, 6.0], [3.0, 1.0, 8.0], [5.0, 2.0, 8.0]], [[3.0, 2.0, 7.0], [8.0, 5.0, 8.0], [2.0, 5.0, 5.0]]], [[[1.0, 3.0, 4.0], [5.0, 8.0, 2.0], [6.0, 6.0, 3.0]], [[2.0, 4.0, 6.0], [6.0, 7.0, 7.0], [1.0, 7.0, 2.0]], [[7.0, 6.0, 6.0], [2.0, 5.0, 2.0], [5.0, 3.0, 2.0]]], [[[5.0, 4.0, 8.0], [1.0, 8.0, 5.0], [6.0, 3.0, 5.0]], [[5.0, 1.0, 1.0], [6.0, 7.0, 3.0], [5.0, 5.0, 4.0]], [[7.0, 5.0, 3.0], [3.0, 1.0, 2.0], [8.0, 3.0, 6.0]]]]))
12000        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12001        val=msk_val*numarray.array([[4.0, 5.0, 2.0]])+(1.-msk_val)*numarray.array([[3.0, 3.0, 6.0]])        val=msk_val*numarray.array([[4.0, 5.0, 2.0]])+(1.-msk_val)*numarray.array([[3.0, 3.0, 6.0]])
12002        arg[2,1,2:]=val        arg[2,1,2:]=val
12003        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12035  class Test_util_slicing_with_tagged_data Line 12035  class Test_util_slicing_with_tagged_data
12035     def test_setslice_taggedData_rank4_expandedData_LLRN(self):     def test_setslice_taggedData_rank4_expandedData_LLRN(self):
12036        arg=Data(numarray.array([[[[5.0, 1.0, 3.0], [5.0, 2.0, 3.0], [6.0, 5.0, 3.0]], [[1.0, 4.0, 3.0], [7.0, 6.0, 5.0], [6.0, 7.0, 8.0]], [[7.0, 7.0, 2.0], [3.0, 3.0, 1.0], [3.0, 6.0, 5.0]]], [[[7.0, 5.0, 5.0], [5.0, 5.0, 4.0], [7.0, 5.0, 1.0]], [[7.0, 5.0, 6.0], [1.0, 1.0, 8.0], [3.0, 4.0, 4.0]], [[4.0, 4.0, 7.0], [5.0, 8.0, 2.0], [2.0, 4.0, 7.0]]], [[[6.0, 4.0, 3.0], [7.0, 3.0, 5.0], [2.0, 3.0, 1.0]], [[7.0, 7.0, 8.0], [4.0, 5.0, 4.0], [5.0, 2.0, 5.0]], [[7.0, 6.0, 5.0], [2.0, 4.0, 8.0], [3.0, 6.0, 2.0]]], [[[1.0, 3.0, 8.0], [1.0, 4.0, 5.0], [5.0, 3.0, 8.0]], [[7.0, 2.0, 6.0], [1.0, 6.0, 6.0], [4.0, 2.0, 4.0]], [[2.0, 2.0, 6.0], [4.0, 2.0, 8.0], [2.0, 5.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 1.0, 3.0], [5.0, 2.0, 3.0], [6.0, 5.0, 3.0]], [[1.0, 4.0, 3.0], [7.0, 6.0, 5.0], [6.0, 7.0, 8.0]], [[7.0, 7.0, 2.0], [3.0, 3.0, 1.0], [3.0, 6.0, 5.0]]], [[[7.0, 5.0, 5.0], [5.0, 5.0, 4.0], [7.0, 5.0, 1.0]], [[7.0, 5.0, 6.0], [1.0, 1.0, 8.0], [3.0, 4.0, 4.0]], [[4.0, 4.0, 7.0], [5.0, 8.0, 2.0], [2.0, 4.0, 7.0]]], [[[6.0, 4.0, 3.0], [7.0, 3.0, 5.0], [2.0, 3.0, 1.0]], [[7.0, 7.0, 8.0], [4.0, 5.0, 4.0], [5.0, 2.0, 5.0]], [[7.0, 6.0, 5.0], [2.0, 4.0, 8.0], [3.0, 6.0, 2.0]]], [[[1.0, 3.0, 8.0], [1.0, 4.0, 5.0], [5.0, 3.0, 8.0]], [[7.0, 2.0, 6.0], [1.0, 6.0, 6.0], [4.0, 2.0, 4.0]], [[2.0, 2.0, 6.0], [4.0, 2.0, 8.0], [2.0, 5.0, 2.0]]]]),self.functionspace)
12037        arg.setTaggedValue(1,numarray.array([[[[2.0, 3.0, 8.0], [1.0, 8.0, 4.0], [6.0, 7.0, 1.0]], [[3.0, 2.0, 8.0], [8.0, 5.0, 8.0], [8.0, 3.0, 2.0]], [[7.0, 2.0, 6.0], [7.0, 5.0, 8.0], [1.0, 5.0, 2.0]]], [[[8.0, 3.0, 4.0], [3.0, 1.0, 7.0], [2.0, 5.0, 1.0]], [[4.0, 5.0, 8.0], [4.0, 3.0, 3.0], [8.0, 7.0, 8.0]], [[3.0, 3.0, 7.0], [6.0, 6.0, 5.0], [4.0, 7.0, 8.0]]], [[[5.0, 8.0, 5.0], [2.0, 4.0, 1.0], [7.0, 6.0, 6.0]], [[6.0, 8.0, 6.0], [5.0, 3.0, 8.0], [7.0, 3.0, 5.0]], [[3.0, 8.0, 5.0], [7.0, 6.0, 5.0], [1.0, 3.0, 8.0]]], [[[7.0, 1.0, 8.0], [2.0, 1.0, 3.0], [6.0, 5.0, 5.0]], [[4.0, 6.0, 2.0], [6.0, 1.0, 1.0], [5.0, 3.0, 2.0]], [[6.0, 2.0, 5.0], [1.0, 8.0, 4.0], [4.0, 8.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 3.0, 8.0], [1.0, 8.0, 4.0], [6.0, 7.0, 1.0]], [[3.0, 2.0, 8.0], [8.0, 5.0, 8.0], [8.0, 3.0, 2.0]], [[7.0, 2.0, 6.0], [7.0, 5.0, 8.0], [1.0, 5.0, 2.0]]], [[[8.0, 3.0, 4.0], [3.0, 1.0, 7.0], [2.0, 5.0, 1.0]], [[4.0, 5.0, 8.0], [4.0, 3.0, 3.0], [8.0, 7.0, 8.0]], [[3.0, 3.0, 7.0], [6.0, 6.0, 5.0], [4.0, 7.0, 8.0]]], [[[5.0, 8.0, 5.0], [2.0, 4.0, 1.0], [7.0, 6.0, 6.0]], [[6.0, 8.0, 6.0], [5.0, 3.0, 8.0], [7.0, 3.0, 5.0]], [[3.0, 8.0, 5.0], [7.0, 6.0, 5.0], [1.0, 3.0, 8.0]]], [[[7.0, 1.0, 8.0], [2.0, 1.0, 3.0], [6.0, 5.0, 5.0]], [[4.0, 6.0, 2.0], [6.0, 1.0, 1.0], [5.0, 3.0, 2.0]], [[6.0, 2.0, 5.0], [1.0, 8.0, 4.0], [4.0, 8.0, 3.0]]]]))
12038        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12039        val=msk_val*numarray.array([[[[4.0, 8.0, 2.0]]], [[[3.0, 5.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 7.0, 8.0]]], [[[4.0, 4.0, 8.0]]]])        val=msk_val*numarray.array([[[[4.0, 8.0, 2.0]]], [[[3.0, 5.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 7.0, 8.0]]], [[[4.0, 4.0, 8.0]]]])
12040        arg[2:,2:,1:2]=val        arg[2:,2:,1:2]=val
12041        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12073  class Test_util_slicing_with_tagged_data Line 12073  class Test_util_slicing_with_tagged_data
12073     def test_setslice_taggedData_rank4_expandedData_UCPN(self):     def test_setslice_taggedData_rank4_expandedData_UCPN(self):
12074        arg=Data(numarray.array([[[[3.0, 8.0, 5.0], [6.0, 3.0, 8.0], [3.0, 3.0, 8.0]], [[2.0, 3.0, 8.0], [6.0, 5.0, 3.0], [1.0, 1.0, 7.0]], [[5.0, 5.0, 3.0], [8.0, 7.0, 1.0], [4.0, 7.0, 1.0]]], [[[3.0, 6.0, 8.0], [7.0, 5.0, 4.0], [4.0, 7.0, 6.0]], [[8.0, 7.0, 2.0], [4.0, 5.0, 2.0], [8.0, 8.0, 6.0]], [[6.0, 7.0, 2.0], [6.0, 5.0, 6.0], [4.0, 4.0, 8.0]]], [[[5.0, 1.0, 5.0], [3.0, 3.0, 4.0], [8.0, 5.0, 5.0]], [[8.0, 3.0, 6.0], [7.0, 5.0, 4.0], [5.0, 8.0, 5.0]], [[3.0, 4.0, 1.0], [8.0, 1.0, 1.0], [1.0, 8.0, 7.0]]], [[[7.0, 5.0, 7.0], [6.0, 8.0, 1.0], [3.0, 5.0, 2.0]], [[8.0, 7.0, 2.0], [3.0, 6.0, 2.0], [2.0, 5.0, 8.0]], [[8.0, 7.0, 6.0], [7.0, 5.0, 3.0], [2.0, 5.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 8.0, 5.0], [6.0, 3.0, 8.0], [3.0, 3.0, 8.0]], [[2.0, 3.0, 8.0], [6.0, 5.0, 3.0], [1.0, 1.0, 7.0]], [[5.0, 5.0, 3.0], [8.0, 7.0, 1.0], [4.0, 7.0, 1.0]]], [[[3.0, 6.0, 8.0], [7.0, 5.0, 4.0], [4.0, 7.0, 6.0]], [[8.0, 7.0, 2.0], [4.0, 5.0, 2.0], [8.0, 8.0, 6.0]], [[6.0, 7.0, 2.0], [6.0, 5.0, 6.0], [4.0, 4.0, 8.0]]], [[[5.0, 1.0, 5.0], [3.0, 3.0, 4.0], [8.0, 5.0, 5.0]], [[8.0, 3.0, 6.0], [7.0, 5.0, 4.0], [5.0, 8.0, 5.0]], [[3.0, 4.0, 1.0], [8.0, 1.0, 1.0], [1.0, 8.0, 7.0]]], [[[7.0, 5.0, 7.0], [6.0, 8.0, 1.0], [3.0, 5.0, 2.0]], [[8.0, 7.0, 2.0], [3.0, 6.0, 2.0], [2.0, 5.0, 8.0]], [[8.0, 7.0, 6.0], [7.0, 5.0, 3.0], [2.0, 5.0, 2.0]]]]),self.functionspace)
12075        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 8.0], [5.0, 2.0, 1.0], [7.0, 4.0, 6.0]], [[5.0, 4.0, 8.0], [5.0, 2.0, 7.0], [3.0, 1.0, 1.0]], [[3.0, 6.0, 7.0], [3.0, 8.0, 7.0], [6.0, 8.0, 1.0]]], [[[2.0, 4.0, 1.0], [8.0, 1.0, 8.0], [6.0, 4.0, 3.0]], [[6.0, 2.0, 5.0], [7.0, 5.0, 3.0], [3.0, 8.0, 3.0]], [[7.0, 7.0, 1.0], [5.0, 2.0, 1.0], [8.0, 4.0, 2.0]]], [[[1.0, 5.0, 5.0], [6.0, 1.0, 6.0], [2.0, 7.0, 2.0]], [[3.0, 4.0, 7.0], [8.0, 6.0, 8.0], [3.0, 4.0, 6.0]], [[1.0, 2.0, 5.0], [6.0, 4.0, 3.0], [6.0, 6.0, 2.0]]], [[[5.0, 5.0, 3.0], [1.0, 5.0, 8.0], [1.0, 7.0, 5.0]], [[1.0, 5.0, 4.0], [8.0, 1.0, 3.0], [1.0, 3.0, 7.0]], [[1.0, 6.0, 8.0], [4.0, 3.0, 1.0], [7.0, 5.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[5.0, 2.0, 8.0], [5.0, 2.0, 1.0], [7.0, 4.0, 6.0]], [[5.0, 4.0, 8.0], [5.0, 2.0, 7.0], [3.0, 1.0, 1.0]], [[3.0, 6.0, 7.0], [3.0, 8.0, 7.0], [6.0, 8.0, 1.0]]], [[[2.0, 4.0, 1.0], [8.0, 1.0, 8.0], [6.0, 4.0, 3.0]], [[6.0, 2.0, 5.0], [7.0, 5.0, 3.0], [3.0, 8.0, 3.0]], [[7.0, 7.0, 1.0], [5.0, 2.0, 1.0], [8.0, 4.0, 2.0]]], [[[1.0, 5.0, 5.0], [6.0, 1.0, 6.0], [2.0, 7.0, 2.0]], [[3.0, 4.0, 7.0], [8.0, 6.0, 8.0], [3.0, 4.0, 6.0]], [[1.0, 2.0, 5.0], [6.0, 4.0, 3.0], [6.0, 6.0, 2.0]]], [[[5.0, 5.0, 3.0], [1.0, 5.0, 8.0], [1.0, 7.0, 5.0]], [[1.0, 5.0, 4.0], [8.0, 1.0, 3.0], [1.0, 3.0, 7.0]], [[1.0, 6.0, 8.0], [4.0, 3.0, 1.0], [7.0, 5.0, 8.0]]]]))
12076        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12077        val=msk_val*numarray.array([[[4.0, 5.0, 7.0], [4.0, 7.0, 6.0], [4.0, 8.0, 3.0]], [[5.0, 3.0, 1.0], [5.0, 6.0, 2.0], [5.0, 5.0, 5.0]], [[5.0, 4.0, 8.0], [8.0, 7.0, 8.0], [4.0, 1.0, 3.0]]])+(1.-msk_val)*numarray.array([[[3.0, 5.0, 1.0], [1.0, 1.0, 3.0], [1.0, 7.0, 4.0]], [[3.0, 1.0, 3.0], [1.0, 8.0, 5.0], [3.0, 5.0, 2.0]], [[1.0, 1.0, 5.0], [1.0, 3.0, 6.0], [6.0, 5.0, 3.0]]])        val=msk_val*numarray.array([[[4.0, 5.0, 7.0], [4.0, 7.0, 6.0], [4.0, 8.0, 3.0]], [[5.0, 3.0, 1.0], [5.0, 6.0, 2.0], [5.0, 5.0, 5.0]], [[5.0, 4.0, 8.0], [8.0, 7.0, 8.0], [4.0, 1.0, 3.0]]])+(1.-msk_val)*numarray.array([[[3.0, 5.0, 1.0], [1.0, 1.0, 3.0], [1.0, 7.0, 4.0]], [[3.0, 1.0, 3.0], [1.0, 8.0, 5.0], [3.0, 5.0, 2.0]], [[1.0, 1.0, 5.0], [1.0, 3.0, 6.0], [6.0, 5.0, 3.0]]])
12078        arg[:3,:,1]=val        arg[:3,:,1]=val
12079        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12111  class Test_util_slicing_with_tagged_data Line 12111  class Test_util_slicing_with_tagged_data
12111     def test_setslice_taggedData_rank4_expandedData_RLLL(self):     def test_setslice_taggedData_rank4_expandedData_RLLL(self):
12112        arg=Data(numarray.array([[[[3.0, 6.0, 5.0], [5.0, 2.0, 7.0], [1.0, 3.0, 7.0]], [[4.0, 3.0, 5.0], [4.0, 4.0, 7.0], [6.0, 8.0, 5.0]], [[5.0, 2.0, 6.0], [7.0, 1.0, 3.0], [7.0, 5.0, 4.0]]], [[[5.0, 8.0, 3.0], [6.0, 3.0, 3.0], [8.0, 7.0, 2.0]], [[1.0, 1.0, 8.0], [1.0, 1.0, 6.0], [8.0, 2.0, 6.0]], [[5.0, 4.0, 1.0], [7.0, 7.0, 8.0], [4.0, 1.0, 7.0]]], [[[5.0, 2.0, 5.0], [6.0, 2.0, 1.0], [7.0, 5.0, 5.0]], [[6.0, 4.0, 1.0], [4.0, 3.0, 7.0], [8.0, 7.0, 1.0]], [[7.0, 8.0, 5.0], [4.0, 8.0, 7.0], [2.0, 6.0, 3.0]]], [[[5.0, 6.0, 6.0], [8.0, 7.0, 1.0], [2.0, 5.0, 7.0]], [[4.0, 4.0, 2.0], [4.0, 5.0, 2.0], [2.0, 4.0, 4.0]], [[5.0, 6.0, 7.0], [4.0, 6.0, 8.0], [8.0, 4.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 6.0, 5.0], [5.0, 2.0, 7.0], [1.0, 3.0, 7.0]], [[4.0, 3.0, 5.0], [4.0, 4.0, 7.0], [6.0, 8.0, 5.0]], [[5.0, 2.0, 6.0], [7.0, 1.0, 3.0], [7.0, 5.0, 4.0]]], [[[5.0, 8.0, 3.0], [6.0, 3.0, 3.0], [8.0, 7.0, 2.0]], [[1.0, 1.0, 8.0], [1.0, 1.0, 6.0], [8.0, 2.0, 6.0]], [[5.0, 4.0, 1.0], [7.0, 7.0, 8.0], [4.0, 1.0, 7.0]]], [[[5.0, 2.0, 5.0], [6.0, 2.0, 1.0], [7.0, 5.0, 5.0]], [[6.0, 4.0, 1.0], [4.0, 3.0, 7.0], [8.0, 7.0, 1.0]], [[7.0, 8.0, 5.0], [4.0, 8.0, 7.0], [2.0, 6.0, 3.0]]], [[[5.0, 6.0, 6.0], [8.0, 7.0, 1.0], [2.0, 5.0, 7.0]], [[4.0, 4.0, 2.0], [4.0, 5.0, 2.0], [2.0, 4.0, 4.0]], [[5.0, 6.0, 7.0], [4.0, 6.0, 8.0], [8.0, 4.0, 6.0]]]]),self.functionspace)
12113        arg.setTaggedValue(1,numarray.array([[[[8.0, 6.0, 3.0], [7.0, 7.0, 4.0], [4.0, 8.0, 5.0]], [[1.0, 2.0, 8.0], [8.0, 3.0, 7.0], [5.0, 5.0, 8.0]], [[1.0, 7.0, 2.0], [1.0, 1.0, 6.0], [5.0, 3.0, 7.0]]], [[[5.0, 6.0, 2.0], [2.0, 5.0, 1.0], [3.0, 6.0, 7.0]], [[3.0, 5.0, 7.0], [2.0, 2.0, 4.0], [5.0, 2.0, 2.0]], [[8.0, 5.0, 6.0], [7.0, 1.0, 6.0], [8.0, 3.0, 2.0]]], [[[8.0, 2.0, 2.0], [5.0, 4.0, 3.0], [7.0, 4.0, 2.0]], [[3.0, 4.0, 6.0], [2.0, 6.0, 6.0], [7.0, 1.0, 2.0]], [[2.0, 8.0, 4.0], [1.0, 3.0, 4.0], [3.0, 1.0, 4.0]]], [[[2.0, 7.0, 6.0], [4.0, 3.0, 5.0], [5.0, 4.0, 7.0]], [[3.0, 1.0, 3.0], [8.0, 2.0, 5.0], [8.0, 5.0, 1.0]], [[1.0, 6.0, 7.0], [4.0, 1.0, 4.0], [2.0, 6.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 6.0, 3.0], [7.0, 7.0, 4.0], [4.0, 8.0, 5.0]], [[1.0, 2.0, 8.0], [8.0, 3.0, 7.0], [5.0, 5.0, 8.0]], [[1.0, 7.0, 2.0], [1.0, 1.0, 6.0], [5.0, 3.0, 7.0]]], [[[5.0, 6.0, 2.0], [2.0, 5.0, 1.0], [3.0, 6.0, 7.0]], [[3.0, 5.0, 7.0], [2.0, 2.0, 4.0], [5.0, 2.0, 2.0]], [[8.0, 5.0, 6.0], [7.0, 1.0, 6.0], [8.0, 3.0, 2.0]]], [[[8.0, 2.0, 2.0], [5.0, 4.0, 3.0], [7.0, 4.0, 2.0]], [[3.0, 4.0, 6.0], [2.0, 6.0, 6.0], [7.0, 1.0, 2.0]], [[2.0, 8.0, 4.0], [1.0, 3.0, 4.0], [3.0, 1.0, 4.0]]], [[[2.0, 7.0, 6.0], [4.0, 3.0, 5.0], [5.0, 4.0, 7.0]], [[3.0, 1.0, 3.0], [8.0, 2.0, 5.0], [8.0, 5.0, 1.0]], [[1.0, 6.0, 7.0], [4.0, 1.0, 4.0], [2.0, 6.0, 3.0]]]]))
12114        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12115        val=msk_val*numarray.array([[[[6.0]]], [[[2.0]]]])+(1.-msk_val)*numarray.array([[[[5.0]]], [[[4.0]]]])        val=msk_val*numarray.array([[[[6.0]]], [[[2.0]]]])+(1.-msk_val)*numarray.array([[[[5.0]]], [[[4.0]]]])
12116        arg[1:3,2:,2:,2:]=val        arg[1:3,2:,2:,2:]=val
12117        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12149  class Test_util_slicing_with_tagged_data Line 12149  class Test_util_slicing_with_tagged_data
12149     def test_setslice_taggedData_rank4_expandedData_RRCN(self):     def test_setslice_taggedData_rank4_expandedData_RRCN(self):
12150        arg=Data(numarray.array([[[[5.0, 7.0, 3.0], [8.0, 6.0, 6.0], [7.0, 3.0, 2.0]], [[7.0, 7.0, 4.0], [8.0, 1.0, 6.0], [4.0, 8.0, 3.0]], [[1.0, 2.0, 4.0], [4.0, 2.0, 4.0], [7.0, 7.0, 6.0]]], [[[4.0, 4.0, 6.0], [7.0, 7.0, 6.0], [1.0, 5.0, 3.0]], [[3.0, 2.0, 7.0], [1.0, 3.0, 8.0], [8.0, 7.0, 1.0]], [[6.0, 2.0, 5.0], [3.0, 4.0, 5.0], [3.0, 1.0, 3.0]]], [[[1.0, 8.0, 2.0], [2.0, 4.0, 1.0], [4.0, 3.0, 3.0]], [[8.0, 6.0, 3.0], [5.0, 5.0, 4.0], [4.0, 8.0, 1.0]], [[6.0, 1.0, 7.0], [5.0, 2.0, 3.0], [7.0, 5.0, 4.0]]], [[[8.0, 8.0, 8.0], [7.0, 1.0, 8.0], [4.0, 3.0, 1.0]], [[8.0, 6.0, 7.0], [2.0, 4.0, 4.0], [8.0, 8.0, 2.0]], [[7.0, 4.0, 4.0], [4.0, 6.0, 3.0], [5.0, 6.0, 1.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 7.0, 3.0], [8.0, 6.0, 6.0], [7.0, 3.0, 2.0]], [[7.0, 7.0, 4.0], [8.0, 1.0, 6.0], [4.0, 8.0, 3.0]], [[1.0, 2.0, 4.0], [4.0, 2.0, 4.0], [7.0, 7.0, 6.0]]], [[[4.0, 4.0, 6.0], [7.0, 7.0, 6.0], [1.0, 5.0, 3.0]], [[3.0, 2.0, 7.0], [1.0, 3.0, 8.0], [8.0, 7.0, 1.0]], [[6.0, 2.0, 5.0], [3.0, 4.0, 5.0], [3.0, 1.0, 3.0]]], [[[1.0, 8.0, 2.0], [2.0, 4.0, 1.0], [4.0, 3.0, 3.0]], [[8.0, 6.0, 3.0], [5.0, 5.0, 4.0], [4.0, 8.0, 1.0]], [[6.0, 1.0, 7.0], [5.0, 2.0, 3.0], [7.0, 5.0, 4.0]]], [[[8.0, 8.0, 8.0], [7.0, 1.0, 8.0], [4.0, 3.0, 1.0]], [[8.0, 6.0, 7.0], [2.0, 4.0, 4.0], [8.0, 8.0, 2.0]], [[7.0, 4.0, 4.0], [4.0, 6.0, 3.0], [5.0, 6.0, 1.0]]]]),self.functionspace)
12151        arg.setTaggedValue(1,numarray.array([[[[7.0, 6.0, 2.0], [2.0, 1.0, 2.0], [5.0, 6.0, 3.0]], [[8.0, 3.0, 6.0], [5.0, 5.0, 3.0], [3.0, 7.0, 5.0]], [[3.0, 6.0, 2.0], [8.0, 6.0, 8.0], [2.0, 6.0, 5.0]]], [[[3.0, 3.0, 6.0], [5.0, 4.0, 6.0], [2.0, 3.0, 7.0]], [[2.0, 5.0, 3.0], [1.0, 7.0, 5.0], [7.0, 8.0, 1.0]], [[2.0, 1.0, 4.0], [4.0, 5.0, 1.0], [5.0, 6.0, 5.0]]], [[[3.0, 7.0, 1.0], [4.0, 6.0, 5.0], [5.0, 5.0, 1.0]], [[3.0, 6.0, 2.0], [2.0, 7.0, 8.0], [3.0, 3.0, 1.0]], [[5.0, 7.0, 6.0], [8.0, 3.0, 7.0], [4.0, 8.0, 6.0]]], [[[5.0, 7.0, 6.0], [6.0, 6.0, 5.0], [2.0, 1.0, 6.0]], [[3.0, 3.0, 4.0], [1.0, 4.0, 2.0], [3.0, 6.0, 8.0]], [[4.0, 2.0, 5.0], [3.0, 5.0, 5.0], [6.0, 6.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 6.0, 2.0], [2.0, 1.0, 2.0], [5.0, 6.0, 3.0]], [[8.0, 3.0, 6.0], [5.0, 5.0, 3.0], [3.0, 7.0, 5.0]], [[3.0, 6.0, 2.0], [8.0, 6.0, 8.0], [2.0, 6.0, 5.0]]], [[[3.0, 3.0, 6.0], [5.0, 4.0, 6.0], [2.0, 3.0, 7.0]], [[2.0, 5.0, 3.0], [1.0, 7.0, 5.0], [7.0, 8.0, 1.0]], [[2.0, 1.0, 4.0], [4.0, 5.0, 1.0], [5.0, 6.0, 5.0]]], [[[3.0, 7.0, 1.0], [4.0, 6.0, 5.0], [5.0, 5.0, 1.0]], [[3.0, 6.0, 2.0], [2.0, 7.0, 8.0], [3.0, 3.0, 1.0]], [[5.0, 7.0, 6.0], [8.0, 3.0, 7.0], [4.0, 8.0, 6.0]]], [[[5.0, 7.0, 6.0], [6.0, 6.0, 5.0], [2.0, 1.0, 6.0]], [[3.0, 3.0, 4.0], [1.0, 4.0, 2.0], [3.0, 6.0, 8.0]], [[4.0, 2.0, 5.0], [3.0, 5.0, 5.0], [6.0, 6.0, 1.0]]]]))
12152        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12153        val=msk_val*numarray.array([[[[8.0, 7.0, 2.0], [8.0, 8.0, 7.0], [1.0, 5.0, 6.0]]], [[[4.0, 5.0, 8.0], [5.0, 5.0, 8.0], [3.0, 4.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 6.0, 3.0], [1.0, 7.0, 8.0], [4.0, 8.0, 1.0]]], [[[8.0, 2.0, 3.0], [2.0, 8.0, 4.0], [2.0, 2.0, 4.0]]]])        val=msk_val*numarray.array([[[[8.0, 7.0, 2.0], [8.0, 8.0, 7.0], [1.0, 5.0, 6.0]]], [[[4.0, 5.0, 8.0], [5.0, 5.0, 8.0], [3.0, 4.0, 8.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 6.0, 3.0], [1.0, 7.0, 8.0], [4.0, 8.0, 1.0]]], [[[8.0, 2.0, 3.0], [2.0, 8.0, 4.0], [2.0, 2.0, 4.0]]]])
12154        arg[1:3,1:2,:]=val        arg[1:3,1:2,:]=val
12155        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12187  class Test_util_slicing_with_tagged_data Line 12187  class Test_util_slicing_with_tagged_data
12187     def test_setslice_taggedData_rank4_expandedData_UPLN(self):     def test_setslice_taggedData_rank4_expandedData_UPLN(self):
12188        arg=Data(numarray.array([[[[4.0, 7.0, 5.0], [2.0, 6.0, 7.0], [3.0, 4.0, 3.0]], [[6.0, 8.0, 6.0], [2.0, 2.0, 4.0], [2.0, 1.0, 2.0]], [[2.0, 4.0, 5.0], [2.0, 7.0, 8.0], [7.0, 5.0, 8.0]]], [[[1.0, 7.0, 3.0], [7.0, 2.0, 2.0], [2.0, 3.0, 8.0]], [[6.0, 6.0, 6.0], [3.0, 4.0, 8.0], [7.0, 8.0, 8.0]], [[2.0, 6.0, 8.0], [5.0, 7.0, 4.0], [7.0, 1.0, 8.0]]], [[[6.0, 8.0, 6.0], [2.0, 5.0, 1.0], [6.0, 1.0, 2.0]], [[7.0, 3.0, 1.0], [3.0, 8.0, 8.0], [8.0, 2.0, 8.0]], [[4.0, 4.0, 8.0], [1.0, 4.0, 8.0], [8.0, 4.0, 4.0]]], [[[8.0, 5.0, 6.0], [1.0, 1.0, 1.0], [1.0, 3.0, 1.0]], [[6.0, 5.0, 8.0], [6.0, 7.0, 3.0], [2.0, 7.0, 7.0]], [[7.0, 6.0, 6.0], [2.0, 7.0, 1.0], [5.0, 6.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 7.0, 5.0], [2.0, 6.0, 7.0], [3.0, 4.0, 3.0]], [[6.0, 8.0, 6.0], [2.0, 2.0, 4.0], [2.0, 1.0, 2.0]], [[2.0, 4.0, 5.0], [2.0, 7.0, 8.0], [7.0, 5.0, 8.0]]], [[[1.0, 7.0, 3.0], [7.0, 2.0, 2.0], [2.0, 3.0, 8.0]], [[6.0, 6.0, 6.0], [3.0, 4.0, 8.0], [7.0, 8.0, 8.0]], [[2.0, 6.0, 8.0], [5.0, 7.0, 4.0], [7.0, 1.0, 8.0]]], [[[6.0, 8.0, 6.0], [2.0, 5.0, 1.0], [6.0, 1.0, 2.0]], [[7.0, 3.0, 1.0], [3.0, 8.0, 8.0], [8.0, 2.0, 8.0]], [[4.0, 4.0, 8.0], [1.0, 4.0, 8.0], [8.0, 4.0, 4.0]]], [[[8.0, 5.0, 6.0], [1.0, 1.0, 1.0], [1.0, 3.0, 1.0]], [[6.0, 5.0, 8.0], [6.0, 7.0, 3.0], [2.0, 7.0, 7.0]], [[7.0, 6.0, 6.0], [2.0, 7.0, 1.0], [5.0, 6.0, 8.0]]]]),self.functionspace)
12189        arg.setTaggedValue(1,numarray.array([[[[7.0, 7.0, 1.0], [6.0, 3.0, 1.0], [7.0, 5.0, 6.0]], [[8.0, 4.0, 2.0], [3.0, 1.0, 6.0], [8.0, 2.0, 2.0]], [[3.0, 5.0, 6.0], [7.0, 5.0, 6.0], [5.0, 7.0, 6.0]]], [[[7.0, 6.0, 5.0], [2.0, 6.0, 7.0], [8.0, 7.0, 3.0]], [[8.0, 7.0, 6.0], [5.0, 4.0, 4.0], [2.0, 3.0, 8.0]], [[3.0, 3.0, 1.0], [3.0, 4.0, 2.0], [7.0, 6.0, 7.0]]], [[[7.0, 6.0, 2.0], [5.0, 5.0, 5.0], [4.0, 8.0, 7.0]], [[1.0, 3.0, 5.0], [3.0, 8.0, 6.0], [2.0, 2.0, 7.0]], [[7.0, 3.0, 5.0], [2.0, 8.0, 1.0], [4.0, 5.0, 2.0]]], [[[6.0, 7.0, 5.0], [8.0, 5.0, 3.0], [8.0, 8.0, 4.0]], [[4.0, 5.0, 5.0], [5.0, 2.0, 7.0], [6.0, 4.0, 6.0]], [[4.0, 1.0, 3.0], [8.0, 7.0, 6.0], [5.0, 6.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 7.0, 1.0], [6.0, 3.0, 1.0], [7.0, 5.0, 6.0]], [[8.0, 4.0, 2.0], [3.0, 1.0, 6.0], [8.0, 2.0, 2.0]], [[3.0, 5.0, 6.0], [7.0, 5.0, 6.0], [5.0, 7.0, 6.0]]], [[[7.0, 6.0, 5.0], [2.0, 6.0, 7.0], [8.0, 7.0, 3.0]], [[8.0, 7.0, 6.0], [5.0, 4.0, 4.0], [2.0, 3.0, 8.0]], [[3.0, 3.0, 1.0], [3.0, 4.0, 2.0], [7.0, 6.0, 7.0]]], [[[7.0, 6.0, 2.0], [5.0, 5.0, 5.0], [4.0, 8.0, 7.0]], [[1.0, 3.0, 5.0], [3.0, 8.0, 6.0], [2.0, 2.0, 7.0]], [[7.0, 3.0, 5.0], [2.0, 8.0, 1.0], [4.0, 5.0, 2.0]]], [[[6.0, 7.0, 5.0], [8.0, 5.0, 3.0], [8.0, 8.0, 4.0]], [[4.0, 5.0, 5.0], [5.0, 2.0, 7.0], [6.0, 4.0, 6.0]], [[4.0, 1.0, 3.0], [8.0, 7.0, 6.0], [5.0, 6.0, 5.0]]]]))
12190        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12191        val=msk_val*numarray.array([[[3.0, 4.0, 2.0]], [[5.0, 5.0, 7.0]], [[2.0, 6.0, 2.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 3.0]], [[5.0, 3.0, 5.0]], [[5.0, 4.0, 7.0]]])        val=msk_val*numarray.array([[[3.0, 4.0, 2.0]], [[5.0, 5.0, 7.0]], [[2.0, 6.0, 2.0]]])+(1.-msk_val)*numarray.array([[[4.0, 6.0, 3.0]], [[5.0, 3.0, 5.0]], [[5.0, 4.0, 7.0]]])
12192        arg[:3,1,2:]=val        arg[:3,1,2:]=val
12193        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12225  class Test_util_slicing_with_tagged_data Line 12225  class Test_util_slicing_with_tagged_data
12225     def test_setslice_taggedData_rank4_expandedData_PUUU(self):     def test_setslice_taggedData_rank4_expandedData_PUUU(self):
12226        arg=Data(numarray.array([[[[4.0, 5.0, 7.0], [5.0, 3.0, 8.0], [6.0, 7.0, 5.0]], [[8.0, 4.0, 7.0], [6.0, 5.0, 7.0], [2.0, 2.0, 5.0]], [[7.0, 7.0, 3.0], [3.0, 7.0, 7.0], [7.0, 6.0, 5.0]]], [[[7.0, 6.0, 8.0], [3.0, 7.0, 4.0], [6.0, 6.0, 1.0]], [[6.0, 5.0, 3.0], [6.0, 2.0, 3.0], [5.0, 4.0, 6.0]], [[3.0, 7.0, 5.0], [4.0, 2.0, 5.0], [2.0, 1.0, 7.0]]], [[[2.0, 6.0, 5.0], [2.0, 4.0, 8.0], [5.0, 5.0, 6.0]], [[6.0, 4.0, 8.0], [6.0, 4.0, 1.0], [1.0, 1.0, 8.0]], [[2.0, 7.0, 3.0], [3.0, 4.0, 4.0], [5.0, 6.0, 8.0]]], [[[2.0, 2.0, 6.0], [5.0, 3.0, 6.0], [6.0, 1.0, 2.0]], [[4.0, 4.0, 2.0], [5.0, 2.0, 5.0], [2.0, 3.0, 2.0]], [[7.0, 1.0, 3.0], [8.0, 3.0, 8.0], [6.0, 1.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[4.0, 5.0, 7.0], [5.0, 3.0, 8.0], [6.0, 7.0, 5.0]], [[8.0, 4.0, 7.0], [6.0, 5.0, 7.0], [2.0, 2.0, 5.0]], [[7.0, 7.0, 3.0], [3.0, 7.0, 7.0], [7.0, 6.0, 5.0]]], [[[7.0, 6.0, 8.0], [3.0, 7.0, 4.0], [6.0, 6.0, 1.0]], [[6.0, 5.0, 3.0], [6.0, 2.0, 3.0], [5.0, 4.0, 6.0]], [[3.0, 7.0, 5.0], [4.0, 2.0, 5.0], [2.0, 1.0, 7.0]]], [[[2.0, 6.0, 5.0], [2.0, 4.0, 8.0], [5.0, 5.0, 6.0]], [[6.0, 4.0, 8.0], [6.0, 4.0, 1.0], [1.0, 1.0, 8.0]], [[2.0, 7.0, 3.0], [3.0, 4.0, 4.0], [5.0, 6.0, 8.0]]], [[[2.0, 2.0, 6.0], [5.0, 3.0, 6.0], [6.0, 1.0, 2.0]], [[4.0, 4.0, 2.0], [5.0, 2.0, 5.0], [2.0, 3.0, 2.0]], [[7.0, 1.0, 3.0], [8.0, 3.0, 8.0], [6.0, 1.0, 3.0]]]]),self.functionspace)
12227        arg.setTaggedValue(1,numarray.array([[[[3.0, 1.0, 8.0], [7.0, 4.0, 8.0], [6.0, 2.0, 3.0]], [[6.0, 7.0, 1.0], [4.0, 6.0, 5.0], [6.0, 4.0, 7.0]], [[2.0, 7.0, 5.0], [6.0, 6.0, 7.0], [7.0, 5.0, 2.0]]], [[[5.0, 1.0, 6.0], [8.0, 5.0, 4.0], [2.0, 4.0, 8.0]], [[3.0, 6.0, 7.0], [5.0, 6.0, 7.0], [6.0, 3.0, 1.0]], [[5.0, 7.0, 8.0], [4.0, 6.0, 8.0], [5.0, 3.0, 6.0]]], [[[2.0, 3.0, 4.0], [1.0, 4.0, 6.0], [7.0, 7.0, 5.0]], [[6.0, 3.0, 4.0], [5.0, 6.0, 5.0], [2.0, 1.0, 6.0]], [[4.0, 2.0, 5.0], [5.0, 3.0, 8.0], [3.0, 7.0, 2.0]]], [[[2.0, 4.0, 1.0], [3.0, 2.0, 5.0], [3.0, 2.0, 4.0]], [[1.0, 5.0, 1.0], [8.0, 7.0, 6.0], [5.0, 8.0, 6.0]], [[4.0, 5.0, 7.0], [5.0, 7.0, 1.0], [8.0, 2.0, 4.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 1.0, 8.0], [7.0, 4.0, 8.0], [6.0, 2.0, 3.0]], [[6.0, 7.0, 1.0], [4.0, 6.0, 5.0], [6.0, 4.0, 7.0]], [[2.0, 7.0, 5.0], [6.0, 6.0, 7.0], [7.0, 5.0, 2.0]]], [[[5.0, 1.0, 6.0], [8.0, 5.0, 4.0], [2.0, 4.0, 8.0]], [[3.0, 6.0, 7.0], [5.0, 6.0, 7.0], [6.0, 3.0, 1.0]], [[5.0, 7.0, 8.0], [4.0, 6.0, 8.0], [5.0, 3.0, 6.0]]], [[[2.0, 3.0, 4.0], [1.0, 4.0, 6.0], [7.0, 7.0, 5.0]], [[6.0, 3.0, 4.0], [5.0, 6.0, 5.0], [2.0, 1.0, 6.0]], [[4.0, 2.0, 5.0], [5.0, 3.0, 8.0], [3.0, 7.0, 2.0]]], [[[2.0, 4.0, 1.0], [3.0, 2.0, 5.0], [3.0, 2.0, 4.0]], [[1.0, 5.0, 1.0], [8.0, 7.0, 6.0], [5.0, 8.0, 6.0]], [[4.0, 5.0, 7.0], [5.0, 7.0, 1.0], [8.0, 2.0, 4.0]]]]))
12228        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12229        val=msk_val*numarray.array([[[2.0, 8.0], [2.0, 8.0]], [[6.0, 8.0], [3.0, 1.0]]])+(1.-msk_val)*numarray.array([[[4.0, 7.0], [2.0, 3.0]], [[3.0, 3.0], [1.0, 7.0]]])        val=msk_val*numarray.array([[[2.0, 8.0], [2.0, 8.0]], [[6.0, 8.0], [3.0, 1.0]]])+(1.-msk_val)*numarray.array([[[4.0, 7.0], [2.0, 3.0]], [[3.0, 3.0], [1.0, 7.0]]])
12230        arg[2,:2,:2,:2]=val        arg[2,:2,:2,:2]=val
12231        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12263  class Test_util_slicing_with_tagged_data Line 12263  class Test_util_slicing_with_tagged_data
12263     def test_setslice_taggedData_rank4_expandedData_PULN(self):     def test_setslice_taggedData_rank4_expandedData_PULN(self):
12264        arg=Data(numarray.array([[[[8.0, 2.0, 4.0], [4.0, 5.0, 2.0], [5.0, 2.0, 1.0]], [[1.0, 5.0, 8.0], [2.0, 1.0, 1.0], [7.0, 7.0, 5.0]], [[1.0, 1.0, 7.0], [1.0, 3.0, 4.0], [1.0, 1.0, 1.0]]], [[[2.0, 6.0, 5.0], [8.0, 3.0, 8.0], [5.0, 2.0, 7.0]], [[4.0, 5.0, 2.0], [3.0, 5.0, 7.0], [7.0, 7.0, 5.0]], [[3.0, 5.0, 8.0], [2.0, 2.0, 4.0], [3.0, 2.0, 7.0]]], [[[6.0, 1.0, 5.0], [2.0, 8.0, 2.0], [1.0, 4.0, 1.0]], [[8.0, 6.0, 7.0], [6.0, 1.0, 4.0], [3.0, 3.0, 1.0]], [[3.0, 4.0, 2.0], [2.0, 4.0, 6.0], [6.0, 2.0, 3.0]]], [[[4.0, 1.0, 6.0], [5.0, 3.0, 6.0], [8.0, 8.0, 2.0]], [[1.0, 5.0, 6.0], [2.0, 7.0, 8.0], [7.0, 5.0, 5.0]], [[5.0, 3.0, 7.0], [3.0, 7.0, 7.0], [7.0, 3.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 2.0, 4.0], [4.0, 5.0, 2.0], [5.0, 2.0, 1.0]], [[1.0, 5.0, 8.0], [2.0, 1.0, 1.0], [7.0, 7.0, 5.0]], [[1.0, 1.0, 7.0], [1.0, 3.0, 4.0], [1.0, 1.0, 1.0]]], [[[2.0, 6.0, 5.0], [8.0, 3.0, 8.0], [5.0, 2.0, 7.0]], [[4.0, 5.0, 2.0], [3.0, 5.0, 7.0], [7.0, 7.0, 5.0]], [[3.0, 5.0, 8.0], [2.0, 2.0, 4.0], [3.0, 2.0, 7.0]]], [[[6.0, 1.0, 5.0], [2.0, 8.0, 2.0], [1.0, 4.0, 1.0]], [[8.0, 6.0, 7.0], [6.0, 1.0, 4.0], [3.0, 3.0, 1.0]], [[3.0, 4.0, 2.0], [2.0, 4.0, 6.0], [6.0, 2.0, 3.0]]], [[[4.0, 1.0, 6.0], [5.0, 3.0, 6.0], [8.0, 8.0, 2.0]], [[1.0, 5.0, 6.0], [2.0, 7.0, 8.0], [7.0, 5.0, 5.0]], [[5.0, 3.0, 7.0], [3.0, 7.0, 7.0], [7.0, 3.0, 8.0]]]]),self.functionspace)
12265        arg.setTaggedValue(1,numarray.array([[[[2.0, 7.0, 6.0], [4.0, 5.0, 5.0], [3.0, 3.0, 5.0]], [[2.0, 4.0, 3.0], [8.0, 1.0, 2.0], [6.0, 2.0, 4.0]], [[1.0, 4.0, 8.0], [3.0, 5.0, 5.0], [8.0, 5.0, 4.0]]], [[[5.0, 8.0, 5.0], [3.0, 3.0, 1.0], [3.0, 1.0, 5.0]], [[7.0, 1.0, 8.0], [6.0, 6.0, 1.0], [2.0, 2.0, 5.0]], [[7.0, 2.0, 2.0], [6.0, 1.0, 6.0], [2.0, 7.0, 5.0]]], [[[6.0, 5.0, 4.0], [4.0, 7.0, 6.0], [8.0, 2.0, 4.0]], [[6.0, 8.0, 8.0], [4.0, 4.0, 6.0], [8.0, 8.0, 4.0]], [[2.0, 8.0, 5.0], [3.0, 1.0, 8.0], [7.0, 1.0, 7.0]]], [[[3.0, 5.0, 1.0], [3.0, 3.0, 8.0], [6.0, 3.0, 4.0]], [[4.0, 5.0, 8.0], [6.0, 2.0, 5.0], [8.0, 5.0, 1.0]], [[8.0, 4.0, 5.0], [4.0, 5.0, 4.0], [1.0, 7.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[2.0, 7.0, 6.0], [4.0, 5.0, 5.0], [3.0, 3.0, 5.0]], [[2.0, 4.0, 3.0], [8.0, 1.0, 2.0], [6.0, 2.0, 4.0]], [[1.0, 4.0, 8.0], [3.0, 5.0, 5.0], [8.0, 5.0, 4.0]]], [[[5.0, 8.0, 5.0], [3.0, 3.0, 1.0], [3.0, 1.0, 5.0]], [[7.0, 1.0, 8.0], [6.0, 6.0, 1.0], [2.0, 2.0, 5.0]], [[7.0, 2.0, 2.0], [6.0, 1.0, 6.0], [2.0, 7.0, 5.0]]], [[[6.0, 5.0, 4.0], [4.0, 7.0, 6.0], [8.0, 2.0, 4.0]], [[6.0, 8.0, 8.0], [4.0, 4.0, 6.0], [8.0, 8.0, 4.0]], [[2.0, 8.0, 5.0], [3.0, 1.0, 8.0], [7.0, 1.0, 7.0]]], [[[3.0, 5.0, 1.0], [3.0, 3.0, 8.0], [6.0, 3.0, 4.0]], [[4.0, 5.0, 8.0], [6.0, 2.0, 5.0], [8.0, 5.0, 1.0]], [[8.0, 4.0, 5.0], [4.0, 5.0, 4.0], [1.0, 7.0, 2.0]]]]))
12266        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12267        val=msk_val*numarray.array([[[7.0, 4.0, 3.0]], [[2.0, 8.0, 7.0]]])+(1.-msk_val)*numarray.array([[[5.0, 3.0, 3.0]], [[3.0, 2.0, 7.0]]])        val=msk_val*numarray.array([[[7.0, 4.0, 3.0]], [[2.0, 8.0, 7.0]]])+(1.-msk_val)*numarray.array([[[5.0, 3.0, 3.0]], [[3.0, 2.0, 7.0]]])
12268        arg[2,:2,2:]=val        arg[2,:2,2:]=val
12269        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12301  class Test_util_slicing_with_tagged_data Line 12301  class Test_util_slicing_with_tagged_data
12301     def test_setslice_taggedData_rank4_expandedData_UCUU(self):     def test_setslice_taggedData_rank4_expandedData_UCUU(self):
12302        arg=Data(numarray.array([[[[5.0, 3.0, 6.0], [3.0, 5.0, 2.0], [6.0, 5.0, 5.0]], [[2.0, 3.0, 2.0], [3.0, 4.0, 2.0], [6.0, 2.0, 7.0]], [[8.0, 4.0, 8.0], [2.0, 5.0, 6.0], [7.0, 2.0, 1.0]]], [[[4.0, 2.0, 4.0], [8.0, 4.0, 2.0], [7.0, 6.0, 5.0]], [[6.0, 1.0, 5.0], [2.0, 1.0, 2.0], [2.0, 6.0, 5.0]], [[2.0, 8.0, 7.0], [4.0, 3.0, 6.0], [6.0, 6.0, 3.0]]], [[[2.0, 3.0, 2.0], [6.0, 3.0, 1.0], [7.0, 7.0, 7.0]], [[5.0, 7.0, 1.0], [4.0, 2.0, 8.0], [7.0, 2.0, 1.0]], [[1.0, 1.0, 1.0], [4.0, 1.0, 3.0], [3.0, 6.0, 8.0]]], [[[2.0, 4.0, 2.0], [1.0, 1.0, 5.0], [5.0, 4.0, 2.0]], [[1.0, 4.0, 6.0], [5.0, 8.0, 4.0], [6.0, 3.0, 2.0]], [[3.0, 7.0, 4.0], [6.0, 3.0, 2.0], [5.0, 3.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 3.0, 6.0], [3.0, 5.0, 2.0], [6.0, 5.0, 5.0]], [[2.0, 3.0, 2.0], [3.0, 4.0, 2.0], [6.0, 2.0, 7.0]], [[8.0, 4.0, 8.0], [2.0, 5.0, 6.0], [7.0, 2.0, 1.0]]], [[[4.0, 2.0, 4.0], [8.0, 4.0, 2.0], [7.0, 6.0, 5.0]], [[6.0, 1.0, 5.0], [2.0, 1.0, 2.0], [2.0, 6.0, 5.0]], [[2.0, 8.0, 7.0], [4.0, 3.0, 6.0], [6.0, 6.0, 3.0]]], [[[2.0, 3.0, 2.0], [6.0, 3.0, 1.0], [7.0, 7.0, 7.0]], [[5.0, 7.0, 1.0], [4.0, 2.0, 8.0], [7.0, 2.0, 1.0]], [[1.0, 1.0, 1.0], [4.0, 1.0, 3.0], [3.0, 6.0, 8.0]]], [[[2.0, 4.0, 2.0], [1.0, 1.0, 5.0], [5.0, 4.0, 2.0]], [[1.0, 4.0, 6.0], [5.0, 8.0, 4.0], [6.0, 3.0, 2.0]], [[3.0, 7.0, 4.0], [6.0, 3.0, 2.0], [5.0, 3.0, 3.0]]]]),self.functionspace)
12303        arg.setTaggedValue(1,numarray.array([[[[4.0, 1.0, 8.0], [8.0, 3.0, 1.0], [4.0, 8.0, 2.0]], [[8.0, 7.0, 7.0], [5.0, 3.0, 5.0], [6.0, 5.0, 6.0]], [[7.0, 4.0, 1.0], [3.0, 5.0, 7.0], [1.0, 4.0, 2.0]]], [[[8.0, 7.0, 5.0], [8.0, 1.0, 4.0], [4.0, 4.0, 3.0]], [[3.0, 1.0, 4.0], [3.0, 4.0, 8.0], [5.0, 5.0, 8.0]], [[3.0, 1.0, 2.0], [5.0, 7.0, 8.0], [8.0, 1.0, 2.0]]], [[[8.0, 5.0, 2.0], [1.0, 2.0, 2.0], [6.0, 7.0, 2.0]], [[7.0, 4.0, 1.0], [1.0, 5.0, 7.0], [4.0, 1.0, 5.0]], [[3.0, 7.0, 6.0], [8.0, 6.0, 1.0], [7.0, 5.0, 3.0]]], [[[4.0, 6.0, 4.0], [1.0, 5.0, 2.0], [8.0, 2.0, 8.0]], [[7.0, 1.0, 1.0], [5.0, 5.0, 2.0], [8.0, 6.0, 5.0]], [[5.0, 5.0, 1.0], [1.0, 3.0, 8.0], [2.0, 7.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 1.0, 8.0], [8.0, 3.0, 1.0], [4.0, 8.0, 2.0]], [[8.0, 7.0, 7.0], [5.0, 3.0, 5.0], [6.0, 5.0, 6.0]], [[7.0, 4.0, 1.0], [3.0, 5.0, 7.0], [1.0, 4.0, 2.0]]], [[[8.0, 7.0, 5.0], [8.0, 1.0, 4.0], [4.0, 4.0, 3.0]], [[3.0, 1.0, 4.0], [3.0, 4.0, 8.0], [5.0, 5.0, 8.0]], [[3.0, 1.0, 2.0], [5.0, 7.0, 8.0], [8.0, 1.0, 2.0]]], [[[8.0, 5.0, 2.0], [1.0, 2.0, 2.0], [6.0, 7.0, 2.0]], [[7.0, 4.0, 1.0], [1.0, 5.0, 7.0], [4.0, 1.0, 5.0]], [[3.0, 7.0, 6.0], [8.0, 6.0, 1.0], [7.0, 5.0, 3.0]]], [[[4.0, 6.0, 4.0], [1.0, 5.0, 2.0], [8.0, 2.0, 8.0]], [[7.0, 1.0, 1.0], [5.0, 5.0, 2.0], [8.0, 6.0, 5.0]], [[5.0, 5.0, 1.0], [1.0, 3.0, 8.0], [2.0, 7.0, 1.0]]]]))
12304        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12305        val=msk_val*numarray.array([[[[3.0, 7.0], [3.0, 5.0]], [[5.0, 1.0], [3.0, 7.0]], [[5.0, 1.0], [7.0, 2.0]]], [[[5.0, 4.0], [3.0, 5.0]], [[1.0, 4.0], [8.0, 4.0]], [[7.0, 5.0], [6.0, 3.0]]], [[[7.0, 3.0], [8.0, 4.0]], [[2.0, 3.0], [7.0, 3.0]], [[6.0, 3.0], [5.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 8.0], [3.0, 5.0]], [[3.0, 6.0], [8.0, 5.0]], [[6.0, 5.0], [6.0, 5.0]]], [[[5.0, 3.0], [6.0, 4.0]], [[6.0, 8.0], [6.0, 8.0]], [[1.0, 5.0], [6.0, 3.0]]], [[[5.0, 2.0], [6.0, 4.0]], [[7.0, 4.0], [1.0, 6.0]], [[4.0, 6.0], [6.0, 1.0]]]])        val=msk_val*numarray.array([[[[3.0, 7.0], [3.0, 5.0]], [[5.0, 1.0], [3.0, 7.0]], [[5.0, 1.0], [7.0, 2.0]]], [[[5.0, 4.0], [3.0, 5.0]], [[1.0, 4.0], [8.0, 4.0]], [[7.0, 5.0], [6.0, 3.0]]], [[[7.0, 3.0], [8.0, 4.0]], [[2.0, 3.0], [7.0, 3.0]], [[6.0, 3.0], [5.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[7.0, 8.0], [3.0, 5.0]], [[3.0, 6.0], [8.0, 5.0]], [[6.0, 5.0], [6.0, 5.0]]], [[[5.0, 3.0], [6.0, 4.0]], [[6.0, 8.0], [6.0, 8.0]], [[1.0, 5.0], [6.0, 3.0]]], [[[5.0, 2.0], [6.0, 4.0]], [[7.0, 4.0], [1.0, 6.0]], [[4.0, 6.0], [6.0, 1.0]]]])
12306        arg[:3,:,:2,:2]=val        arg[:3,:,:2,:2]=val
12307        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12339  class Test_util_slicing_with_tagged_data Line 12339  class Test_util_slicing_with_tagged_data
12339     def test_setslice_taggedData_rank4_expandedData_PUPN(self):     def test_setslice_taggedData_rank4_expandedData_PUPN(self):
12340        arg=Data(numarray.array([[[[7.0, 3.0, 8.0], [4.0, 1.0, 2.0], [8.0, 2.0, 1.0]], [[4.0, 8.0, 8.0], [4.0, 8.0, 1.0], [5.0, 4.0, 4.0]], [[8.0, 1.0, 7.0], [5.0, 1.0, 8.0], [2.0, 2.0, 4.0]]], [[[7.0, 2.0, 6.0], [2.0, 8.0, 6.0], [4.0, 1.0, 2.0]], [[4.0, 8.0, 3.0], [2.0, 2.0, 1.0], [3.0, 5.0, 8.0]], [[8.0, 7.0, 5.0], [5.0, 2.0, 4.0], [1.0, 5.0, 7.0]]], [[[8.0, 7.0, 8.0], [4.0, 3.0, 5.0], [6.0, 7.0, 1.0]], [[8.0, 3.0, 3.0], [4.0, 3.0, 8.0], [5.0, 7.0, 5.0]], [[7.0, 5.0, 8.0], [5.0, 8.0, 3.0], [7.0, 2.0, 5.0]]], [[[4.0, 5.0, 1.0], [1.0, 3.0, 4.0], [3.0, 6.0, 6.0]], [[1.0, 7.0, 8.0], [1.0, 6.0, 6.0], [7.0, 6.0, 4.0]], [[1.0, 7.0, 8.0], [8.0, 8.0, 5.0], [6.0, 6.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 3.0, 8.0], [4.0, 1.0, 2.0], [8.0, 2.0, 1.0]], [[4.0, 8.0, 8.0], [4.0, 8.0, 1.0], [5.0, 4.0, 4.0]], [[8.0, 1.0, 7.0], [5.0, 1.0, 8.0], [2.0, 2.0, 4.0]]], [[[7.0, 2.0, 6.0], [2.0, 8.0, 6.0], [4.0, 1.0, 2.0]], [[4.0, 8.0, 3.0], [2.0, 2.0, 1.0], [3.0, 5.0, 8.0]], [[8.0, 7.0, 5.0], [5.0, 2.0, 4.0], [1.0, 5.0, 7.0]]], [[[8.0, 7.0, 8.0], [4.0, 3.0, 5.0], [6.0, 7.0, 1.0]], [[8.0, 3.0, 3.0], [4.0, 3.0, 8.0], [5.0, 7.0, 5.0]], [[7.0, 5.0, 8.0], [5.0, 8.0, 3.0], [7.0, 2.0, 5.0]]], [[[4.0, 5.0, 1.0], [1.0, 3.0, 4.0], [3.0, 6.0, 6.0]], [[1.0, 7.0, 8.0], [1.0, 6.0, 6.0], [7.0, 6.0, 4.0]], [[1.0, 7.0, 8.0], [8.0, 8.0, 5.0], [6.0, 6.0, 6.0]]]]),self.functionspace)
12341        arg.setTaggedValue(1,numarray.array([[[[7.0, 4.0, 3.0], [6.0, 4.0, 3.0], [7.0, 2.0, 8.0]], [[1.0, 8.0, 6.0], [1.0, 1.0, 6.0], [6.0, 2.0, 3.0]], [[6.0, 6.0, 3.0], [3.0, 5.0, 8.0], [3.0, 1.0, 7.0]]], [[[6.0, 7.0, 7.0], [4.0, 2.0, 4.0], [5.0, 8.0, 3.0]], [[5.0, 2.0, 8.0], [3.0, 4.0, 7.0], [1.0, 5.0, 1.0]], [[4.0, 8.0, 6.0], [4.0, 4.0, 7.0], [2.0, 2.0, 1.0]]], [[[4.0, 7.0, 6.0], [2.0, 3.0, 8.0], [3.0, 3.0, 3.0]], [[5.0, 6.0, 2.0], [2.0, 7.0, 5.0], [1.0, 7.0, 8.0]], [[3.0, 3.0, 7.0], [2.0, 3.0, 6.0], [2.0, 8.0, 8.0]]], [[[4.0, 5.0, 2.0], [4.0, 1.0, 4.0], [5.0, 5.0, 4.0]], [[7.0, 1.0, 2.0], [3.0, 2.0, 2.0], [3.0, 8.0, 4.0]], [[6.0, 2.0, 1.0], [3.0, 6.0, 6.0], [6.0, 6.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 4.0, 3.0], [6.0, 4.0, 3.0], [7.0, 2.0, 8.0]], [[1.0, 8.0, 6.0], [1.0, 1.0, 6.0], [6.0, 2.0, 3.0]], [[6.0, 6.0, 3.0], [3.0, 5.0, 8.0], [3.0, 1.0, 7.0]]], [[[6.0, 7.0, 7.0], [4.0, 2.0, 4.0], [5.0, 8.0, 3.0]], [[5.0, 2.0, 8.0], [3.0, 4.0, 7.0], [1.0, 5.0, 1.0]], [[4.0, 8.0, 6.0], [4.0, 4.0, 7.0], [2.0, 2.0, 1.0]]], [[[4.0, 7.0, 6.0], [2.0, 3.0, 8.0], [3.0, 3.0, 3.0]], [[5.0, 6.0, 2.0], [2.0, 7.0, 5.0], [1.0, 7.0, 8.0]], [[3.0, 3.0, 7.0], [2.0, 3.0, 6.0], [2.0, 8.0, 8.0]]], [[[4.0, 5.0, 2.0], [4.0, 1.0, 4.0], [5.0, 5.0, 4.0]], [[7.0, 1.0, 2.0], [3.0, 2.0, 2.0], [3.0, 8.0, 4.0]], [[6.0, 2.0, 1.0], [3.0, 6.0, 6.0], [6.0, 6.0, 1.0]]]]))
12342        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12343        val=msk_val*numarray.array([[5.0, 3.0, 4.0], [1.0, 1.0, 6.0]])+(1.-msk_val)*numarray.array([[1.0, 3.0, 6.0], [6.0, 6.0, 4.0]])        val=msk_val*numarray.array([[5.0, 3.0, 4.0], [1.0, 1.0, 6.0]])+(1.-msk_val)*numarray.array([[1.0, 3.0, 6.0], [6.0, 6.0, 4.0]])
12344        arg[2,:2,1]=val        arg[2,:2,1]=val
12345        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12377  class Test_util_slicing_with_tagged_data Line 12377  class Test_util_slicing_with_tagged_data
12377     def test_setslice_taggedData_rank4_expandedData_LLUL(self):     def test_setslice_taggedData_rank4_expandedData_LLUL(self):
12378        arg=Data(numarray.array([[[[8.0, 8.0, 8.0], [6.0, 2.0, 5.0], [4.0, 4.0, 6.0]], [[4.0, 3.0, 8.0], [1.0, 3.0, 2.0], [1.0, 8.0, 7.0]], [[4.0, 2.0, 8.0], [5.0, 6.0, 3.0], [4.0, 1.0, 2.0]]], [[[4.0, 4.0, 5.0], [3.0, 7.0, 3.0], [5.0, 4.0, 1.0]], [[7.0, 6.0, 2.0], [6.0, 4.0, 1.0], [2.0, 5.0, 6.0]], [[2.0, 2.0, 6.0], [4.0, 8.0, 6.0], [4.0, 7.0, 8.0]]], [[[2.0, 7.0, 3.0], [1.0, 4.0, 4.0], [1.0, 2.0, 2.0]], [[5.0, 2.0, 2.0], [3.0, 2.0, 1.0], [1.0, 8.0, 5.0]], [[1.0, 8.0, 6.0], [1.0, 5.0, 2.0], [1.0, 6.0, 3.0]]], [[[5.0, 2.0, 3.0], [1.0, 3.0, 3.0], [3.0, 2.0, 2.0]], [[5.0, 8.0, 6.0], [5.0, 5.0, 8.0], [7.0, 5.0, 2.0]], [[7.0, 5.0, 5.0], [1.0, 3.0, 5.0], [3.0, 7.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 8.0, 8.0], [6.0, 2.0, 5.0], [4.0, 4.0, 6.0]], [[4.0, 3.0, 8.0], [1.0, 3.0, 2.0], [1.0, 8.0, 7.0]], [[4.0, 2.0, 8.0], [5.0, 6.0, 3.0], [4.0, 1.0, 2.0]]], [[[4.0, 4.0, 5.0], [3.0, 7.0, 3.0], [5.0, 4.0, 1.0]], [[7.0, 6.0, 2.0], [6.0, 4.0, 1.0], [2.0, 5.0, 6.0]], [[2.0, 2.0, 6.0], [4.0, 8.0, 6.0], [4.0, 7.0, 8.0]]], [[[2.0, 7.0, 3.0], [1.0, 4.0, 4.0], [1.0, 2.0, 2.0]], [[5.0, 2.0, 2.0], [3.0, 2.0, 1.0], [1.0, 8.0, 5.0]], [[1.0, 8.0, 6.0], [1.0, 5.0, 2.0], [1.0, 6.0, 3.0]]], [[[5.0, 2.0, 3.0], [1.0, 3.0, 3.0], [3.0, 2.0, 2.0]], [[5.0, 8.0, 6.0], [5.0, 5.0, 8.0], [7.0, 5.0, 2.0]], [[7.0, 5.0, 5.0], [1.0, 3.0, 5.0], [3.0, 7.0, 4.0]]]]),self.functionspace)
12379        arg.setTaggedValue(1,numarray.array([[[[1.0, 4.0, 1.0], [3.0, 4.0, 6.0], [2.0, 1.0, 8.0]], [[3.0, 2.0, 7.0], [1.0, 1.0, 5.0], [1.0, 2.0, 5.0]], [[1.0, 5.0, 5.0], [2.0, 8.0, 2.0], [3.0, 4.0, 4.0]]], [[[3.0, 1.0, 4.0], [4.0, 3.0, 6.0], [6.0, 5.0, 4.0]], [[5.0, 6.0, 5.0], [6.0, 6.0, 6.0], [2.0, 5.0, 3.0]], [[3.0, 8.0, 1.0], [8.0, 4.0, 3.0], [2.0, 5.0, 1.0]]], [[[4.0, 7.0, 7.0], [6.0, 7.0, 7.0], [1.0, 6.0, 2.0]], [[2.0, 1.0, 8.0], [7.0, 6.0, 4.0], [8.0, 1.0, 4.0]], [[3.0, 7.0, 5.0], [6.0, 2.0, 4.0], [2.0, 5.0, 3.0]]], [[[4.0, 8.0, 8.0], [5.0, 6.0, 1.0], [1.0, 8.0, 5.0]], [[4.0, 8.0, 6.0], [3.0, 8.0, 1.0], [7.0, 8.0, 2.0]], [[1.0, 3.0, 4.0], [1.0, 2.0, 7.0], [2.0, 7.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 4.0, 1.0], [3.0, 4.0, 6.0], [2.0, 1.0, 8.0]], [[3.0, 2.0, 7.0], [1.0, 1.0, 5.0], [1.0, 2.0, 5.0]], [[1.0, 5.0, 5.0], [2.0, 8.0, 2.0], [3.0, 4.0, 4.0]]], [[[3.0, 1.0, 4.0], [4.0, 3.0, 6.0], [6.0, 5.0, 4.0]], [[5.0, 6.0, 5.0], [6.0, 6.0, 6.0], [2.0, 5.0, 3.0]], [[3.0, 8.0, 1.0], [8.0, 4.0, 3.0], [2.0, 5.0, 1.0]]], [[[4.0, 7.0, 7.0], [6.0, 7.0, 7.0], [1.0, 6.0, 2.0]], [[2.0, 1.0, 8.0], [7.0, 6.0, 4.0], [8.0, 1.0, 4.0]], [[3.0, 7.0, 5.0], [6.0, 2.0, 4.0], [2.0, 5.0, 3.0]]], [[[4.0, 8.0, 8.0], [5.0, 6.0, 1.0], [1.0, 8.0, 5.0]], [[4.0, 8.0, 6.0], [3.0, 8.0, 1.0], [7.0, 8.0, 2.0]], [[1.0, 3.0, 4.0], [1.0, 2.0, 7.0], [2.0, 7.0, 1.0]]]]))
12380        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12381        val=msk_val*numarray.array([[[[5.0], [5.0]]], [[[7.0], [8.0]]]])+(1.-msk_val)*numarray.array([[[[7.0], [4.0]]], [[[6.0], [6.0]]]])        val=msk_val*numarray.array([[[[5.0], [5.0]]], [[[7.0], [8.0]]]])+(1.-msk_val)*numarray.array([[[[7.0], [4.0]]], [[[6.0], [6.0]]]])
12382        arg[2:,2:,:2,2:]=val        arg[2:,2:,:2,2:]=val
12383        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12415  class Test_util_slicing_with_tagged_data Line 12415  class Test_util_slicing_with_tagged_data
12415     def test_setslice_taggedData_rank4_expandedData_UUUU(self):     def test_setslice_taggedData_rank4_expandedData_UUUU(self):
12416        arg=Data(numarray.array([[[[7.0, 3.0, 7.0], [5.0, 5.0, 7.0], [5.0, 4.0, 2.0]], [[5.0, 6.0, 5.0], [7.0, 4.0, 2.0], [5.0, 8.0, 2.0]], [[1.0, 4.0, 8.0], [8.0, 5.0, 7.0], [1.0, 1.0, 2.0]]], [[[7.0, 4.0, 4.0], [6.0, 8.0, 1.0], [2.0, 2.0, 7.0]], [[3.0, 1.0, 1.0], [1.0, 2.0, 8.0], [8.0, 4.0, 4.0]], [[8.0, 1.0, 3.0], [8.0, 4.0, 5.0], [1.0, 2.0, 6.0]]], [[[8.0, 4.0, 3.0], [5.0, 7.0, 4.0], [2.0, 2.0, 7.0]], [[8.0, 3.0, 4.0], [8.0, 4.0, 5.0], [7.0, 3.0, 2.0]], [[6.0, 8.0, 8.0], [2.0, 1.0, 5.0], [1.0, 2.0, 2.0]]], [[[3.0, 4.0, 8.0], [5.0, 6.0, 3.0], [8.0, 7.0, 8.0]], [[5.0, 1.0, 7.0], [4.0, 8.0, 1.0], [7.0, 6.0, 5.0]], [[6.0, 3.0, 1.0], [1.0, 5.0, 7.0], [7.0, 3.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[7.0, 3.0, 7.0], [5.0, 5.0, 7.0], [5.0, 4.0, 2.0]], [[5.0, 6.0, 5.0], [7.0, 4.0, 2.0], [5.0, 8.0, 2.0]], [[1.0, 4.0, 8.0], [8.0, 5.0, 7.0], [1.0, 1.0, 2.0]]], [[[7.0, 4.0, 4.0], [6.0, 8.0, 1.0], [2.0, 2.0, 7.0]], [[3.0, 1.0, 1.0], [1.0, 2.0, 8.0], [8.0, 4.0, 4.0]], [[8.0, 1.0, 3.0], [8.0, 4.0, 5.0], [1.0, 2.0, 6.0]]], [[[8.0, 4.0, 3.0], [5.0, 7.0, 4.0], [2.0, 2.0, 7.0]], [[8.0, 3.0, 4.0], [8.0, 4.0, 5.0], [7.0, 3.0, 2.0]], [[6.0, 8.0, 8.0], [2.0, 1.0, 5.0], [1.0, 2.0, 2.0]]], [[[3.0, 4.0, 8.0], [5.0, 6.0, 3.0], [8.0, 7.0, 8.0]], [[5.0, 1.0, 7.0], [4.0, 8.0, 1.0], [7.0, 6.0, 5.0]], [[6.0, 3.0, 1.0], [1.0, 5.0, 7.0], [7.0, 3.0, 5.0]]]]),self.functionspace)
12417        arg.setTaggedValue(1,numarray.array([[[[3.0, 5.0, 8.0], [1.0, 2.0, 8.0], [5.0, 8.0, 5.0]], [[6.0, 7.0, 8.0], [8.0, 1.0, 3.0], [6.0, 8.0, 1.0]], [[2.0, 7.0, 5.0], [1.0, 2.0, 4.0], [8.0, 1.0, 5.0]]], [[[2.0, 3.0, 5.0], [3.0, 2.0, 8.0], [7.0, 3.0, 4.0]], [[7.0, 4.0, 2.0], [8.0, 4.0, 8.0], [8.0, 1.0, 6.0]], [[2.0, 6.0, 2.0], [2.0, 2.0, 2.0], [5.0, 6.0, 7.0]]], [[[1.0, 1.0, 7.0], [1.0, 8.0, 3.0], [5.0, 7.0, 7.0]], [[4.0, 2.0, 7.0], [7.0, 2.0, 2.0], [5.0, 5.0, 5.0]], [[4.0, 8.0, 4.0], [5.0, 8.0, 4.0], [6.0, 2.0, 2.0]]], [[[1.0, 2.0, 5.0], [8.0, 7.0, 7.0], [5.0, 6.0, 4.0]], [[7.0, 6.0, 2.0], [2.0, 2.0, 1.0], [8.0, 4.0, 4.0]], [[7.0, 5.0, 6.0], [2.0, 6.0, 3.0], [4.0, 2.0, 3.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 5.0, 8.0], [1.0, 2.0, 8.0], [5.0, 8.0, 5.0]], [[6.0, 7.0, 8.0], [8.0, 1.0, 3.0], [6.0, 8.0, 1.0]], [[2.0, 7.0, 5.0], [1.0, 2.0, 4.0], [8.0, 1.0, 5.0]]], [[[2.0, 3.0, 5.0], [3.0, 2.0, 8.0], [7.0, 3.0, 4.0]], [[7.0, 4.0, 2.0], [8.0, 4.0, 8.0], [8.0, 1.0, 6.0]], [[2.0, 6.0, 2.0], [2.0, 2.0, 2.0], [5.0, 6.0, 7.0]]], [[[1.0, 1.0, 7.0], [1.0, 8.0, 3.0], [5.0, 7.0, 7.0]], [[4.0, 2.0, 7.0], [7.0, 2.0, 2.0], [5.0, 5.0, 5.0]], [[4.0, 8.0, 4.0], [5.0, 8.0, 4.0], [6.0, 2.0, 2.0]]], [[[1.0, 2.0, 5.0], [8.0, 7.0, 7.0], [5.0, 6.0, 4.0]], [[7.0, 6.0, 2.0], [2.0, 2.0, 1.0], [8.0, 4.0, 4.0]], [[7.0, 5.0, 6.0], [2.0, 6.0, 3.0], [4.0, 2.0, 3.0]]]]))
12418        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12419        val=msk_val*numarray.array([[[[2.0, 1.0], [7.0, 2.0]], [[4.0, 8.0], [2.0, 3.0]]], [[[4.0, 6.0], [7.0, 6.0]], [[8.0, 4.0], [7.0, 1.0]]], [[[6.0, 7.0], [6.0, 3.0]], [[4.0, 3.0], [6.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 5.0], [3.0, 5.0]], [[8.0, 6.0], [2.0, 4.0]]], [[[3.0, 5.0], [4.0, 2.0]], [[2.0, 4.0], [1.0, 6.0]]], [[[8.0, 6.0], [6.0, 7.0]], [[4.0, 1.0], [2.0, 8.0]]]])        val=msk_val*numarray.array([[[[2.0, 1.0], [7.0, 2.0]], [[4.0, 8.0], [2.0, 3.0]]], [[[4.0, 6.0], [7.0, 6.0]], [[8.0, 4.0], [7.0, 1.0]]], [[[6.0, 7.0], [6.0, 3.0]], [[4.0, 3.0], [6.0, 7.0]]]])+(1.-msk_val)*numarray.array([[[[4.0, 5.0], [3.0, 5.0]], [[8.0, 6.0], [2.0, 4.0]]], [[[3.0, 5.0], [4.0, 2.0]], [[2.0, 4.0], [1.0, 6.0]]], [[[8.0, 6.0], [6.0, 7.0]], [[4.0, 1.0], [2.0, 8.0]]]])
12420        arg[:3,:2,:2,:2]=val        arg[:3,:2,:2,:2]=val
12421        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12453  class Test_util_slicing_with_tagged_data Line 12453  class Test_util_slicing_with_tagged_data
12453     def test_setslice_taggedData_rank4_expandedData_RRRL(self):     def test_setslice_taggedData_rank4_expandedData_RRRL(self):
12454        arg=Data(numarray.array([[[[3.0, 8.0, 4.0], [4.0, 3.0, 8.0], [7.0, 5.0, 1.0]], [[8.0, 5.0, 2.0], [7.0, 7.0, 4.0], [4.0, 5.0, 5.0]], [[6.0, 7.0, 3.0], [2.0, 7.0, 4.0], [3.0, 8.0, 2.0]]], [[[8.0, 6.0, 7.0], [7.0, 7.0, 7.0], [7.0, 7.0, 8.0]], [[1.0, 5.0, 6.0], [3.0, 3.0, 8.0], [3.0, 7.0, 6.0]], [[8.0, 4.0, 6.0], [4.0, 1.0, 8.0], [6.0, 1.0, 5.0]]], [[[5.0, 4.0, 2.0], [5.0, 6.0, 8.0], [4.0, 1.0, 8.0]], [[5.0, 3.0, 4.0], [2.0, 1.0, 7.0], [1.0, 7.0, 1.0]], [[7.0, 2.0, 6.0], [6.0, 3.0, 8.0], [7.0, 6.0, 8.0]]], [[[5.0, 6.0, 3.0], [1.0, 7.0, 8.0], [1.0, 6.0, 2.0]], [[4.0, 2.0, 2.0], [8.0, 5.0, 8.0], [5.0, 1.0, 2.0]], [[2.0, 4.0, 6.0], [8.0, 3.0, 5.0], [3.0, 2.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 8.0, 4.0], [4.0, 3.0, 8.0], [7.0, 5.0, 1.0]], [[8.0, 5.0, 2.0], [7.0, 7.0, 4.0], [4.0, 5.0, 5.0]], [[6.0, 7.0, 3.0], [2.0, 7.0, 4.0], [3.0, 8.0, 2.0]]], [[[8.0, 6.0, 7.0], [7.0, 7.0, 7.0], [7.0, 7.0, 8.0]], [[1.0, 5.0, 6.0], [3.0, 3.0, 8.0], [3.0, 7.0, 6.0]], [[8.0, 4.0, 6.0], [4.0, 1.0, 8.0], [6.0, 1.0, 5.0]]], [[[5.0, 4.0, 2.0], [5.0, 6.0, 8.0], [4.0, 1.0, 8.0]], [[5.0, 3.0, 4.0], [2.0, 1.0, 7.0], [1.0, 7.0, 1.0]], [[7.0, 2.0, 6.0], [6.0, 3.0, 8.0], [7.0, 6.0, 8.0]]], [[[5.0, 6.0, 3.0], [1.0, 7.0, 8.0], [1.0, 6.0, 2.0]], [[4.0, 2.0, 2.0], [8.0, 5.0, 8.0], [5.0, 1.0, 2.0]], [[2.0, 4.0, 6.0], [8.0, 3.0, 5.0], [3.0, 2.0, 3.0]]]]),self.functionspace)
12455        arg.setTaggedValue(1,numarray.array([[[[6.0, 4.0, 7.0], [3.0, 5.0, 7.0], [6.0, 3.0, 2.0]], [[1.0, 2.0, 3.0], [8.0, 6.0, 2.0], [7.0, 8.0, 7.0]], [[6.0, 4.0, 4.0], [5.0, 8.0, 8.0], [4.0, 4.0, 8.0]]], [[[7.0, 5.0, 8.0], [4.0, 8.0, 1.0], [5.0, 8.0, 5.0]], [[2.0, 2.0, 3.0], [1.0, 4.0, 7.0], [1.0, 1.0, 7.0]], [[7.0, 4.0, 2.0], [1.0, 1.0, 5.0], [6.0, 1.0, 5.0]]], [[[5.0, 3.0, 6.0], [4.0, 6.0, 5.0], [3.0, 3.0, 4.0]], [[1.0, 7.0, 3.0], [4.0, 7.0, 8.0], [5.0, 6.0, 8.0]], [[6.0, 5.0, 6.0], [4.0, 8.0, 7.0], [5.0, 4.0, 3.0]]], [[[6.0, 2.0, 3.0], [5.0, 3.0, 6.0], [4.0, 6.0, 2.0]], [[2.0, 3.0, 6.0], [3.0, 5.0, 3.0], [2.0, 3.0, 1.0]], [[1.0, 6.0, 1.0], [5.0, 1.0, 8.0], [4.0, 2.0, 6.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[6.0, 4.0, 7.0], [3.0, 5.0, 7.0], [6.0, 3.0, 2.0]], [[1.0, 2.0, 3.0], [8.0, 6.0, 2.0], [7.0, 8.0, 7.0]], [[6.0, 4.0, 4.0], [5.0, 8.0, 8.0], [4.0, 4.0, 8.0]]], [[[7.0, 5.0, 8.0], [4.0, 8.0, 1.0], [5.0, 8.0, 5.0]], [[2.0, 2.0, 3.0], [1.0, 4.0, 7.0], [1.0, 1.0, 7.0]], [[7.0, 4.0, 2.0], [1.0, 1.0, 5.0], [6.0, 1.0, 5.0]]], [[[5.0, 3.0, 6.0], [4.0, 6.0, 5.0], [3.0, 3.0, 4.0]], [[1.0, 7.0, 3.0], [4.0, 7.0, 8.0], [5.0, 6.0, 8.0]], [[6.0, 5.0, 6.0], [4.0, 8.0, 7.0], [5.0, 4.0, 3.0]]], [[[6.0, 2.0, 3.0], [5.0, 3.0, 6.0], [4.0, 6.0, 2.0]], [[2.0, 3.0, 6.0], [3.0, 5.0, 3.0], [2.0, 3.0, 1.0]], [[1.0, 6.0, 1.0], [5.0, 1.0, 8.0], [4.0, 2.0, 6.0]]]]))
12456        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12457        val=msk_val*numarray.array([[[[7.0]]], [[[8.0]]]])+(1.-msk_val)*numarray.array([[[[1.0]]], [[[2.0]]]])        val=msk_val*numarray.array([[[[7.0]]], [[[8.0]]]])+(1.-msk_val)*numarray.array([[[[1.0]]], [[[2.0]]]])
12458        arg[1:3,1:2,1:2,2:]=val        arg[1:3,1:2,1:2,2:]=val
12459        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12491  class Test_util_slicing_with_tagged_data Line 12491  class Test_util_slicing_with_tagged_data
12491     def test_setslice_taggedData_rank4_expandedData_PPPP(self):     def test_setslice_taggedData_rank4_expandedData_PPPP(self):
12492        arg=Data(numarray.array([[[[1.0, 7.0, 6.0], [1.0, 4.0, 6.0], [3.0, 1.0, 6.0]], [[6.0, 3.0, 8.0], [5.0, 2.0, 5.0], [3.0, 1.0, 8.0]], [[7.0, 5.0, 8.0], [7.0, 6.0, 6.0], [1.0, 1.0, 7.0]]], [[[2.0, 4.0, 5.0], [7.0, 3.0, 7.0], [8.0, 8.0, 5.0]], [[4.0, 4.0, 8.0], [5.0, 1.0, 5.0], [8.0, 6.0, 7.0]], [[4.0, 3.0, 1.0], [5.0, 1.0, 7.0], [8.0, 5.0, 7.0]]], [[[2.0, 4.0, 4.0], [3.0, 3.0, 6.0], [1.0, 8.0, 6.0]], [[7.0, 8.0, 1.0], [4.0, 6.0, 2.0], [2.0, 6.0, 8.0]], [[5.0, 1.0, 3.0], [3.0, 7.0, 5.0], [4.0, 3.0, 1.0]]], [[[3.0, 2.0, 3.0], [6.0, 1.0, 1.0], [2.0, 6.0, 1.0]], [[6.0, 8.0, 4.0], [3.0, 7.0, 6.0], [5.0, 2.0, 6.0]], [[2.0, 5.0, 8.0], [5.0, 2.0, 7.0], [7.0, 2.0, 6.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[1.0, 7.0, 6.0], [1.0, 4.0, 6.0], [3.0, 1.0, 6.0]], [[6.0, 3.0, 8.0], [5.0, 2.0, 5.0], [3.0, 1.0, 8.0]], [[7.0, 5.0, 8.0], [7.0, 6.0, 6.0], [1.0, 1.0, 7.0]]], [[[2.0, 4.0, 5.0], [7.0, 3.0, 7.0], [8.0, 8.0, 5.0]], [[4.0, 4.0, 8.0], [5.0, 1.0, 5.0], [8.0, 6.0, 7.0]], [[4.0, 3.0, 1.0], [5.0, 1.0, 7.0], [8.0, 5.0, 7.0]]], [[[2.0, 4.0, 4.0], [3.0, 3.0, 6.0], [1.0, 8.0, 6.0]], [[7.0, 8.0, 1.0], [4.0, 6.0, 2.0], [2.0, 6.0, 8.0]], [[5.0, 1.0, 3.0], [3.0, 7.0, 5.0], [4.0, 3.0, 1.0]]], [[[3.0, 2.0, 3.0], [6.0, 1.0, 1.0], [2.0, 6.0, 1.0]], [[6.0, 8.0, 4.0], [3.0, 7.0, 6.0], [5.0, 2.0, 6.0]], [[2.0, 5.0, 8.0], [5.0, 2.0, 7.0], [7.0, 2.0, 6.0]]]]),self.functionspace)
12493        arg.setTaggedValue(1,numarray.array([[[[7.0, 6.0, 2.0], [5.0, 3.0, 4.0], [3.0, 7.0, 4.0]], [[8.0, 4.0, 7.0], [8.0, 1.0, 3.0], [7.0, 2.0, 4.0]], [[8.0, 5.0, 3.0], [1.0, 3.0, 2.0], [8.0, 6.0, 2.0]]], [[[7.0, 6.0, 2.0], [2.0, 2.0, 5.0], [3.0, 1.0, 4.0]], [[4.0, 3.0, 6.0], [1.0, 5.0, 8.0], [3.0, 8.0, 1.0]], [[2.0, 1.0, 6.0], [3.0, 1.0, 8.0], [8.0, 5.0, 3.0]]], [[[2.0, 6.0, 8.0], [5.0, 3.0, 7.0], [4.0, 8.0, 7.0]], [[7.0, 4.0, 2.0], [3.0, 5.0, 7.0], [7.0, 8.0, 6.0]], [[5.0, 3.0, 7.0], [6.0, 6.0, 5.0], [4.0, 8.0, 3.0]]], [[[1.0, 3.0, 6.0], [1.0, 1.0, 1.0], [3.0, 5.0, 8.0]], [[8.0, 7.0, 2.0], [7.0, 7.0, 6.0], [8.0, 2.0, 1.0]], [[7.0, 6.0, 2.0], [6.0, 4.0, 6.0], [7.0, 3.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 6.0, 2.0], [5.0, 3.0, 4.0], [3.0, 7.0, 4.0]], [[8.0, 4.0, 7.0], [8.0, 1.0, 3.0], [7.0, 2.0, 4.0]], [[8.0, 5.0, 3.0], [1.0, 3.0, 2.0], [8.0, 6.0, 2.0]]], [[[7.0, 6.0, 2.0], [2.0, 2.0, 5.0], [3.0, 1.0, 4.0]], [[4.0, 3.0, 6.0], [1.0, 5.0, 8.0], [3.0, 8.0, 1.0]], [[2.0, 1.0, 6.0], [3.0, 1.0, 8.0], [8.0, 5.0, 3.0]]], [[[2.0, 6.0, 8.0], [5.0, 3.0, 7.0], [4.0, 8.0, 7.0]], [[7.0, 4.0, 2.0], [3.0, 5.0, 7.0], [7.0, 8.0, 6.0]], [[5.0, 3.0, 7.0], [6.0, 6.0, 5.0], [4.0, 8.0, 3.0]]], [[[1.0, 3.0, 6.0], [1.0, 1.0, 1.0], [3.0, 5.0, 8.0]], [[8.0, 7.0, 2.0], [7.0, 7.0, 6.0], [8.0, 2.0, 1.0]], [[7.0, 6.0, 2.0], [6.0, 4.0, 6.0], [7.0, 3.0, 1.0]]]]))
12494        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12495        val=(1.-msk_val)*(1.0)+msk_val*(1.0)        val=(1.-msk_val)*(1.0)+msk_val*(1.0)
12496        arg[2,1,1,1]=val        arg[2,1,1,1]=val
12497        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12529  class Test_util_slicing_with_tagged_data Line 12529  class Test_util_slicing_with_tagged_data
12529     def test_setslice_taggedData_rank4_expandedData_CPLN(self):     def test_setslice_taggedData_rank4_expandedData_CPLN(self):
12530        arg=Data(numarray.array([[[[3.0, 7.0, 8.0], [7.0, 3.0, 4.0], [8.0, 5.0, 6.0]], [[4.0, 6.0, 1.0], [3.0, 7.0, 1.0], [3.0, 8.0, 5.0]], [[2.0, 7.0, 5.0], [3.0, 2.0, 5.0], [8.0, 2.0, 8.0]]], [[[1.0, 5.0, 7.0], [1.0, 8.0, 3.0], [8.0, 7.0, 8.0]], [[8.0, 4.0, 1.0], [6.0, 7.0, 3.0], [4.0, 4.0, 8.0]], [[2.0, 4.0, 6.0], [4.0, 3.0, 1.0], [8.0, 6.0, 3.0]]], [[[8.0, 6.0, 1.0], [3.0, 5.0, 4.0], [1.0, 7.0, 5.0]], [[3.0, 1.0, 5.0], [7.0, 3.0, 7.0], [4.0, 5.0, 2.0]], [[4.0, 4.0, 7.0], [3.0, 1.0, 6.0], [2.0, 8.0, 7.0]]], [[[2.0, 1.0, 5.0], [3.0, 5.0, 7.0], [2.0, 4.0, 3.0]], [[3.0, 5.0, 3.0], [7.0, 5.0, 6.0], [6.0, 1.0, 1.0]], [[6.0, 3.0, 2.0], [4.0, 1.0, 7.0], [4.0, 1.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 7.0, 8.0], [7.0, 3.0, 4.0], [8.0, 5.0, 6.0]], [[4.0, 6.0, 1.0], [3.0, 7.0, 1.0], [3.0, 8.0, 5.0]], [[2.0, 7.0, 5.0], [3.0, 2.0, 5.0], [8.0, 2.0, 8.0]]], [[[1.0, 5.0, 7.0], [1.0, 8.0, 3.0], [8.0, 7.0, 8.0]], [[8.0, 4.0, 1.0], [6.0, 7.0, 3.0], [4.0, 4.0, 8.0]], [[2.0, 4.0, 6.0], [4.0, 3.0, 1.0], [8.0, 6.0, 3.0]]], [[[8.0, 6.0, 1.0], [3.0, 5.0, 4.0], [1.0, 7.0, 5.0]], [[3.0, 1.0, 5.0], [7.0, 3.0, 7.0], [4.0, 5.0, 2.0]], [[4.0, 4.0, 7.0], [3.0, 1.0, 6.0], [2.0, 8.0, 7.0]]], [[[2.0, 1.0, 5.0], [3.0, 5.0, 7.0], [2.0, 4.0, 3.0]], [[3.0, 5.0, 3.0], [7.0, 5.0, 6.0], [6.0, 1.0, 1.0]], [[6.0, 3.0, 2.0], [4.0, 1.0, 7.0], [4.0, 1.0, 7.0]]]]),self.functionspace)
12531        arg.setTaggedValue(1,numarray.array([[[[8.0, 5.0, 5.0], [7.0, 3.0, 8.0], [7.0, 7.0, 6.0]], [[6.0, 7.0, 7.0], [4.0, 7.0, 1.0], [5.0, 8.0, 6.0]], [[7.0, 8.0, 7.0], [7.0, 5.0, 4.0], [5.0, 6.0, 8.0]]], [[[1.0, 5.0, 1.0], [8.0, 7.0, 8.0], [7.0, 2.0, 3.0]], [[5.0, 4.0, 2.0], [3.0, 7.0, 4.0], [5.0, 3.0, 6.0]], [[8.0, 2.0, 6.0], [8.0, 6.0, 3.0], [1.0, 2.0, 4.0]]], [[[6.0, 4.0, 3.0], [1.0, 6.0, 7.0], [3.0, 3.0, 4.0]], [[3.0, 5.0, 5.0], [5.0, 5.0, 8.0], [2.0, 1.0, 4.0]], [[7.0, 7.0, 1.0], [6.0, 4.0, 7.0], [1.0, 3.0, 1.0]]], [[[3.0, 4.0, 2.0], [6.0, 6.0, 7.0], [4.0, 8.0, 1.0]], [[8.0, 1.0, 8.0], [3.0, 5.0, 8.0], [2.0, 6.0, 5.0]], [[4.0, 1.0, 2.0], [3.0, 3.0, 4.0], [8.0, 3.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 5.0, 5.0], [7.0, 3.0, 8.0], [7.0, 7.0, 6.0]], [[6.0, 7.0, 7.0], [4.0, 7.0, 1.0], [5.0, 8.0, 6.0]], [[7.0, 8.0, 7.0], [7.0, 5.0, 4.0], [5.0, 6.0, 8.0]]], [[[1.0, 5.0, 1.0], [8.0, 7.0, 8.0], [7.0, 2.0, 3.0]], [[5.0, 4.0, 2.0], [3.0, 7.0, 4.0], [5.0, 3.0, 6.0]], [[8.0, 2.0, 6.0], [8.0, 6.0, 3.0], [1.0, 2.0, 4.0]]], [[[6.0, 4.0, 3.0], [1.0, 6.0, 7.0], [3.0, 3.0, 4.0]], [[3.0, 5.0, 5.0], [5.0, 5.0, 8.0], [2.0, 1.0, 4.0]], [[7.0, 7.0, 1.0], [6.0, 4.0, 7.0], [1.0, 3.0, 1.0]]], [[[3.0, 4.0, 2.0], [6.0, 6.0, 7.0], [4.0, 8.0, 1.0]], [[8.0, 1.0, 8.0], [3.0, 5.0, 8.0], [2.0, 6.0, 5.0]], [[4.0, 1.0, 2.0], [3.0, 3.0, 4.0], [8.0, 3.0, 1.0]]]]))
12532        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12533        val=msk_val*numarray.array([[[1.0, 2.0, 3.0]], [[7.0, 1.0, 5.0]], [[8.0, 7.0, 5.0]], [[4.0, 7.0, 2.0]]])+(1.-msk_val)*numarray.array([[[6.0, 2.0, 7.0]], [[1.0, 2.0, 1.0]], [[7.0, 1.0, 7.0]], [[7.0, 7.0, 7.0]]])        val=msk_val*numarray.array([[[1.0, 2.0, 3.0]], [[7.0, 1.0, 5.0]], [[8.0, 7.0, 5.0]], [[4.0, 7.0, 2.0]]])+(1.-msk_val)*numarray.array([[[6.0, 2.0, 7.0]], [[1.0, 2.0, 1.0]], [[7.0, 1.0, 7.0]], [[7.0, 7.0, 7.0]]])
12534        arg[:,1,2:]=val        arg[:,1,2:]=val
12535        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12567  class Test_util_slicing_with_tagged_data Line 12567  class Test_util_slicing_with_tagged_data
12567     def test_setslice_taggedData_rank4_expandedData_CULN(self):     def test_setslice_taggedData_rank4_expandedData_CULN(self):
12568        arg=Data(numarray.array([[[[6.0, 7.0, 3.0], [8.0, 5.0, 7.0], [7.0, 8.0, 7.0]], [[6.0, 3.0, 1.0], [7.0, 4.0, 1.0], [1.0, 6.0, 8.0]], [[3.0, 2.0, 6.0], [7.0, 6.0, 2.0], [8.0, 3.0, 6.0]]], [[[2.0, 1.0, 7.0], [3.0, 3.0, 7.0], [7.0, 1.0, 2.0]], [[8.0, 7.0, 1.0], [2.0, 1.0, 5.0], [7.0, 5.0, 3.0]], [[1.0, 3.0, 6.0], [7.0, 3.0, 1.0], [5.0, 3.0, 5.0]]], [[[2.0, 5.0, 1.0], [7.0, 7.0, 1.0], [5.0, 1.0, 3.0]], [[6.0, 6.0, 2.0], [7.0, 5.0, 6.0], [2.0, 1.0, 8.0]], [[1.0, 4.0, 7.0], [6.0, 1.0, 2.0], [6.0, 5.0, 8.0]]], [[[7.0, 2.0, 4.0], [8.0, 3.0, 2.0], [5.0, 2.0, 4.0]], [[7.0, 2.0, 5.0], [1.0, 2.0, 8.0], [6.0, 1.0, 7.0]], [[7.0, 1.0, 8.0], [4.0, 8.0, 6.0], [3.0, 8.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[6.0, 7.0, 3.0], [8.0, 5.0, 7.0], [7.0, 8.0, 7.0]], [[6.0, 3.0, 1.0], [7.0, 4.0, 1.0], [1.0, 6.0, 8.0]], [[3.0, 2.0, 6.0], [7.0, 6.0, 2.0], [8.0, 3.0, 6.0]]], [[[2.0, 1.0, 7.0], [3.0, 3.0, 7.0], [7.0, 1.0, 2.0]], [[8.0, 7.0, 1.0], [2.0, 1.0, 5.0], [7.0, 5.0, 3.0]], [[1.0, 3.0, 6.0], [7.0, 3.0, 1.0], [5.0, 3.0, 5.0]]], [[[2.0, 5.0, 1.0], [7.0, 7.0, 1.0], [5.0, 1.0, 3.0]], [[6.0, 6.0, 2.0], [7.0, 5.0, 6.0], [2.0, 1.0, 8.0]], [[1.0, 4.0, 7.0], [6.0, 1.0, 2.0], [6.0, 5.0, 8.0]]], [[[7.0, 2.0, 4.0], [8.0, 3.0, 2.0], [5.0, 2.0, 4.0]], [[7.0, 2.0, 5.0], [1.0, 2.0, 8.0], [6.0, 1.0, 7.0]], [[7.0, 1.0, 8.0], [4.0, 8.0, 6.0], [3.0, 8.0, 8.0]]]]),self.functionspace)
12569        arg.setTaggedValue(1,numarray.array([[[[8.0, 4.0, 5.0], [3.0, 5.0, 8.0], [7.0, 2.0, 2.0]], [[1.0, 1.0, 1.0], [7.0, 7.0, 2.0], [2.0, 6.0, 3.0]], [[8.0, 1.0, 5.0], [2.0, 2.0, 5.0], [3.0, 6.0, 4.0]]], [[[5.0, 7.0, 2.0], [3.0, 8.0, 4.0], [6.0, 1.0, 6.0]], [[3.0, 2.0, 7.0], [5.0, 5.0, 6.0], [7.0, 2.0, 8.0]], [[8.0, 8.0, 7.0], [6.0, 5.0, 2.0], [2.0, 1.0, 2.0]]], [[[4.0, 7.0, 2.0], [4.0, 8.0, 6.0], [6.0, 5.0, 3.0]], [[6.0, 1.0, 1.0], [6.0, 6.0, 8.0], [4.0, 6.0, 8.0]], [[5.0, 4.0, 5.0], [3.0, 8.0, 2.0], [4.0, 6.0, 6.0]]], [[[5.0, 8.0, 3.0], [4.0, 3.0, 5.0], [7.0, 5.0, 2.0]], [[7.0, 1.0, 6.0], [2.0, 2.0, 7.0], [5.0, 4.0, 3.0]], [[1.0, 3.0, 3.0], [7.0, 8.0, 1.0], [1.0, 2.0, 2.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[8.0, 4.0, 5.0], [3.0, 5.0, 8.0], [7.0, 2.0, 2.0]], [[1.0, 1.0, 1.0], [7.0, 7.0, 2.0], [2.0, 6.0, 3.0]], [[8.0, 1.0, 5.0], [2.0, 2.0, 5.0], [3.0, 6.0, 4.0]]], [[[5.0, 7.0, 2.0], [3.0, 8.0, 4.0], [6.0, 1.0, 6.0]], [[3.0, 2.0, 7.0], [5.0, 5.0, 6.0], [7.0, 2.0, 8.0]], [[8.0, 8.0, 7.0], [6.0, 5.0, 2.0], [2.0, 1.0, 2.0]]], [[[4.0, 7.0, 2.0], [4.0, 8.0, 6.0], [6.0, 5.0, 3.0]], [[6.0, 1.0, 1.0], [6.0, 6.0, 8.0], [4.0, 6.0, 8.0]], [[5.0, 4.0, 5.0], [3.0, 8.0, 2.0], [4.0, 6.0, 6.0]]], [[[5.0, 8.0, 3.0], [4.0, 3.0, 5.0], [7.0, 5.0, 2.0]], [[7.0, 1.0, 6.0], [2.0, 2.0, 7.0], [5.0, 4.0, 3.0]], [[1.0, 3.0, 3.0], [7.0, 8.0, 1.0], [1.0, 2.0, 2.0]]]]))
12570        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12571        val=msk_val*numarray.array([[[[8.0, 5.0, 1.0]], [[8.0, 6.0, 4.0]]], [[[6.0, 6.0, 7.0]], [[8.0, 5.0, 8.0]]], [[[5.0, 5.0, 2.0]], [[3.0, 6.0, 1.0]]], [[[4.0, 6.0, 8.0]], [[2.0, 1.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 5.0, 8.0]], [[7.0, 7.0, 7.0]]], [[[7.0, 2.0, 6.0]], [[8.0, 3.0, 6.0]]], [[[5.0, 1.0, 8.0]], [[4.0, 6.0, 2.0]]], [[[8.0, 1.0, 6.0]], [[7.0, 8.0, 4.0]]]])        val=msk_val*numarray.array([[[[8.0, 5.0, 1.0]], [[8.0, 6.0, 4.0]]], [[[6.0, 6.0, 7.0]], [[8.0, 5.0, 8.0]]], [[[5.0, 5.0, 2.0]], [[3.0, 6.0, 1.0]]], [[[4.0, 6.0, 8.0]], [[2.0, 1.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[6.0, 5.0, 8.0]], [[7.0, 7.0, 7.0]]], [[[7.0, 2.0, 6.0]], [[8.0, 3.0, 6.0]]], [[[5.0, 1.0, 8.0]], [[4.0, 6.0, 2.0]]], [[[8.0, 1.0, 6.0]], [[7.0, 8.0, 4.0]]]])
12572        arg[:,:2,2:]=val        arg[:,:2,2:]=val
12573        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12605  class Test_util_slicing_with_tagged_data Line 12605  class Test_util_slicing_with_tagged_data
12605     def test_setslice_taggedData_rank4_expandedData_PRUN(self):     def test_setslice_taggedData_rank4_expandedData_PRUN(self):
12606        arg=Data(numarray.array([[[[5.0, 1.0, 3.0], [3.0, 6.0, 6.0], [1.0, 2.0, 8.0]], [[1.0, 4.0, 5.0], [1.0, 4.0, 6.0], [8.0, 2.0, 3.0]], [[7.0, 8.0, 2.0], [5.0, 1.0, 1.0], [5.0, 5.0, 7.0]]], [[[4.0, 7.0, 8.0], [1.0, 5.0, 5.0], [5.0, 8.0, 4.0]], [[6.0, 5.0, 1.0], [6.0, 2.0, 4.0], [2.0, 8.0, 1.0]], [[1.0, 3.0, 2.0], [1.0, 7.0, 8.0], [4.0, 1.0, 4.0]]], [[[4.0, 6.0, 1.0], [3.0, 1.0, 4.0], [3.0, 6.0, 5.0]], [[1.0, 3.0, 6.0], [2.0, 2.0, 4.0], [7.0, 5.0, 1.0]], [[5.0, 4.0, 5.0], [6.0, 3.0, 8.0], [6.0, 3.0, 4.0]]], [[[4.0, 7.0, 8.0], [4.0, 6.0, 5.0], [8.0, 4.0, 8.0]], [[5.0, 1.0, 1.0], [2.0, 4.0, 8.0], [7.0, 7.0, 5.0]], [[5.0, 5.0, 2.0], [5.0, 7.0, 2.0], [5.0, 1.0, 2.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 1.0, 3.0], [3.0, 6.0, 6.0], [1.0, 2.0, 8.0]], [[1.0, 4.0, 5.0], [1.0, 4.0, 6.0], [8.0, 2.0, 3.0]], [[7.0, 8.0, 2.0], [5.0, 1.0, 1.0], [5.0, 5.0, 7.0]]], [[[4.0, 7.0, 8.0], [1.0, 5.0, 5.0], [5.0, 8.0, 4.0]], [[6.0, 5.0, 1.0], [6.0, 2.0, 4.0], [2.0, 8.0, 1.0]], [[1.0, 3.0, 2.0], [1.0, 7.0, 8.0], [4.0, 1.0, 4.0]]], [[[4.0, 6.0, 1.0], [3.0, 1.0, 4.0], [3.0, 6.0, 5.0]], [[1.0, 3.0, 6.0], [2.0, 2.0, 4.0], [7.0, 5.0, 1.0]], [[5.0, 4.0, 5.0], [6.0, 3.0, 8.0], [6.0, 3.0, 4.0]]], [[[4.0, 7.0, 8.0], [4.0, 6.0, 5.0], [8.0, 4.0, 8.0]], [[5.0, 1.0, 1.0], [2.0, 4.0, 8.0], [7.0, 7.0, 5.0]], [[5.0, 5.0, 2.0], [5.0, 7.0, 2.0], [5.0, 1.0, 2.0]]]]),self.functionspace)
12607        arg.setTaggedValue(1,numarray.array([[[[4.0, 3.0, 4.0], [5.0, 2.0, 5.0], [4.0, 6.0, 6.0]], [[3.0, 4.0, 4.0], [6.0, 8.0, 5.0], [3.0, 1.0, 3.0]], [[3.0, 1.0, 5.0], [2.0, 2.0, 8.0], [6.0, 5.0, 2.0]]], [[[4.0, 3.0, 6.0], [1.0, 2.0, 3.0], [1.0, 1.0, 1.0]], [[6.0, 8.0, 8.0], [2.0, 1.0, 5.0], [2.0, 6.0, 4.0]], [[1.0, 2.0, 6.0], [7.0, 8.0, 4.0], [4.0, 1.0, 5.0]]], [[[4.0, 6.0, 2.0], [3.0, 4.0, 7.0], [5.0, 4.0, 4.0]], [[1.0, 8.0, 2.0], [4.0, 2.0, 1.0], [7.0, 4.0, 2.0]], [[1.0, 7.0, 1.0], [1.0, 4.0, 3.0], [5.0, 2.0, 8.0]]], [[[1.0, 4.0, 3.0], [7.0, 5.0, 1.0], [8.0, 2.0, 8.0]], [[2.0, 6.0, 8.0], [3.0, 3.0, 8.0], [2.0, 2.0, 8.0]], [[3.0, 8.0, 2.0], [3.0, 1.0, 4.0], [2.0, 7.0, 7.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 3.0, 4.0], [5.0, 2.0, 5.0], [4.0, 6.0, 6.0]], [[3.0, 4.0, 4.0], [6.0, 8.0, 5.0], [3.0, 1.0, 3.0]], [[3.0, 1.0, 5.0], [2.0, 2.0, 8.0], [6.0, 5.0, 2.0]]], [[[4.0, 3.0, 6.0], [1.0, 2.0, 3.0], [1.0, 1.0, 1.0]], [[6.0, 8.0, 8.0], [2.0, 1.0, 5.0], [2.0, 6.0, 4.0]], [[1.0, 2.0, 6.0], [7.0, 8.0, 4.0], [4.0, 1.0, 5.0]]], [[[4.0, 6.0, 2.0], [3.0, 4.0, 7.0], [5.0, 4.0, 4.0]], [[1.0, 8.0, 2.0], [4.0, 2.0, 1.0], [7.0, 4.0, 2.0]], [[1.0, 7.0, 1.0], [1.0, 4.0, 3.0], [5.0, 2.0, 8.0]]], [[[1.0, 4.0, 3.0], [7.0, 5.0, 1.0], [8.0, 2.0, 8.0]], [[2.0, 6.0, 8.0], [3.0, 3.0, 8.0], [2.0, 2.0, 8.0]], [[3.0, 8.0, 2.0], [3.0, 1.0, 4.0], [2.0, 7.0, 7.0]]]]))
12608        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12609        val=msk_val*numarray.array([[[4.0, 2.0, 7.0], [1.0, 4.0, 7.0]]])+(1.-msk_val)*numarray.array([[[8.0, 4.0, 4.0], [8.0, 1.0, 6.0]]])        val=msk_val*numarray.array([[[4.0, 2.0, 7.0], [1.0, 4.0, 7.0]]])+(1.-msk_val)*numarray.array([[[8.0, 4.0, 4.0], [8.0, 1.0, 6.0]]])
12610        arg[2,1:2,:2]=val        arg[2,1:2,:2]=val
12611        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12643  class Test_util_slicing_with_tagged_data Line 12643  class Test_util_slicing_with_tagged_data
12643     def test_setslice_taggedData_rank4_expandedData_RRLN(self):     def test_setslice_taggedData_rank4_expandedData_RRLN(self):
12644        arg=Data(numarray.array([[[[8.0, 8.0, 5.0], [3.0, 7.0, 2.0], [3.0, 7.0, 8.0]], [[2.0, 5.0, 3.0], [3.0, 4.0, 6.0], [7.0, 2.0, 4.0]], [[1.0, 6.0, 1.0], [7.0, 5.0, 4.0], [1.0, 6.0, 6.0]]], [[[5.0, 6.0, 2.0], [5.0, 4.0, 7.0], [3.0, 1.0, 2.0]], [[8.0, 5.0, 7.0], [6.0, 6.0, 6.0], [5.0, 1.0, 8.0]], [[6.0, 8.0, 6.0], [2.0, 8.0, 2.0], [6.0, 2.0, 5.0]]], [[[8.0, 1.0, 1.0], [3.0, 8.0, 5.0], [8.0, 7.0, 7.0]], [[7.0, 6.0, 8.0], [2.0, 2.0, 8.0], [2.0, 6.0, 6.0]], [[5.0, 8.0, 3.0], [2.0, 6.0, 1.0], [1.0, 5.0, 6.0]]], [[[2.0, 1.0, 6.0], [2.0, 6.0, 5.0], [2.0, 5.0, 2.0]], [[1.0, 3.0, 5.0], [5.0, 7.0, 4.0], [5.0, 2.0, 7.0]], [[3.0, 8.0, 5.0], [2.0, 4.0, 7.0], [7.0, 8.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 8.0, 5.0], [3.0, 7.0, 2.0], [3.0, 7.0, 8.0]], [[2.0, 5.0, 3.0], [3.0, 4.0, 6.0], [7.0, 2.0, 4.0]], [[1.0, 6.0, 1.0], [7.0, 5.0, 4.0], [1.0, 6.0, 6.0]]], [[[5.0, 6.0, 2.0], [5.0, 4.0, 7.0], [3.0, 1.0, 2.0]], [[8.0, 5.0, 7.0], [6.0, 6.0, 6.0], [5.0, 1.0, 8.0]], [[6.0, 8.0, 6.0], [2.0, 8.0, 2.0], [6.0, 2.0, 5.0]]], [[[8.0, 1.0, 1.0], [3.0, 8.0, 5.0], [8.0, 7.0, 7.0]], [[7.0, 6.0, 8.0], [2.0, 2.0, 8.0], [2.0, 6.0, 6.0]], [[5.0, 8.0, 3.0], [2.0, 6.0, 1.0], [1.0, 5.0, 6.0]]], [[[2.0, 1.0, 6.0], [2.0, 6.0, 5.0], [2.0, 5.0, 2.0]], [[1.0, 3.0, 5.0], [5.0, 7.0, 4.0], [5.0, 2.0, 7.0]], [[3.0, 8.0, 5.0], [2.0, 4.0, 7.0], [7.0, 8.0, 4.0]]]]),self.functionspace)
12645        arg.setTaggedValue(1,numarray.array([[[[7.0, 3.0, 7.0], [5.0, 5.0, 7.0], [4.0, 7.0, 4.0]], [[1.0, 3.0, 7.0], [4.0, 4.0, 7.0], [4.0, 5.0, 4.0]], [[8.0, 3.0, 6.0], [2.0, 8.0, 1.0], [5.0, 7.0, 6.0]]], [[[8.0, 8.0, 8.0], [4.0, 8.0, 4.0], [2.0, 5.0, 3.0]], [[6.0, 8.0, 7.0], [3.0, 4.0, 4.0], [8.0, 8.0, 8.0]], [[7.0, 7.0, 6.0], [4.0, 8.0, 8.0], [1.0, 7.0, 7.0]]], [[[2.0, 3.0, 6.0], [5.0, 5.0, 3.0], [6.0, 8.0, 4.0]], [[1.0, 6.0, 4.0], [5.0, 3.0, 5.0], [2.0, 5.0, 4.0]], [[3.0, 1.0, 7.0], [6.0, 3.0, 6.0], [1.0, 3.0, 5.0]]], [[[1.0, 7.0, 8.0], [1.0, 3.0, 5.0], [4.0, 2.0, 5.0]], [[6.0, 5.0, 8.0], [8.0, 4.0, 7.0], [4.0, 8.0, 1.0]], [[8.0, 8.0, 2.0], [5.0, 5.0, 5.0], [6.0, 5.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[7.0, 3.0, 7.0], [5.0, 5.0, 7.0], [4.0, 7.0, 4.0]], [[1.0, 3.0, 7.0], [4.0, 4.0, 7.0], [4.0, 5.0, 4.0]], [[8.0, 3.0, 6.0], [2.0, 8.0, 1.0], [5.0, 7.0, 6.0]]], [[[8.0, 8.0, 8.0], [4.0, 8.0, 4.0], [2.0, 5.0, 3.0]], [[6.0, 8.0, 7.0], [3.0, 4.0, 4.0], [8.0, 8.0, 8.0]], [[7.0, 7.0, 6.0], [4.0, 8.0, 8.0], [1.0, 7.0, 7.0]]], [[[2.0, 3.0, 6.0], [5.0, 5.0, 3.0], [6.0, 8.0, 4.0]], [[1.0, 6.0, 4.0], [5.0, 3.0, 5.0], [2.0, 5.0, 4.0]], [[3.0, 1.0, 7.0], [6.0, 3.0, 6.0], [1.0, 3.0, 5.0]]], [[[1.0, 7.0, 8.0], [1.0, 3.0, 5.0], [4.0, 2.0, 5.0]], [[6.0, 5.0, 8.0], [8.0, 4.0, 7.0], [4.0, 8.0, 1.0]], [[8.0, 8.0, 2.0], [5.0, 5.0, 5.0], [6.0, 5.0, 8.0]]]]))
12646        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12647        val=msk_val*numarray.array([[[[5.0, 3.0, 4.0]]], [[[8.0, 6.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 5.0, 6.0]]], [[[4.0, 5.0, 7.0]]]])        val=msk_val*numarray.array([[[[5.0, 3.0, 4.0]]], [[[8.0, 6.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[2.0, 5.0, 6.0]]], [[[4.0, 5.0, 7.0]]]])
12648        arg[1:3,1:2,2:]=val        arg[1:3,1:2,2:]=val
12649        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12681  class Test_util_slicing_with_tagged_data Line 12681  class Test_util_slicing_with_tagged_data
12681     def test_setslice_taggedData_rank4_expandedData_UCUN(self):     def test_setslice_taggedData_rank4_expandedData_UCUN(self):
12682        arg=Data(numarray.array([[[[2.0, 1.0, 2.0], [2.0, 7.0, 6.0], [8.0, 5.0, 8.0]], [[5.0, 8.0, 7.0], [2.0, 4.0, 7.0], [2.0, 2.0, 5.0]], [[1.0, 8.0, 7.0], [8.0, 5.0, 2.0], [7.0, 2.0, 8.0]]], [[[7.0, 6.0, 8.0], [8.0, 2.0, 5.0], [6.0, 6.0, 4.0]], [[5.0, 8.0, 1.0], [1.0, 7.0, 7.0], [2.0, 1.0, 6.0]], [[3.0, 6.0, 2.0], [1.0, 4.0, 8.0], [3.0, 4.0, 1.0]]], [[[3.0, 1.0, 8.0], [4.0, 6.0, 2.0], [7.0, 2.0, 2.0]], [[8.0, 2.0, 4.0], [1.0, 4.0, 4.0], [7.0, 3.0, 5.0]], [[7.0, 5.0, 7.0], [5.0, 6.0, 7.0], [2.0, 1.0, 6.0]]], [[[5.0, 4.0, 2.0], [6.0, 2.0, 2.0], [5.0, 4.0, 1.0]], [[3.0, 4.0, 6.0], [5.0, 8.0, 4.0], [1.0, 7.0, 7.0]], [[7.0, 6.0, 1.0], [7.0, 7.0, 5.0], [1.0, 5.0, 7.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 1.0, 2.0], [2.0, 7.0, 6.0], [8.0, 5.0, 8.0]], [[5.0, 8.0, 7.0], [2.0, 4.0, 7.0], [2.0, 2.0, 5.0]], [[1.0, 8.0, 7.0], [8.0, 5.0, 2.0], [7.0, 2.0, 8.0]]], [[[7.0, 6.0, 8.0], [8.0, 2.0, 5.0], [6.0, 6.0, 4.0]], [[5.0, 8.0, 1.0], [1.0, 7.0, 7.0], [2.0, 1.0, 6.0]], [[3.0, 6.0, 2.0], [1.0, 4.0, 8.0], [3.0, 4.0, 1.0]]], [[[3.0, 1.0, 8.0], [4.0, 6.0, 2.0], [7.0, 2.0, 2.0]], [[8.0, 2.0, 4.0], [1.0, 4.0, 4.0], [7.0, 3.0, 5.0]], [[7.0, 5.0, 7.0], [5.0, 6.0, 7.0], [2.0, 1.0, 6.0]]], [[[5.0, 4.0, 2.0], [6.0, 2.0, 2.0], [5.0, 4.0, 1.0]], [[3.0, 4.0, 6.0], [5.0, 8.0, 4.0], [1.0, 7.0, 7.0]], [[7.0, 6.0, 1.0], [7.0, 7.0, 5.0], [1.0, 5.0, 7.0]]]]),self.functionspace)
12683        arg.setTaggedValue(1,numarray.array([[[[3.0, 3.0, 7.0], [6.0, 2.0, 3.0], [4.0, 1.0, 6.0]], [[5.0, 6.0, 3.0], [7.0, 3.0, 2.0], [1.0, 6.0, 5.0]], [[7.0, 2.0, 7.0], [4.0, 7.0, 7.0], [8.0, 4.0, 8.0]]], [[[3.0, 4.0, 3.0], [2.0, 4.0, 4.0], [8.0, 8.0, 8.0]], [[4.0, 3.0, 2.0], [8.0, 1.0, 4.0], [8.0, 4.0, 7.0]], [[4.0, 3.0, 1.0], [2.0, 8.0, 1.0], [3.0, 7.0, 8.0]]], [[[5.0, 7.0, 1.0], [4.0, 5.0, 3.0], [5.0, 4.0, 6.0]], [[2.0, 4.0, 1.0], [8.0, 4.0, 6.0], [5.0, 5.0, 1.0]], [[7.0, 1.0, 1.0], [3.0, 5.0, 6.0], [5.0, 4.0, 1.0]]], [[[5.0, 3.0, 7.0], [1.0, 7.0, 6.0], [5.0, 1.0, 4.0]], [[1.0, 4.0, 5.0], [3.0, 8.0, 2.0], [3.0, 1.0, 4.0]], [[3.0, 6.0, 5.0], [2.0, 7.0, 8.0], [8.0, 5.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 3.0, 7.0], [6.0, 2.0, 3.0], [4.0, 1.0, 6.0]], [[5.0, 6.0, 3.0], [7.0, 3.0, 2.0], [1.0, 6.0, 5.0]], [[7.0, 2.0, 7.0], [4.0, 7.0, 7.0], [8.0, 4.0, 8.0]]], [[[3.0, 4.0, 3.0], [2.0, 4.0, 4.0], [8.0, 8.0, 8.0]], [[4.0, 3.0, 2.0], [8.0, 1.0, 4.0], [8.0, 4.0, 7.0]], [[4.0, 3.0, 1.0], [2.0, 8.0, 1.0], [3.0, 7.0, 8.0]]], [[[5.0, 7.0, 1.0], [4.0, 5.0, 3.0], [5.0, 4.0, 6.0]], [[2.0, 4.0, 1.0], [8.0, 4.0, 6.0], [5.0, 5.0, 1.0]], [[7.0, 1.0, 1.0], [3.0, 5.0, 6.0], [5.0, 4.0, 1.0]]], [[[5.0, 3.0, 7.0], [1.0, 7.0, 6.0], [5.0, 1.0, 4.0]], [[1.0, 4.0, 5.0], [3.0, 8.0, 2.0], [3.0, 1.0, 4.0]], [[3.0, 6.0, 5.0], [2.0, 7.0, 8.0], [8.0, 5.0, 1.0]]]]))
12684        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12685        val=msk_val*numarray.array([[[[8.0, 5.0, 4.0], [4.0, 1.0, 1.0]], [[6.0, 5.0, 7.0], [6.0, 7.0, 1.0]], [[1.0, 2.0, 2.0], [7.0, 8.0, 5.0]]], [[[7.0, 3.0, 5.0], [3.0, 2.0, 3.0]], [[6.0, 8.0, 1.0], [2.0, 1.0, 1.0]], [[3.0, 2.0, 1.0], [2.0, 3.0, 1.0]]], [[[2.0, 4.0, 8.0], [1.0, 3.0, 7.0]], [[5.0, 5.0, 2.0], [6.0, 3.0, 5.0]], [[3.0, 1.0, 6.0], [4.0, 8.0, 1.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 2.0, 5.0], [6.0, 8.0, 3.0]], [[1.0, 8.0, 4.0], [3.0, 2.0, 2.0]], [[7.0, 1.0, 6.0], [8.0, 1.0, 8.0]]], [[[7.0, 6.0, 8.0], [5.0, 3.0, 2.0]], [[2.0, 2.0, 7.0], [7.0, 1.0, 6.0]], [[4.0, 2.0, 6.0], [7.0, 4.0, 4.0]]], [[[2.0, 5.0, 3.0], [8.0, 4.0, 2.0]], [[3.0, 1.0, 5.0], [3.0, 6.0, 4.0]], [[8.0, 6.0, 7.0], [5.0, 6.0, 5.0]]]])        val=msk_val*numarray.array([[[[8.0, 5.0, 4.0], [4.0, 1.0, 1.0]], [[6.0, 5.0, 7.0], [6.0, 7.0, 1.0]], [[1.0, 2.0, 2.0], [7.0, 8.0, 5.0]]], [[[7.0, 3.0, 5.0], [3.0, 2.0, 3.0]], [[6.0, 8.0, 1.0], [2.0, 1.0, 1.0]], [[3.0, 2.0, 1.0], [2.0, 3.0, 1.0]]], [[[2.0, 4.0, 8.0], [1.0, 3.0, 7.0]], [[5.0, 5.0, 2.0], [6.0, 3.0, 5.0]], [[3.0, 1.0, 6.0], [4.0, 8.0, 1.0]]]])+(1.-msk_val)*numarray.array([[[[8.0, 2.0, 5.0], [6.0, 8.0, 3.0]], [[1.0, 8.0, 4.0], [3.0, 2.0, 2.0]], [[7.0, 1.0, 6.0], [8.0, 1.0, 8.0]]], [[[7.0, 6.0, 8.0], [5.0, 3.0, 2.0]], [[2.0, 2.0, 7.0], [7.0, 1.0, 6.0]], [[4.0, 2.0, 6.0], [7.0, 4.0, 4.0]]], [[[2.0, 5.0, 3.0], [8.0, 4.0, 2.0]], [[3.0, 1.0, 5.0], [3.0, 6.0, 4.0]], [[8.0, 6.0, 7.0], [5.0, 6.0, 5.0]]]])
12686        arg[:3,:,:2]=val        arg[:3,:,:2]=val
12687        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12719  class Test_util_slicing_with_tagged_data Line 12719  class Test_util_slicing_with_tagged_data
12719     def test_setslice_taggedData_rank4_expandedData_CUUN(self):     def test_setslice_taggedData_rank4_expandedData_CUUN(self):
12720        arg=Data(numarray.array([[[[2.0, 4.0, 4.0], [1.0, 8.0, 8.0], [8.0, 8.0, 6.0]], [[3.0, 7.0, 5.0], [8.0, 2.0, 5.0], [8.0, 4.0, 5.0]], [[6.0, 8.0, 3.0], [7.0, 1.0, 7.0], [1.0, 2.0, 4.0]]], [[[1.0, 6.0, 3.0], [3.0, 4.0, 6.0], [8.0, 3.0, 8.0]], [[6.0, 8.0, 1.0], [3.0, 5.0, 2.0], [1.0, 1.0, 5.0]], [[1.0, 6.0, 1.0], [4.0, 2.0, 7.0], [6.0, 7.0, 1.0]]], [[[2.0, 4.0, 7.0], [4.0, 6.0, 1.0], [1.0, 1.0, 2.0]], [[3.0, 8.0, 5.0], [6.0, 5.0, 8.0], [3.0, 8.0, 1.0]], [[8.0, 3.0, 2.0], [1.0, 6.0, 6.0], [2.0, 8.0, 5.0]]], [[[6.0, 1.0, 1.0], [8.0, 3.0, 5.0], [3.0, 8.0, 5.0]], [[3.0, 6.0, 6.0], [7.0, 1.0, 7.0], [7.0, 7.0, 6.0]], [[5.0, 2.0, 6.0], [6.0, 4.0, 6.0], [1.0, 4.0, 3.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[2.0, 4.0, 4.0], [1.0, 8.0, 8.0], [8.0, 8.0, 6.0]], [[3.0, 7.0, 5.0], [8.0, 2.0, 5.0], [8.0, 4.0, 5.0]], [[6.0, 8.0, 3.0], [7.0, 1.0, 7.0], [1.0, 2.0, 4.0]]], [[[1.0, 6.0, 3.0], [3.0, 4.0, 6.0], [8.0, 3.0, 8.0]], [[6.0, 8.0, 1.0], [3.0, 5.0, 2.0], [1.0, 1.0, 5.0]], [[1.0, 6.0, 1.0], [4.0, 2.0, 7.0], [6.0, 7.0, 1.0]]], [[[2.0, 4.0, 7.0], [4.0, 6.0, 1.0], [1.0, 1.0, 2.0]], [[3.0, 8.0, 5.0], [6.0, 5.0, 8.0], [3.0, 8.0, 1.0]], [[8.0, 3.0, 2.0], [1.0, 6.0, 6.0], [2.0, 8.0, 5.0]]], [[[6.0, 1.0, 1.0], [8.0, 3.0, 5.0], [3.0, 8.0, 5.0]], [[3.0, 6.0, 6.0], [7.0, 1.0, 7.0], [7.0, 7.0, 6.0]], [[5.0, 2.0, 6.0], [6.0, 4.0, 6.0], [1.0, 4.0, 3.0]]]]),self.functionspace)
12721        arg.setTaggedValue(1,numarray.array([[[[1.0, 3.0, 4.0], [2.0, 5.0, 3.0], [5.0, 1.0, 7.0]], [[4.0, 4.0, 8.0], [5.0, 5.0, 5.0], [8.0, 6.0, 3.0]], [[2.0, 5.0, 2.0], [5.0, 5.0, 7.0], [2.0, 7.0, 3.0]]], [[[7.0, 7.0, 5.0], [3.0, 8.0, 5.0], [3.0, 7.0, 2.0]], [[7.0, 2.0, 8.0], [4.0, 3.0, 7.0], [7.0, 3.0, 6.0]], [[5.0, 3.0, 3.0], [7.0, 2.0, 8.0], [4.0, 1.0, 5.0]]], [[[5.0, 4.0, 4.0], [3.0, 7.0, 4.0], [7.0, 4.0, 7.0]], [[8.0, 4.0, 6.0], [6.0, 4.0, 8.0], [6.0, 4.0, 2.0]], [[3.0, 2.0, 4.0], [7.0, 2.0, 3.0], [1.0, 7.0, 5.0]]], [[[5.0, 8.0, 7.0], [2.0, 7.0, 5.0], [8.0, 7.0, 7.0]], [[1.0, 2.0, 6.0], [7.0, 1.0, 4.0], [8.0, 2.0, 8.0]], [[6.0, 6.0, 8.0], [6.0, 2.0, 2.0], [8.0, 8.0, 5.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[1.0, 3.0, 4.0], [2.0, 5.0, 3.0], [5.0, 1.0, 7.0]], [[4.0, 4.0, 8.0], [5.0, 5.0, 5.0], [8.0, 6.0, 3.0]], [[2.0, 5.0, 2.0], [5.0, 5.0, 7.0], [2.0, 7.0, 3.0]]], [[[7.0, 7.0, 5.0], [3.0, 8.0, 5.0], [3.0, 7.0, 2.0]], [[7.0, 2.0, 8.0], [4.0, 3.0, 7.0], [7.0, 3.0, 6.0]], [[5.0, 3.0, 3.0], [7.0, 2.0, 8.0], [4.0, 1.0, 5.0]]], [[[5.0, 4.0, 4.0], [3.0, 7.0, 4.0], [7.0, 4.0, 7.0]], [[8.0, 4.0, 6.0], [6.0, 4.0, 8.0], [6.0, 4.0, 2.0]], [[3.0, 2.0, 4.0], [7.0, 2.0, 3.0], [1.0, 7.0, 5.0]]], [[[5.0, 8.0, 7.0], [2.0, 7.0, 5.0], [8.0, 7.0, 7.0]], [[1.0, 2.0, 6.0], [7.0, 1.0, 4.0], [8.0, 2.0, 8.0]], [[6.0, 6.0, 8.0], [6.0, 2.0, 2.0], [8.0, 8.0, 5.0]]]]))
12722        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12723        val=msk_val*numarray.array([[[[1.0, 2.0, 1.0], [3.0, 3.0, 1.0]], [[6.0, 4.0, 7.0], [1.0, 1.0, 3.0]]], [[[8.0, 1.0, 8.0], [4.0, 3.0, 7.0]], [[5.0, 2.0, 3.0], [6.0, 8.0, 8.0]]], [[[5.0, 8.0, 4.0], [5.0, 1.0, 1.0]], [[4.0, 1.0, 5.0], [5.0, 5.0, 4.0]]], [[[6.0, 3.0, 4.0], [6.0, 4.0, 2.0]], [[8.0, 5.0, 3.0], [3.0, 2.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 8.0, 8.0], [3.0, 1.0, 4.0]], [[3.0, 2.0, 7.0], [8.0, 7.0, 7.0]]], [[[7.0, 6.0, 8.0], [4.0, 8.0, 3.0]], [[7.0, 2.0, 4.0], [8.0, 8.0, 1.0]]], [[[8.0, 5.0, 6.0], [4.0, 2.0, 3.0]], [[8.0, 1.0, 2.0], [8.0, 8.0, 8.0]]], [[[4.0, 6.0, 8.0], [8.0, 1.0, 4.0]], [[1.0, 8.0, 5.0], [4.0, 4.0, 3.0]]]])        val=msk_val*numarray.array([[[[1.0, 2.0, 1.0], [3.0, 3.0, 1.0]], [[6.0, 4.0, 7.0], [1.0, 1.0, 3.0]]], [[[8.0, 1.0, 8.0], [4.0, 3.0, 7.0]], [[5.0, 2.0, 3.0], [6.0, 8.0, 8.0]]], [[[5.0, 8.0, 4.0], [5.0, 1.0, 1.0]], [[4.0, 1.0, 5.0], [5.0, 5.0, 4.0]]], [[[6.0, 3.0, 4.0], [6.0, 4.0, 2.0]], [[8.0, 5.0, 3.0], [3.0, 2.0, 2.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 8.0, 8.0], [3.0, 1.0, 4.0]], [[3.0, 2.0, 7.0], [8.0, 7.0, 7.0]]], [[[7.0, 6.0, 8.0], [4.0, 8.0, 3.0]], [[7.0, 2.0, 4.0], [8.0, 8.0, 1.0]]], [[[8.0, 5.0, 6.0], [4.0, 2.0, 3.0]], [[8.0, 1.0, 2.0], [8.0, 8.0, 8.0]]], [[[4.0, 6.0, 8.0], [8.0, 1.0, 4.0]], [[1.0, 8.0, 5.0], [4.0, 4.0, 3.0]]]])
12724        arg[:,:2,:2]=val        arg[:,:2,:2]=val
12725        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12757  class Test_util_slicing_with_tagged_data Line 12757  class Test_util_slicing_with_tagged_data
12757     def test_setslice_taggedData_rank4_expandedData_LLLP(self):     def test_setslice_taggedData_rank4_expandedData_LLLP(self):
12758        arg=Data(numarray.array([[[[8.0, 6.0, 1.0], [5.0, 7.0, 5.0], [8.0, 6.0, 8.0]], [[6.0, 5.0, 3.0], [1.0, 6.0, 1.0], [4.0, 4.0, 6.0]], [[5.0, 2.0, 6.0], [5.0, 8.0, 8.0], [7.0, 8.0, 2.0]]], [[[7.0, 4.0, 5.0], [7.0, 7.0, 2.0], [6.0, 7.0, 3.0]], [[6.0, 6.0, 8.0], [5.0, 5.0, 6.0], [6.0, 5.0, 6.0]], [[6.0, 5.0, 5.0], [5.0, 8.0, 6.0], [5.0, 4.0, 5.0]]], [[[5.0, 8.0, 3.0], [5.0, 1.0, 5.0], [3.0, 1.0, 5.0]], [[1.0, 7.0, 5.0], [8.0, 6.0, 6.0], [8.0, 7.0, 3.0]], [[3.0, 8.0, 8.0], [4.0, 6.0, 4.0], [3.0, 2.0, 1.0]]], [[[4.0, 7.0, 2.0], [4.0, 6.0, 4.0], [7.0, 1.0, 5.0]], [[2.0, 1.0, 2.0], [1.0, 8.0, 7.0], [4.0, 7.0, 8.0]], [[2.0, 5.0, 4.0], [1.0, 5.0, 6.0], [7.0, 3.0, 8.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[8.0, 6.0, 1.0], [5.0, 7.0, 5.0], [8.0, 6.0, 8.0]], [[6.0, 5.0, 3.0], [1.0, 6.0, 1.0], [4.0, 4.0, 6.0]], [[5.0, 2.0, 6.0], [5.0, 8.0, 8.0], [7.0, 8.0, 2.0]]], [[[7.0, 4.0, 5.0], [7.0, 7.0, 2.0], [6.0, 7.0, 3.0]], [[6.0, 6.0, 8.0], [5.0, 5.0, 6.0], [6.0, 5.0, 6.0]], [[6.0, 5.0, 5.0], [5.0, 8.0, 6.0], [5.0, 4.0, 5.0]]], [[[5.0, 8.0, 3.0], [5.0, 1.0, 5.0], [3.0, 1.0, 5.0]], [[1.0, 7.0, 5.0], [8.0, 6.0, 6.0], [8.0, 7.0, 3.0]], [[3.0, 8.0, 8.0], [4.0, 6.0, 4.0], [3.0, 2.0, 1.0]]], [[[4.0, 7.0, 2.0], [4.0, 6.0, 4.0], [7.0, 1.0, 5.0]], [[2.0, 1.0, 2.0], [1.0, 8.0, 7.0], [4.0, 7.0, 8.0]], [[2.0, 5.0, 4.0], [1.0, 5.0, 6.0], [7.0, 3.0, 8.0]]]]),self.functionspace)
12759        arg.setTaggedValue(1,numarray.array([[[[3.0, 7.0, 7.0], [1.0, 7.0, 2.0], [3.0, 6.0, 3.0]], [[6.0, 5.0, 7.0], [8.0, 5.0, 2.0], [3.0, 3.0, 4.0]], [[6.0, 3.0, 5.0], [4.0, 8.0, 3.0], [1.0, 4.0, 2.0]]], [[[8.0, 7.0, 3.0], [3.0, 1.0, 2.0], [2.0, 4.0, 6.0]], [[2.0, 2.0, 4.0], [3.0, 2.0, 6.0], [7.0, 6.0, 4.0]], [[3.0, 5.0, 3.0], [1.0, 2.0, 3.0], [2.0, 7.0, 8.0]]], [[[2.0, 6.0, 6.0], [4.0, 5.0, 8.0], [8.0, 3.0, 3.0]], [[2.0, 6.0, 6.0], [2.0, 1.0, 5.0], [5.0, 6.0, 5.0]], [[4.0, 3.0, 3.0], [7.0, 2.0, 7.0], [2.0, 5.0, 6.0]]], [[[1.0, 6.0, 6.0], [8.0, 4.0, 7.0], [2.0, 7.0, 5.0]], [[7.0, 8.0, 5.0], [3.0, 2.0, 2.0], [3.0, 2.0, 6.0]], [[6.0, 6.0, 8.0], [8.0, 6.0, 8.0], [6.0, 4.0, 8.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[3.0, 7.0, 7.0], [1.0, 7.0, 2.0], [3.0, 6.0, 3.0]], [[6.0, 5.0, 7.0], [8.0, 5.0, 2.0], [3.0, 3.0, 4.0]], [[6.0, 3.0, 5.0], [4.0, 8.0, 3.0], [1.0, 4.0, 2.0]]], [[[8.0, 7.0, 3.0], [3.0, 1.0, 2.0], [2.0, 4.0, 6.0]], [[2.0, 2.0, 4.0], [3.0, 2.0, 6.0], [7.0, 6.0, 4.0]], [[3.0, 5.0, 3.0], [1.0, 2.0, 3.0], [2.0, 7.0, 8.0]]], [[[2.0, 6.0, 6.0], [4.0, 5.0, 8.0], [8.0, 3.0, 3.0]], [[2.0, 6.0, 6.0], [2.0, 1.0, 5.0], [5.0, 6.0, 5.0]], [[4.0, 3.0, 3.0], [7.0, 2.0, 7.0], [2.0, 5.0, 6.0]]], [[[1.0, 6.0, 6.0], [8.0, 4.0, 7.0], [2.0, 7.0, 5.0]], [[7.0, 8.0, 5.0], [3.0, 2.0, 2.0], [3.0, 2.0, 6.0]], [[6.0, 6.0, 8.0], [8.0, 6.0, 8.0], [6.0, 4.0, 8.0]]]]))
12760        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12761        val=msk_val*numarray.array([[[1.0]], [[5.0]]])+(1.-msk_val)*numarray.array([[[4.0]], [[1.0]]])        val=msk_val*numarray.array([[[1.0]], [[5.0]]])+(1.-msk_val)*numarray.array([[[4.0]], [[1.0]]])
12762        arg[2:,2:,2:,1]=val        arg[2:,2:,2:,1]=val
12763        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12795  class Test_util_slicing_with_tagged_data Line 12795  class Test_util_slicing_with_tagged_data
12795     def test_setslice_taggedData_rank4_expandedData_LRRN(self):     def test_setslice_taggedData_rank4_expandedData_LRRN(self):
12796        arg=Data(numarray.array([[[[5.0, 3.0, 6.0], [5.0, 8.0, 3.0], [6.0, 1.0, 5.0]], [[2.0, 6.0, 4.0], [3.0, 2.0, 5.0], [2.0, 5.0, 5.0]], [[5.0, 6.0, 8.0], [5.0, 8.0, 2.0], [2.0, 1.0, 8.0]]], [[[5.0, 8.0, 7.0], [3.0, 1.0, 8.0], [3.0, 6.0, 4.0]], [[3.0, 3.0, 6.0], [8.0, 2.0, 2.0], [5.0, 7.0, 2.0]], [[7.0, 7.0, 4.0], [4.0, 5.0, 2.0], [3.0, 3.0, 5.0]]], [[[5.0, 4.0, 5.0], [7.0, 7.0, 3.0], [4.0, 3.0, 8.0]], [[6.0, 8.0, 8.0], [6.0, 5.0, 7.0], [7.0, 1.0, 2.0]], [[8.0, 3.0, 6.0], [6.0, 3.0, 3.0], [5.0, 3.0, 6.0]]], [[[3.0, 3.0, 8.0], [3.0, 6.0, 7.0], [8.0, 4.0, 3.0]], [[2.0, 2.0, 8.0], [4.0, 6.0, 5.0], [3.0, 8.0, 6.0]], [[4.0, 4.0, 1.0], [5.0, 4.0, 4.0], [7.0, 1.0, 4.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[5.0, 3.0, 6.0], [5.0, 8.0, 3.0], [6.0, 1.0, 5.0]], [[2.0, 6.0, 4.0], [3.0, 2.0, 5.0], [2.0, 5.0, 5.0]], [[5.0, 6.0, 8.0], [5.0, 8.0, 2.0], [2.0, 1.0, 8.0]]], [[[5.0, 8.0, 7.0], [3.0, 1.0, 8.0], [3.0, 6.0, 4.0]], [[3.0, 3.0, 6.0], [8.0, 2.0, 2.0], [5.0, 7.0, 2.0]], [[7.0, 7.0, 4.0], [4.0, 5.0, 2.0], [3.0, 3.0, 5.0]]], [[[5.0, 4.0, 5.0], [7.0, 7.0, 3.0], [4.0, 3.0, 8.0]], [[6.0, 8.0, 8.0], [6.0, 5.0, 7.0], [7.0, 1.0, 2.0]], [[8.0, 3.0, 6.0], [6.0, 3.0, 3.0], [5.0, 3.0, 6.0]]], [[[3.0, 3.0, 8.0], [3.0, 6.0, 7.0], [8.0, 4.0, 3.0]], [[2.0, 2.0, 8.0], [4.0, 6.0, 5.0], [3.0, 8.0, 6.0]], [[4.0, 4.0, 1.0], [5.0, 4.0, 4.0], [7.0, 1.0, 4.0]]]]),self.functionspace)
12797        arg.setTaggedValue(1,numarray.array([[[[4.0, 4.0, 4.0], [1.0, 1.0, 2.0], [3.0, 3.0, 3.0]], [[5.0, 3.0, 4.0], [1.0, 5.0, 8.0], [7.0, 7.0, 2.0]], [[2.0, 2.0, 7.0], [8.0, 7.0, 4.0], [8.0, 1.0, 5.0]]], [[[7.0, 5.0, 2.0], [5.0, 2.0, 3.0], [4.0, 6.0, 5.0]], [[7.0, 6.0, 1.0], [6.0, 2.0, 3.0], [4.0, 8.0, 8.0]], [[2.0, 4.0, 1.0], [8.0, 1.0, 5.0], [2.0, 2.0, 3.0]]], [[[8.0, 5.0, 5.0], [4.0, 1.0, 4.0], [8.0, 7.0, 7.0]], [[5.0, 2.0, 4.0], [1.0, 7.0, 1.0], [1.0, 3.0, 7.0]], [[3.0, 2.0, 3.0], [2.0, 1.0, 6.0], [4.0, 2.0, 7.0]]], [[[6.0, 6.0, 5.0], [6.0, 7.0, 3.0], [8.0, 7.0, 1.0]], [[2.0, 6.0, 5.0], [5.0, 6.0, 1.0], [1.0, 4.0, 2.0]], [[2.0, 6.0, 2.0], [2.0, 3.0, 3.0], [1.0, 8.0, 1.0]]]]))        arg.setTaggedValue(1,numarray.array([[[[4.0, 4.0, 4.0], [1.0, 1.0, 2.0], [3.0, 3.0, 3.0]], [[5.0, 3.0, 4.0], [1.0, 5.0, 8.0], [7.0, 7.0, 2.0]], [[2.0, 2.0, 7.0], [8.0, 7.0, 4.0], [8.0, 1.0, 5.0]]], [[[7.0, 5.0, 2.0], [5.0, 2.0, 3.0], [4.0, 6.0, 5.0]], [[7.0, 6.0, 1.0], [6.0, 2.0, 3.0], [4.0, 8.0, 8.0]], [[2.0, 4.0, 1.0], [8.0, 1.0, 5.0], [2.0, 2.0, 3.0]]], [[[8.0, 5.0, 5.0], [4.0, 1.0, 4.0], [8.0, 7.0, 7.0]], [[5.0, 2.0, 4.0], [1.0, 7.0, 1.0], [1.0, 3.0, 7.0]], [[3.0, 2.0, 3.0], [2.0, 1.0, 6.0], [4.0, 2.0, 7.0]]], [[[6.0, 6.0, 5.0], [6.0, 7.0, 3.0], [8.0, 7.0, 1.0]], [[2.0, 6.0, 5.0], [5.0, 6.0, 1.0], [1.0, 4.0, 2.0]], [[2.0, 6.0, 2.0], [2.0, 3.0, 3.0], [1.0, 8.0, 1.0]]]]))
12798        msk_val=whereZero(self.functionspace.getX()[0],1.e-8)        msk_val=1.-whereZero(self.functionspace.getX()[0],1.e-8)
12799        val=msk_val*numarray.array([[[[8.0, 8.0, 5.0]]], [[[1.0, 5.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 5.0, 6.0]]], [[[3.0, 6.0, 6.0]]]])        val=msk_val*numarray.array([[[[8.0, 8.0, 5.0]]], [[[1.0, 5.0, 3.0]]]])+(1.-msk_val)*numarray.array([[[[5.0, 5.0, 6.0]]], [[[3.0, 6.0, 6.0]]]])
12800        arg[2:,1:2,1:2]=val        arg[2:,1:2,1:2]=val
12801        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)        msk_ref=1.-whereZero(self.functionspace.getX()[0],1.e-8)
# Line 12833  class Test_util_slicing_with_tagged_data Line 12833  class Test_util_slicing_with_tagged_data
12833     def test_setslice_taggedData_rank4_expandedData_UPUN(self):     def test_setslice_taggedData_rank4_expandedData_UPUN(self):
12834        arg=Data(numarray.array([[[[3.0, 7.0, 4.0], [7.0, 8.0, 7.0], [3.0, 6.0, 8.0]], [[1.0, 3.0, 2.0], [2.0, 2.0, 6.0], [5.0, 8.0, 8.0]], [[6.0, 4.0, 3.0], [7.0, 6.0, 5.0], [2.0, 3.0, 3.0]]], [[[4.0, 7.0, 7.0], [5.0, 1.0, 4.0], [4.0, 5.0, 3.0]], [[4.0, 2.0, 1.0], [4.0, 1.0, 6.0], [2.0, 8.0, 5.0]], [[6.0, 8.0, 3.0], [3.0, 2.0, 7.0], [8.0, 6.0, 5.0]]], [[[3.0, 8.0, 5.0], [6.0, 1.0, 1.0], [2.0, 1.0, 4.0]], [[4.0, 6.0, 3.0], [1.0, 5.0, 6.0], [1.0, 2.0, 4.0]], [[1.0, 5.0, 5.0], [4.0, 7.0, 3.0], [1.0, 7.0, 6.0]]], [[[8.0, 8.0, 8.0], [4.0, 3.0, 2.0], [8.0, 2.0, 1.0]], [[3.0, 3.0, 2.0], [8.0, 4.0, 8.0], [6.0, 6.0, 7.0]], [[1.0, 7.0, 2.0], [5.0, 3.0, 4.0], [3.0, 4.0, 5.0]]]]),self.functionspace)        arg=Data(numarray.array([[[[3.0, 7.0, 4.0], [7.0, 8.0, 7.0], [3.0, 6.0, 8.0]], [[1.0, 3.0, 2.0], [2.0, 2.0, 6.0], [5.0, 8.0, 8.0]], [[6.0, 4.0, 3.0], [7.0, 6.0, 5.0], [2.0, 3.0, 3.0]]], [[[4.0, 7.0, 7.0], [5.0, 1.0, 4.0], [