Salome HOME
Merge V8_3_BR branch.
[tools/medcoupling.git] / src / MEDCoupling_Swig / MEDCouplingBasicsTest4.py
index 5e46ec46c69c919167d51faa82cf3e6717498057..00090fb60fda793a70fafda462df65cbfae4f95b 100644 (file)
@@ -23,7 +23,7 @@ import unittest
 from math import pi,e,sqrt,cos,sin
 from datetime import datetime
 from MEDCouplingDataForTest import MEDCouplingDataForTest
-import rlcompleter,readline # this line has to be here, to ensure a usability of MEDCoupling/MEDLoader. B4 removing it please notify to anthony.geay@cea.fr
+import rlcompleter,readline # this line has to be here, to ensure a usability of MEDCoupling/MEDLoader. B4 removing it please notify to anthony.geay@edf.fr
 from sys import platform
 
 def checkFreeMemory(size):
@@ -50,17 +50,17 @@ def checkFreeMemory(size):
 
 class MEDCouplingBasicsTest4(unittest.TestCase):
     def testSwigDADOp4(self):
-        da=DataArrayDouble.New(range(6,30),12,2)
+        da = DataArrayDouble.New(list(range(6, 30)), 12, 2)
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),float(i+6),13)
             pass
         # operator transpose
         da.transpose()
         self.assertEqual(2,da.getNumberOfTuples());
         self.assertEqual(12,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),float(i+6),13)
             pass
         da.transpose()
@@ -68,13 +68,13 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         da2=DataArrayDouble.New(12,1)
         da2.iota(0.)
         dabis=-da
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(dabis.getIJ(0,i),-float(i+6),13)
             pass
         # operator+=
         da+=da2
         expected1=[6.,7.,9.,10.,12.,13.,15.,16.,18.,19.,21.,22.,24.,25.,27.,28.,30.,31.,33.,34.,36.,37.,39.,40.]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected1[i],13)
             pass
         da=-dabis
@@ -82,7 +82,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[106.,108.,108.,110.,110.,112.,112.,114.,114.,116.,116.,118.,118.,120.,120.,122.,122.,124.,124.,126.,126.,128.,128.,130.]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected2[i],13)
             pass
         for pos,elt in enumerate(dabis):
@@ -95,12 +95,12 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
             self.assertAlmostEqual(li[0],100.,13) ; self.assertAlmostEqual(li[1],101.,13)
             pass
         # operator-=
-        da=DataArrayDouble.New(range(6,30),12,2)
-        da2=DataArrayDouble.New(range(12),12,1)
+        da = DataArrayDouble.New(list(range(6, 30)), 12, 2)
+        da2 = DataArrayDouble.New(list(range(12)), 12, 1)
         dabis=-da
         da-=da2
         expected1=[6.,7.,7.,8.,8.,9.,9.,10.,10.,11.,11.,12.,12.,13.,13.,14.,14.,15.,15.,16.,16.,17.,17.,18.]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected1[i],13)
             pass
         da=-dabis
@@ -108,7 +108,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[-94.,-94.,-92.,-92.,-90.,-90.,-88.,-88.,-86.,-86.,-84.,-84.,-82.,-82.,-80.,-80.,-78.,-78.,-76.,-76.,-74.,-74.,-72.,-72.]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected2[i],13)
             pass
         for pos,elt in enumerate(dabis):
@@ -117,16 +117,16 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
         expected3=[-88.,-87.,-84.,-83.,-80.,-79.,-76.,-75.,-72.,-71.,-68.,-67.,-64.,-63.,-60.,-59.,-56.,-55.,-52.,-51.,-48.,-47.,-44.,-43.]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected3[i],13)
             pass
         # operator*=
-        da=DataArrayDouble.New(range(6,30),12,2)
-        da2=DataArrayDouble.New(range(12),12,1)
+        da = DataArrayDouble.New(list(range(6, 30)), 12, 2)
+        da2 = DataArrayDouble.New(list(range(12)), 12, 1)
         dabis=-da
         da*=da2
         expected1=[0.,0.,8.,9.,20.,22.,36.,39.,56.,60.,80.,85.,108.,114.,140.,147.,176.,184.,216.,225.,260.,270.,308.,319.]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected1[i],13)
             pass
         da=-dabis
@@ -134,7 +134,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[600.,707.,800.,909.,1000.,1111.,1200.,1313.,1400.,1515.,1600.,1717.,1800.,1919.,2000.,2121.,2200.,2323.,2400.,2525.,2600.,2727.,2800.,2929.]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected2[i],13)
             pass
         for pos,elt in enumerate(dabis):
@@ -143,16 +143,16 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
         expected3=[-3600.,-4949.,-6400.,-8181.,-10000.,-12221.,-14400.,-17069.,-19600.,-22725.,-25600.,-29189.,-32400.,-36461.,-40000.,-44541.,-48400.,-53429.,-57600.,-63125.,-67600.,-73629.,-78400.,-84941.0]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected3[i],13)
             pass
         # operator/=
-        da=DataArrayDouble.New(range(6,30),12,2)
-        da2=DataArrayDouble.New(range(1,13),12,1)
+        da = DataArrayDouble.New(list(range(6, 30)), 12, 2)
+        da2 = DataArrayDouble.New(list(range(1, 13)), 12, 1)
         dabis=-da
         da/=da2
         expected1=[6.0,7.0,4.0,4.5,3.3333333333333335,3.6666666666666665,3.0,3.25,2.8,3.0,2.6666666666666665,2.8333333333333335,2.5714285714285716,2.7142857142857144,2.5,2.625,2.4444444444444446,2.5555555555555554,2.4,2.5,2.3636363636363638,2.4545454545454546,2.3333333333333335,2.4166666666666665]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected1[i],13)
             pass
         da=-dabis
@@ -160,7 +160,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[0.06,0.06930693069306931,0.08,0.0891089108910891,0.1,0.10891089108910891,0.12,0.12871287128712872,0.14,0.1485148514851485,0.16,0.16831683168316833,0.18,0.18811881188118812,0.2,0.2079207920792079,0.22,0.22772277227722773,0.24,0.24752475247524752,0.26,0.26732673267326734,0.28,0.2871287128712871]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected2[i],13)
             pass
         for pos,elt in enumerate(dabis):
@@ -169,23 +169,23 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
         expected3=[-0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.009900990099009901, -0.01, -0.0099009900990099]
-        for i in xrange(24):
+        for i in range(24):
             self.assertAlmostEqual(da.getIJ(0,i),expected3[i],13)
             pass
         pass
 
     def testSwigDAIOp4(self):
-        da=DataArrayInt.New(range(6,30),12,2)
+        da = DataArrayInt.New(list(range(6, 30)), 12, 2)
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),i+6)
             pass
         # operator transpose
         da.transpose()
         self.assertEqual(2,da.getNumberOfTuples());
         self.assertEqual(12,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),i+6)
             pass
         da.transpose()
@@ -193,13 +193,13 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         da2=DataArrayInt.New(12,1)
         da2.iota(0)
         dabis=-da
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(dabis.getIJ(0,i),-(i+6))
             pass
         # operator+=
         da+=da2
         expected1=[6,7,9,10,12,13,15,16,18,19,21,22,24,25,27,28,30,31,33,34,36,37,39,40]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected1[i])
             pass
         da=-dabis
@@ -207,7 +207,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[106,108,108,110,110,112,112,114,114,116,116,118,118,120,120,122,122,124,124,126,126,128,128,130]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected2[i])
             pass
         for pos,elt in enumerate(dabis):
@@ -220,12 +220,12 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
             self.assertEqual(li[0],100) ; self.assertEqual(li[1],101)
             pass
         # operator-=
-        da=DataArrayInt.New(range(6,30),12,2)
-        da2=DataArrayInt.New(range(12),12,1)
+        da = DataArrayInt.New(list(range(6, 30)), 12, 2)
+        da2 = DataArrayInt.New(list(range(12)), 12, 1)
         dabis=-da
         da-=da2
         expected1=[6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,17,17,18]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected1[i])
             pass
         da=-dabis
@@ -233,7 +233,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[-94,-94,-92,-92,-90,-90,-88,-88,-86,-86,-84,-84,-82,-82,-80,-80,-78,-78,-76,-76,-74,-74,-72,-72]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected2[i])
             pass
         for pos,elt in enumerate(dabis):
@@ -242,16 +242,16 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
         expected3=[-88,-87,-84,-83,-80,-79,-76,-75,-72,-71,-68,-67,-64,-63,-60,-59,-56,-55,-52,-51,-48,-47,-44,-43]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected3[i])
             pass
         # operator*=
-        da=DataArrayInt.New(range(6,30),12,2)
-        da2=DataArrayInt.New(range(12),12,1)
+        da = DataArrayInt.New(list(range(6, 30)), 12, 2)
+        da2 = DataArrayInt.New(list(range(12)), 12, 1)
         dabis=-da
         da*=da2
         expected1=[0,0,8,9,20,22,36,39,56,60,80,85,108,114,140,147,176,184,216,225,260,270,308,319]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected1[i])
             pass
         da=-dabis
@@ -259,7 +259,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected2=[600,707,800,909,1000,1111,1200,1313,1400,1515,1600,1717,1800,1919,2000,2121,2200,2323,2400,2525,2600,2727,2800,2929]
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected2[i])
             pass
         for pos,elt in enumerate(dabis):
@@ -268,16 +268,16 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
         expected3=[-3600,-4949,-6400,-8181,-10000,-12221,-14400,-17069,-19600,-22725,-25600,-29189,-32400,-36461,-40000,-44541,-48400,-53429,-57600,-63125,-67600,-73629,-78400,-84941.0]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected3[i])
             pass
         # operator/=
-        da=DataArrayInt.New(range(6,30),12,2)
-        da2=DataArrayInt.New(range(1,13),12,1)
+        da = DataArrayInt.New(list(range(6, 30)), 12, 2)
+        da2 = DataArrayInt.New(list(range(1, 13)), 12, 1)
         dabis=-da
         da/=da2
         expected1=[6,7,4,4,3,3,3,3,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected1[i])
             pass
         da=-dabis
@@ -285,7 +285,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
         expected2=[3,2,4,3,5,3,6,4,7,5,8,5,9,6,10,7,11,7,12,8,13,9,14,9]
-        for i in xrange(24):
+        for i in range(24):
             self.assertEqual(da.getIJ(0,i),expected2[i])
             pass
         pass
@@ -300,13 +300,13 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(4,da3.getNumberOfTuples());
         self.assertEqual(3,da3.getNumberOfComponents());
         expected1=[10.,11.,12.,16.,17.,14.,17.,8.,13.,21.,20.,22.]
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da3.getIJ(0,i),expected1[i],13)
             pass
         da3=da2+da
         self.assertEqual(4,da3.getNumberOfTuples());
         self.assertEqual(3,da3.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da3.getIJ(0,i),expected1[i],13)
             pass
         # Test new API of classmethod DataArrayDouble.New
@@ -314,31 +314,31 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         da=DataArrayDouble.New(vals)
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(1,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da.getIJ(0,i),vals[i],13)
             pass
         da=DataArrayDouble.New(vals,12)
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(1,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da.getIJ(0,i),vals[i],13)
             pass
         da=DataArrayDouble.New(vals,1,12)
         self.assertEqual(1,da.getNumberOfTuples());
         self.assertEqual(12,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da.getIJ(0,i),vals[i],13)
             pass
         da=DataArrayDouble.New(vals,6,2)
         self.assertEqual(6,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da.getIJ(0,i),vals[i],13)
             pass
         da=DataArrayDouble.New(vals,4,3)
         self.assertEqual(4,da.getNumberOfTuples());
         self.assertEqual(3,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertAlmostEqual(da.getIJ(0,i),vals[i],13)
             pass
         self.assertRaises(InterpKernelException,DataArrayDouble.New,vals,11);
@@ -357,13 +357,13 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(4,da3.getNumberOfTuples());
         self.assertEqual(3,da3.getNumberOfComponents());
         expected1=[10,11,12,16,17,14,17,8,13,21,20,22]
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da3.getIJ(0,i),expected1[i])
             pass
         da3=da2+da
         self.assertEqual(4,da3.getNumberOfTuples());
         self.assertEqual(3,da3.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da3.getIJ(0,i),expected1[i])
             pass
         da3=da+DataArrayInt.New(da2.getValues())
@@ -372,31 +372,31 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         da=DataArrayDouble.New(vals)
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(1,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da.getIJ(0,i),vals[i])
             pass
         da=DataArrayDouble.New(vals,12)
         self.assertEqual(12,da.getNumberOfTuples());
         self.assertEqual(1,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da.getIJ(0,i),vals[i])
             pass
         da=DataArrayDouble.New(vals,1,12)
         self.assertEqual(1,da.getNumberOfTuples());
         self.assertEqual(12,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da.getIJ(0,i),vals[i])
             pass
         da=DataArrayDouble.New(vals,6,2)
         self.assertEqual(6,da.getNumberOfTuples());
         self.assertEqual(2,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da.getIJ(0,i),vals[i])
             pass
         da=DataArrayDouble.New(vals,4,3)
         self.assertEqual(4,da.getNumberOfTuples());
         self.assertEqual(3,da.getNumberOfComponents());
-        for i in xrange(12):
+        for i in range(12):
             self.assertEqual(da.getIJ(0,i),vals[i])
             pass
         self.assertRaises(InterpKernelException,DataArrayDouble.New,vals,11);
@@ -502,7 +502,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(8,da2.getNumberOfTuples());
         self.assertEqual(1,da2.getNumberOfComponents());
         expected1=[8,11,12,9,4,5,6,7]
-        for i in xrange(8):
+        for i in range(8):
             self.assertEqual(expected1[i],da2.getIJ(i,0));
             pass
         #
@@ -510,7 +510,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertTrue(da1==None);
         self.assertEqual(9,da2.getNumberOfTuples());
         self.assertEqual(1,da2.getNumberOfComponents());
-        for i in xrange(9):
+        for i in range(9):
             self.assertEqual(8+i,da2.getIJ(i,0));
             pass
         #
@@ -533,7 +533,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(expected2,mesh3D_4.getNodalConnectivity().getValues());
         self.assertEqual(expected3,mesh2D_4.getNodalConnectivity().getValues());
         self.assertEqual(expected4,mesh2D_5.getNodalConnectivity().getValues());
-        for i in xrange(78):
+        for i in range(78):
             self.assertAlmostEqual(expected5[i],mesh3D_4.getCoords().getIJ(0,i),12);
             pass
         #
@@ -555,7 +555,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(expected6,mesh3D_4.getNodalConnectivity().getValues());
         self.assertEqual(expected7,mesh2D_4.getNodalConnectivity().getValues());
         self.assertEqual(expected8,mesh2D_5.getNodalConnectivity().getValues());
-        for i in xrange(57):
+        for i in range(57):
             self.assertAlmostEqual(expected9[i],mesh3D_4.getCoords().getIJ(0,i),12);
             pass
         #
@@ -754,45 +754,45 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         res=d1.getMinMaxPerComponent();
         self.assertTrue(isinstance(res,list))
         self.assertEqual(3,len(res))
-        for i in xrange(3):
+        for i in range(3):
             self.assertTrue(isinstance(res[i],tuple))
             self.assertEqual(2,len(res[i]))
             pass
         expected1=[-0.9,1.3,1.7,2.1,3.,3.]
-        for i in xrange(6):
-            self.assertAlmostEqual(expected1[i],res[i/2][i%2],14)
+        for i in range(6):
+            self.assertAlmostEqual(expected1[i], res[i // 2][i % 2], 14)
             pass
         #
         d1.rearrange(2);
         res=d1.getMinMaxPerComponent();
         self.assertTrue(isinstance(res,list))
         self.assertEqual(2,len(res))
-        for i in xrange(2):
+        for i in range(2):
             self.assertTrue(isinstance(res[i],tuple))
             self.assertEqual(2,len(res[i]))
             pass
         expected2=[1.,3.,-0.9,3.]
-        for i in xrange(4):
-            self.assertAlmostEqual(expected2[i],res[i/2][i%2],14)
+        for i in range(4):
+            self.assertAlmostEqual(expected2[i], res[i // 2][i % 2], 14)
             pass
         #
         d1.rearrange(1);
         res=d1.getMinMaxPerComponent();
         self.assertTrue(isinstance(res,list))
         self.assertEqual(1,len(res))
-        for i in xrange(1):
+        for i in range(1):
             self.assertTrue(isinstance(res[i],tuple))
             self.assertEqual(2,len(res[i]))
             pass
         expected3=[-0.9,3.]
-        for i in xrange(2):
-            self.assertAlmostEqual(expected3[i],res[i/2][i%2],14)
+        for i in range(2):
+            self.assertAlmostEqual(expected3[i], res[i // 2][i % 2], 14)
             pass
         pass
 
     def testDataArrayIntGetHashCode1(self):
-        d1=DataArrayInt.New(range(3545))
-        d2=DataArrayInt.New(range(3545))
+        d1 = DataArrayInt.New(list(range(3545)))
+        d2 = DataArrayInt.New(list(range(3545)))
         self.assertEqual(d2.getHashCode(),d1.getHashCode())
         self.assertEqual(232341068,d1.getHashCode())
         d1[886]=6
@@ -950,7 +950,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         #
         m=MEDCouplingUMesh.New("convexhull",2);
         m.allocateCells(331);
-        for i in xrange(331):
+        for i in range(331):
             m.insertNextCell(NORM_POLYGON,conn[connI[i]:connI[i+1]]);
             pass
         m.finishInsertingCells();
@@ -1028,14 +1028,14 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         expected3=[1.,2.,4.,5.,6.,7.]
         self.assertEqual(6,ard1.getNumberOfTuples());
         self.assertEqual(1,ard1.getNumberOfComponents());
-        for i in xrange(6):
+        for i in range(6):
             self.assertAlmostEqual(expected3[i],ard1.getIJ(i,0),12)
             pass
         ard2.sort(False);
         expected4=[7.,6.,5.,4.,2.,1.]
         self.assertEqual(6,ard2.getNumberOfTuples());
         self.assertEqual(1,ard2.getNumberOfComponents());
-        for i in xrange(6):
+        for i in range(6):
             self.assertAlmostEqual(expected4[i],ard2.getIJ(i,0),12)
             pass
         pass
@@ -1163,9 +1163,9 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
             self.assertTrue(m2.getCoords().isEqual(DataArrayDouble.New(expected1[pos],4,2),1e-12))
             pass
         pass
-    
+
     def testSwigBugNonRegressionZipDA(self):
-        angles=map(lambda x:pi/3*x,xrange(6))
+        angles = [pi / 3 * x for x in range(6)]
         radius=3
         #
         dad=DataArrayDouble.New(6, 2)
@@ -1348,7 +1348,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         valuesToTest=f.getValueOnMulti(targetPointCoordsX);
         self.assertEqual(40,valuesToTest.getNumberOfTuples());
         self.assertEqual(1,valuesToTest.getNumberOfComponents());
-        for i in xrange(40):
+        for i in range(40):
             self.assertAlmostEqual(targetFieldValsExpected[i],valuesToTest.getIJ(i,0),10)
             pass
         fd=f.getDiscretization()
@@ -1439,122 +1439,6 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertEqual(d.getValues(),[1,2,0,1,2,0,1,2,0,1])
         pass
 
-    def testIntersect2DMeshesTmp5(self):
-        coords=DataArrayDouble.New([41,0,42,0,0,42,0,41,41.5,0,29.698484809834998,29.698484809834994,0,41.5,28.991378028648452,28.991378028648445,-42,0,-41,0,-29.698484809834994,29.698484809834998,-41.5,0,-28.991378028648445,28.991378028648452,0,-42,0,-41,-29.698484809835001,-29.698484809834994,0,-41.5,-28.991378028648455,-28.991378028648445,29.698484809834987,-29.698484809835001,28.991378028648441,-28.991378028648455,43,0,0,43,42.5,0,30.405591591021544,30.40559159102154,0,42.5,-43,0,-30.40559159102154,30.405591591021544,-42.5,0,0,-43,-30.405591591021551,-30.40559159102154,0,-42.5,30.405591591021537,-30.405591591021551,44,0,0,44,43.5,0,31.112698372208094,31.112698372208087,0,43.5,-44,0,-31.112698372208087,31.112698372208094,-43.5,0,0,-44,-31.112698372208097,-31.112698372208087,0,-43.5,31.112698372208083,-31.112698372208097,45,0,0,45,44.5,0,31.81980515339464,31.819805153394636,0,44.5,-45,0,-31.819805153394636,31.81980515339464,-44.5,0,0,-45,-31.819805153394647,-31.819805153394636,0,-44.5,31.819805153394629,-31.819805153394647,47,0,0,47,46,0,33.234018715767739,33.234018715767732,0,46,-47,0,-33.234018715767732,33.234018715767739,-46,0,0,-47,-33.234018715767739,-33.234018715767732,0,-46,33.234018715767725,-33.234018715767739,49,0,0,49,48,0,34.648232278140831,34.648232278140824,0,48,-49,0,-34.648232278140824,34.648232278140831,-48,0,0,-49,-34.648232278140839,-34.648232278140824,0,-48,34.648232278140817,-34.648232278140839,51,0,0,51,50,0,36.062445840513924,36.062445840513924,0,50,-51,0,-36.062445840513924,36.062445840513924,-50,0,0,-51,-36.062445840513931,-36.062445840513924,0,-50,36.062445840513917,-36.062445840513931,53,0,0,53,52,0,37.476659402887023,37.476659402887016,0,52,-53,0,-37.476659402887016,37.476659402887023,-52,0,0,-53,-37.47665940288703,-37.476659402887016,0,-52,37.476659402887009,-37.47665940288703,55,0,0,55,54,0,38.890872965260115,38.890872965260108,0,54,-55,0,-38.890872965260108,38.890872965260115,-54,0,0,-55,-38.890872965260122,-38.890872965260108,0,-54,38.890872965260101,-38.890872965260122,59,0,0,59,57,0,41.719300090006307,41.7193000900063,0,57,-59,0,-41.7193000900063,41.719300090006307,-57,0,0,-59,-41.719300090006314,-41.7193000900063,0,-57,41.719300090006293,-41.719300090006314,63,0,0,63,61,0,44.547727214752499,44.547727214752491,0,61,-63,0,-44.547727214752491,44.547727214752499,-61,0,0,-63,-44.547727214752506,-44.547727214752491,0,-61,44.547727214752484,-44.547727214752506,67,0,0,67,65,0,47.37615433949869,47.376154339498683,0,65,-67,0,-47.376154339498683,47.37615433949869,-65,0,0,-67,-47.376154339498697,-47.376154339498683,0,-65,47.376154339498676,-47.376154339498697,71,0,0,71,69,0,50.204581464244875,50.204581464244868,0,69,-71,0,-50.204581464244868,50.204581464244875,-69,0,0,-71,-50.204581464244889,-50.204581464244868,0,-69,50.20458146424486,-50.204581464244889,75,0,0,75,73,0,53.033008588991066,53.033008588991059,0,73,-75,0,-53.033008588991059,53.033008588991066,-73,0,0,-75,-53.033008588991073,-53.033008588991059,0,-73,53.033008588991052,-53.033008588991073,80,0,0,80,77.5,0,56.568542494923804,56.568542494923797,0,77.5,-80,0,-56.568542494923797,56.568542494923804,-77.5,0,0,-80,-56.568542494923818,-56.568542494923797,0,-77.5,56.56854249492379,-56.568542494923818],188,2)
-        conn=DataArrayInt.New([8,0,1,2,3,4,5,6,7,8,3,2,8,9,6,10,11,12,8,9,8,13,14,11,15,16,17,8,14,13,1,0,16,18,4,19,8,1,20,21,2,22,23,24,5,8,2,21,25,8,24,26,27,10,8,8,25,28,13,27,29,30,15,8,13,28,20,1,30,31,22,18,8,20,32,33,21,34,35,36,23,8,21,33,37,25,36,38,39,26,8,25,37,40,28,39,41,42,29,8,28,40,32,20,42,43,34,31,8,32,44,45,33,46,47,48,35,8,33,45,49,37,48,50,51,38,8,37,49,52,40,51,53,54,41,8,40,52,44,32,54,55,46,43,8,44,56,57,45,58,59,60,47,8,45,57,61,49,60,62,63,50,8,49,61,64,52,63,65,66,53,8,52,64,56,44,66,67,58,55,8,56,68,69,57,70,71,72,59,8,57,69,73,61,72,74,75,62,8,61,73,76,64,75,77,78,65,8,64,76,68,56,78,79,70,67,8,68,80,81,69,82,83,84,71,8,69,81,85,73,84,86,87,74,8,73,85,88,76,87,89,90,77,8,76,88,80,68,90,91,82,79,8,80,92,93,81,94,95,96,83,8,81,93,97,85,96,98,99,86,8,85,97,100,88,99,101,102,89,8,88,100,92,80,102,103,94,91,8,92,104,105,93,106,107,108,95,8,93,105,109,97,108,110,111,98,8,97,109,112,100,111,113,114,101,8,100,112,104,92,114,115,106,103,8,104,116,117,105,118,119,120,107,8,105,117,121,109,120,122,123,110,8,109,121,124,112,123,125,126,113,8,112,124,116,104,126,127,118,115,8,116,128,129,117,130,131,132,119,8,117,129,133,121,132,134,135,122,8,121,133,136,124,135,137,138,125,8,124,136,128,116,138,139,130,127,8,128,140,141,129,142,143,144,131,8,129,141,145,133,144,146,147,134,8,133,145,148,136,147,149,150,137,8,136,148,140,128,150,151,142,139,8,140,152,153,141,154,155,156,143,8,141,153,157,145,156,158,159,146,8,145,157,160,148,159,161,162,149,8,148,160,152,140,162,163,154,151,8,152,164,165,153,166,167,168,155,8,153,165,169,157,168,170,171,158,8,157,169,172,160,171,173,174,161,8,160,172,164,152,174,175,166,163,8,164,176,177,165,178,179,180,167,8,165,177,181,169,180,182,183,170,8,169,181,184,172,183,185,186,173,8,172,184,176,164,186,187,178,175],540)
-        connI=DataArrayInt.New([0,9,18,27,36,45,54,63,72,81,90,99,108,117,126,135,144,153,162,171,180,189,198,207,216,225,234,243,252,261,270,279,288,297,306,315,324,333,342,351,360,369,378,387,396,405,414,423,432,441,450,459,468,477,486,495,504,513,522,531,540],61)
-        #
-        m1=MEDCouplingUMesh.New("Fix",2);
-        m1.setCoords(coords);
-        m1.setConnectivity(conn,connI,True);
-        #
-        coords=DataArrayDouble([46.5,-2.5,53.5,-2.5,53.5,2.5,46.5,2.5,50,-2.5,53.5,0,50,2.5,46.5,0,60.5,-2.5,60.5,2.5,57,-2.5,60.5,0,57,2.5,53.5,7.5,46.5,7.5,53.5,5,50,7.5,46.5,5,60.5,7.5,60.5,5,57,7.5,-2,47,2,47,2,53,-2,53,0,47,2,50,0,53,-2,50,6,47,6,53,4,47,6,50,4,53,2,59,-2,59,2,56,0,59,-2,56,6,59,6,56,4,59],42,2)
-        # connectivity
-        conn=DataArrayInt([8,0,1,2,3,4,5,6,7,8,1,8,9,2,10,11,12,5,8,3,2,13,14,6,15,16,17,8,2,9,18,13,12,19,20,15,8,21,22,23,24,25,26,27,28,8,22,29,30,23,31,32,33,26,8,24,23,34,35,27,36,37,38,8,23,30,39,34,33,40,41,36],72);
-        conn.setName("");
-        connI=DataArrayInt([0,9,18,27,36,45,54,63,72],9)
-        m2=MEDCouplingUMesh.New("Mobile",2);
-        m2.setCoords(coords);
-        m2.setConnectivity(conn,connI,True);
-        #
-        m3,d1,d2=MEDCouplingUMesh.Intersect2DMeshes(m1,m2,1e-10);
-        self.assertEqual(105,m3.getNumberOfCells());
-        self.assertEqual(105,d1.getNumberOfTuples());
-        self.assertEqual(105,d2.getNumberOfTuples());
-        self.assertEqual(704,m3.getNumberOfNodes());
-        #
-        areaExpected=[-65.18804756198824,-65.18804756198824,-65.18804756198824,-65.18804756198824,-66.75884388878285,-66.75884388878285,-66.7588438887833,-66.75884388878308,-68.32964021557768,-68.32964021557768,-68.32964021557814,-68.32964021557791,-69.9004365423732,-69.9004365423732,-69.90043654237297,-69.90043654237297,-1.194568659706448,-1.0869994447159463,-142.2316939607081,-144.51326206513068,-144.5132620651309,-1.1945686597064424,-143.3186934054243,-5.002264310862817,-10.0261332846393,-3.9727823117092953,-7.290862524642649,-124.504404940456,-3.9727823117093237,-146.82366506060032,-150.79644737231024,-5.002264310862776,-145.79418306144626,-5.00208651738126,-10.054764051268958,-4.001067863263231,-8.027932154428669,-129.99378209314813,-4.001067863263216,-153.07856481622616,-157.0796326794898,-5.0020865173811915,-152.07754616210832,-5.001928880064381,-10.050590216368969,-4.00098721602491,-8.025810856794209,-136.28350081741684,-4.000987216024939,-159.36183077064402,-163.36281798667005,-5.0019288800643285,-158.36088910660442,-1.2991516319851801,-3.702636830195414,-3.7815130030068254,-6.265364371195623,-0.02516260900254963,-0.6553944641345026,-3.975752765070567,-7.368528340442765,-142.57249927881398,-0.02516260900254963,-3.9757527650706095,-165.64508791977525,-169.64600329384803,-1.299151631985167,-3.7026368301953885,-164.6442148316677,-10.00321285677458,-20.08414323176165,-8.001644468035863,-16.042954878437143,-304.0096070742277,-8.00164446803587,-350.1399180412005,-358.1415625092368,-10.003212856774468,-348.13834965246224,-3.794150313030109,-8.65049239704272,-0.02260276689354157,-0.5885167811200915,-370.2185414798688,-0.022602766893559393,-383.2517009710623,-383.2743037379555,-3.7941503130300576,-379.48015342492505,-408.40704496667513,-408.4070449666742,-408.4070449666742,-408.4070449666742,-433.53978619538975,-433.5397861953902,-433.5397861953911,-433.53978619539066,-458.67252742410983,-458.6725274241094,-458.67252742410983,-458.6725274241089,-608.6835766330232,-608.6835766330232,-608.6835766330232,-608.6835766330241]
-        expected1=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,16,16,17,18,19,19,20,20,20,20,20,21,21,22,23,23,24,24,24,24,24,25,25,26,27,27,28,28,28,28,28,29,29,30,31,31,32,32,32,32,32,32,32,32,32,33,33,33,34,35,35,35,36,36,36,36,36,37,37,38,39,39,40,40,40,40,40,41,41,42,43,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59]
-        expected2=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,2,-1,-1,-1,0,-1,0,2,4,5,-1,4,-1,-1,0,-1,0,2,4,5,-1,4,-1,-1,0,-1,0,2,4,5,-1,4,-1,-1,0,-1,0,1,2,3,4,5,6,7,-1,4,6,-1,-1,0,1,-1,1,3,6,7,-1,6,-1,-1,1,-1,1,3,6,7,-1,6,-1,-1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]
-        f3=m3.getMeasureField(False).getArray().getValues();
-        for i in xrange(105):
-            self.assertAlmostEqual(areaExpected[i],f3[i],10)
-            pass
-        self.assertEqual(expected1,d1.getValues())
-        self.assertEqual(expected2,d2.getValues())
-        pass
-
-    def testSwig2Intersect2DMeshesQuadra1(self):
-        import cmath
-        def createDiagCircle(lX, lY, R, cells=[0,1]):  
-            """ A circle in a square box, cut along the diagonal. 
-            """    
-            c = []
-            for i in range(8):
-              c.append(cmath.rect(R, i*pi/4))
-        
-            coords = [0.0,0.0,          c[3].real,c[3].imag,       -lX/2.0, lY/2.0,
-                      0.0, lY/2.0,      lX/2.0,lY/2.0,             lX/2.0,0.0,
-                      #   6                  7                              8
-                      lX/2.0,-lY/2.0,   c[7].real,c[7].imag,       c[1].real,c[1].imag,
-                      #   9                  10                            11  
-                      c[5].real,c[5].imag,   -lX/2.0,-lY/2.0,      0.0, -lY/2.0,
-                      #   12                  13                            14
-                      -lX/2.0,0.0,         0.0,0.0,                  0.0, 0.0]
-            # Points 13 (reps. 14) are average of points (6,7) (resp (1,2))
-            coords[13*2]   = 0.5*(coords[6*2]+coords[7*2])
-            coords[13*2+1] = 0.5*(coords[6*2+1]+coords[7*2+1])
-            coords[14*2]   = 0.5*(coords[1*2]+coords[2*2])
-            coords[14*2+1] = 0.5*(coords[1*2+1]+coords[2*2+1])
-            connec  = [1,7,8,0]      # half circle up right
-            connec3 = [6,7,1,2,4,13,8,14,3,5]
-            
-            baseMesh = MEDCouplingUMesh.New("box_circle", 2)  
-            baseMesh.allocateCells(2)
-            meshCoords = DataArrayDouble.New(coords, len(coords)/2, 2)
-            meshCoords.setInfoOnComponents(["X [au]", "Y [au]"])
-            baseMesh.setCoords(meshCoords)
-            
-            if 0 in cells:
-              baseMesh.insertNextCell(NORM_QPOLYG, connec)  
-            if 1 in cells: 
-              baseMesh.insertNextCell(NORM_QPOLYG, connec3) 
-            baseMesh.finishInsertingCells()  
-            baseMesh.checkConsistencyLight() 
-            return baseMesh 
-        
-        eps = 1.0e-7
-        m1 = createDiagCircle(1.0, 1.0, 0.5*0.90, cells=[0,1])  
-        m2 = createDiagCircle(1.0, 1.0, 0.5*0.95, cells=[0])
-        m3, _, _= MEDCouplingUMesh.Intersect2DMeshes(m1, m2, eps)
-        m3.mergeNodes(eps)
-        m3.convertDegeneratedCells()
-        m3.zipCoords()        
-        m4 = m3.deepCopy()
-        m5, _, _ = MEDCouplingUMesh.Intersect2DMeshes(m3, m4, eps)
-        m5.mergeNodes(eps)
-        # Check coordinates:
-        self.assertTrue(m3.getCoords().isEqual(m5.getCoords(), eps))
-
-    def testIntersect2DMeshesTmp7(self):
-        eps = 1.0e-8
-        coords = [-0.5,-0.5,   -0.5, 0.5, 0.5, 0.5,    0.5,-0.5]
-        connec = range(4)
-        m1 = MEDCouplingUMesh.New("box", 2)  
-        m1.allocateCells(1)
-        meshCoords = DataArrayDouble.New(coords, len(coords)/2, 2)
-        m1.setCoords(meshCoords)
-        m1.insertNextCell(NORM_POLYGON, connec)
-        m1.finishInsertingCells()  
-     
-        m2 = MEDCouplingDataForTest.buildCircle(0.25, 0.2, 0.4)
-        # Was looping indefinitly:
-        m_intersec, resToM1, resToM2 = MEDCouplingUMesh.Intersect2DMeshes(m1, m2, eps)
-        m_intersec.zipCoords()
-        coo_tgt = DataArrayDouble([-0.5, -0.5, -0.5, 0.5, 0.5, 0.5, 0.5, -0.5, -0.03284271247461901, 0.4828427124746191, 
-          -0.014575131106459124, 0.5000000000000001, 0.5, -0.11224989991991996, 0.24271243444677046, 0.5, 0.5, 0.19387505004004, 
-          -0.04799910280454185, -0.06682678787499614, -0.023843325638122054, 0.4915644577163915, 0.5, -0.30612494995996, 0.0, -0.5, 
-          -0.5, 0.0, -0.25728756555322957, 0.5, -0.023843325638122026, 0.49156445771639157, -0.04799910280454181, -0.06682678787499613], 17 ,2)
-        conn_tgt = [32, 5, 2, 6, 4, 7, 8, 9, 10, 32, 6, 3, 0, 1, 5, 4, 11, 12, 13, 14, 15, 16]
-        connI_tgt = [0, 9, 22]
-        res1_tgt  = [0, 0]
-        res2_tgt = [0, -1]
-        self.assert_(coo_tgt.isEqualWithoutConsideringStr(m_intersec.getCoords(), 1e-12))
-        self.assertEqual(conn_tgt, m_intersec.getNodalConnectivity().getValues())
-        self.assertEqual(connI_tgt, m_intersec.getNodalConnectivityIndex().getValues())
-        self.assertEqual(res1_tgt, resToM1.getValues())
-        self.assertEqual(res2_tgt, resToM2.getValues())
-        
     def testDAIBuildUnique1(self):
         d=DataArrayInt([1,2,2,3,3,3,3,4,5,5,7,7,7,19])
         e=d.buildUnique()
@@ -1574,17 +1458,17 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         coords=DataArrayDouble([0.,0.,0.,1.,1.,1.,1.,0.,0.,0.5,0.5,1.,1.,0.5,0.5,0.],8,2)
         mQ8=MEDCouplingUMesh("",2) ; mQ8.setCoords(coords)
         mQ8.allocateCells(1)
-        mQ8.insertNextCell(NORM_QUAD8,range(8))
+        mQ8.insertNextCell(NORM_QUAD8, list(range(8)))
         mQ8.finishInsertingCells()
         mQ4=MEDCouplingUMesh("",2) ; mQ4.setCoords(coords)
         mQ4.allocateCells(1)
-        mQ4.insertNextCell(NORM_QUAD4,range(4))
+        mQ4.insertNextCell(NORM_QUAD4, list(range(4)))
         mQ4.finishInsertingCells()
         mT3=MEDCouplingUMesh("",2) ; mT3.setCoords(coords)
         mT3.allocateCells(1)
-        mT3.insertNextCell(NORM_TRI3,range(3))
+        mT3.insertNextCell(NORM_TRI3, list(range(3)))
         mT3.finishInsertingCells()
-        
+
         tr=[[0.,0.],[2.,0.], [0.,2.],[2.,2.],[4.,2.],[6.,2.],[8.,2.],[10.,2.],[12.,2.],[0.,4.],[2.,4.],[4.,4.],[6.,4.],[8.,4.],[10.,4.],[12.,4.],[14.,4.],[16.,4.],[18.,4.],[20.,4.],[22.,4.]]
         ms=2*[mQ4]+7*[mQ8]+11*[mT3]
         ms[:]=(elt.deepCopy() for elt in ms)
@@ -1749,7 +1633,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
 
     def testDAPushBack(self):
         d=DataArrayDouble(0,1)
-        for i in xrange(8):
+        for i in range(8):
             d.pushBackSilent(i)
             pass
         self.assertEqual(d.getNumberOfTuples(),8)
@@ -1783,7 +1667,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertTrue(d.isEqual(DataArrayDouble([4.44,5.55,6.66]),1e-12))
         #
         d=DataArrayInt(0,1)
-        for i in xrange(8):
+        for i in range(8):
             d.pushBackSilent(i)
             pass
         self.assertEqual(d.getNumberOfTuples(),8)
@@ -1986,7 +1870,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         m=MEDCouplingMesh.MergeMeshes([m0,m1,m2,m3,m4])
         expected1=DataArrayDouble([0.16666666666666666,0.3333333333333333,0.5,1.,1.])
         for v in vects:
-            for i in xrange(nbOfDisc):
+            for i in range(nbOfDisc):
                 mm=m.deepCopy()
                 mm.rotate([0.,0.,0.],[0.3,0.7,0.2],float(i)/float(nbOfDisc)*2*pi)
                 mm2=mm.deepCopy()
@@ -2009,7 +1893,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         m=MEDCouplingMesh.MergeMeshes([m0,m1,m2,m3,m4])
         expected2=DataArrayDouble([-0.16666666666666666,0.3333333333333333,0.5,-1.,-1.])
         for v in vects:
-            for i in xrange(nbOfDisc):
+            for i in range(nbOfDisc):
                 mm=m.deepCopy()
                 mm.rotate([0.,0.,0.],[0.3,0.7,0.2],float(i)/float(nbOfDisc)*2*pi)
                 mm2=mm.deepCopy() ; mm3=mm.deepCopy() ; mm3.convertAllToPoly()
@@ -2030,12 +1914,12 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         m1=MEDCouplingUMesh("m",3) ; m1.allocateCells(0); m1.insertNextCell(NORM_PYRA5,[0,3,2,1,4]); #Not well oriented 
         m2=MEDCouplingUMesh("m",3) ; m2.allocateCells(0); m2.insertNextCell(NORM_PENTA6,[0,2,1,3,5,4]); #Not well oriented 
         m3=MEDCouplingUMesh("m",3) ; m3.allocateCells(0); m3.insertNextCell(NORM_HEXA8,[0,1,2,3,4,5,6,7]); #Well oriented
-        m4=MEDCouplingUMesh("m",3) ; m4.allocateCells(0); m4.insertNextCell(NORM_HEXGP12,range(12)); #Well oriented
+        m4 = MEDCouplingUMesh("m", 3) ; m4.allocateCells(0); m4.insertNextCell(NORM_HEXGP12, list(range(12)));  # Well oriented
         m0.setCoords(c0) ; m1.setCoords(c1) ; m2.setCoords(c2) ; m3.setCoords(c3) ; m4.setCoords(c4)
         m=MEDCouplingMesh.MergeMeshes([m0,m1,m2,m3,m4])
         expected3=DataArrayDouble([0.16666666666666666,-0.3333333333333333,-0.5,1.,1.])
         for v in vects:
-            for i in xrange(nbOfDisc):
+            for i in range(nbOfDisc):
                 mm=m.deepCopy()
                 mm.rotate([0.,0.,0.],[0.3,0.7,0.2],float(i)/float(nbOfDisc)*2*pi)
                 mm2=mm.deepCopy() ; mm3=mm.deepCopy() ; mm3.convertAllToPoly()
@@ -2056,7 +1940,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
     def testSwig2CellOrientation1(self):
         coords=DataArrayDouble([-0.21606,-0.10803,0.29999999999999999,-0.21606,-0.10803,0.37700000000000006,0,-0.10803,0.29999999999999999,0,-0.10803,0.37700000000000006,0,0.10803,0.29999999999999999,0,0.10803,0.37700000000000006,-0.21606,0.10803,0.29999999999999999,-0.21606,0.10803,0.37700000000000006,0,0.03601,0.29999999999999999,0,0.03601,0.37700000000000006,0,-0.03601,0.29999999999999999,0,-0.03601,0.37700000000000006],12,3)
         conn=[[0,2,10,8,4,6],[1,3,11,9,5,7],[0,1,3,2],[2,3,11,10],[10,11,9,8],[8,9,5,4],[4,5,7,6],[6,7,1,0]]
-        for i in xrange(256):
+        for i in range(256):
             mesh=MEDCouplingUMesh("FluidMesh_1",3);
             mesh.allocateCells(0)
             conn2=[elt[:] for elt in conn]
@@ -2115,10 +1999,10 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         m.insertNextCell(NORM_TRI3,[0,1,2])
         a,b=m.distanceToPoint([-0.335,2.27,1.21])
         self.assertEqual(0,b)
-        self.assertAlmostEqual(0.022360988100374124,a,14);
+        self.assertAlmostEqual(0.0223609881003,a,12);
         a,b=m.distanceToPoint(DataArrayDouble([-0.335,2.27,1.21],1,3))
         self.assertEqual(0,b)
-        self.assertAlmostEqual(0.022360988100374124,a,14);
+        self.assertAlmostEqual(0.0223609881003,a,12);
         a,b=coords.distanceToTuple([-0.335,2.27,1.21])
         self.assertAlmostEqual(5.243302871282566,a,14)
         self.assertEqual(0,b)
@@ -2157,6 +2041,27 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertAlmostEqual(0.07071067811865482,a,14) ; self.assertEqual(1,b) # self.assertEqual(2,c)
         pass
 
+    def testSwig2UMeshDistanceToMesh2(self):
+        mesh = MEDCouplingUMesh('Solid_3', 2)
+        coo = DataArrayDouble([(99.75,-1.42109e-14,102.75),(99.75,200,102.75),(2.5,0,200),(2.5,200,200),(197,0,200),(197,200,200)])
+        mesh.setCoords(coo)
+        c = DataArrayInt([3, 4, 0, 1, 3, 4, 1, 5, 3, 1, 0, 3, 3, 3, 0, 2])
+        cI = DataArrayInt([0, 4, 8, 12, 16])
+        mesh.setConnectivity(c, cI)
+        mesh.checkConsistency()
+        pt = [125.0, 175.0, 175.0]
+        # Values computed from GEOM:
+        exp1, exp2, exp3, exp4 = 54.0633707597, 33.2340187158, 68.9429111657, 99.5221476482
+        d1, _ = mesh[0].distanceToPoint(pt)
+        d2, _ = mesh[1].distanceToPoint(pt)
+        d3, _ = mesh[2].distanceToPoint(pt)
+        d4, _ = mesh[3].distanceToPoint(pt)
+        self.assertAlmostEqual(exp1,d1,10)
+        self.assertAlmostEqual(exp2,d2,10)
+        self.assertAlmostEqual(exp3,d3,10)
+        self.assertAlmostEqual(exp4,d4,10)
+        pass
+
     def testSwig2NonRegressionPartitionBySpreadZone1(self):
         m=MEDCouplingCMesh()
         arr=DataArrayDouble(6) ; arr.iota(0.)
@@ -2187,7 +2092,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         coords=DataArrayDouble([0.,0.,1.,1.,1.,0.]) ; m.setCoords(coords)
         da=DataArrayInt([0,1,2])
         m.allocateCells(0)
-        for i in xrange(5):
+        for i in range(5):
             m.insertNextCell(NORM_TRI3,da)
             pass
         self.assertTrue(m.getNodalConnectivity().isEqual(DataArrayInt([3,0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3,0,1,2])))
@@ -2195,7 +2100,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         #
         da=DataArrayInt([0,1,2,3])
         m.allocateCells(0)
-        for i in xrange(5):
+        for i in range(5):
             m.insertNextCell(NORM_TRI3,3,da)
             pass
         self.assertTrue(m.getNodalConnectivity().isEqual(DataArrayInt([3,0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3,0,1,2])))
@@ -2511,8 +2416,8 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         m3D.convertLinearCellsToQuadratic(0)
         m3D.checkConsistency()
         # check of new m3D content
-        coordsExp2=[coordsExp.changeNbOfComponents(3,i) for i in xrange(4)]
-        coordsExp3=[DataArrayDouble.Meld(cooTmp[:,[0,1]],cooTmp[:,2]+(0.5+float(i))) for i in xrange(3)]
+        coordsExp2 = [coordsExp.changeNbOfComponents(3, i) for i in range(4)]
+        coordsExp3 = [DataArrayDouble.Meld(cooTmp[:, [0, 1]], cooTmp[:, 2] + (0.5 + float(i))) for i in range(3)]
         coordsExp4=DataArrayDouble.Aggregate([coordsExp2[0],coordsExp3[0],coordsExp2[1],coordsExp3[1],coordsExp2[2],coordsExp3[2],coordsExp2[3]])
         c=DataArrayDouble.Aggregate(m3D.getCoords(),coordsExp4)
         self.assertEqual(len(coordsExp4),115)
@@ -2718,7 +2623,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
     def testSwig2DataArrayAsciiChar1(self):
         alpha=DataArrayInt(26) ; alpha.iota(ord("A"))
         d=DataArrayAsciiChar(alpha.getValues(),2,13)
-        d.setInfoOnComponents(["c%i"%(v) for v in xrange(13)])
+        d.setInfoOnComponents(["c%i" % (v) for v in range(13)])
         self.assertEqual('ABCDEFGHIJKLM',d.getTuple(0))
         self.assertEqual('NOPQRSTUVWXYZ',d.getTuple(1))
         self.assertEqual(2,d.getNumberOfTuples())
@@ -2851,8 +2756,8 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertTrue(mea.getArray().isEqual(DataArrayDouble([-0.08504076274779823,-0.06378057206084897,-0.08504076274779869,-0.10630095343474463,-0.12756114412169625,-0.10630095343474734,-0.0637805720608491,-0.0850407627477968,-0.1063009534347449,-0.0850407627477994,-0.10630095343474809,-0.1275611441216954,-0.037205333702161475,-0.037205333702161475,-0.037205333702161475,-0.037205333702161475,-0.047835429045636084,-0.047835429045636084,-0.047835429045636084,-0.047835429045636084,-0.05846552438911087,-0.05846552438911087,-0.05846552438911087,-0.05846552438911087,-0.037205333702161725,-0.037205333702161725,-0.037205333702161725,-0.037205333702161725,-0.047835429045635834,-0.047835429045635834,-0.047835429045635834,-0.047835429045635834,-0.05846552438911058,-0.05846552438911058,-0.05846552438911058,-0.05846552438911058,-0.03879154890291829,-0.03879154890291829,-0.03879154890291829,-0.04120270848015563,-0.04120270848015563,-0.04120270848015563,-0.03393028948486933,-0.03393028948486933,-0.03393028948486933,-0.03151955746491709,-0.03151955746491709,-0.03151955746491709,-0.02424752187358276,-0.02424752187358276,-0.02424752187358276,-0.026657914642918758,-0.026657914642918758,-0.026657914642918758,-0.04120270848015456,-0.04120270848015456,-0.04120270848015456,-0.03879154890291757,-0.03879154890291757,-0.03879154890291757,-0.031519557464916595,-0.031519557464916595,-0.031519557464916595,-0.03393028948487046,-0.03393028948487046,-0.03393028948487046,-0.0266579146429191,-0.0266579146429191,-0.0266579146429191,-0.024247521873582645,-0.024247521873582645,-0.024247521873582645,-0.01851718920904466,-0.01851718920904466,-0.01851718920904466,-0.01851718920904466,-0.029627502734471456,-0.029627502734471456,-0.029627502734471456,-0.029627502734471456,-0.04740400437515433,-0.015150427534672922,-0.015150427534672922,-0.015150427534672922,-0.015150427534672922,-0.024240684055476674,-0.024240684055476674,-0.024240684055476674,-0.024240684055476674,-0.038785094488762675,-0.011783665860301345,-0.011783665860301345,-0.011783665860301345,-0.011783665860301345,-0.018853865376482152,-0.018853865376482152,-0.018853865376482152,-0.018853865376482152,-0.030166184602371443,-0.018517189209044892,-0.018517189209044892,-0.018517189209044892,-0.018517189209044892,-0.029627502734471827,-0.029627502734471827,-0.029627502734471827,-0.029627502734471827,-0.04740400437515492,-0.015150427534672776,-0.015150427534672776,-0.015150427534672776,-0.015150427534672776,-0.02424068405547644,-0.02424068405547644,-0.02424068405547644,-0.02424068405547644,-0.03878509448876231,-0.011783665860301277,-0.011783665860301277,-0.011783665860301277,-0.011783665860301277,-0.01885386537648204,-0.01885386537648204,-0.01885386537648204,-0.01885386537648204,-0.030166184602371266]),1e-14))
         f=MEDCouplingFieldDouble(ft)
         arr=DataArrayDouble(126,2)
-        arr[:,0]=range(126)
-        arr[:,1]=range(126)
+        arr[:, 0] = list(range(126))
+        arr[:, 1] = list(range(126))
         arr[:,1]+=1000
         f.setArray(arr)
         f.checkConsistencyLight()
@@ -2913,24 +2818,24 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
 
     def testSwig2DAReverseMultiCompo1(self):
         d=DataArrayDouble(6,2)
-        d[:,0]=range(6)
-        d[:,1]=range(10,16)
+        d[:, 0] = list(range(6))
+        d[:, 1] = list(range(10, 16))
         d.reverse()
         self.assertTrue(d.isEqual(DataArrayDouble([5.,15.,4.,14.,3.,13.,2.,12.,1.,11.,0.,10.],6,2),1e-14))
         d=DataArrayDouble(7,2)
-        d[:,0]=range(7)
-        d[:,1]=range(10,17)
+        d[:, 0] = list(range(7))
+        d[:, 1] = list(range(10, 17))
         d.reverse()
         self.assertTrue(d.isEqual(DataArrayDouble([6.,16.,5.,15.,4.,14.,3.,13.,2.,12.,1.,11.,0.,10.],7,2),1e-14))
         #
         d=DataArrayInt(6,2)
-        d[:,0]=range(6)
-        d[:,1]=range(10,16)
+        d[:, 0] = list(range(6))
+        d[:, 1] = list(range(10, 16))
         d.reverse()
         self.assertTrue(d.isEqual(DataArrayInt([5,15,4,14,3,13,2,12,1,11,0,10],6,2)))
         d=DataArrayInt(7,2)
-        d[:,0]=range(7)
-        d[:,1]=range(10,17)
+        d[:, 0] = list(range(7))
+        d[:, 1] = list(range(10, 17))
         d.reverse()
         self.assertTrue(d.isEqual(DataArrayInt([6,16,5,15,4,14,3,13,2,12,1,11,0,10],7,2)))
         pass
@@ -3007,16 +2912,16 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         d=DataArrayDouble()
         self.assertTrue(len(d.__repr__())<120)
         d.alloc(1000,0) ; self.assertTrue(len(d.__repr__())<100)
-        for i in xrange(100):
+        for i in range(100):
             d.alloc(i,1) ; d.iota(1.1234567890123456) ; d*=1e123
             self.assertTrue(len(d.__repr__())<500)
             pass
-        for i in xrange(50):
+        for i in range(50):
             d.alloc(i,2) ; d.rearrange(1) ; d.iota(1.1234567890123456) ; d.rearrange(2) ; d*=1e123
             self.assertTrue(len(d.__repr__())<500)
             pass
         d.alloc(4000,1) ; d.iota() ; self.assertTrue(len(d.__repr__())<500)
-        for i in xrange(2,4):
+        for i in range(2, 4):
             d.alloc(362880,1) ; d.iota() ; d.rearrange(i) ; self.assertTrue(len(d.__repr__())<500)
             pass
         d.alloc(0,9)
@@ -3025,16 +2930,16 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         d=DataArrayInt()
         self.assertTrue(len(d.__repr__())<100)
         d.alloc(1000,0) ; self.assertTrue(len(d.__repr__())<100)
-        for i in xrange(100):
+        for i in range(100):
             d.alloc(i,1) ; d.iota(123456789)
             self.assertTrue(len(d.__repr__())<500)
             pass
-        for i in xrange(50):
+        for i in range(50):
             d.alloc(i,2) ; d.rearrange(1) ; d.iota(123456789) ; d.rearrange(2)
             self.assertTrue(len(d.__repr__())<500)
             pass
         d.alloc(4000,1) ; d.iota() ; self.assertTrue(len(d.__repr__())<500)
-        for i in xrange(2,10):
+        for i in range(2, 10):
             d.alloc(362880,1) ; d.iota() ; d.rearrange(i) ; self.assertTrue(len(d.__repr__())<500)
             pass
         d.alloc(0,9)
@@ -3100,7 +3005,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         m2.allocateCells(0)
         m2.setCoords(coo)
         conn2=[[0,3,5,1,7,4,6,2],[12,14,16,18,13,15,17,19],[0,12,18,3,8,19,11,7],[3,18,16,5,11,17,10,4],[5,16,14,1,10,15,9,6],[1,14,12,0,9,13,8,2]]
-        for i in xrange(6):
+        for i in range(6):
             m2.insertNextCell(NORM_QUAD8,conn2[i])
             pass
         self.assertTrue(m2.isEqual(a,1e-12))
@@ -3123,7 +3028,7 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         conn4=[[0,2,3,1,8,9,10,11,20],[4,5,6,7,15,14,13,12,25],[0,4,7,2,16,12,17,8,21],[2,7,6,3,17,13,18,9,22],[3,6,5,1,18,14,19,10,23],[1,5,4,0,19,15,16,11,24]]
         m4=MEDCouplingUMesh("mesh",2)
         m4.allocateCells(0)
-        for i in xrange(6):
+        for i in range(6):
             m4.insertNextCell(NORM_QUAD9,conn4[i])
             pass
         m4.setCoords(coo2)
@@ -3200,20 +3105,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__add__,2)
-        self.assertRaises(InterpKernelException,f.__add__,range(5))
+        self.assertRaises(InterpKernelException, f.__add__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__add__,arr)
         self.assertRaises(InterpKernelException,f.__add__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__add__,2)
-        self.assertRaises(InterpKernelException,f.__add__,range(5))
+        self.assertRaises(InterpKernelException, f.__add__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__add__,arr)
         self.assertRaises(InterpKernelException,f.__add__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=f+2
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(2,9),(3,10),(4,11),(5,12),(6,13)]),1e-12))
@@ -3232,20 +3137,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__sub__,2)
-        self.assertRaises(InterpKernelException,f.__sub__,range(5))
+        self.assertRaises(InterpKernelException, f.__sub__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__sub__,arr)
         self.assertRaises(InterpKernelException,f.__sub__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__sub__,2)
-        self.assertRaises(InterpKernelException,f.__sub__,range(5))
+        self.assertRaises(InterpKernelException, f.__sub__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__sub__,arr)
         self.assertRaises(InterpKernelException,f.__sub__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=f-2
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(-2,5),(-1,6),(0,7),(1,8),(2,9)]),1e-12))
@@ -3264,20 +3169,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__mul__,2)
-        self.assertRaises(InterpKernelException,f.__mul__,range(5))
+        self.assertRaises(InterpKernelException, f.__mul__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__mul__,arr)
         self.assertRaises(InterpKernelException,f.__mul__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__mul__,2)
-        self.assertRaises(InterpKernelException,f.__mul__,range(5))
+        self.assertRaises(InterpKernelException, f.__mul__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__mul__,arr)
         self.assertRaises(InterpKernelException,f.__mul__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=f*2
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(0,14),(2,16),(4,18),(6,20),(8,22)]),1e-12))
@@ -3296,20 +3201,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(1,6) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(1, 6)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__div__,2)
-        self.assertRaises(InterpKernelException,f.__div__,range(5))
+        self.assertRaises(InterpKernelException, f.__div__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__div__,arr)
         self.assertRaises(InterpKernelException,f.__div__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__div__,2)
-        self.assertRaises(InterpKernelException,f.__div__,range(5))
+        self.assertRaises(InterpKernelException, f.__div__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__div__,arr)
         self.assertRaises(InterpKernelException,f.__div__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         self.assertRaises(InterpKernelException,f.__div__,0)
         ff=f/2
         ff.checkConsistencyLight()
@@ -3332,17 +3237,17 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         arr[:]=[1,1,3,2,0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__div__,2)
-        self.assertRaises(InterpKernelException,f.__div__,range(5))
+        self.assertRaises(InterpKernelException, f.__div__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__div__,arr)
         self.assertRaises(InterpKernelException,f.__div__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__div__,2)
-        self.assertRaises(InterpKernelException,f.__div__,range(5))
+        self.assertRaises(InterpKernelException, f.__div__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__div__,arr)
         self.assertRaises(InterpKernelException,f.__div__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,1)
-        f.getArray()[:]=range(2,7)
+        f.getArray()[:] = list(range(2, 7))
         ff=f**2
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([4,9,16,25,36]),1e-12))
@@ -3358,19 +3263,19 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__iadd__,2)
-        self.assertRaises(InterpKernelException,f.__iadd__,range(5))
+        self.assertRaises(InterpKernelException, f.__iadd__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__iadd__,arr)
         self.assertRaises(InterpKernelException,f.__iadd__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__iadd__,2)
-        self.assertRaises(InterpKernelException,f.__iadd__,range(5))
+        self.assertRaises(InterpKernelException, f.__iadd__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__iadd__,arr)
         self.assertRaises(InterpKernelException,f.__iadd__,f2)
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         f.checkConsistencyLight()
         f+=2
         f.checkConsistencyLight()
@@ -3390,19 +3295,19 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__isub__,2)
-        self.assertRaises(InterpKernelException,f.__isub__,range(5))
+        self.assertRaises(InterpKernelException, f.__isub__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__isub__,arr)
         self.assertRaises(InterpKernelException,f.__isub__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__isub__,2)
-        self.assertRaises(InterpKernelException,f.__isub__,range(5))
+        self.assertRaises(InterpKernelException, f.__isub__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__isub__,arr)
         self.assertRaises(InterpKernelException,f.__isub__,f2)
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         f.checkConsistencyLight()
         f-=2
         f.checkConsistencyLight()
@@ -3422,19 +3327,19 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__imul__,2)
-        self.assertRaises(InterpKernelException,f.__imul__,range(5))
+        self.assertRaises(InterpKernelException, f.__imul__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__imul__,arr)
         self.assertRaises(InterpKernelException,f.__imul__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__imul__,2)
-        self.assertRaises(InterpKernelException,f.__imul__,range(5))
+        self.assertRaises(InterpKernelException, f.__imul__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__imul__,arr)
         self.assertRaises(InterpKernelException,f.__imul__,f2)
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         f.checkConsistencyLight()
         f*=2
         f.checkConsistencyLight()
@@ -3454,19 +3359,19 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(1,6) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(1, 6)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__idiv__,2)
-        self.assertRaises(InterpKernelException,f.__idiv__,range(5))
+        self.assertRaises(InterpKernelException, f.__idiv__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__idiv__,arr)
         self.assertRaises(InterpKernelException,f.__idiv__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__idiv__,2)
-        self.assertRaises(InterpKernelException,f.__idiv__,range(5))
+        self.assertRaises(InterpKernelException, f.__idiv__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__idiv__,arr)
         self.assertRaises(InterpKernelException,f.__idiv__,f2)
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         f.checkConsistencyLight()
         f/=2
         f.checkConsistencyLight()
@@ -3486,19 +3391,19 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(1,6) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(1, 6)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__ipow__,2)
-        self.assertRaises(InterpKernelException,f.__ipow__,range(5))
+        self.assertRaises(InterpKernelException, f.__ipow__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__ipow__,arr)
         self.assertRaises(InterpKernelException,f.__ipow__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__ipow__,2)
-        self.assertRaises(InterpKernelException,f.__ipow__,range(5))
+        self.assertRaises(InterpKernelException, f.__ipow__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__ipow__,arr)
         self.assertRaises(InterpKernelException,f.__ipow__,f2)
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         f.checkConsistencyLight()
         f**=2
         f.checkConsistencyLight()
@@ -3508,20 +3413,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__radd__,2)
-        self.assertRaises(InterpKernelException,f.__radd__,range(5))
+        self.assertRaises(InterpKernelException, f.__radd__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__radd__,arr)
         self.assertRaises(InterpKernelException,f.__radd__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__radd__,2)
-        self.assertRaises(InterpKernelException,f.__radd__,range(5))
+        self.assertRaises(InterpKernelException, f.__radd__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__radd__,arr)
         self.assertRaises(InterpKernelException,f.__radd__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=2+f
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(2,9),(3,10),(4,11),(5,12),(6,13)]),1e-12))
@@ -3536,20 +3441,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__rsub__,2)
-        self.assertRaises(InterpKernelException,f.__rsub__,range(5))
+        self.assertRaises(InterpKernelException, f.__rsub__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__rsub__,arr)
         self.assertRaises(InterpKernelException,f.__rsub__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__rsub__,2)
-        self.assertRaises(InterpKernelException,f.__rsub__,range(5))
+        self.assertRaises(InterpKernelException, f.__rsub__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__rsub__,arr)
         self.assertRaises(InterpKernelException,f.__rsub__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=2-f
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(2,-5),(1,-6),(0,-7),(-1,-8),(-2,-9)]),1e-12))
@@ -3562,20 +3467,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(5) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(5)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__rmul__,2)
-        self.assertRaises(InterpKernelException,f.__rmul__,range(5))
+        self.assertRaises(InterpKernelException, f.__rmul__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__rmul__,arr)
         self.assertRaises(InterpKernelException,f.__rmul__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__rmul__,2)
-        self.assertRaises(InterpKernelException,f.__rmul__,range(5))
+        self.assertRaises(InterpKernelException, f.__rmul__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__rmul__,arr)
         self.assertRaises(InterpKernelException,f.__rmul__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(5) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(5)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=2*f
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(0,14),(2,16),(4,18),(6,20),(8,22)]),1e-12))
@@ -3590,20 +3495,20 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         f=MEDCouplingFieldDouble(ON_CELLS)
         f.setMesh(m)
         arr=DataArrayDouble(5,2)
-        arr[:,0]=range(1,6) ; arr[:,1]=2*arr[:,0]
+        arr[:, 0] = list(range(1, 6)) ; arr[:, 1] = 2 * arr[:, 0]
         f2=f.clone(True)
         self.assertRaises(InterpKernelException,f.__rdiv__,2)
-        self.assertRaises(InterpKernelException,f.__rdiv__,range(5))
+        self.assertRaises(InterpKernelException, f.__rdiv__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__rdiv__,arr)
         self.assertRaises(InterpKernelException,f.__rdiv__,f2)
         f.setArray(DataArrayDouble())
         self.assertRaises(InterpKernelException,f.__rdiv__,2)
-        self.assertRaises(InterpKernelException,f.__rdiv__,range(5))
+        self.assertRaises(InterpKernelException, f.__rdiv__, list(range(5)))
         self.assertRaises(InterpKernelException,f.__rdiv__,arr)
         self.assertRaises(InterpKernelException,f.__rdiv__,f2)
         self.assertRaises(InterpKernelException,f.__getitem__,(slice(None),0))
         f.getArray().alloc(5,2)
-        f.getArray()[:,0]=range(1,6) ; f.getArray()[:,1]=f.getArray()[:,0]+7
+        f.getArray()[:, 0] = list(range(1, 6)) ; f.getArray()[:, 1] = f.getArray()[:, 0] + 7
         ff=2/f
         ff.checkConsistencyLight()
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(2,0.25),(1,0.22222222222222221),(0.66666666666666663,0.20000000000000001),(0.5,0.18181818181818182),(0.40000000000000002,0.16666666666666666)]),1e-12))
@@ -3612,9 +3517,9 @@ class MEDCouplingBasicsTest4(unittest.TestCase):
         self.assertTrue(ff.getArray().isEqual(DataArrayDouble([(1,0.25),(1,0.44444444444444442),(1,0.59999999999999998),(1,0.72727272727272729),(1,0.83333333333333337)]),1e-12))
         self.assertRaises(InterpKernelException,f.__rdiv__,f2)
         pass
-    
+
     pass
 
 if __name__ == '__main__':
     unittest.main()
-  
+