/[escript]/trunk/escript/test/python/test_util_slicing_with_tagged_data.py
ViewVC logotype

Diff of /trunk/escript/test/python/test_util_slicing_with_tagged_data.py

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

revision 4083 by jfenwick, Fri Sep 21 02:47:54 2012 UTC revision 4084 by jfenwick, Tue Nov 20 06:22:07 2012 UTC
# Line 295  class Test_util_slicing_with_tagged_data Line 295  class Test_util_slicing_with_tagged_data
295        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
296     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
297     def test_getslice_taggedData_rank3_URP(self):     def test_getslice_taggedData_rank3_URP(self):
298        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
299        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
300    35.0]]]),self.functionspace)
301          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
302    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
303    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
304        res=arg[:2,1:3,1]        res=arg[:2,1:3,1]
305        ref=Data(numpy.array([[4.0, 7.0], [16.0, 19.0]]),self.functionspace)        ref=Data(numpy.array([[4.0, 7.0], [16.0, 19.0]]),self.functionspace)
306        ref.setTaggedValue(1,numpy.array([[-4.0, -7.0], [-16.0, -19.0]]))        ref.setTaggedValue(1,numpy.array([[-4.0, -7.0], [-16.0, -19.0]]))
# Line 305  class Test_util_slicing_with_tagged_data Line 309  class Test_util_slicing_with_tagged_data
309        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
310     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
311     def test_getslice_taggedData_rank3_LCN(self):     def test_getslice_taggedData_rank3_LCN(self):
312        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
313        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
314    35.0]]]),self.functionspace)
315          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
316    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
317    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
318        res=arg[2:,:]        res=arg[2:,:]
319        ref=Data(numpy.array([[[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        ref=Data(numpy.array([[[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
320        ref.setTaggedValue(1,numpy.array([[[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  35.0]]]),self.functionspace)
321          ref.setTaggedValue(1,numpy.array([[[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0,
322    -35.0]]]))
323        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
324        self.assertEqual(res.getShape(),(1, 4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(1, 4, 3),"wrong shape of result.")
325        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
326     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
327     def test_getslice_taggedData_rank3_LCR(self):     def test_getslice_taggedData_rank3_LCR(self):
328        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
329        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
330    35.0]]]),self.functionspace)
331          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
332    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
333    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
334        res=arg[2:,:,1:2]        res=arg[2:,:,1:2]
335        ref=Data(numpy.array([[[25.0], [28.0], [31.0], [34.0]]]),self.functionspace)        ref=Data(numpy.array([[[25.0], [28.0], [31.0], [34.0]]]),self.functionspace)
336        ref.setTaggedValue(1,numpy.array([[[-25.0], [-28.0], [-31.0], [-34.0]]]))        ref.setTaggedValue(1,numpy.array([[[-25.0], [-28.0], [-31.0], [-34.0]]]))
# Line 325  class Test_util_slicing_with_tagged_data Line 339  class Test_util_slicing_with_tagged_data
339        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
340     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
341     def test_getslice_taggedData_rank3_URU(self):     def test_getslice_taggedData_rank3_URU(self):
342        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
343        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
344    35.0]]]),self.functionspace)
345          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
346    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
347    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
348        res=arg[:2,1:3,:2]        res=arg[:2,1:3,:2]
349        ref=Data(numpy.array([[[3.0, 4.0], [6.0, 7.0]], [[15.0, 16.0], [18.0, 19.0]]]),self.functionspace)        ref=Data(numpy.array([[[3.0, 4.0], [6.0, 7.0]], [[15.0, 16.0], [18.0, 19.0]]]),self.functionspace)
350        ref.setTaggedValue(1,numpy.array([[[-3.0, -4.0], [-6.0, -7.0]], [[-15.0, -16.0], [-18.0, -19.0]]]))        ref.setTaggedValue(1,numpy.array([[[-3.0, -4.0], [-6.0, -7.0]], [[-15.0, -16.0], [-18.0, -19.0]]]))
# Line 335  class Test_util_slicing_with_tagged_data Line 353  class Test_util_slicing_with_tagged_data
353        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
354     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
355     def test_getslice_taggedData_rank3_RCR(self):     def test_getslice_taggedData_rank3_RCR(self):
356        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
357        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
358    35.0]]]),self.functionspace)
359          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
360    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
361    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
362        res=arg[1:2,:,1:2]        res=arg[1:2,:,1:2]
363        ref=Data(numpy.array([[[13.0], [16.0], [19.0], [22.0]]]),self.functionspace)        ref=Data(numpy.array([[[13.0], [16.0], [19.0], [22.0]]]),self.functionspace)
364        ref.setTaggedValue(1,numpy.array([[[-13.0], [-16.0], [-19.0], [-22.0]]]))        ref.setTaggedValue(1,numpy.array([[[-13.0], [-16.0], [-19.0], [-22.0]]]))
# Line 345  class Test_util_slicing_with_tagged_data Line 367  class Test_util_slicing_with_tagged_data
367        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
368     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
369     def test_getslice_taggedData_rank3_UCP(self):     def test_getslice_taggedData_rank3_UCP(self):
370        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
371        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
372    35.0]]]),self.functionspace)
373          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
374    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
375    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
376        res=arg[:2,:,1]        res=arg[:2,:,1]
377        ref=Data(numpy.array([[1.0, 4.0, 7.0, 10.0], [13.0, 16.0, 19.0, 22.0]]),self.functionspace)        ref=Data(numpy.array([[1.0, 4.0, 7.0, 10.0], [13.0, 16.0, 19.0, 22.0]]),self.functionspace)
378        ref.setTaggedValue(1,numpy.array([[-1.0, -4.0, -7.0, -10.0], [-13.0, -16.0, -19.0, -22.0]]))        ref.setTaggedValue(1,numpy.array([[-1.0, -4.0, -7.0, -10.0], [-13.0, -16.0, -19.0, -22.0]]))
# Line 355  class Test_util_slicing_with_tagged_data Line 381  class Test_util_slicing_with_tagged_data
381        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
382     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
383     def test_getslice_taggedData_rank3_LLN(self):     def test_getslice_taggedData_rank3_LLN(self):
384        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
385        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
386    35.0]]]),self.functionspace)
387          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
388    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
389    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
390        res=arg[2:,2:]        res=arg[2:,2:]
391        ref=Data(numpy.array([[[30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        ref=Data(numpy.array([[[30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)
392        ref.setTaggedValue(1,numpy.array([[[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))        ref.setTaggedValue(1,numpy.array([[[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
# Line 365  class Test_util_slicing_with_tagged_data Line 395  class Test_util_slicing_with_tagged_data
395        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
396     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
397     def test_getslice_taggedData_rank3_RPP(self):     def test_getslice_taggedData_rank3_RPP(self):
398        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
399        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
400    35.0]]]),self.functionspace)
401          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
402    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
403    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
404        res=arg[1:2,2,1]        res=arg[1:2,2,1]
405        ref=Data(numpy.array([19.0]),self.functionspace)        ref=Data(numpy.array([19.0]),self.functionspace)
406        ref.setTaggedValue(1,numpy.array([-19.0]))        ref.setTaggedValue(1,numpy.array([-19.0]))
# Line 375  class Test_util_slicing_with_tagged_data Line 409  class Test_util_slicing_with_tagged_data
409        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
410     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
411     def test_getslice_taggedData_rank3_LPL(self):     def test_getslice_taggedData_rank3_LPL(self):
412        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
413        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
414    35.0]]]),self.functionspace)
415          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
416    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
417    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
418        res=arg[2:,2,2:]        res=arg[2:,2,2:]
419        ref=Data(numpy.array([[32.0]]),self.functionspace)        ref=Data(numpy.array([[32.0]]),self.functionspace)
420        ref.setTaggedValue(1,numpy.array([[-32.0]]))        ref.setTaggedValue(1,numpy.array([[-32.0]]))
# Line 385  class Test_util_slicing_with_tagged_data Line 423  class Test_util_slicing_with_tagged_data
423        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
424     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
425     def test_getslice_taggedData_rank3_CCR(self):     def test_getslice_taggedData_rank3_CCR(self):
426        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
427        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
428    35.0]]]),self.functionspace)
429          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
430    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
431    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
432        res=arg[:,:,1:2]        res=arg[:,:,1:2]
433        ref=Data(numpy.array([[[1.0], [4.0], [7.0], [10.0]], [[13.0], [16.0], [19.0], [22.0]], [[25.0], [28.0], [31.0], [34.0]]]),self.functionspace)        ref=Data(numpy.array([[[1.0], [4.0], [7.0], [10.0]], [[13.0], [16.0], [19.0], [22.0]], [[25.0], [28.0], [31.0],
434        ref.setTaggedValue(1,numpy.array([[[-1.0], [-4.0], [-7.0], [-10.0]], [[-13.0], [-16.0], [-19.0], [-22.0]], [[-25.0], [-28.0], [-31.0], [-34.0]]]))  [34.0]]]),self.functionspace)
435          ref.setTaggedValue(1,numpy.array([[[-1.0], [-4.0], [-7.0], [-10.0]], [[-13.0], [-16.0], [-19.0], [-22.0]], [[-25.0],
436    [-28.0], [-31.0], [-34.0]]]))
437        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
438        self.assertEqual(res.getShape(),(3, 4, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 4, 1),"wrong shape of result.")
439        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
440     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
441     def test_getslice_taggedData_rank3_LUL(self):     def test_getslice_taggedData_rank3_LUL(self):
442        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
443        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
444    35.0]]]),self.functionspace)
445          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
446    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
447    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
448        res=arg[2:,:3,2:]        res=arg[2:,:3,2:]
449        ref=Data(numpy.array([[[26.0], [29.0], [32.0]]]),self.functionspace)        ref=Data(numpy.array([[[26.0], [29.0], [32.0]]]),self.functionspace)
450        ref.setTaggedValue(1,numpy.array([[[-26.0], [-29.0], [-32.0]]]))        ref.setTaggedValue(1,numpy.array([[[-26.0], [-29.0], [-32.0]]]))
# Line 405  class Test_util_slicing_with_tagged_data Line 453  class Test_util_slicing_with_tagged_data
453        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
454     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
455     def test_getslice_taggedData_rank3_PPU(self):     def test_getslice_taggedData_rank3_PPU(self):
456        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
457        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
458    35.0]]]),self.functionspace)
459          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
460    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
461    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
462        res=arg[1,2,:2]        res=arg[1,2,:2]
463        ref=Data(numpy.array([18.0, 19.0]),self.functionspace)        ref=Data(numpy.array([18.0, 19.0]),self.functionspace)
464        ref.setTaggedValue(1,numpy.array([-18.0, -19.0]))        ref.setTaggedValue(1,numpy.array([-18.0, -19.0]))
# Line 415  class Test_util_slicing_with_tagged_data Line 467  class Test_util_slicing_with_tagged_data
467        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
468     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
469     def test_getslice_taggedData_rank3_LCP(self):     def test_getslice_taggedData_rank3_LCP(self):
470        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
471        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
472    35.0]]]),self.functionspace)
473          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
474    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
475    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
476        res=arg[2:,:,1]        res=arg[2:,:,1]
477        ref=Data(numpy.array([[25.0, 28.0, 31.0, 34.0]]),self.functionspace)        ref=Data(numpy.array([[25.0, 28.0, 31.0, 34.0]]),self.functionspace)
478        ref.setTaggedValue(1,numpy.array([[-25.0, -28.0, -31.0, -34.0]]))        ref.setTaggedValue(1,numpy.array([[-25.0, -28.0, -31.0, -34.0]]))
# Line 425  class Test_util_slicing_with_tagged_data Line 481  class Test_util_slicing_with_tagged_data
481        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
482     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
483     def test_getslice_taggedData_rank3_RUR(self):     def test_getslice_taggedData_rank3_RUR(self):
484        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
485        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
486    35.0]]]),self.functionspace)
487          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
488    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
489    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
490        res=arg[1:2,:3,1:2]        res=arg[1:2,:3,1:2]
491        ref=Data(numpy.array([[[13.0], [16.0], [19.0]]]),self.functionspace)        ref=Data(numpy.array([[[13.0], [16.0], [19.0]]]),self.functionspace)
492        ref.setTaggedValue(1,numpy.array([[[-13.0], [-16.0], [-19.0]]]))        ref.setTaggedValue(1,numpy.array([[[-13.0], [-16.0], [-19.0]]]))
# Line 435  class Test_util_slicing_with_tagged_data Line 495  class Test_util_slicing_with_tagged_data
495        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
496     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
497     def test_getslice_taggedData_rank3_CUC(self):     def test_getslice_taggedData_rank3_CUC(self):
498        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
499        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
500    35.0]]]),self.functionspace)
501          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
502    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
503    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
504        res=arg[:,:3,:]        res=arg[:,:3,:]
505        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0],
506        ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))  [18.0, 19.0, 20.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)
507          ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-12.0, -13.0, -14.0],
508    [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))
509        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
510        self.assertEqual(res.getShape(),(3, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 3, 3),"wrong shape of result.")
511        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
512     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
513     def test_getslice_taggedData_rank3_LRU(self):     def test_getslice_taggedData_rank3_LRU(self):
514        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
515        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
516    35.0]]]),self.functionspace)
517          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
518    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
519    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
520        res=arg[2:,1:3,:2]        res=arg[2:,1:3,:2]
521        ref=Data(numpy.array([[[27.0, 28.0], [30.0, 31.0]]]),self.functionspace)        ref=Data(numpy.array([[[27.0, 28.0], [30.0, 31.0]]]),self.functionspace)
522        ref.setTaggedValue(1,numpy.array([[[-27.0, -28.0], [-30.0, -31.0]]]))        ref.setTaggedValue(1,numpy.array([[[-27.0, -28.0], [-30.0, -31.0]]]))
# Line 455  class Test_util_slicing_with_tagged_data Line 525  class Test_util_slicing_with_tagged_data
525        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
526     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
527     def test_getslice_taggedData_rank3_LRR(self):     def test_getslice_taggedData_rank3_LRR(self):
528        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
529        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
530    35.0]]]),self.functionspace)
531          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
532    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
533    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
534        res=arg[2:,1:3,1:2]        res=arg[2:,1:3,1:2]
535        ref=Data(numpy.array([[[28.0], [31.0]]]),self.functionspace)        ref=Data(numpy.array([[[28.0], [31.0]]]),self.functionspace)
536        ref.setTaggedValue(1,numpy.array([[[-28.0], [-31.0]]]))        ref.setTaggedValue(1,numpy.array([[[-28.0], [-31.0]]]))
# Line 465  class Test_util_slicing_with_tagged_data Line 539  class Test_util_slicing_with_tagged_data
539        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
540     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
541     def test_getslice_taggedData_rank3_UUN(self):     def test_getslice_taggedData_rank3_UUN(self):
542        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
543        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
544    35.0]]]),self.functionspace)
545          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
546    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
547    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
548        res=arg[:2,:3]        res=arg[:2,:3]
549        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0],
550        ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))  [18.0, 19.0, 20.0]]]),self.functionspace)
551          ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-12.0, -13.0, -14.0],
552    [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))
553        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
554        self.assertEqual(res.getShape(),(2, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 3, 3),"wrong shape of result.")
555        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
556     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
557     def test_getslice_taggedData_rank3_CUL(self):     def test_getslice_taggedData_rank3_CUL(self):
558        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
559        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
560    35.0]]]),self.functionspace)
561          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
562    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
563    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
564        res=arg[:,:3,2:]        res=arg[:,:3,2:]
565        ref=Data(numpy.array([[[2.0], [5.0], [8.0]], [[14.0], [17.0], [20.0]], [[26.0], [29.0], [32.0]]]),self.functionspace)        ref=Data(numpy.array([[[2.0], [5.0], [8.0]], [[14.0], [17.0], [20.0]], [[26.0], [29.0], [32.0]]]),self.functionspace)
566        ref.setTaggedValue(1,numpy.array([[[-2.0], [-5.0], [-8.0]], [[-14.0], [-17.0], [-20.0]], [[-26.0], [-29.0], [-32.0]]]))        ref.setTaggedValue(1,numpy.array([[[-2.0], [-5.0], [-8.0]], [[-14.0], [-17.0], [-20.0]], [[-26.0], [-29.0], [-32.0]]]))
# Line 485  class Test_util_slicing_with_tagged_data Line 569  class Test_util_slicing_with_tagged_data
569        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
570     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
571     def test_getslice_taggedData_rank3_LUP(self):     def test_getslice_taggedData_rank3_LUP(self):
572        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
573        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
574    35.0]]]),self.functionspace)
575          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
576    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
577    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
578        res=arg[2:,:3,1]        res=arg[2:,:3,1]
579        ref=Data(numpy.array([[25.0, 28.0, 31.0]]),self.functionspace)        ref=Data(numpy.array([[25.0, 28.0, 31.0]]),self.functionspace)
580        ref.setTaggedValue(1,numpy.array([[-25.0, -28.0, -31.0]]))        ref.setTaggedValue(1,numpy.array([[-25.0, -28.0, -31.0]]))
# Line 495  class Test_util_slicing_with_tagged_data Line 583  class Test_util_slicing_with_tagged_data
583        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
584     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
585     def test_getslice_taggedData_rank3_CCL(self):     def test_getslice_taggedData_rank3_CCL(self):
586        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
587        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
588    35.0]]]),self.functionspace)
589          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
590    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
591    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
592        res=arg[:,:,2:]        res=arg[:,:,2:]
593        ref=Data(numpy.array([[[2.0], [5.0], [8.0], [11.0]], [[14.0], [17.0], [20.0], [23.0]], [[26.0], [29.0], [32.0], [35.0]]]),self.functionspace)        ref=Data(numpy.array([[[2.0], [5.0], [8.0], [11.0]], [[14.0], [17.0], [20.0], [23.0]], [[26.0], [29.0], [32.0],
594        ref.setTaggedValue(1,numpy.array([[[-2.0], [-5.0], [-8.0], [-11.0]], [[-14.0], [-17.0], [-20.0], [-23.0]], [[-26.0], [-29.0], [-32.0], [-35.0]]]))  [35.0]]]),self.functionspace)
595          ref.setTaggedValue(1,numpy.array([[[-2.0], [-5.0], [-8.0], [-11.0]], [[-14.0], [-17.0], [-20.0], [-23.0]], [[-26.0],
596    [-29.0], [-32.0], [-35.0]]]))
597        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
598        self.assertEqual(res.getShape(),(3, 4, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 4, 1),"wrong shape of result.")
599        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
600     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
601     def test_getslice_taggedData_rank3_UCR(self):     def test_getslice_taggedData_rank3_UCR(self):
602        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
603        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
604    35.0]]]),self.functionspace)
605          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
606    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
607    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
608        res=arg[:2,:,1:2]        res=arg[:2,:,1:2]
609        ref=Data(numpy.array([[[1.0], [4.0], [7.0], [10.0]], [[13.0], [16.0], [19.0], [22.0]]]),self.functionspace)        ref=Data(numpy.array([[[1.0], [4.0], [7.0], [10.0]], [[13.0], [16.0], [19.0], [22.0]]]),self.functionspace)
610        ref.setTaggedValue(1,numpy.array([[[-1.0], [-4.0], [-7.0], [-10.0]], [[-13.0], [-16.0], [-19.0], [-22.0]]]))        ref.setTaggedValue(1,numpy.array([[[-1.0], [-4.0], [-7.0], [-10.0]], [[-13.0], [-16.0], [-19.0], [-22.0]]]))
# Line 515  class Test_util_slicing_with_tagged_data Line 613  class Test_util_slicing_with_tagged_data
613        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
614     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
615     def test_getslice_taggedData_rank3_LCU(self):     def test_getslice_taggedData_rank3_LCU(self):
616        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
617        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
618    35.0]]]),self.functionspace)
619          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
620    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
621    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
622        res=arg[2:,:,:2]        res=arg[2:,:,:2]
623        ref=Data(numpy.array([[[24.0, 25.0], [27.0, 28.0], [30.0, 31.0], [33.0, 34.0]]]),self.functionspace)        ref=Data(numpy.array([[[24.0, 25.0], [27.0, 28.0], [30.0, 31.0], [33.0, 34.0]]]),self.functionspace)
624        ref.setTaggedValue(1,numpy.array([[[-24.0, -25.0], [-27.0, -28.0], [-30.0, -31.0], [-33.0, -34.0]]]))        ref.setTaggedValue(1,numpy.array([[[-24.0, -25.0], [-27.0, -28.0], [-30.0, -31.0], [-33.0, -34.0]]]))
# Line 525  class Test_util_slicing_with_tagged_data Line 627  class Test_util_slicing_with_tagged_data
627        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
628     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
629     def test_getslice_taggedData_rank3_CCP(self):     def test_getslice_taggedData_rank3_CCP(self):
630        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
631        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
632    35.0]]]),self.functionspace)
633          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
634    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
635    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
636        res=arg[:,:,1]        res=arg[:,:,1]
637        ref=Data(numpy.array([[1.0, 4.0, 7.0, 10.0], [13.0, 16.0, 19.0, 22.0], [25.0, 28.0, 31.0, 34.0]]),self.functionspace)        ref=Data(numpy.array([[1.0, 4.0, 7.0, 10.0], [13.0, 16.0, 19.0, 22.0], [25.0, 28.0, 31.0, 34.0]]),self.functionspace)
638        ref.setTaggedValue(1,numpy.array([[-1.0, -4.0, -7.0, -10.0], [-13.0, -16.0, -19.0, -22.0], [-25.0, -28.0, -31.0, -34.0]]))        ref.setTaggedValue(1,numpy.array([[-1.0, -4.0, -7.0, -10.0], [-13.0, -16.0, -19.0, -22.0], [-25.0, -28.0, -31.0, -34.0]]))
# Line 535  class Test_util_slicing_with_tagged_data Line 641  class Test_util_slicing_with_tagged_data
641        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
642     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
643     def test_getslice_taggedData_rank3_LPP(self):     def test_getslice_taggedData_rank3_LPP(self):
644        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
645        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
646    35.0]]]),self.functionspace)
647          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
648    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
649    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
650        res=arg[2:,2,1]        res=arg[2:,2,1]
651        ref=Data(numpy.array([31.0]),self.functionspace)        ref=Data(numpy.array([31.0]),self.functionspace)
652        ref.setTaggedValue(1,numpy.array([-31.0]))        ref.setTaggedValue(1,numpy.array([-31.0]))
# Line 545  class Test_util_slicing_with_tagged_data Line 655  class Test_util_slicing_with_tagged_data
655        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
656     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
657     def test_getslice_taggedData_rank3_ULN(self):     def test_getslice_taggedData_rank3_ULN(self):
658        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
659        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
660    35.0]]]),self.functionspace)
661          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
662    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
663    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
664        res=arg[:2,2:]        res=arg[:2,2:]
665        ref=Data(numpy.array([[[6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)        ref=Data(numpy.array([[[6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)
666        ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))        ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-18.0, -19.0, -20.0], [-21.0, -22.0,
667    -23.0]]]))
668        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
669        self.assertEqual(res.getShape(),(2, 2, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 2, 3),"wrong shape of result.")
670        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
671     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
672     def test_getslice_taggedData_rank3_PPN(self):     def test_getslice_taggedData_rank3_PPN(self):
673        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
674        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
675    35.0]]]),self.functionspace)
676          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
677    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
678    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
679        res=arg[1,2]        res=arg[1,2]
680        ref=Data(numpy.array([18.0, 19.0, 20.0]),self.functionspace)        ref=Data(numpy.array([18.0, 19.0, 20.0]),self.functionspace)
681        ref.setTaggedValue(1,numpy.array([-18.0, -19.0, -20.0]))        ref.setTaggedValue(1,numpy.array([-18.0, -19.0, -20.0]))
# Line 565  class Test_util_slicing_with_tagged_data Line 684  class Test_util_slicing_with_tagged_data
684        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
685     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
686     def test_getslice_taggedData_rank3_CCN(self):     def test_getslice_taggedData_rank3_CCN(self):
687        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
688        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
689    35.0]]]),self.functionspace)
690          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
691    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
692    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
693        res=arg[:,:]        res=arg[:,:]
694        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
695        ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
696    35.0]]]),self.functionspace)
697          ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
698    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
699    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
700        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
701        self.assertEqual(res.getShape(),(3, 4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 4, 3),"wrong shape of result.")
702        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
703     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
704     def test_getslice_taggedData_rank3_RLP(self):     def test_getslice_taggedData_rank3_RLP(self):
705        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
706        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
707    35.0]]]),self.functionspace)
708          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
709    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
710    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
711        res=arg[1:2,2:,1]        res=arg[1:2,2:,1]
712        ref=Data(numpy.array([[19.0, 22.0]]),self.functionspace)        ref=Data(numpy.array([[19.0, 22.0]]),self.functionspace)
713        ref.setTaggedValue(1,numpy.array([[-19.0, -22.0]]))        ref.setTaggedValue(1,numpy.array([[-19.0, -22.0]]))
# Line 585  class Test_util_slicing_with_tagged_data Line 716  class Test_util_slicing_with_tagged_data
716        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
717     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
718     def test_getslice_taggedData_rank3_PLU(self):     def test_getslice_taggedData_rank3_PLU(self):
719        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
720        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
721    35.0]]]),self.functionspace)
722          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
723    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
724    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
725        res=arg[1,2:,:2]        res=arg[1,2:,:2]
726        ref=Data(numpy.array([[18.0, 19.0], [21.0, 22.0]]),self.functionspace)        ref=Data(numpy.array([[18.0, 19.0], [21.0, 22.0]]),self.functionspace)
727        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0], [-21.0, -22.0]]))        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0], [-21.0, -22.0]]))
# Line 595  class Test_util_slicing_with_tagged_data Line 730  class Test_util_slicing_with_tagged_data
730        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
731     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
732     def test_getslice_taggedData_rank3_RUC(self):     def test_getslice_taggedData_rank3_RUC(self):
733        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
734        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
735    35.0]]]),self.functionspace)
736          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
737    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
738    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
739        res=arg[1:2,:3,:]        res=arg[1:2,:3,:]
740        ref=Data(numpy.array([[[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)        ref=Data(numpy.array([[[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)
741        ref.setTaggedValue(1,numpy.array([[[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))        ref.setTaggedValue(1,numpy.array([[[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))
# Line 605  class Test_util_slicing_with_tagged_data Line 744  class Test_util_slicing_with_tagged_data
744        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
745     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
746     def test_getslice_taggedData_rank3_PPP(self):     def test_getslice_taggedData_rank3_PPP(self):
747        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
748        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
749    35.0]]]),self.functionspace)
750          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
751    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
752    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
753        res=arg[1,2,1]        res=arg[1,2,1]
754        ref=Data(19.0,self.functionspace)        ref=Data(19.0,self.functionspace)
755        ref.setTaggedValue(1,-19.0)        ref.setTaggedValue(1,-19.0)
# Line 615  class Test_util_slicing_with_tagged_data Line 758  class Test_util_slicing_with_tagged_data
758        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
759     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
760     def test_getslice_taggedData_rank3_CUU(self):     def test_getslice_taggedData_rank3_CUU(self):
761        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
762        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
763    35.0]]]),self.functionspace)
764          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
765    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
766    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
767        res=arg[:,:3,:2]        res=arg[:,:3,:2]
768        ref=Data(numpy.array([[[0.0, 1.0], [3.0, 4.0], [6.0, 7.0]], [[12.0, 13.0], [15.0, 16.0], [18.0, 19.0]], [[24.0, 25.0], [27.0, 28.0], [30.0, 31.0]]]),self.functionspace)        ref=Data(numpy.array([[[0.0, 1.0], [3.0, 4.0], [6.0, 7.0]], [[12.0, 13.0], [15.0, 16.0], [18.0, 19.0]], [[24.0, 25.0],
769        ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0], [-3.0, -4.0], [-6.0, -7.0]], [[-12.0, -13.0], [-15.0, -16.0], [-18.0, -19.0]], [[-24.0, -25.0], [-27.0, -28.0], [-30.0, -31.0]]]))  [27.0, 28.0], [30.0, 31.0]]]),self.functionspace)
770          ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0], [-3.0, -4.0], [-6.0, -7.0]], [[-12.0, -13.0], [-15.0, -16.0], [-18.0,
771    -19.0]], [[-24.0, -25.0], [-27.0, -28.0], [-30.0, -31.0]]]))
772        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
773        self.assertEqual(res.getShape(),(3, 3, 2),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 3, 2),"wrong shape of result.")
774        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
775     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
776     def test_getslice_taggedData_rank3_LUN(self):     def test_getslice_taggedData_rank3_LUN(self):
777        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
778        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
779    35.0]]]),self.functionspace)
780          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
781    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
782    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
783        res=arg[2:,:3]        res=arg[2:,:3]
784        ref=Data(numpy.array([[[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)        ref=Data(numpy.array([[[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)
785        ref.setTaggedValue(1,numpy.array([[[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))        ref.setTaggedValue(1,numpy.array([[[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))
# Line 635  class Test_util_slicing_with_tagged_data Line 788  class Test_util_slicing_with_tagged_data
788        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
789     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
790     def test_getslice_taggedData_rank3_LLC(self):     def test_getslice_taggedData_rank3_LLC(self):
791        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
792        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
793    35.0]]]),self.functionspace)
794          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
795    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
796    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
797        res=arg[2:,2:,:]        res=arg[2:,2:,:]
798        ref=Data(numpy.array([[[30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        ref=Data(numpy.array([[[30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)
799        ref.setTaggedValue(1,numpy.array([[[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))        ref.setTaggedValue(1,numpy.array([[[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
# Line 645  class Test_util_slicing_with_tagged_data Line 802  class Test_util_slicing_with_tagged_data
802        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
803     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
804     def test_getslice_taggedData_rank3_UUL(self):     def test_getslice_taggedData_rank3_UUL(self):
805        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
806        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
807    35.0]]]),self.functionspace)
808          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
809    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
810    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
811        res=arg[:2,:3,2:]        res=arg[:2,:3,2:]
812        ref=Data(numpy.array([[[2.0], [5.0], [8.0]], [[14.0], [17.0], [20.0]]]),self.functionspace)        ref=Data(numpy.array([[[2.0], [5.0], [8.0]], [[14.0], [17.0], [20.0]]]),self.functionspace)
813        ref.setTaggedValue(1,numpy.array([[[-2.0], [-5.0], [-8.0]], [[-14.0], [-17.0], [-20.0]]]))        ref.setTaggedValue(1,numpy.array([[[-2.0], [-5.0], [-8.0]], [[-14.0], [-17.0], [-20.0]]]))
# Line 655  class Test_util_slicing_with_tagged_data Line 816  class Test_util_slicing_with_tagged_data
816        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
817     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
818     def test_getslice_taggedData_rank3_LPN(self):     def test_getslice_taggedData_rank3_LPN(self):
819        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
820        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
821    35.0]]]),self.functionspace)
822          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
823    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
824    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
825        res=arg[2:,2]        res=arg[2:,2]
826        ref=Data(numpy.array([[30.0, 31.0, 32.0]]),self.functionspace)        ref=Data(numpy.array([[30.0, 31.0, 32.0]]),self.functionspace)
827        ref.setTaggedValue(1,numpy.array([[-30.0, -31.0, -32.0]]))        ref.setTaggedValue(1,numpy.array([[-30.0, -31.0, -32.0]]))
# Line 665  class Test_util_slicing_with_tagged_data Line 830  class Test_util_slicing_with_tagged_data
830        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
831     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
832     def test_getslice_taggedData_rank3_RPN(self):     def test_getslice_taggedData_rank3_RPN(self):
833        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
834        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
835    35.0]]]),self.functionspace)
836          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
837    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
838    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
839        res=arg[1:2,2]        res=arg[1:2,2]
840        ref=Data(numpy.array([[18.0, 19.0, 20.0]]),self.functionspace)        ref=Data(numpy.array([[18.0, 19.0, 20.0]]),self.functionspace)
841        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0, -20.0]]))        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0, -20.0]]))
# Line 675  class Test_util_slicing_with_tagged_data Line 844  class Test_util_slicing_with_tagged_data
844        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
845     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
846     def test_getslice_taggedData_rank3_RCP(self):     def test_getslice_taggedData_rank3_RCP(self):
847        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
848        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
849    35.0]]]),self.functionspace)
850          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
851    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
852    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
853        res=arg[1:2,:,1]        res=arg[1:2,:,1]
854        ref=Data(numpy.array([[13.0, 16.0, 19.0, 22.0]]),self.functionspace)        ref=Data(numpy.array([[13.0, 16.0, 19.0, 22.0]]),self.functionspace)
855        ref.setTaggedValue(1,numpy.array([[-13.0, -16.0, -19.0, -22.0]]))        ref.setTaggedValue(1,numpy.array([[-13.0, -16.0, -19.0, -22.0]]))
# Line 685  class Test_util_slicing_with_tagged_data Line 858  class Test_util_slicing_with_tagged_data
858        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
859     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
860     def test_getslice_taggedData_rank3_UCN(self):     def test_getslice_taggedData_rank3_UCN(self):
861        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
862        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
863    35.0]]]),self.functionspace)
864          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
865    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
866    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
867        res=arg[:2,:]        res=arg[:2,:]
868        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
869        ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)
870          ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
871    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))
872        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
873        self.assertEqual(res.getShape(),(2, 4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 4, 3),"wrong shape of result.")
874        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
875     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
876     def test_getslice_taggedData_rank3_LRL(self):     def test_getslice_taggedData_rank3_LRL(self):
877        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
878        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
879    35.0]]]),self.functionspace)
880          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
881    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
882    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
883        res=arg[2:,1:3,2:]        res=arg[2:,1:3,2:]
884        ref=Data(numpy.array([[[29.0], [32.0]]]),self.functionspace)        ref=Data(numpy.array([[[29.0], [32.0]]]),self.functionspace)
885        ref.setTaggedValue(1,numpy.array([[[-29.0], [-32.0]]]))        ref.setTaggedValue(1,numpy.array([[[-29.0], [-32.0]]]))
# Line 705  class Test_util_slicing_with_tagged_data Line 888  class Test_util_slicing_with_tagged_data
888        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
889     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
890     def test_getslice_taggedData_rank3_PUR(self):     def test_getslice_taggedData_rank3_PUR(self):
891        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
892        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
893    35.0]]]),self.functionspace)
894          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
895    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
896    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
897        res=arg[1,:3,1:2]        res=arg[1,:3,1:2]
898        ref=Data(numpy.array([[13.0], [16.0], [19.0]]),self.functionspace)        ref=Data(numpy.array([[13.0], [16.0], [19.0]]),self.functionspace)
899        ref.setTaggedValue(1,numpy.array([[-13.0], [-16.0], [-19.0]]))        ref.setTaggedValue(1,numpy.array([[-13.0], [-16.0], [-19.0]]))
# Line 715  class Test_util_slicing_with_tagged_data Line 902  class Test_util_slicing_with_tagged_data
902        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
903     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
904     def test_getslice_taggedData_rank3_RLC(self):     def test_getslice_taggedData_rank3_RLC(self):
905        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
906        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
907    35.0]]]),self.functionspace)
908          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
909    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
910    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
911        res=arg[1:2,2:,:]        res=arg[1:2,2:,:]
912        ref=Data(numpy.array([[[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)        ref=Data(numpy.array([[[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)
913        ref.setTaggedValue(1,numpy.array([[[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))        ref.setTaggedValue(1,numpy.array([[[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))
# Line 725  class Test_util_slicing_with_tagged_data Line 916  class Test_util_slicing_with_tagged_data
916        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
917     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
918     def test_getslice_taggedData_rank3_PRC(self):     def test_getslice_taggedData_rank3_PRC(self):
919        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
920        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
921    35.0]]]),self.functionspace)
922          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
923    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
924    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
925        res=arg[1,1:3,:]        res=arg[1,1:3,:]
926        ref=Data(numpy.array([[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)        ref=Data(numpy.array([[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)
927        ref.setTaggedValue(1,numpy.array([[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))        ref.setTaggedValue(1,numpy.array([[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))
# Line 735  class Test_util_slicing_with_tagged_data Line 930  class Test_util_slicing_with_tagged_data
930        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
931     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
932     def test_getslice_taggedData_rank3_CPN(self):     def test_getslice_taggedData_rank3_CPN(self):
933        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
934        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
935    35.0]]]),self.functionspace)
936          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
937    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
938    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
939        res=arg[:,2]        res=arg[:,2]
940        ref=Data(numpy.array([[6.0, 7.0, 8.0], [18.0, 19.0, 20.0], [30.0, 31.0, 32.0]]),self.functionspace)        ref=Data(numpy.array([[6.0, 7.0, 8.0], [18.0, 19.0, 20.0], [30.0, 31.0, 32.0]]),self.functionspace)
941        ref.setTaggedValue(1,numpy.array([[-6.0, -7.0, -8.0], [-18.0, -19.0, -20.0], [-30.0, -31.0, -32.0]]))        ref.setTaggedValue(1,numpy.array([[-6.0, -7.0, -8.0], [-18.0, -19.0, -20.0], [-30.0, -31.0, -32.0]]))
# Line 745  class Test_util_slicing_with_tagged_data Line 944  class Test_util_slicing_with_tagged_data
944        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
945     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
946     def test_getslice_taggedData_rank3_CLN(self):     def test_getslice_taggedData_rank3_CLN(self):
947        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
948        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
949    35.0]]]),self.functionspace)
950          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
951    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
952    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
953        res=arg[:,2:]        res=arg[:,2:]
954        ref=Data(numpy.array([[[6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        ref=Data(numpy.array([[[6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[30.0, 31.0,
955        ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  32.0], [33.0, 34.0, 35.0]]]),self.functionspace)
956          ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-18.0, -19.0, -20.0], [-21.0, -22.0,
957    -23.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
958        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
959        self.assertEqual(res.getShape(),(3, 2, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 2, 3),"wrong shape of result.")
960        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
961     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
962     def test_getslice_taggedData_rank3_RRN(self):     def test_getslice_taggedData_rank3_RRN(self):
963        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
964        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
965    35.0]]]),self.functionspace)
966          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
967    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
968    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
969        res=arg[1:2,1:3]        res=arg[1:2,1:3]
970        ref=Data(numpy.array([[[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)        ref=Data(numpy.array([[[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)
971        ref.setTaggedValue(1,numpy.array([[[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))        ref.setTaggedValue(1,numpy.array([[[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))
# Line 765  class Test_util_slicing_with_tagged_data Line 974  class Test_util_slicing_with_tagged_data
974        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
975     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
976     def test_getslice_taggedData_rank3_CUN(self):     def test_getslice_taggedData_rank3_CUN(self):
977        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
978        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
979    35.0]]]),self.functionspace)
980          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
981    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
982    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
983        res=arg[:,:3]        res=arg[:,:3]
984        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)        ref=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0],
985        ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))  [18.0, 19.0, 20.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)
986          ref.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-12.0, -13.0, -14.0],
987    [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))
988        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
989        self.assertEqual(res.getShape(),(3, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 3, 3),"wrong shape of result.")
990        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
991     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
992     def test_getslice_taggedData_rank3_UUP(self):     def test_getslice_taggedData_rank3_UUP(self):
993        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
994        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
995    35.0]]]),self.functionspace)
996          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
997    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
998    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
999        res=arg[:2,:3,1]        res=arg[:2,:3,1]
1000        ref=Data(numpy.array([[1.0, 4.0, 7.0], [13.0, 16.0, 19.0]]),self.functionspace)        ref=Data(numpy.array([[1.0, 4.0, 7.0], [13.0, 16.0, 19.0]]),self.functionspace)
1001        ref.setTaggedValue(1,numpy.array([[-1.0, -4.0, -7.0], [-13.0, -16.0, -19.0]]))        ref.setTaggedValue(1,numpy.array([[-1.0, -4.0, -7.0], [-13.0, -16.0, -19.0]]))
# Line 785  class Test_util_slicing_with_tagged_data Line 1004  class Test_util_slicing_with_tagged_data
1004        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1005     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1006     def test_getslice_taggedData_rank3_URN(self):     def test_getslice_taggedData_rank3_URN(self):
1007        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1008        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1009    35.0]]]),self.functionspace)
1010          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1011    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1012    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1013        res=arg[:2,1:3]        res=arg[:2,1:3]
1014        ref=Data(numpy.array([[[3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)        ref=Data(numpy.array([[[3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)
1015        ref.setTaggedValue(1,numpy.array([[[-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))        ref.setTaggedValue(1,numpy.array([[[-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0,
1016    -20.0]]]))
1017        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1018        self.assertEqual(res.getShape(),(2, 2, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 2, 3),"wrong shape of result.")
1019        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1020     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1021     def test_getslice_taggedData_rank3_RRP(self):     def test_getslice_taggedData_rank3_RRP(self):
1022        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1023        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1024    35.0]]]),self.functionspace)
1025          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1026    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1027    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1028        res=arg[1:2,1:3,1]        res=arg[1:2,1:3,1]
1029        ref=Data(numpy.array([[16.0, 19.0]]),self.functionspace)        ref=Data(numpy.array([[16.0, 19.0]]),self.functionspace)
1030        ref.setTaggedValue(1,numpy.array([[-16.0, -19.0]]))        ref.setTaggedValue(1,numpy.array([[-16.0, -19.0]]))
# Line 805  class Test_util_slicing_with_tagged_data Line 1033  class Test_util_slicing_with_tagged_data
1033        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1034     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1035     def test_getslice_taggedData_rank3_PRN(self):     def test_getslice_taggedData_rank3_PRN(self):
1036        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1037        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1038    35.0]]]),self.functionspace)
1039          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1040    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1041    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1042        res=arg[1,1:3]        res=arg[1,1:3]
1043        ref=Data(numpy.array([[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)        ref=Data(numpy.array([[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)
1044        ref.setTaggedValue(1,numpy.array([[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))        ref.setTaggedValue(1,numpy.array([[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))
# Line 815  class Test_util_slicing_with_tagged_data Line 1047  class Test_util_slicing_with_tagged_data
1047        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1048     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1049     def test_getslice_taggedData_rank3_RLN(self):     def test_getslice_taggedData_rank3_RLN(self):
1050        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1051        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1052    35.0]]]),self.functionspace)
1053          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1054    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1055    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1056        res=arg[1:2,2:]        res=arg[1:2,2:]
1057        ref=Data(numpy.array([[[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)        ref=Data(numpy.array([[[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)
1058        ref.setTaggedValue(1,numpy.array([[[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))        ref.setTaggedValue(1,numpy.array([[[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))
# Line 825  class Test_util_slicing_with_tagged_data Line 1061  class Test_util_slicing_with_tagged_data
1061        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1062     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1063     def test_getslice_taggedData_rank3_PRL(self):     def test_getslice_taggedData_rank3_PRL(self):
1064        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1065        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1066    35.0]]]),self.functionspace)
1067          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1068    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1069    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1070        res=arg[1,1:3,2:]        res=arg[1,1:3,2:]
1071        ref=Data(numpy.array([[17.0], [20.0]]),self.functionspace)        ref=Data(numpy.array([[17.0], [20.0]]),self.functionspace)
1072        ref.setTaggedValue(1,numpy.array([[-17.0], [-20.0]]))        ref.setTaggedValue(1,numpy.array([[-17.0], [-20.0]]))
# Line 835  class Test_util_slicing_with_tagged_data Line 1075  class Test_util_slicing_with_tagged_data
1075        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1076     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1077     def test_getslice_taggedData_rank3_PLC(self):     def test_getslice_taggedData_rank3_PLC(self):
1078        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1079        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1080    35.0]]]),self.functionspace)
1081          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1082    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1083    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1084        res=arg[1,2:,:]        res=arg[1,2:,:]
1085        ref=Data(numpy.array([[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]),self.functionspace)        ref=Data(numpy.array([[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]),self.functionspace)
1086        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]))        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]))
# Line 845  class Test_util_slicing_with_tagged_data Line 1089  class Test_util_slicing_with_tagged_data
1089        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1090     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1091     def test_getslice_taggedData_rank3_UPN(self):     def test_getslice_taggedData_rank3_UPN(self):
1092        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1093        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1094    35.0]]]),self.functionspace)
1095          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1096    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1097    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1098        res=arg[:2,2]        res=arg[:2,2]
1099        ref=Data(numpy.array([[6.0, 7.0, 8.0], [18.0, 19.0, 20.0]]),self.functionspace)        ref=Data(numpy.array([[6.0, 7.0, 8.0], [18.0, 19.0, 20.0]]),self.functionspace)
1100        ref.setTaggedValue(1,numpy.array([[-6.0, -7.0, -8.0], [-18.0, -19.0, -20.0]]))        ref.setTaggedValue(1,numpy.array([[-6.0, -7.0, -8.0], [-18.0, -19.0, -20.0]]))
# Line 855  class Test_util_slicing_with_tagged_data Line 1103  class Test_util_slicing_with_tagged_data
1103        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1104     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1105     def test_getslice_taggedData_rank3_ULR(self):     def test_getslice_taggedData_rank3_ULR(self):
1106        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1107        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1108    35.0]]]),self.functionspace)
1109          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1110    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1111    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1112        res=arg[:2,2:,1:2]        res=arg[:2,2:,1:2]
1113        ref=Data(numpy.array([[[7.0], [10.0]], [[19.0], [22.0]]]),self.functionspace)        ref=Data(numpy.array([[[7.0], [10.0]], [[19.0], [22.0]]]),self.functionspace)
1114        ref.setTaggedValue(1,numpy.array([[[-7.0], [-10.0]], [[-19.0], [-22.0]]]))        ref.setTaggedValue(1,numpy.array([[[-7.0], [-10.0]], [[-19.0], [-22.0]]]))
# Line 865  class Test_util_slicing_with_tagged_data Line 1117  class Test_util_slicing_with_tagged_data
1117        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1118     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1119     def test_getslice_taggedData_rank3_PUC(self):     def test_getslice_taggedData_rank3_PUC(self):
1120        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1121        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1122    35.0]]]),self.functionspace)
1123          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1124    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1125    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1126        res=arg[1,:3,:]        res=arg[1,:3,:]
1127        ref=Data(numpy.array([[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)        ref=Data(numpy.array([[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)
1128        ref.setTaggedValue(1,numpy.array([[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))        ref.setTaggedValue(1,numpy.array([[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))
# Line 875  class Test_util_slicing_with_tagged_data Line 1131  class Test_util_slicing_with_tagged_data
1131        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1132     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1133     def test_getslice_taggedData_rank3_CPP(self):     def test_getslice_taggedData_rank3_CPP(self):
1134        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1135        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1136    35.0]]]),self.functionspace)
1137          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1138    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1139    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1140        res=arg[:,2,1]        res=arg[:,2,1]
1141        ref=Data(numpy.array([7.0, 19.0, 31.0]),self.functionspace)        ref=Data(numpy.array([7.0, 19.0, 31.0]),self.functionspace)
1142        ref.setTaggedValue(1,numpy.array([-7.0, -19.0, -31.0]))        ref.setTaggedValue(1,numpy.array([-7.0, -19.0, -31.0]))
# Line 885  class Test_util_slicing_with_tagged_data Line 1145  class Test_util_slicing_with_tagged_data
1145        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1146     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1147     def test_getslice_taggedData_rank3_LRN(self):     def test_getslice_taggedData_rank3_LRN(self):
1148        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1149        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1150    35.0]]]),self.functionspace)
1151          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1152    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1153    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1154        res=arg[2:,1:3]        res=arg[2:,1:3]
1155        ref=Data(numpy.array([[[27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)        ref=Data(numpy.array([[[27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)
1156        ref.setTaggedValue(1,numpy.array([[[-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))        ref.setTaggedValue(1,numpy.array([[[-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))
# Line 895  class Test_util_slicing_with_tagged_data Line 1159  class Test_util_slicing_with_tagged_data
1159        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1160     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1161     def test_getslice_taggedData_rank3_PCN(self):     def test_getslice_taggedData_rank3_PCN(self):
1162        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1163        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1164    35.0]]]),self.functionspace)
1165          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1166    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1167    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1168        res=arg[1,:]        res=arg[1,:]
1169        ref=Data(numpy.array([[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]),self.functionspace)        ref=Data(numpy.array([[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]),self.functionspace)
1170        ref.setTaggedValue(1,numpy.array([[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]))        ref.setTaggedValue(1,numpy.array([[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0,
1171    -23.0]]))
1172        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1173        self.assertEqual(res.getShape(),(4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 3),"wrong shape of result.")
1174        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1175     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1176     def test_getslice_taggedData_rank3_RCN(self):     def test_getslice_taggedData_rank3_RCN(self):
1177        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1178        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1179    35.0]]]),self.functionspace)
1180          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1181    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1182    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1183        res=arg[1:2,:]        res=arg[1:2,:]
1184        ref=Data(numpy.array([[[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]]),self.functionspace)        ref=Data(numpy.array([[[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0,
1185        ref.setTaggedValue(1,numpy.array([[[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]]))  23.0]]]),self.functionspace)
1186          ref.setTaggedValue(1,numpy.array([[[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0,
1187    -23.0]]]))
1188        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1189        self.assertEqual(res.getShape(),(1, 4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(1, 4, 3),"wrong shape of result.")
1190        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1191     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1192     def test_getslice_taggedData_rank3_RUN(self):     def test_getslice_taggedData_rank3_RUN(self):
1193        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1194        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1195    35.0]]]),self.functionspace)
1196          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1197    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1198    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1199        res=arg[1:2,:3]        res=arg[1:2,:3]
1200        ref=Data(numpy.array([[[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)        ref=Data(numpy.array([[[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]]),self.functionspace)
1201        ref.setTaggedValue(1,numpy.array([[[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))        ref.setTaggedValue(1,numpy.array([[[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]]))
# Line 925  class Test_util_slicing_with_tagged_data Line 1204  class Test_util_slicing_with_tagged_data
1204        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1205     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1206     def test_getslice_taggedData_rank3_CRN(self):     def test_getslice_taggedData_rank3_CRN(self):
1207        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1208        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1209    35.0]]]),self.functionspace)
1210          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1211    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1212    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1213        res=arg[:,1:3]        res=arg[:,1:3]
1214        ref=Data(numpy.array([[[3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]], [[27.0, 28.0, 29.0], [30.0, 31.0, 32.0]]]),self.functionspace)        ref=Data(numpy.array([[[3.0, 4.0, 5.0], [6.0, 7.0, 8.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0]], [[27.0, 28.0, 29.0],
1215        ref.setTaggedValue(1,numpy.array([[[-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]], [[-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))  [30.0, 31.0, 32.0]]]),self.functionspace)
1216          ref.setTaggedValue(1,numpy.array([[[-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0,
1217    -20.0]], [[-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0]]]))
1218        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1219        self.assertEqual(res.getShape(),(3, 2, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 2, 3),"wrong shape of result.")
1220        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1221     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1222     def test_getslice_taggedData_rank3_PLN(self):     def test_getslice_taggedData_rank3_PLN(self):
1223        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1224        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1225    35.0]]]),self.functionspace)
1226          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1227    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1228    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1229        res=arg[1,2:]        res=arg[1,2:]
1230        ref=Data(numpy.array([[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]),self.functionspace)        ref=Data(numpy.array([[18.0, 19.0, 20.0], [21.0, 22.0, 23.0]]),self.functionspace)
1231        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]))        ref.setTaggedValue(1,numpy.array([[-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]]))
# Line 945  class Test_util_slicing_with_tagged_data Line 1234  class Test_util_slicing_with_tagged_data
1234        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1235     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1236     def test_getslice_taggedData_rank3_PUN(self):     def test_getslice_taggedData_rank3_PUN(self):
1237        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0, 35.0]]]),self.functionspace)        arg=Data(numpy.array([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0]], [[12.0, 13.0, 14.0], [15.0,
1238        arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]], [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))  16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0]], [[24.0, 25.0, 26.0], [27.0, 28.0, 29.0], [30.0, 31.0, 32.0], [33.0, 34.0,
1239    35.0]]]),self.functionspace)
1240          arg.setTaggedValue(1,numpy.array([[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0]],
1241    [[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0]], [[-24.0, -25.0, -26.0], [-27.0,
1242    -28.0, -29.0], [-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0]]]))
1243        res=arg[1,:3]        res=arg[1,:3]
1244        ref=Data(numpy.array([[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)        ref=Data(numpy.array([[12.0, 13.0, 14.0], [15.0, 16.0, 17.0], [18.0, 19.0, 20.0]]),self.functionspace)
1245        ref.setTaggedValue(1,numpy.array([[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))        ref.setTaggedValue(1,numpy.array([[-12.0, -13.0, -14.0], [-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0]]))
# Line 955  class Test_util_slicing_with_tagged_data Line 1248  class Test_util_slicing_with_tagged_data
1248        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1249     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1250     def test_getslice_taggedData_rank4_UCCL(self):     def test_getslice_taggedData_rank4_UCCL(self):
1251        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1252        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1253    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1254    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1255    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1256    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1257    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1258    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1259    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1260    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1261    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1262          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1263    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1264    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1265    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1266    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1267    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1268    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1269    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1270    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1271    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1272    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1273    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1274    [-177.0, -178.0, -179.0]]]]))
1275        res=arg[:3,:,:,2:]        res=arg[:3,:,:,2:]
1276        ref=Data(numpy.array([[[[2.0], [5.0], [8.0], [11.0], [14.0]], [[17.0], [20.0], [23.0], [26.0], [29.0]], [[32.0], [35.0], [38.0], [41.0], [44.0]]], [[[47.0], [50.0], [53.0], [56.0], [59.0]], [[62.0], [65.0], [68.0], [71.0], [74.0]], [[77.0], [80.0], [83.0], [86.0], [89.0]]], [[[92.0], [95.0], [98.0], [101.0], [104.0]], [[107.0], [110.0], [113.0], [116.0], [119.0]], [[122.0], [125.0], [128.0], [131.0], [134.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[2.0], [5.0], [8.0], [11.0], [14.0]], [[17.0], [20.0], [23.0], [26.0], [29.0]], [[32.0], [35.0],
1277        ref.setTaggedValue(1,numpy.array([[[[-2.0], [-5.0], [-8.0], [-11.0], [-14.0]], [[-17.0], [-20.0], [-23.0], [-26.0], [-29.0]], [[-32.0], [-35.0], [-38.0], [-41.0], [-44.0]]], [[[-47.0], [-50.0], [-53.0], [-56.0], [-59.0]], [[-62.0], [-65.0], [-68.0], [-71.0], [-74.0]], [[-77.0], [-80.0], [-83.0], [-86.0], [-89.0]]], [[[-92.0], [-95.0], [-98.0], [-101.0], [-104.0]], [[-107.0], [-110.0], [-113.0], [-116.0], [-119.0]], [[-122.0], [-125.0], [-128.0], [-131.0], [-134.0]]]]))  [38.0], [41.0], [44.0]]], [[[47.0], [50.0], [53.0], [56.0], [59.0]], [[62.0], [65.0], [68.0], [71.0], [74.0]], [[77.0], [80.0],
1278    [83.0], [86.0], [89.0]]], [[[92.0], [95.0], [98.0], [101.0], [104.0]], [[107.0], [110.0], [113.0], [116.0], [119.0]], [[122.0],
1279    [125.0], [128.0], [131.0], [134.0]]]]),self.functionspace)
1280          ref.setTaggedValue(1,numpy.array([[[[-2.0], [-5.0], [-8.0], [-11.0], [-14.0]], [[-17.0], [-20.0], [-23.0], [-26.0],
1281    [-29.0]], [[-32.0], [-35.0], [-38.0], [-41.0], [-44.0]]], [[[-47.0], [-50.0], [-53.0], [-56.0], [-59.0]], [[-62.0], [-65.0],
1282    [-68.0], [-71.0], [-74.0]], [[-77.0], [-80.0], [-83.0], [-86.0], [-89.0]]], [[[-92.0], [-95.0], [-98.0], [-101.0], [-104.0]],
1283    [[-107.0], [-110.0], [-113.0], [-116.0], [-119.0]], [[-122.0], [-125.0], [-128.0], [-131.0], [-134.0]]]]))
1284        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1285        self.assertEqual(res.getShape(),(3, 3, 5, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 3, 5, 1),"wrong shape of result.")
1286        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1287     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1288     def test_getslice_taggedData_rank4_LPCU(self):     def test_getslice_taggedData_rank4_LPCU(self):
1289        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1290        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1291    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1292    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1293    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1294    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1295    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1296    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1297    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1298    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1299    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1300          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1301    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1302    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1303    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1304    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1305    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1306    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1307    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1308    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1309    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1310    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1311    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1312    [-177.0, -178.0, -179.0]]]]))
1313        res=arg[2:,1,:,:2]        res=arg[2:,1,:,:2]
1314        ref=Data(numpy.array([[[105.0, 106.0], [108.0, 109.0], [111.0, 112.0], [114.0, 115.0], [117.0, 118.0]], [[150.0, 151.0], [153.0, 154.0], [156.0, 157.0], [159.0, 160.0], [162.0, 163.0]]]),self.functionspace)        ref=Data(numpy.array([[[105.0, 106.0], [108.0, 109.0], [111.0, 112.0], [114.0, 115.0], [117.0, 118.0]], [[150.0, 151.0],
1315        ref.setTaggedValue(1,numpy.array([[[-105.0, -106.0], [-108.0, -109.0], [-111.0, -112.0], [-114.0, -115.0], [-117.0, -118.0]], [[-150.0, -151.0], [-153.0, -154.0], [-156.0, -157.0], [-159.0, -160.0], [-162.0, -163.0]]]))  [153.0, 154.0], [156.0, 157.0], [159.0, 160.0], [162.0, 163.0]]]),self.functionspace)
1316          ref.setTaggedValue(1,numpy.array([[[-105.0, -106.0], [-108.0, -109.0], [-111.0, -112.0], [-114.0, -115.0], [-117.0,
1317    -118.0]], [[-150.0, -151.0], [-153.0, -154.0], [-156.0, -157.0], [-159.0, -160.0], [-162.0, -163.0]]]))
1318        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1319        self.assertEqual(res.getShape(),(2, 5, 2),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 5, 2),"wrong shape of result.")
1320        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1321     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1322     def test_getslice_taggedData_rank4_URCR(self):     def test_getslice_taggedData_rank4_URCR(self):
1323        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1324        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1325    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1326    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1327    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1328    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1329    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1330    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1331    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1332    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1333    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1334          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1335    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1336    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1337    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1338    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1339    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1340    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1341    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1342    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1343    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1344    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1345    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1346    [-177.0, -178.0, -179.0]]]]))
1347        res=arg[:3,1:2,:,1:2]        res=arg[:3,1:2,:,1:2]
1348        ref=Data(numpy.array([[[[16.0], [19.0], [22.0], [25.0], [28.0]]], [[[61.0], [64.0], [67.0], [70.0], [73.0]]], [[[106.0], [109.0], [112.0], [115.0], [118.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[16.0], [19.0], [22.0], [25.0], [28.0]]], [[[61.0], [64.0], [67.0], [70.0], [73.0]]], [[[106.0],
1349        ref.setTaggedValue(1,numpy.array([[[[-16.0], [-19.0], [-22.0], [-25.0], [-28.0]]], [[[-61.0], [-64.0], [-67.0], [-70.0], [-73.0]]], [[[-106.0], [-109.0], [-112.0], [-115.0], [-118.0]]]]))  [109.0], [112.0], [115.0], [118.0]]]]),self.functionspace)
1350          ref.setTaggedValue(1,numpy.array([[[[-16.0], [-19.0], [-22.0], [-25.0], [-28.0]]], [[[-61.0], [-64.0], [-67.0], [-70.0],
1351    [-73.0]]], [[[-106.0], [-109.0], [-112.0], [-115.0], [-118.0]]]]))
1352        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1353        self.assertEqual(res.getShape(),(3, 1, 5, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 1, 5, 1),"wrong shape of result.")
1354        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1355     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1356     def test_getslice_taggedData_rank4_LRUU(self):     def test_getslice_taggedData_rank4_LRUU(self):
1357        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1358        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1359    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1360    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1361    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1362    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1363    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1364    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1365    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1366    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1367    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1368          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1369    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1370    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1371    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1372    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1373    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1374    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1375    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1376    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1377    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1378    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1379    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1380    [-177.0, -178.0, -179.0]]]]))
1381        res=arg[2:,1:2,:4,:2]        res=arg[2:,1:2,:4,:2]
1382        ref=Data(numpy.array([[[[105.0, 106.0], [108.0, 109.0], [111.0, 112.0], [114.0, 115.0]]], [[[150.0, 151.0], [153.0, 154.0], [156.0, 157.0], [159.0, 160.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[105.0, 106.0], [108.0, 109.0], [111.0, 112.0], [114.0, 115.0]]], [[[150.0, 151.0], [153.0,
1383        ref.setTaggedValue(1,numpy.array([[[[-105.0, -106.0], [-108.0, -109.0], [-111.0, -112.0], [-114.0, -115.0]]], [[[-150.0, -151.0], [-153.0, -154.0], [-156.0, -157.0], [-159.0, -160.0]]]]))  154.0], [156.0, 157.0], [159.0, 160.0]]]]),self.functionspace)
1384          ref.setTaggedValue(1,numpy.array([[[[-105.0, -106.0], [-108.0, -109.0], [-111.0, -112.0], [-114.0, -115.0]]], [[[-150.0,
1385    -151.0], [-153.0, -154.0], [-156.0, -157.0], [-159.0, -160.0]]]]))
1386        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1387        self.assertEqual(res.getShape(),(2, 1, 4, 2),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 1, 4, 2),"wrong shape of result.")
1388        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1389     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1390     def test_getslice_taggedData_rank4_CUUL(self):     def test_getslice_taggedData_rank4_CUUL(self):
1391        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1392        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1393    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1394    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1395    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1396    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1397    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1398    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1399    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1400    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1401    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1402          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1403    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1404    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1405    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1406    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1407    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1408    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1409    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1410    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1411    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1412    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1413    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1414    [-177.0, -178.0, -179.0]]]]))
1415        res=arg[:,:2,:4,2:]        res=arg[:,:2,:4,2:]
1416        ref=Data(numpy.array([[[[2.0], [5.0], [8.0], [11.0]], [[17.0], [20.0], [23.0], [26.0]]], [[[47.0], [50.0], [53.0], [56.0]], [[62.0], [65.0], [68.0], [71.0]]], [[[92.0], [95.0], [98.0], [101.0]], [[107.0], [110.0], [113.0], [116.0]]], [[[137.0], [140.0], [143.0], [146.0]], [[152.0], [155.0], [158.0], [161.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[2.0], [5.0], [8.0], [11.0]], [[17.0], [20.0], [23.0], [26.0]]], [[[47.0], [50.0], [53.0],
1417        ref.setTaggedValue(1,numpy.array([[[[-2.0], [-5.0], [-8.0], [-11.0]], [[-17.0], [-20.0], [-23.0], [-26.0]]], [[[-47.0], [-50.0], [-53.0], [-56.0]], [[-62.0], [-65.0], [-68.0], [-71.0]]], [[[-92.0], [-95.0], [-98.0], [-101.0]], [[-107.0], [-110.0], [-113.0], [-116.0]]], [[[-137.0], [-140.0], [-143.0], [-146.0]], [[-152.0], [-155.0], [-158.0], [-161.0]]]]))  [56.0]], [[62.0], [65.0], [68.0], [71.0]]], [[[92.0], [95.0], [98.0], [101.0]], [[107.0], [110.0], [113.0], [116.0]]],
1418    [[[137.0], [140.0], [143.0], [146.0]], [[152.0], [155.0], [158.0], [161.0]]]]),self.functionspace)
1419          ref.setTaggedValue(1,numpy.array([[[[-2.0], [-5.0], [-8.0], [-11.0]], [[-17.0], [-20.0], [-23.0], [-26.0]]], [[[-47.0],
1420    [-50.0], [-53.0], [-56.0]], [[-62.0], [-65.0], [-68.0], [-71.0]]], [[[-92.0], [-95.0], [-98.0], [-101.0]], [[-107.0], [-110.0],
1421    [-113.0], [-116.0]]], [[[-137.0], [-140.0], [-143.0], [-146.0]], [[-152.0], [-155.0], [-158.0], [-161.0]]]]))
1422        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1423        self.assertEqual(res.getShape(),(4, 2, 4, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 2, 4, 1),"wrong shape of result.")
1424        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1425     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1426     def test_getslice_taggedData_rank4_CCPC(self):     def test_getslice_taggedData_rank4_CCPC(self):
1427        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1428        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1429    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1430    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1431    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1432    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1433    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1434    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1435    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1436    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1437    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1438          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1439    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1440    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1441    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1442    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1443    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1444    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1445    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1446    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1447    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1448    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1449    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1450    [-177.0, -178.0, -179.0]]]]))
1451        res=arg[:,:,2,:]        res=arg[:,:,2,:]
1452        ref=Data(numpy.array([[[6.0, 7.0, 8.0], [21.0, 22.0, 23.0], [36.0, 37.0, 38.0]], [[51.0, 52.0, 53.0], [66.0, 67.0, 68.0], [81.0, 82.0, 83.0]], [[96.0, 97.0, 98.0], [111.0, 112.0, 113.0], [126.0, 127.0, 128.0]], [[141.0, 142.0, 143.0], [156.0, 157.0, 158.0], [171.0, 172.0, 173.0]]]),self.functionspace)        ref=Data(numpy.array([[[6.0, 7.0, 8.0], [21.0, 22.0, 23.0], [36.0, 37.0, 38.0]], [[51.0, 52.0, 53.0], [66.0, 67.0, 68.0],
1453        ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0, -8.0], [-21.0, -22.0, -23.0], [-36.0, -37.0, -38.0]], [[-51.0, -52.0, -53.0], [-66.0, -67.0, -68.0], [-81.0, -82.0, -83.0]], [[-96.0, -97.0, -98.0], [-111.0, -112.0, -113.0], [-126.0, -127.0, -128.0]], [[-141.0, -142.0, -143.0], [-156.0, -157.0, -158.0], [-171.0, -172.0, -173.0]]]))  [81.0, 82.0, 83.0]], [[96.0, 97.0, 98.0], [111.0, 112.0, 113.0], [126.0, 127.0, 128.0]], [[141.0, 142.0, 143.0], [156.0, 157.0,
1454    158.0], [171.0, 172.0, 173.0]]]),self.functionspace)
1455          ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0, -8.0], [-21.0, -22.0, -23.0], [-36.0, -37.0, -38.0]], [[-51.0, -52.0,
1456    -53.0], [-66.0, -67.0, -68.0], [-81.0, -82.0, -83.0]], [[-96.0, -97.0, -98.0], [-111.0, -112.0, -113.0], [-126.0, -127.0,
1457    -128.0]], [[-141.0, -142.0, -143.0], [-156.0, -157.0, -158.0], [-171.0, -172.0, -173.0]]]))
1458        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1459        self.assertEqual(res.getShape(),(4, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 3, 3),"wrong shape of result.")
1460        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1461     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1462     def test_getslice_taggedData_rank4_RLCP(self):     def test_getslice_taggedData_rank4_RLCP(self):
1463        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1464        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1465    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1466    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1467    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1468    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1469    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1470    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1471    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1472    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1473    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1474          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1475    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1476    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1477    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1478    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1479    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1480    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1481    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1482    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1483    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1484    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1485    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1486    [-177.0, -178.0, -179.0]]]]))
1487        res=arg[1:3,2:,:,1]        res=arg[1:3,2:,:,1]
1488        ref=Data(numpy.array([[[76.0, 79.0, 82.0, 85.0, 88.0]], [[121.0, 124.0, 127.0, 130.0, 133.0]]]),self.functionspace)        ref=Data(numpy.array([[[76.0, 79.0, 82.0, 85.0, 88.0]], [[121.0, 124.0, 127.0, 130.0, 133.0]]]),self.functionspace)
1489        ref.setTaggedValue(1,numpy.array([[[-76.0, -79.0, -82.0, -85.0, -88.0]], [[-121.0, -124.0, -127.0, -130.0, -133.0]]]))        ref.setTaggedValue(1,numpy.array([[[-76.0, -79.0, -82.0, -85.0, -88.0]], [[-121.0, -124.0, -127.0, -130.0, -133.0]]]))
# Line 1025  class Test_util_slicing_with_tagged_data Line 1492  class Test_util_slicing_with_tagged_data
1492        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1493     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1494     def test_getslice_taggedData_rank4_LRRC(self):     def test_getslice_taggedData_rank4_LRRC(self):
1495        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1496        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1497    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1498    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1499    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1500    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1501    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1502    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1503    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1504    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1505    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1506          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1507    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1508    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1509    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1510    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1511    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1512    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1513    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1514    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1515    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1516    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1517    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1518    [-177.0, -178.0, -179.0]]]]))
1519        res=arg[2:,1:2,1:4,:]        res=arg[2:,1:2,1:4,:]
1520        ref=Data(numpy.array([[[[108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0]]], [[[153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0]]], [[[153.0, 154.0, 155.0],
1521        ref.setTaggedValue(1,numpy.array([[[[-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]]], [[[-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0]]]]))  [156.0, 157.0, 158.0], [159.0, 160.0, 161.0]]]]),self.functionspace)
1522          ref.setTaggedValue(1,numpy.array([[[[-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]]],
1523    [[[-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0]]]]))
1524        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1525        self.assertEqual(res.getShape(),(2, 1, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 1, 3, 3),"wrong shape of result.")
1526        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1527     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1528     def test_getslice_taggedData_rank4_LLCP(self):     def test_getslice_taggedData_rank4_LLCP(self):
1529        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1530        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1531    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1532    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1533    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1534    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1535    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1536    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1537    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1538    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1539    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1540          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1541    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1542    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1543    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1544    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1545    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1546    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1547    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1548    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1549    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1550    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1551    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1552    [-177.0, -178.0, -179.0]]]]))
1553        res=arg[2:,2:,:,1]        res=arg[2:,2:,:,1]
1554        ref=Data(numpy.array([[[121.0, 124.0, 127.0, 130.0, 133.0]], [[166.0, 169.0, 172.0, 175.0, 178.0]]]),self.functionspace)        ref=Data(numpy.array([[[121.0, 124.0, 127.0, 130.0, 133.0]], [[166.0, 169.0, 172.0, 175.0, 178.0]]]),self.functionspace)
1555        ref.setTaggedValue(1,numpy.array([[[-121.0, -124.0, -127.0, -130.0, -133.0]], [[-166.0, -169.0, -172.0, -175.0, -178.0]]]))        ref.setTaggedValue(1,numpy.array([[[-121.0, -124.0, -127.0, -130.0, -133.0]], [[-166.0, -169.0, -172.0, -175.0,
1556    -178.0]]]))
1557        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1558        self.assertEqual(res.getShape(),(2, 1, 5),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 1, 5),"wrong shape of result.")
1559        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1560     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1561     def test_getslice_taggedData_rank4_PRCN(self):     def test_getslice_taggedData_rank4_PRCN(self):
1562        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1563        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1564    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1565    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1566    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1567    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1568    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1569    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1570    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1571    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1572    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1573          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1574    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1575    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1576    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1577    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1578    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1579    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1580    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1581    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1582    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1583    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1584    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1585    [-177.0, -178.0, -179.0]]]]))
1586        res=arg[2,1:2,:]        res=arg[2,1:2,:]
1587        ref=Data(numpy.array([[[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]]),self.functionspace)        ref=Data(numpy.array([[[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0],
1588        ref.setTaggedValue(1,numpy.array([[[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]]))  [117.0, 118.0, 119.0]]]),self.functionspace)
1589          ref.setTaggedValue(1,numpy.array([[[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0,
1590    -115.0, -116.0], [-117.0, -118.0, -119.0]]]))
1591        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1592        self.assertEqual(res.getShape(),(1, 5, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(1, 5, 3),"wrong shape of result.")
1593        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1594     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1595     def test_getslice_taggedData_rank4_RPRC(self):     def test_getslice_taggedData_rank4_RPRC(self):
1596        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1597        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1598    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1599    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1600    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1601    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1602    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1603    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1604    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1605    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1606    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1607          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1608    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1609    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1610    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1611    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1612    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1613    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1614    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1615    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1616    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1617    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1618    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1619    [-177.0, -178.0, -179.0]]]]))
1620        res=arg[1:3,1,1:4,:]        res=arg[1:3,1,1:4,:]
1621        ref=Data(numpy.array([[[63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0]], [[108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0]]]),self.functionspace)        ref=Data(numpy.array([[[63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0]], [[108.0, 109.0, 110.0], [111.0,
1622        ref.setTaggedValue(1,numpy.array([[[-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0]], [[-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]]]))  112.0, 113.0], [114.0, 115.0, 116.0]]]),self.functionspace)
1623          ref.setTaggedValue(1,numpy.array([[[-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0]], [[-108.0,
1624    -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]]]))
1625        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1626        self.assertEqual(res.getShape(),(2, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 3, 3),"wrong shape of result.")
1627        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1628     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1629     def test_getslice_taggedData_rank4_ULCN(self):     def test_getslice_taggedData_rank4_ULCN(self):
1630        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1631        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1632    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1633    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1634    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1635    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1636    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1637    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1638    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1639    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1640    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1641          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1642    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1643    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1644    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1645    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1646    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1647    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1648    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1649    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1650    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1651    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1652    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1653    [-177.0, -178.0, -179.0]]]]))
1654        res=arg[:3,2:,:]        res=arg[:3,2:,:]
1655        ref=Data(numpy.array([[[[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0,
1656        ref.setTaggedValue(1,numpy.array([[[[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]]]))  44.0]]], [[[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[120.0,
1657    121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0,
1658    134.0]]]]),self.functionspace)
1659          ref.setTaggedValue(1,numpy.array([[[[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0,
1660    -41.0], [-42.0, -43.0, -44.0]]], [[[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0],
1661    [-87.0, -88.0, -89.0]]], [[[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0,
1662    -131.0], [-132.0, -133.0, -134.0]]]]))
1663        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1664        self.assertEqual(res.getShape(),(3, 1, 5, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 1, 5, 3),"wrong shape of result.")
1665        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1666     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1667     def test_getslice_taggedData_rank4_CLRN(self):     def test_getslice_taggedData_rank4_CLRN(self):
1668        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1669        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1670    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1671    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1672    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1673    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1674    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1675    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1676    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1677    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1678    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1679          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1680    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1681    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1682    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1683    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1684    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1685    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1686    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1687    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1688    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1689    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1690    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1691    [-177.0, -178.0, -179.0]]]]))
1692        res=arg[:,2:,1:4]        res=arg[:,2:,1:4]
1693        ref=Data(numpy.array([[[[33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0]]], [[[78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0]]], [[[123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0]]], [[[168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0]]], [[[78.0, 79.0, 80.0], [81.0, 82.0,
1694        ref.setTaggedValue(1,numpy.array([[[[-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0]]], [[[-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0]]], [[[-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0]]], [[[-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0]]]]))  83.0], [84.0, 85.0, 86.0]]], [[[123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0]]], [[[168.0, 169.0, 170.0],
1695    [171.0, 172.0, 173.0], [174.0, 175.0, 176.0]]]]),self.functionspace)
1696          ref.setTaggedValue(1,numpy.array([[[[-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0]]], [[[-78.0,
1697    -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0]]], [[[-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0,
1698    -130.0, -131.0]]], [[[-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0]]]]))
1699        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1700        self.assertEqual(res.getShape(),(4, 1, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 1, 3, 3),"wrong shape of result.")
1701        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1702     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1703     def test_getslice_taggedData_rank4_RRRL(self):     def test_getslice_taggedData_rank4_RRRL(self):
1704        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1705        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1706    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1707    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1708    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1709    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1710    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1711    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1712    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1713    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1714    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1715          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1716    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1717    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1718    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1719    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1720    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1721    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1722    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1723    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1724    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1725    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1726    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1727    [-177.0, -178.0, -179.0]]]]))
1728        res=arg[1:3,1:2,1:4,2:]        res=arg[1:3,1:2,1:4,2:]
1729        ref=Data(numpy.array([[[[65.0], [68.0], [71.0]]], [[[110.0], [113.0], [116.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[65.0], [68.0], [71.0]]], [[[110.0], [113.0], [116.0]]]]),self.functionspace)
1730        ref.setTaggedValue(1,numpy.array([[[[-65.0], [-68.0], [-71.0]]], [[[-110.0], [-113.0], [-116.0]]]]))        ref.setTaggedValue(1,numpy.array([[[[-65.0], [-68.0], [-71.0]]], [[[-110.0], [-113.0], [-116.0]]]]))
# Line 1095  class Test_util_slicing_with_tagged_data Line 1733  class Test_util_slicing_with_tagged_data
1733        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1734     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1735     def test_getslice_taggedData_rank4_PLPL(self):     def test_getslice_taggedData_rank4_PLPL(self):
1736        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1737        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1738    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1739    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1740    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1741    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1742    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1743    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1744    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1745    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1746    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1747          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1748    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1749    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1750    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1751    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1752    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1753    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1754    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1755    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1756    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1757    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1758    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1759    [-177.0, -178.0, -179.0]]]]))
1760        res=arg[2,2:,2,2:]        res=arg[2,2:,2,2:]
1761        ref=Data(numpy.array([[128.0]]),self.functionspace)        ref=Data(numpy.array([[128.0]]),self.functionspace)
1762        ref.setTaggedValue(1,numpy.array([[-128.0]]))        ref.setTaggedValue(1,numpy.array([[-128.0]]))
# Line 1105  class Test_util_slicing_with_tagged_data Line 1765  class Test_util_slicing_with_tagged_data
1765        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1766     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1767     def test_getslice_taggedData_rank4_LLPN(self):     def test_getslice_taggedData_rank4_LLPN(self):
1768        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1769        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1770    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1771    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1772    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1773    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1774    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1775    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1776    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1777    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1778    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1779          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1780    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1781    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1782    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1783    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1784    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1785    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1786    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1787    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1788    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1789    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1790    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1791    [-177.0, -178.0, -179.0]]]]))
1792        res=arg[2:,2:,2]        res=arg[2:,2:,2]
1793        ref=Data(numpy.array([[[126.0, 127.0, 128.0]], [[171.0, 172.0, 173.0]]]),self.functionspace)        ref=Data(numpy.array([[[126.0, 127.0, 128.0]], [[171.0, 172.0, 173.0]]]),self.functionspace)
1794        ref.setTaggedValue(1,numpy.array([[[-126.0, -127.0, -128.0]], [[-171.0, -172.0, -173.0]]]))        ref.setTaggedValue(1,numpy.array([[[-126.0, -127.0, -128.0]], [[-171.0, -172.0, -173.0]]]))
# Line 1115  class Test_util_slicing_with_tagged_data Line 1797  class Test_util_slicing_with_tagged_data
1797        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1798     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1799     def test_getslice_taggedData_rank4_PCRC(self):     def test_getslice_taggedData_rank4_PCRC(self):
1800        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1801        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1802    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1803    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1804    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1805    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1806    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1807    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1808    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1809    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1810    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1811          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1812    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1813    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1814    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1815    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1816    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1817    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1818    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1819    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1820    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1821    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1822    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1823    [-177.0, -178.0, -179.0]]]]))
1824        res=arg[2,:,1:4,:]        res=arg[2,:,1:4,:]
1825        ref=Data(numpy.array([[[93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0]], [[108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0]], [[123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0]]]),self.functionspace)        ref=Data(numpy.array([[[93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0]], [[108.0, 109.0, 110.0], [111.0,
1826        ref.setTaggedValue(1,numpy.array([[[-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0]], [[-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]], [[-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0]]]))  112.0, 113.0], [114.0, 115.0, 116.0]], [[123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0,
1827    131.0]]]),self.functionspace)
1828          ref.setTaggedValue(1,numpy.array([[[-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0]], [[-108.0,
1829    -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]], [[-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0],
1830    [-129.0, -130.0, -131.0]]]))
1831        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1832        self.assertEqual(res.getShape(),(3, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 3, 3),"wrong shape of result.")
1833        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1834     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1835     def test_getslice_taggedData_rank4_CPRP(self):     def test_getslice_taggedData_rank4_CPRP(self):
1836        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1837        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1838    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1839    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1840    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1841    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1842    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1843    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1844    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1845    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1846    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1847          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1848    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1849    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1850    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1851    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1852    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1853    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1854    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1855    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1856    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1857    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1858    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1859    [-177.0, -178.0, -179.0]]]]))
1860        res=arg[:,1,1:4,1]        res=arg[:,1,1:4,1]
1861        ref=Data(numpy.array([[19.0, 22.0, 25.0], [64.0, 67.0, 70.0], [109.0, 112.0, 115.0], [154.0, 157.0, 160.0]]),self.functionspace)        ref=Data(numpy.array([[19.0, 22.0, 25.0], [64.0, 67.0, 70.0], [109.0, 112.0, 115.0], [154.0, 157.0,
1862        ref.setTaggedValue(1,numpy.array([[-19.0, -22.0, -25.0], [-64.0, -67.0, -70.0], [-109.0, -112.0, -115.0], [-154.0, -157.0, -160.0]]))  160.0]]),self.functionspace)
1863          ref.setTaggedValue(1,numpy.array([[-19.0, -22.0, -25.0], [-64.0, -67.0, -70.0], [-109.0, -112.0, -115.0], [-154.0,
1864    -157.0, -160.0]]))
1865        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1866        self.assertEqual(res.getShape(),(4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 3),"wrong shape of result.")
1867        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1868     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1869     def test_getslice_taggedData_rank4_CUPU(self):     def test_getslice_taggedData_rank4_CUPU(self):
1870        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1871        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1872    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1873    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1874    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1875    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1876    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1877    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1878    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1879    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1880    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1881          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1882    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1883    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1884    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1885    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1886    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1887    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1888    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1889    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1890    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1891    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1892    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1893    [-177.0, -178.0, -179.0]]]]))
1894        res=arg[:,:2,2,:2]        res=arg[:,:2,2,:2]
1895        ref=Data(numpy.array([[[6.0, 7.0], [21.0, 22.0]], [[51.0, 52.0], [66.0, 67.0]], [[96.0, 97.0], [111.0, 112.0]], [[141.0, 142.0], [156.0, 157.0]]]),self.functionspace)        ref=Data(numpy.array([[[6.0, 7.0], [21.0, 22.0]], [[51.0, 52.0], [66.0, 67.0]], [[96.0, 97.0], [111.0, 112.0]], [[141.0,
1896        ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0], [-21.0, -22.0]], [[-51.0, -52.0], [-66.0, -67.0]], [[-96.0, -97.0], [-111.0, -112.0]], [[-141.0, -142.0], [-156.0, -157.0]]]))  142.0], [156.0, 157.0]]]),self.functionspace)
1897          ref.setTaggedValue(1,numpy.array([[[-6.0, -7.0], [-21.0, -22.0]], [[-51.0, -52.0], [-66.0, -67.0]], [[-96.0, -97.0],
1898    [-111.0, -112.0]], [[-141.0, -142.0], [-156.0, -157.0]]]))
1899        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1900        self.assertEqual(res.getShape(),(4, 2, 2),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 2, 2),"wrong shape of result.")
1901        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1902     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1903     def test_getslice_taggedData_rank4_UUUL(self):     def test_getslice_taggedData_rank4_UUUL(self):
1904        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1905        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1906    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1907    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1908    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1909    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1910    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1911    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1912    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1913    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1914    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1915          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1916    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1917    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1918    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1919    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1920    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1921    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1922    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1923    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1924    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1925    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1926    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1927    [-177.0, -178.0, -179.0]]]]))
1928        res=arg[:3,:2,:4,2:]        res=arg[:3,:2,:4,2:]
1929        ref=Data(numpy.array([[[[2.0], [5.0], [8.0], [11.0]], [[17.0], [20.0], [23.0], [26.0]]], [[[47.0], [50.0], [53.0], [56.0]], [[62.0], [65.0], [68.0], [71.0]]], [[[92.0], [95.0], [98.0], [101.0]], [[107.0], [110.0], [113.0], [116.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[2.0], [5.0], [8.0], [11.0]], [[17.0], [20.0], [23.0], [26.0]]], [[[47.0], [50.0], [53.0],
1930        ref.setTaggedValue(1,numpy.array([[[[-2.0], [-5.0], [-8.0], [-11.0]], [[-17.0], [-20.0], [-23.0], [-26.0]]], [[[-47.0], [-50.0], [-53.0], [-56.0]], [[-62.0], [-65.0], [-68.0], [-71.0]]], [[[-92.0], [-95.0], [-98.0], [-101.0]], [[-107.0], [-110.0], [-113.0], [-116.0]]]]))  [56.0]], [[62.0], [65.0], [68.0], [71.0]]], [[[92.0], [95.0], [98.0], [101.0]], [[107.0], [110.0], [113.0],
1931    [116.0]]]]),self.functionspace)
1932          ref.setTaggedValue(1,numpy.array([[[[-2.0], [-5.0], [-8.0], [-11.0]], [[-17.0], [-20.0], [-23.0], [-26.0]]], [[[-47.0],
1933    [-50.0], [-53.0], [-56.0]], [[-62.0], [-65.0], [-68.0], [-71.0]]], [[[-92.0], [-95.0], [-98.0], [-101.0]], [[-107.0], [-110.0],
1934    [-113.0], [-116.0]]]]))
1935        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1936        self.assertEqual(res.getShape(),(3, 2, 4, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 2, 4, 1),"wrong shape of result.")
1937        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1938     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1939     def test_getslice_taggedData_rank4_RUUC(self):     def test_getslice_taggedData_rank4_RUUC(self):
1940        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1941        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1942    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1943    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1944    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1945    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1946    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1947    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1948    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1949    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1950    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1951          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1952    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1953    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1954    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1955    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1956    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1957    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1958    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1959    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1960    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1961    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
1962    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
1963    [-177.0, -178.0, -179.0]]]]))
1964        res=arg[1:3,:2,:4,:]        res=arg[1:3,:2,:4,:]
1965        ref=Data(numpy.array([[[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0]], [[60.0, 61.0,
1966        ref.setTaggedValue(1,numpy.array([[[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]]]]))  62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0,
1967    98.0], [99.0, 100.0, 101.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0,
1968    116.0]]]]),self.functionspace)
1969          ref.setTaggedValue(1,numpy.array([[[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0,
1970    -56.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0]]], [[[-90.0, -91.0,
1971    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0,
1972    -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0]]]]))
1973        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
1974        self.assertEqual(res.getShape(),(2, 2, 4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 2, 4, 3),"wrong shape of result.")
1975        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
1976     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1977     def test_getslice_taggedData_rank4_CCLL(self):     def test_getslice_taggedData_rank4_CCLL(self):
1978        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
1979        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
1980    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
1981    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
1982    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
1983    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
1984    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
1985    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
1986    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
1987    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
1988    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
1989          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
1990    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
1991    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
1992    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
1993    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
1994    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
1995    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
1996    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
1997    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
1998    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
1999    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2000    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2001    [-177.0, -178.0, -179.0]]]]))
2002        res=arg[:,:,2:,2:]        res=arg[:,:,2:,2:]
2003        ref=Data(numpy.array([[[[8.0], [11.0], [14.0]], [[23.0], [26.0], [29.0]], [[38.0], [41.0], [44.0]]], [[[53.0], [56.0], [59.0]], [[68.0], [71.0], [74.0]], [[83.0], [86.0], [89.0]]], [[[98.0], [101.0], [104.0]], [[113.0], [116.0], [119.0]], [[128.0], [131.0], [134.0]]], [[[143.0], [146.0], [149.0]], [[158.0], [161.0], [164.0]], [[173.0], [176.0], [179.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[8.0], [11.0], [14.0]], [[23.0], [26.0], [29.0]], [[38.0], [41.0], [44.0]]], [[[53.0], [56.0],
2004        ref.setTaggedValue(1,numpy.array([[[[-8.0], [-11.0], [-14.0]], [[-23.0], [-26.0], [-29.0]], [[-38.0], [-41.0], [-44.0]]], [[[-53.0], [-56.0], [-59.0]], [[-68.0], [-71.0], [-74.0]], [[-83.0], [-86.0], [-89.0]]], [[[-98.0], [-101.0], [-104.0]], [[-113.0], [-116.0], [-119.0]], [[-128.0], [-131.0], [-134.0]]], [[[-143.0], [-146.0], [-149.0]], [[-158.0], [-161.0], [-164.0]], [[-173.0], [-176.0], [-179.0]]]]))  [59.0]], [[68.0], [71.0], [74.0]], [[83.0], [86.0], [89.0]]], [[[98.0], [101.0], [104.0]], [[113.0], [116.0], [119.0]],
2005    [[128.0], [131.0], [134.0]]], [[[143.0], [146.0], [149.0]], [[158.0], [161.0], [164.0]], [[173.0], [176.0],
2006    [179.0]]]]),self.functionspace)
2007          ref.setTaggedValue(1,numpy.array([[[[-8.0], [-11.0], [-14.0]], [[-23.0], [-26.0], [-29.0]], [[-38.0], [-41.0], [-44.0]]],
2008    [[[-53.0], [-56.0], [-59.0]], [[-68.0], [-71.0], [-74.0]], [[-83.0], [-86.0], [-89.0]]], [[[-98.0], [-101.0], [-104.0]],
2009    [[-113.0], [-116.0], [-119.0]], [[-128.0], [-131.0], [-134.0]]], [[[-143.0], [-146.0], [-149.0]], [[-158.0], [-161.0],
2010    [-164.0]], [[-173.0], [-176.0], [-179.0]]]]))
2011        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
2012        self.assertEqual(res.getShape(),(4, 3, 3, 1),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 3, 3, 1),"wrong shape of result.")
2013        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2014     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2015     def test_getslice_taggedData_rank4_LRLC(self):     def test_getslice_taggedData_rank4_LRLC(self):
2016        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2017        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2018    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2019    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2020    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2021    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2022    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2023    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2024    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2025    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2026    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2027          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2028    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2029    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2030    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2031    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2032    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2033    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2034    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2035    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2036    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2037    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2038    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2039    [-177.0, -178.0, -179.0]]]]))
2040        res=arg[2:,1:2,2:,:]        res=arg[2:,1:2,2:,:]
2041        ref=Data(numpy.array([[[[111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]], [[[156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]], [[[156.0, 157.0, 158.0],
2042        ref.setTaggedValue(1,numpy.array([[[[-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]], [[[-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]]]]))  [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]]]]),self.functionspace)
2043          ref.setTaggedValue(1,numpy.array([[[[-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]],
2044    [[[-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]]]]))
2045        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
2046        self.assertEqual(res.getShape(),(2, 1, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 1, 3, 3),"wrong shape of result.")
2047        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2048     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2049     def test_getslice_taggedData_rank4_RRLN(self):     def test_getslice_taggedData_rank4_RRLN(self):
2050        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2051        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2052    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2053    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2054    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2055    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2056    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2057    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2058    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2059    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2060    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2061          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2062    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2063    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2064    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2065    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2066    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2067    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2068    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2069    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2070    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2071    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2072    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2073    [-177.0, -178.0, -179.0]]]]))
2074        res=arg[1:3,1:2,2:]        res=arg[1:3,1:2,2:]
2075        ref=Data(numpy.array([[[[66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]]], [[[111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]]], [[[111.0, 112.0, 113.0], [114.0,
2076        ref.setTaggedValue(1,numpy.array([[[[-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]]], [[[-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]]]))  115.0, 116.0], [117.0, 118.0, 119.0]]]]),self.functionspace)
2077          ref.setTaggedValue(1,numpy.array([[[[-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]]], [[[-111.0,
2078    -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]]]))
2079        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
2080        self.assertEqual(res.getShape(),(2, 1, 3, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 1, 3, 3),"wrong shape of result.")
2081        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2082     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2083     def test_getslice_taggedData_rank4_PLUU(self):     def test_getslice_taggedData_rank4_PLUU(self):
2084        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2085        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2086    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2087    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2088    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2089    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2090    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2091    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2092    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2093    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2094    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2095          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2096    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2097    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2098    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2099    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2100    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2101    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2102    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2103    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2104    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2105    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2106    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2107    [-177.0, -178.0, -179.0]]]]))
2108        res=arg[2,2:,:4,:2]        res=arg[2,2:,:4,:2]
2109        ref=Data(numpy.array([[[120.0, 121.0], [123.0, 124.0], [126.0, 127.0], [129.0, 130.0]]]),self.functionspace)        ref=Data(numpy.array([[[120.0, 121.0], [123.0, 124.0], [126.0, 127.0], [129.0, 130.0]]]),self.functionspace)
2110        ref.setTaggedValue(1,numpy.array([[[-120.0, -121.0], [-123.0, -124.0], [-126.0, -127.0], [-129.0, -130.0]]]))        ref.setTaggedValue(1,numpy.array([[[-120.0, -121.0], [-123.0, -124.0], [-126.0, -127.0], [-129.0, -130.0]]]))
# Line 1205  class Test_util_slicing_with_tagged_data Line 2113  class Test_util_slicing_with_tagged_data
2113        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2114     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2115     def test_getslice_taggedData_rank4_PPUR(self):     def test_getslice_taggedData_rank4_PPUR(self):
2116        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2117        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2118    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2119    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2120    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2121    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2122    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2123    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2124    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2125    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2126    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2127          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2128    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2129    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2130    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2131    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2132    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2133    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2134    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2135    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2136    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2137    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2138    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2139    [-177.0, -178.0, -179.0]]]]))
2140        res=arg[2,1,:4,1:2]        res=arg[2,1,:4,1:2]
2141        ref=Data(numpy.array([[106.0], [109.0], [112.0], [115.0]]),self.functionspace)        ref=Data(numpy.array([[106.0], [109.0], [112.0], [115.0]]),self.functionspace)
2142        ref.setTaggedValue(1,numpy.array([[-106.0], [-109.0], [-112.0], [-115.0]]))        ref.setTaggedValue(1,numpy.array([[-106.0], [-109.0], [-112.0], [-115.0]]))
# Line 1215  class Test_util_slicing_with_tagged_data Line 2145  class Test_util_slicing_with_tagged_data
2145        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2146     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2147     def test_getslice_taggedData_rank4_CRCU(self):     def test_getslice_taggedData_rank4_CRCU(self):
2148        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2149        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2150    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2151    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2152    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2153    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2154    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2155    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2156    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2157    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2158    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2159          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2160    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2161    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2162    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2163    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2164    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2165    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2166    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2167    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2168    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2169    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2170    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2171    [-177.0, -178.0, -179.0]]]]))
2172        res=arg[:,1:2,:,:2]        res=arg[:,1:2,:,:2]
2173        ref=Data(numpy.array([[[[15.0, 16.0], [18.0, 19.0], [21.0, 22.0], [24.0, 25.0], [27.0, 28.0]]], [[[60.0, 61.0], [63.0, 64.0], [66.0, 67.0], [69.0, 70.0], [72.0, 73.0]]], [[[105.0, 106.0], [108.0, 109.0], [111.0, 112.0], [114.0, 115.0], [117.0, 118.0]]], [[[150.0, 151.0], [153.0, 154.0], [156.0, 157.0], [159.0, 160.0], [162.0, 163.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[15.0, 16.0], [18.0, 19.0], [21.0, 22.0], [24.0, 25.0], [27.0, 28.0]]], [[[60.0, 61.0], [63.0,
2174        ref.setTaggedValue(1,numpy.array([[[[-15.0, -16.0], [-18.0, -19.0], [-21.0, -22.0], [-24.0, -25.0], [-27.0, -28.0]]], [[[-60.0, -61.0], [-63.0, -64.0], [-66.0, -67.0], [-69.0, -70.0], [-72.0, -73.0]]], [[[-105.0, -106.0], [-108.0, -109.0], [-111.0, -112.0], [-114.0, -115.0], [-117.0, -118.0]]], [[[-150.0, -151.0], [-153.0, -154.0], [-156.0, -157.0], [-159.0, -160.0], [-162.0, -163.0]]]]))  64.0], [66.0, 67.0], [69.0, 70.0], [72.0, 73.0]]], [[[105.0, 106.0], [108.0, 109.0], [111.0, 112.0], [114.0, 115.0], [117.0,
2175    118.0]]], [[[150.0, 151.0], [153.0, 154.0], [156.0, 157.0], [159.0, 160.0], [162.0, 163.0]]]]),self.functionspace)
2176          ref.setTaggedValue(1,numpy.array([[[[-15.0, -16.0], [-18.0, -19.0], [-21.0, -22.0], [-24.0, -25.0], [-27.0, -28.0]]],
2177    [[[-60.0, -61.0], [-63.0, -64.0], [-66.0, -67.0], [-69.0, -70.0], [-72.0, -73.0]]], [[[-105.0, -106.0], [-108.0, -109.0],
2178    [-111.0, -112.0], [-114.0, -115.0], [-117.0, -118.0]]], [[[-150.0, -151.0], [-153.0, -154.0], [-156.0, -157.0], [-159.0,
2179    -160.0], [-162.0, -163.0]]]]))
2180        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
2181        self.assertEqual(res.getShape(),(4, 1, 5, 2),"wrong shape of result.")        self.assertEqual(res.getShape(),(4, 1, 5, 2),"wrong shape of result.")
2182        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2183     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2184     def test_getslice_taggedData_rank4_RUPL(self):     def test_getslice_taggedData_rank4_RUPL(self):
2185        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2186        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2187    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2188    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2189    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2190    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2191    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2192    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2193    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2194    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2195    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2196          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2197    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2198    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2199    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2200    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2201    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2202    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2203    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2204    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2205    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2206    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2207    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2208    [-177.0, -178.0, -179.0]]]]))
2209        res=arg[1:3,:2,2,2:]        res=arg[1:3,:2,2,2:]
2210        ref=Data(numpy.array([[[53.0], [68.0]], [[98.0], [113.0]]]),self.functionspace)        ref=Data(numpy.array([[[53.0], [68.0]], [[98.0], [113.0]]]),self.functionspace)
2211        ref.setTaggedValue(1,numpy.array([[[-53.0], [-68.0]], [[-98.0], [-113.0]]]))        ref.setTaggedValue(1,numpy.array([[[-53.0], [-68.0]], [[-98.0], [-113.0]]]))
# Line 1235  class Test_util_slicing_with_tagged_data Line 2214  class Test_util_slicing_with_tagged_data
2214        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2215     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2216     def test_getslice_taggedData_rank4_PLPU(self):     def test_getslice_taggedData_rank4_PLPU(self):
2217        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2218        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2219    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2220    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2221    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2222    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2223    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2224    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2225    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2226    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2227    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2228          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2229    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2230    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2231    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2232    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2233    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2234    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2235    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2236    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2237    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2238    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2239    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2240    [-177.0, -178.0, -179.0]]]]))
2241        res=arg[2,2:,2,:2]        res=arg[2,2:,2,:2]
2242        ref=Data(numpy.array([[126.0, 127.0]]),self.functionspace)        ref=Data(numpy.array([[126.0, 127.0]]),self.functionspace)
2243        ref.setTaggedValue(1,numpy.array([[-126.0, -127.0]]))        ref.setTaggedValue(1,numpy.array([[-126.0, -127.0]]))
# Line 1245  class Test_util_slicing_with_tagged_data Line 2246  class Test_util_slicing_with_tagged_data
2246        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2247     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2248     def test_getslice_taggedData_rank4_PLRL(self):     def test_getslice_taggedData_rank4_PLRL(self):
2249        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2250        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2251    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2252    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2253    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2254    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2255    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2256    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2257    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2258    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2259    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2260          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2261    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2262    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2263    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2264    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2265    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2266    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2267    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2268    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2269    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2270    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2271    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2272    [-177.0, -178.0, -179.0]]]]))
2273        res=arg[2,2:,1:4,2:]        res=arg[2,2:,1:4,2:]
2274        ref=Data(numpy.array([[[125.0], [128.0], [131.0]]]),self.functionspace)        ref=Data(numpy.array([[[125.0], [128.0], [131.0]]]),self.functionspace)
2275        ref.setTaggedValue(1,numpy.array([[[-125.0], [-128.0], [-131.0]]]))        ref.setTaggedValue(1,numpy.array([[[-125.0], [-128.0], [-131.0]]]))
# Line 1255  class Test_util_slicing_with_tagged_data Line 2278  class Test_util_slicing_with_tagged_data
2278        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2279     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2280     def test_getslice_taggedData_rank4_RPPN(self):     def test_getslice_taggedData_rank4_RPPN(self):
2281        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2282        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2283    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2284    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2285    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2286    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2287    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2288    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2289    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2290    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2291    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2292          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2293    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2294    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2295    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2296    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2297    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2298    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2299    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2300    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2301    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2302    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2303    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2304    [-177.0, -178.0, -179.0]]]]))
2305        res=arg[1:3,1,2]        res=arg[1:3,1,2]
2306        ref=Data(numpy.array([[66.0, 67.0, 68.0], [111.0, 112.0, 113.0]]),self.functionspace)        ref=Data(numpy.array([[66.0, 67.0, 68.0], [111.0, 112.0, 113.0]]),self.functionspace)
2307        ref.setTaggedValue(1,numpy.array([[-66.0, -67.0, -68.0], [-111.0, -112.0, -113.0]]))        ref.setTaggedValue(1,numpy.array([[-66.0, -67.0, -68.0], [-111.0, -112.0, -113.0]]))
# Line 1265  class Test_util_slicing_with_tagged_data Line 2310  class Test_util_slicing_with_tagged_data
2310        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2311     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2312     def test_getslice_taggedData_rank4_UPCN(self):     def test_getslice_taggedData_rank4_UPCN(self):
2313        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2314        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2315    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2316    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2317    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2318    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2319    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2320    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2321    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2322    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2323    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2324          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2325    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2326    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2327    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2328    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2329    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2330    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2331    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2332    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2333    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2334    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2335    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2336    [-177.0, -178.0, -179.0]]]]))
2337        res=arg[:3,1,:]        res=arg[:3,1,:]
2338        ref=Data(numpy.array([[[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]]),self.functionspace)        ref=Data(numpy.array([[[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0,
2339        ref.setTaggedValue(1,numpy.array([[[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]]))  29.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[105.0, 106.0,
2340    107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]]),self.functionspace)
2341          ref.setTaggedValue(1,numpy.array([[[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0,
2342    -26.0], [-27.0, -28.0, -29.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0],
2343    [-72.0, -73.0, -74.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0,
2344    -116.0], [-117.0, -118.0, -119.0]]]))
2345        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
2346        self.assertEqual(res.getShape(),(3, 5, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(3, 5, 3),"wrong shape of result.")
2347        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2348     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2349     def test_getslice_taggedData_rank4_LLUN(self):     def test_getslice_taggedData_rank4_LLUN(self):
2350        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2351        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2352    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2353    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2354    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2355    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2356    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2357    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2358    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2359    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2360    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2361          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2362    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2363    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2364    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2365    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2366    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2367    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2368    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2369    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2370    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2371    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2372    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2373    [-177.0, -178.0, -179.0]]]]))
2374        res=arg[2:,2:,:4]        res=arg[2:,2:,:4]
2375        ref=Data(numpy.array([[[[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0]]], [[[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0]]]]),self.functionspace)        ref=Data(numpy.array([[[[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0]]],
2376        ref.setTaggedValue(1,numpy.array([[[[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0]]], [[[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0]]]]))  [[[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0]]]]),self.functionspace)
2377          ref.setTaggedValue(1,numpy.array([[[[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0],
2378    [-129.0, -130.0, -131.0]]], [[[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0,
2379    -176.0]]]]))
2380        self.assertTrue(isinstance(res,Data),"wrong type of result.")        self.assertTrue(isinstance(res,Data),"wrong type of result.")
2381        self.assertEqual(res.getShape(),(2, 1, 4, 3),"wrong shape of result.")        self.assertEqual(res.getShape(),(2, 1, 4, 3),"wrong shape of result.")
2382        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2383     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2384     def test_getslice_taggedData_rank4_PPLC(self):     def test_getslice_taggedData_rank4_PPLC(self):
2385        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2386        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2387    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2388    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2389    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2390    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2391    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2392    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2393    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2394    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2395    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2396          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2397    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2398    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2399    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2400    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2401    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2402    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,
2403    -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0,
2404    -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]],
2405    [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0,
2406    -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0,
2407    -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0],
2408    [-177.0, -178.0, -179.0]]]]))
2409        res=arg[2,1,2:,:]        res=arg[2,1,2:,:]
2410        ref=Data(numpy.array([[111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]),self.functionspace)        ref=Data(numpy.array([[111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]]),self.functionspace)
2411        ref.setTaggedValue(1,numpy.array([[-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]))        ref.setTaggedValue(1,numpy.array([[-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]]))
# Line 1295  class Test_util_slicing_with_tagged_data Line 2414  class Test_util_slicing_with_tagged_data
2414        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")        self.assertTrue(Lsup(res-ref)<=self.RES_TOL*Lsup(ref),"wrong result")
2415     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2416     def test_getslice_taggedData_rank4_PRRP(self):     def test_getslice_taggedData_rank4_PRRP(self):
2417        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]], [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0], [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0], [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0], [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0], [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0, 104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]], [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0, 136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0, 152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0], [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)        arg=Data(numpy.array([[[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0], [9.0, 10.0, 11.0], [12.0, 13.0, 14.0]],
2418        arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0], [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0, -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0, -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]], [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0, -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0, -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0, -107.0], [-108.0, -109.0, -110.0], [-111.0, -112.0, -113.0], [-114.0, -115.0, -116.0], [-117.0, -118.0, -119.0]], [[-120.0, -121.0, -122.0], [-123.0, -124.0, -125.0], [-126.0, -127.0, -128.0], [-129.0, -130.0, -131.0], [-132.0, -133.0, -134.0]]], [[[-135.0, -136.0, -137.0], [-138.0, -139.0, -140.0], [-141.0, -142.0, -143.0], [-144.0, -145.0, -146.0], [-147.0, -148.0, -149.0]], [[-150.0, -151.0, -152.0], [-153.0, -154.0, -155.0], [-156.0, -157.0, -158.0], [-159.0, -160.0, -161.0], [-162.0, -163.0, -164.0]], [[-165.0, -166.0, -167.0], [-168.0, -169.0, -170.0], [-171.0, -172.0, -173.0], [-174.0, -175.0, -176.0], [-177.0, -178.0, -179.0]]]]))  [[15.0, 16.0, 17.0], [18.0, 19.0, 20.0], [21.0, 22.0, 23.0], [24.0, 25.0, 26.0], [27.0, 28.0, 29.0]], [[30.0, 31.0, 32.0],
2419    [33.0, 34.0, 35.0], [36.0, 37.0, 38.0], [39.0, 40.0, 41.0], [42.0, 43.0, 44.0]]], [[[45.0, 46.0, 47.0], [48.0, 49.0, 50.0],
2420    [51.0, 52.0, 53.0], [54.0, 55.0, 56.0], [57.0, 58.0, 59.0]], [[60.0, 61.0, 62.0], [63.0, 64.0, 65.0], [66.0, 67.0, 68.0],
2421    [69.0, 70.0, 71.0], [72.0, 73.0, 74.0]], [[75.0, 76.0, 77.0], [78.0, 79.0, 80.0], [81.0, 82.0, 83.0], [84.0, 85.0, 86.0],
2422    [87.0, 88.0, 89.0]]], [[[90.0, 91.0, 92.0], [93.0, 94.0, 95.0], [96.0, 97.0, 98.0], [99.0, 100.0, 101.0], [102.0, 103.0,
2423    104.0]], [[105.0, 106.0, 107.0], [108.0, 109.0, 110.0], [111.0, 112.0, 113.0], [114.0, 115.0, 116.0], [117.0, 118.0, 119.0]],
2424    [[120.0, 121.0, 122.0], [123.0, 124.0, 125.0], [126.0, 127.0, 128.0], [129.0, 130.0, 131.0], [132.0, 133.0, 134.0]]], [[[135.0,
2425    136.0, 137.0], [138.0, 139.0, 140.0], [141.0, 142.0, 143.0], [144.0, 145.0, 146.0], [147.0, 148.0, 149.0]], [[150.0, 151.0,
2426    152.0], [153.0, 154.0, 155.0], [156.0, 157.0, 158.0], [159.0, 160.0, 161.0], [162.0, 163.0, 164.0]], [[165.0, 166.0, 167.0],
2427    [168.0, 169.0, 170.0], [171.0, 172.0, 173.0], [174.0, 175.0, 176.0], [177.0, 178.0, 179.0]]]]),self.functionspace)
2428          arg.setTaggedValue(1,numpy.array([[[[-0.0, -1.0, -2.0], [-3.0, -4.0, -5.0], [-6.0, -7.0, -8.0], [-9.0, -10.0, -11.0],
2429    [-12.0, -13.0, -14.0]], [[-15.0, -16.0, -17.0], [-18.0, -19.0, -20.0], [-21.0, -22.0, -23.0], [-24.0, -25.0, -26.0], [-27.0,
2430    -28.0, -29.0]], [[-30.0, -31.0, -32.0], [-33.0, -34.0, -35.0], [-36.0, -37.0, -38.0], [-39.0, -40.0, -41.0], [-42.0, -43.0,
2431    -44.0]]], [[[-45.0, -46.0, -47.0], [-48.0, -49.0, -50.0], [-51.0, -52.0, -53.0], [-54.0, -55.0, -56.0], [-57.0, -58.0, -59.0]],
2432    [[-60.0, -61.0, -62.0], [-63.0, -64.0, -65.0], [-66.0, -67.0, -68.0], [-69.0, -70.0, -71.0], [-72.0, -73.0, -74.0]], [[-75.0,
2433    -76.0, -77.0], [-78.0, -79.0, -80.0], [-81.0, -82.0, -83.0], [-84.0, -85.0, -86.0], [-87.0, -88.0, -89.0]]], [[[-90.0, -91.0,
2434    -92.0], [-93.0, -94.0, -95.0], [-96.0, -97.0, -98.0], [-99.0, -100.0, -101.0], [-102.0, -103.0, -104.0]], [[-105.0, -106.0,