X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCoupling_Swig%2FMEDCouplingBasicsTest3.py;h=51888920ac17fcbdde43defdd66e38335d814bed;hb=1b746b38f3cdeae6654a9501f37fde5e56e59288;hp=94ec01b7330aaee17f41549ed1769d0db4ce0a26;hpb=0a16028185e79b4e26b6fc56f099690770ac77c3;p=tools%2Fmedcoupling.git diff --git a/src/MEDCoupling_Swig/MEDCouplingBasicsTest3.py b/src/MEDCoupling_Swig/MEDCouplingBasicsTest3.py index 94ec01b73..51888920a 100644 --- a/src/MEDCoupling_Swig/MEDCouplingBasicsTest3.py +++ b/src/MEDCoupling_Swig/MEDCouplingBasicsTest3.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright (C) 2007-2019 CEA/DEN, EDF R&D +# Copyright (C) 2007-2024 CEA, EDF # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -19,10 +19,7 @@ # import sys -if sys.platform == "win32": - from MEDCouplingCompat import * -else: - from medcoupling import * +from medcoupling import * import unittest from math import pi,e,sqrt,cos,sin from datetime import datetime @@ -1213,7 +1210,7 @@ class MEDCouplingBasicsTest3(unittest.TestCase): resToTest=f.getLocalizationOfDiscr(); self.assertEqual(3,resToTest.getNumberOfComponents()); self.assertEqual(8,resToTest.getNumberOfTuples());#2+3+4+4 gauss points for resp TRI3,TRI6,QUAD4,QUAD8 - expected3=[1.312,3.15,1.02, 0.56,3.3,0.6, 2.18,1.1,0.2, 1.18,1.54,0.98, 1.56,0.3,3.6, 1.613,0.801,4.374, 2.6,2.4,2.3, 2.31232,2.3933985,1.553255] + expected3=[1.312,3.15,1.02, 0.56,3.3,0.6, 2.20,1.0,0.2, 2.44, 2.52,1.4, 1.56,0.3,3.6, 1.613,0.801,4.374, 2.6,2.4,2.3, 2.31232,2.3933985,1.553255] for i in range(24): self.assertAlmostEqual(expected3[i],resToTest.getIJ(0,i),14); pass @@ -1499,7 +1496,7 @@ class MEDCouplingBasicsTest3(unittest.TestCase): self.assertTrue(d.isEqual(d1,1e-12)); # d2=d.convertToIntArr(); - d4=DataArrayInt.New(); + d4=DataArrayInt32.New(); self.assertTrue(not d2.isEqual(d4)); d4.deepCopyFrom(d2); self.assertTrue(d2.isEqual(d4)); @@ -2608,8 +2605,39 @@ class MEDCouplingBasicsTest3(unittest.TestCase): for i in range(135): self.assertAlmostEqual(expected11[i],slice1.getCoords().getIJ(0,i),12); pass + ## + coo = DataArrayDouble([1.8686305176182501,0.85678785370447097,7.4, 1.8686305176182501,0.85678785370447097,7.5, 1.8663408654534299,0.82910039403216995,7.4, 1.8663408654534299,0.82910039403216995,7.5, 1.8370211426271501,0.83286926189135702,7.4, 1.8370211426271501,0.83286926189135702,7.5, 1.84595839792064,0.86012397150595199,7.4, 1.84595839792064,0.86012397150595199,7.5], 8,3) + conn = DataArrayInt([18,0,2,4,6,1,3,5,7]) + connI = DataArrayInt([0,9]) + + mesh3D_2=MEDCouplingUMesh.New(); + mesh3D_2.setName("3DMesh_2"); + mesh3D_2.setMeshDimension(3); + mesh3D_2.setCoords(coo); + mesh3D_2.setConnectivity(conn,connI,True); + + expected12=[0] + expected13=[5,5,9,8,4] + expected14=[0,5] + expected15=[1.8686305176182501,0.85678785370447097,7.4, 1.8686305176182501,0.85678785370447097,7.5, 1.8663408654534299,0.82910039403216995,7.4, 1.8663408654534299,0.82910039403216995,7.5, 1.8370211426271501,0.83286926189135702,7.4, 1.8370211426271501,0.83286926189135702,7.5, 1.84595839792064,0.86012397150595199, 7.4, 1.84595839792064,0.86012397150595199,7.5, 1.8666525378798646,0.83286927118760312,7.4, 1.8666525378798646,0.83286927118760312,7.5] + + y_cut = 0.8328692711876031 + ori, vec = [0.0, y_cut, 0.0], [0.0,1.0,0.0] + slice1, ids = mesh3D_2.buildSlice3D(DataArrayDouble(ori,1,3), DataArrayDouble(vec,1,3), 1.0e-8) + self.assertEqual(2,slice1.getMeshDimension()); + self.assertEqual(3,slice1.getSpaceDimension()); + self.assertEqual(10,slice1.getNumberOfNodes()); + self.assertEqual(1,slice1.getNumberOfCells()); + self.assertEqual(1,ids.getNumberOfTuples()); + self.assertEqual(5,slice1.getNodalConnectivity().getNumberOfTuples()); + self.assertEqual(2,slice1.getNodalConnectivityIndex().getNumberOfTuples()); + self.assertEqual(expected12,ids.getValues()); + self.assertEqual(expected13,slice1.getNodalConnectivity().getValues()); + self.assertEqual(expected14,slice1.getNodalConnectivityIndex().getValues()); + for i in range(27): + self.assertAlmostEqual(expected15[i],slice1.getCoords().getIJ(0,i),12); + pass pass - def testBuildSlice3DSurf1(self): mesh3D,mesh2D=MEDCouplingDataForTest.build3DExtrudedUMesh_1(); mesh2D=mesh3D.buildDescendingConnectivity()[0];