X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCoupling_Swig%2FMEDCouplingExamplesTest.py;h=26499420cc05b4ccc5df82fe420bc3c48fd3c8c3;hb=0a16028185e79b4e26b6fc56f099690770ac77c3;hp=549fab780f3b87d7dc567db790b050f1d1f4662a;hpb=bd238ae917aa20ba3fe2f7569883d619b7e4f7a9;p=tools%2Fmedcoupling.git diff --git a/src/MEDCoupling_Swig/MEDCouplingExamplesTest.py b/src/MEDCoupling_Swig/MEDCouplingExamplesTest.py index 549fab780..26499420c 100644 --- a/src/MEDCoupling_Swig/MEDCouplingExamplesTest.py +++ b/src/MEDCoupling_Swig/MEDCouplingExamplesTest.py @@ -1,5 +1,5 @@ # -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2015 CEA/DEN, EDF R&D +# Copyright (C) 2007-2019 CEA/DEN, EDF R&D # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -18,7 +18,12 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -from MEDCoupling import * + +import sys +if sys.platform == "win32": + from MEDCouplingCompat import * +else: + from medcoupling import * import unittest from math import pi, sqrt @@ -43,7 +48,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): fileName = "testExample_MEDCouplingFieldDouble_WriteVTK" fs = [ field1, field2, field3 ] # field series writtenFileName=MEDCouplingFieldDouble.WriteVTK( fileName, fs ) - print "The file name with correct extension is : %s"%(writtenFileName) + print("The file name with correct extension is : %s"%(writtenFileName)) #! [PySnippet_MEDCouplingFieldDouble_WriteVTK_1] import os os.remove( writtenFileName ) @@ -67,11 +72,11 @@ class MEDCouplingBasicsTest(unittest.TestCase): field2 = MEDCouplingFieldDouble( ON_NODES ) field2.setArray( valsArr2 ) - # max field + # max field fieldMax = MEDCouplingFieldDouble.MaxFields( field1, field2 ) self.assertTrue( fieldMax.getArray().getValues() == valsMax ) - # min field + # min field fieldMin = MEDCouplingFieldDouble.MinFields( field1, field2 ) self.assertTrue( fieldMin.getArray().getValues() == valsMin ) #! [PySnippet_MEDCouplingFieldDouble_MaxFields_1] @@ -177,7 +182,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): # transform the field to a 3D vector field func = "IVec * b + JVec * a + KVec * sqrt( a*a + b*b ) + 10" varNames=["a","b"] # names used to refer to X and Y components - field.applyFuncNamedCompo( 3, varNames, func ) # require 3 components + field.applyFuncNamedCompo( 3, varNames, func ) # require 3 components self.assertTrue( field.getNumberOfComponents() == 3 ) # 3 components as required #! [PySnippet_MEDCouplingFieldDouble_applyFunc3_1] #! [PySnippet_MEDCouplingFieldDouble_applyFunc3_2] @@ -200,7 +205,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): field.setArray( array ) # transform the field to a 3D vector field func = "IVec * b + JVec * a + KVec * sqrt( a*a + b*b ) + 10" - field.applyFuncCompo( 3, func ) # require 3 components + field.applyFuncCompo( 3, func ) # require 3 components self.assertTrue( field.getNumberOfComponents() == 3 ) # 3 components as required #! [PySnippet_MEDCouplingFieldDouble_applyFunc2_1] #! [PySnippet_MEDCouplingFieldDouble_applyFunc2_2] @@ -221,7 +226,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): field.setArray( array ) # transform the field to a 3D vector field func = "IVec * b + JVec * a + KVec * sqrt( a*a + b*b ) + 10" - field.applyFunc( 3, func ) # require 3 components + field.applyFunc( 3, func ) # require 3 components self.assertTrue( field.getNumberOfComponents() == 3 ) # 3 components as required #! [PySnippet_MEDCouplingFieldDouble_applyFunc_1] #! [PySnippet_MEDCouplingFieldDouble_applyFunc_2] @@ -725,9 +730,9 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,2,4, 4,5,2, 6,7,4,3, 7,8,5,4] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) - mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.insertNextCell(NORM_QUAD4,4,conn[10:14]) mesh.insertNextCell(NORM_QUAD4,4,conn[14:18]) mesh.finishInsertingCells() @@ -871,9 +876,9 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,4,2, 4,5,2, 6,7,4,3, 7,8,5,4] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) - mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.insertNextCell(NORM_QUAD4,4,conn[10:14]) mesh.insertNextCell(NORM_QUAD4,4,conn[14:18]) mesh.finishInsertingCells() @@ -883,7 +888,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): #! [PySnippet_MEDCouplingUMesh_findBoundaryNodes_1] #! [PySnippet_MEDCouplingUMesh_findBoundaryNodes_2] nodeIdsArr=mesh.findBoundaryNodes() - assert nodeIdsArr.getNumberOfTuples() == mesh.getNumberOfNodes() - 1 + assert nodeIdsArr.getNumberOfTuples() == mesh.getNumberOfNodes() - 1 #! [PySnippet_MEDCouplingUMesh_findBoundaryNodes_2] return @@ -893,9 +898,9 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,4,2, 4,5,2, 6,7,4,3, 7,8,5,4] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) - mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.insertNextCell(NORM_QUAD4,4,conn[10:14]) mesh.insertNextCell(NORM_QUAD4,4,conn[14:18]) mesh.finishInsertingCells() @@ -998,9 +1003,9 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,4,2, 4,5,2, 6,7,4,3, 7,8,5,4] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) - mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.insertNextCell(NORM_QUAD4,4,conn[10:14]) mesh.insertNextCell(NORM_QUAD4,4,conn[14:18]) mesh.finishInsertingCells() @@ -1053,8 +1058,8 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,4,2, 4,5,2] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.finishInsertingCells() coords=[0.3,-0.301, # 0 @@ -1116,9 +1121,9 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,4,2, 4,5,2, 6,7,4,3, 7,8,5,4] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) - mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.insertNextCell(NORM_QUAD4,4,conn[10:14]) mesh.insertNextCell(NORM_QUAD4,4,conn[14:18]) mesh.finishInsertingCells() @@ -1141,9 +1146,9 @@ class MEDCouplingBasicsTest(unittest.TestCase): mesh.setMeshDimension(2) mesh.allocateCells(5) conn=[0,3,4,1, 1,4,2, 4,5,2, 6,7,4,3, 7,8,5,4] - mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) - mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) - mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) + mesh.insertNextCell(NORM_QUAD4,4,conn[0:4]) + mesh.insertNextCell(NORM_TRI3,3, conn[4:7]) + mesh.insertNextCell(NORM_TRI3,3, conn[7:10]) mesh.insertNextCell(NORM_QUAD4,4,conn[10:14]) mesh.insertNextCell(NORM_QUAD4,4,conn[14:18]) mesh.finishInsertingCells() @@ -1478,7 +1483,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): #! [Snippet_DataArrayInt_getTuple_1] #! [Snippet_DataArrayInt_getTuple_2] for tpl in dv: - print tpl + print(tpl) #! [Snippet_DataArrayInt_getTuple_2] return @@ -1500,7 +1505,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): da.setValues(arr1,6,1) da2=da.invertArrayO2N2N2O(6) expected1=[1,3,0,5,2,4] - for i in xrange(6): + for i in range(6): self.assertEqual(expected1[i],da2.getIJ(i,0)) pass #! [PySnippet_DataArrayInt_invertArrayO2N2N2O_1] @@ -1513,7 +1518,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): da.setValues(arr1,6,1) da2=da.invertArrayN2O2O2N(7) expected1=[1,3,0,5,2,4,-1] - for i in xrange(6): + for i in range(6): self.assertEqual(expected1[i],da2.getIJ(i,0)) pass #! [PySnippet_DataArrayInt_invertArrayN2O2O2N_1] @@ -1524,7 +1529,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): #! [PySnippet_DataArrayDouble_getIdsInRange_1] da=DataArrayDouble() da.alloc( 10, 1 ) - da[ :, :] = range(10) + da[ :, :] = list(range(10)) da2 = da.findIdsInRange( 2.5, 6 ) #! [PySnippet_DataArrayDouble_getIdsInRange_1] return @@ -1890,7 +1895,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): dv=da.getDifferentValues(2e-1) expected2=[2.301,1.3,0.8] self.assertEqual(3,dv.getNbOfElems()) - for i in xrange(3): + for i in range(3): self.assertAlmostEqual(expected2[i],dv.getIJ(i,0),14) pass #! [Snippet_DataArrayDouble_getDifferentValues1] @@ -1899,7 +1904,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): def testExample_DataArrayDouble_findCommonTuples1(self): #! [PySnippet_DataArrayDouble_findCommonTuples1] array2=[2.3,2.3, 1.2,1.2, 1.3,1.3, 2.3,2.3, 2.301,2.301, 0.8,0.8] - da=DataArrayDouble(array2,6,2) + da=DataArrayDouble(array2,6,2) #! [PySnippet_DataArrayDouble_findCommonTuples1] #! [PySnippet_DataArrayDouble_findCommonTuples2] c,cI=da.findCommonTuples(1.01e-1) @@ -1971,7 +1976,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): #! [SnippeDataArrayIntKeepSelectedComponents1_1] arr1=[1,2,3,4, # tuple 0 11,12,13,14, # tuple 1 - 21,22,23,24, # + 21,22,23,24, # 31,32,33,34, 41,42,43,44] a1=DataArrayInt() @@ -2009,7 +2014,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): self.assertEqual(3,f2.getNumberOfTuples()) self.assertEqual(2,f2.getNumberOfComponents()) expected1=[5.,105.,4.,104.,7.,107.] - for i in xrange(6): + for i in range(6): self.assertAlmostEqual(f2.getIJ(0,i),expected1[i],12) pass self.assertEqual(3,f2.getMesh().getNumberOfCells()) @@ -2019,7 +2024,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): m2C=f2.getMesh() self.assertEqual(13,m2C.getNodalConnectivityArrayLen()) expected2=[0.2, -0.3, 0.7, -0.3, 0.2, 0.2, 0.7, 0.2, 0.2, 0.7, 0.7, 0.7] - for i in xrange(12): + for i in range(12): self.assertAlmostEqual(expected2[i],m2C.getCoords().getIJ(0,i),12) pass expected3=[3,2,3,1,3,0,2,1,4,4,5,3,2] @@ -2042,7 +2047,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): self.assertEqual(4,f2.getNumberOfTuples()) self.assertEqual(2,f2.getNumberOfComponents()) expected5=[4.,104.,5.,105.,7.,107.,8.,108.] - for i in xrange(8): + for i in range(8): self.assertAlmostEqual(f2.getIJ(0,i),expected5[i],12) pass self.assertEqual(2,f2.getMesh().getNumberOfCells()) @@ -2051,7 +2056,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): self.assertEqual(2,f2.getMesh().getMeshDimension()) m2C=f2.getMesh() self.assertEqual(8,m2C.getNodalConnectivityArrayLen()) - for i in xrange(8):#8 is not an error + for i in range(8): # 8 is not an error self.assertAlmostEqual(expected2[i],m2C.getCoords().getIJ(0,i),12) pass self.assertEqual(expected3[:4],[int(i) for i in m2C.getNodalConnectivity()][4:]) @@ -2064,7 +2069,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): f2=f1.buildSubPart(arrr) self.assertEqual(4,f2.getNumberOfTuples()) self.assertEqual(2,f2.getNumberOfComponents()) - for i in xrange(8): + for i in range(8): self.assertAlmostEqual(f2.getIJ(0,i),expected5[i],12) pass self.assertEqual(2,f2.getMesh().getNumberOfCells()) @@ -2073,7 +2078,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): self.assertEqual(2,f2.getMesh().getMeshDimension()) m2C=f2.getMesh() self.assertEqual(8,m2C.getNodalConnectivityArrayLen()) - for i in xrange(8):#8 is not an error + for i in range(8): # 8 is not an error self.assertAlmostEqual(expected2[i],m2C.getCoords().getIJ(0,i),12) pass self.assertEqual(expected3[:4],[int(i) for i in m2C.getNodalConnectivity()][4:8]) @@ -2084,7 +2089,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): self.assertEqual(6,f2.getNumberOfTuples()) self.assertEqual(2,f2.getNumberOfComponents()) expected6=[4.,104.,5.,105.,7.,107.,8.,108.,10.,110.,11.,111.] - for i in xrange(12): + for i in range(12): self.assertAlmostEqual(f2.getIJ(0,i),expected6[i],12) pass self.assertEqual(3,f2.getMesh().getNumberOfCells()) @@ -2093,7 +2098,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): self.assertEqual(2,f2.getMesh().getMeshDimension()) m2C=f2.getMesh() self.assertEqual(13,m2C.getNodalConnectivityArrayLen()) - for i in xrange(12): + for i in range(12): self.assertAlmostEqual(expected2[i],m2C.getCoords().getIJ(0,i),12) pass self.assertEqual(expected3[0:4],m2C.getNodalConnectivity().getValues()[4:8]) @@ -2106,7 +2111,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): def testExampleUMeshStdBuild1(self): # ! [PySnippetUMeshStdBuild1_1] - coords=[-0.3,-0.3,0., 0.2,-0.3,0., 0.7,-0.3,0., -0.3,0.2,0., 0.2,0.2,0., + coords=[-0.3,-0.3,0., 0.2,-0.3,0., 0.7,-0.3,0., -0.3,0.2,0., 0.2,0.2,0., 0.7,0.2,0., -0.3,0.7,0., 0.2,0.7,0., 0.7,0.7,0. ] nodalConnPerCell=[0,3,4,1, 1,4,2, 4,5,2, 6,7,4,3, 7,8,5,4] # ! [PySnippetUMeshStdBuild1_1] @@ -2115,20 +2120,22 @@ class MEDCouplingBasicsTest(unittest.TestCase): # ! [PySnippetUMeshStdBuild1_2] # ! [PySnippetUMeshStdBuild1_3] mesh.allocateCells(5)#You can put more than 5 if you want but not less. + # adding cells mesh.insertNextCell(NORM_QUAD4,nodalConnPerCell[:4]) mesh.insertNextCell(NORM_TRI3,nodalConnPerCell[4:7]) mesh.insertNextCell(NORM_TRI3,nodalConnPerCell[7:10]) mesh.insertNextCell(NORM_QUAD4,nodalConnPerCell[10:14]) mesh.insertNextCell(NORM_QUAD4,nodalConnPerCell[14:]) + # compacting mesh.finishInsertingCells() # ! [PySnippetUMeshStdBuild1_3] # ! [PySnippetUMeshStdBuild1_4] - coordsArr=DataArrayDouble(coords,9,3)#here coordsArr are declared to have 3 components, mesh will deduce that its spaceDim==3. + coordsArr=DataArrayDouble(coords,9,3)#here coordsArr are declared to have 3 components, mesh will deduce that its spaceDim==3. mesh.setCoords(coordsArr)#coordsArr contains 9 tuples, that is to say mesh contains 9 nodes. # ! [PySnippetUMeshStdBuild1_4] -# ! [PySnippetUMeshStdBuild1_5] # ! [PySnippetUMeshStdBuild1_5] mesh.checkConsistencyLight() +# ! [PySnippetUMeshStdBuild1_5] return def testExampleCMeshStdBuild1(self): @@ -2165,7 +2172,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): def testExampleUMeshAdvBuild1(self): # ! [PySnippetUMeshAdvBuild1_1] - coords=[-0.3,-0.3,0., 0.2,-0.3,0., 0.7,-0.3,0., -0.3,0.2,0., 0.2,0.2,0., + coords=[-0.3,-0.3,0., 0.2,-0.3,0., 0.7,-0.3,0., -0.3,0.2,0., 0.2,0.2,0., 0.7,0.2,0., -0.3,0.7,0., 0.2,0.7,0., 0.7,0.7,0. ] nodalConnPerCell=[4,0,3,4,1, 3,1,4,2, 3,4,5,2, 4,6,7,4,3, 4,7,8,5,4] nodalConnPerCellIndex=[0,5,9,13,18,23] @@ -2220,7 +2227,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): fieldOnCells.setName("MyTensorFieldOnCellNoTime") fieldOnCells.setMesh(mesh) array=DataArrayDouble() - array.alloc(fieldOnCells.getMesh().getNumberOfCells(),9) # Implicitely fieldOnCells will be a 9 components field. + array.alloc(fieldOnCells.getMesh().getNumberOfCells(),9) # Implicitly fieldOnCells will be a 9 components field. array.fillWithValue(7.) fieldOnCells.setArray(array) # fieldOnCells is now usable @@ -2252,7 +2259,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): fieldOnNodes.setName("MyScalarFieldOnNodeNoTime") fieldOnNodes.setMesh(mesh) array=DataArrayDouble() - array.alloc(fieldOnNodes.getMesh().getNumberOfNodes(),1) # Implicitely fieldOnNodes will be a 1 component field. + array.alloc(fieldOnNodes.getMesh().getNumberOfNodes(),1) # Implicitly fieldOnNodes will be a 1 component field. array.fillWithValue(7.) fieldOnNodes.setArray(array) # fieldOnNodes is now usable @@ -2272,7 +2279,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): fieldOnCells.setTime(4.22,2,-1) # Time attached is 4.22 ms, iteration id is 2 and order id (or sub iteration id) is -1 fieldOnCells.setMesh(mesh) array=DataArrayDouble() - array.alloc(fieldOnCells.getMesh().getNumberOfCells(),2) # Implicitely fieldOnCells will be a 2 components field. + array.alloc(fieldOnCells.getMesh().getNumberOfCells(),2) # Implicitly fieldOnCells will be a 2 components field. array.fillWithValue(7.) fieldOnCells.setArray(array) # fieldOnCells is now usable @@ -2293,7 +2300,7 @@ class MEDCouplingBasicsTest(unittest.TestCase): fieldOnNodes.setEndTime(6.44,4,-1)# fieldOnNodes is defined in interval [4.22 ms,6.44 ms] fieldOnNodes.setMesh(mesh) array=DataArrayDouble() - array.alloc(fieldOnNodes.getMesh().getNumberOfNodes(),3) # Implicitely fieldOnNodes will be a 3 components field. + array.alloc(fieldOnNodes.getMesh().getNumberOfNodes(),3) # Implicitly fieldOnNodes will be a 3 components field. array.fillWithValue(7.) fieldOnNodes.setArray(array) # fieldOnNodes is now usable