From: vsr Date: Tue, 30 Nov 2021 08:33:31 +0000 (+0300) Subject: Fix failed test X-Git-Tag: V9_8_0rc1~1 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=333dc8968c0cc9dfeb4373362726864c8b3604f7;p=modules%2Fparavis.git Fix failed test --- diff --git a/src/Plugins/VoroGauss/Test/CMakeLists.txt b/src/Plugins/VoroGauss/Test/CMakeLists.txt deleted file mode 100644 index 07775755..00000000 --- a/src/Plugins/VoroGauss/Test/CMakeLists.txt +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (C) 2012-2020 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 -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# Author : Yoann Audouin (EDF) - -INCLUDE(tests.set) - -SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env) - -FOREACH(tfile ${TEST_NAMES}) - SET(TEST_NAME ${COMPONENT_NAME}_${tfile}) - ADD_TEST(${TEST_NAME} python ${tfile}.py) - SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES ENVIRONMENT "${tests_env}") -ENDFOREACH() - -# Application tests - -SET(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test/VoroGauss) -INSTALL(FILES ${all_src} tests.set DESTINATION ${TEST_INSTALL_DIRECTORY}) - -INSTALL(FILES CTestTestfileInstall.cmake - DESTINATION ${TEST_INSTALL_DIRECTORY} - RENAME CTestTestfile.cmake) diff --git a/src/Plugins/VoroGauss/Test/CTestTestfileInstall.cmake b/src/Plugins/VoroGauss/Test/CTestTestfileInstall.cmake deleted file mode 100644 index a7ada705..00000000 --- a/src/Plugins/VoroGauss/Test/CTestTestfileInstall.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (C) 2015-2020 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 -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -SET(COMPONENT_NAME PARAVIS) - -INCLUDE(tests.set) - -FOREACH(tfile ${TEST_NAMES}) - SET(TEST_NAME ${COMPONENT_NAME}_${tfile}) - ADD_TEST(${TEST_NAME} python ${tfile}.py) - SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES - LABELS "${COMPONENT_NAME}" - TIMEOUT ${TIMEOUT} - ) -ENDFOREACH() diff --git a/src/Plugins/VoroGauss/Test/PG_3D.med b/src/Plugins/VoroGauss/Test/PG_3D.med deleted file mode 100644 index 9c7e51e7..00000000 Binary files a/src/Plugins/VoroGauss/Test/PG_3D.med and /dev/null differ diff --git a/src/Plugins/VoroGauss/Test/testMEDReader14.med b/src/Plugins/VoroGauss/Test/testMEDReader14.med deleted file mode 100644 index c7ff867f..00000000 Binary files a/src/Plugins/VoroGauss/Test/testMEDReader14.med and /dev/null differ diff --git a/src/Plugins/VoroGauss/Test/test_VoroGauss.py b/src/Plugins/VoroGauss/Test/test_VoroGauss.py deleted file mode 100644 index 02bee8d1..00000000 --- a/src/Plugins/VoroGauss/Test/test_VoroGauss.py +++ /dev/null @@ -1,405 +0,0 @@ -# Copyright (C) 2017-2021 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 -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# Author : Yoann Audouin (EDF R&D) - -from os import path, remove -#### import the simple module from the paraview -from paraview.simple import * -from vtk.util import numpy_support -import numpy as np - -from medcoupling import * -import MEDLoader as ml -from MEDLoader import * - -import inspect -data_dir = os.path.dirname(inspect.getfile(lambda: None)) - -#### disable automatic camera reset on 'Show' -paraview.simple._DisableFirstRenderCameraReset() - -def MyAssert(clue): - if not clue: - raise RuntimeError("Assertion failed !") - - -def test_fields(result, ref, field_name): - """ - Test fields content of result from VoroGauss filter - """ - ds0 = servermanager.Fetch(result) - block = ds0.GetBlock(0) - - data = numpy_support.vtk_to_numpy(block.GetCellData().GetArray(field_name)) - - MyAssert(np.allclose(data, ref)) - -def test_geom(result, ref_mass_center, ref_volumes): - """ - Test center of mass and volumes of result from VoroGauss filter - """ - tmp_file = os.path.join(data_dir, "tmp_mesh.med") - if path.exists(tmp_file): - remove(tmp_file) - - # If we write the time steps It will move the time to the last time step - SaveData(tmp_file, proxy=result, WriteAllTimeSteps=0) - - data = ml.MEDFileData(tmp_file) - mesh = data.getMeshes()[0] - - mesh0 = mesh.getLevel0Mesh() - - centerOfMass = mesh0.computeCellCenterOfMass() - MyAssert(np.allclose(np.array(centerOfMass.getValuesAsTuple()), ref_mass_center)) - - volume = mesh0.getMeasureField(True).getArray() - MyAssert(np.allclose(np.array(volume.getValues()), ref_volumes)) - - -### -# Test of testMEDReader14 -### -# create a new 'MED Reader' -file_name = os.path.join(data_dir, "testMEDReader14.med") -testMEDReader14med = MEDReader(registrationName='testMEDReader14.med', - FileName=file_name) -testMEDReader14med.AllTimeSteps = ['0000', '0001', '0002', '0003', '0004'] -print("Testing {}".format(file_name)) - -fields = [(['zeField0'], - ['TS0/Mesh/ComSup0/zeField0_MM0@@][@@GAUSS'], - [[[100.,101.], [102.,103.], [104.,105.], [106.,107.], [108.,109.], [110.,111.], [112.,113.], [114.,115.], [ 0., 1.], [ 2., 3.], [ 4., 5.], [ 6., 7.], [ 8., 9.], [ 10., 11.], [ 12., 13.], [ 14., 15.], [ 16., 17.], [ 18., 19.], [ 20., 21.], [ 22., 23.], [ 24., 25.], [ 26., 27.], [ 28., 29.], [ 30., 31.], [ 32., 33.], [ 34., 35.], [ 36., 37.], [ 38., 39.], [ 40., 41.], [ 42., 43.], [ 44., 45.], [ 46., 47.], [ 48., 49.], [ 50., 51.], [ 52., 53.], [ 54., 55.], [ 56., 57.], [ 58., 59.], [ 60., 61.], [ 62., 63.], [ 64., 65.], [ 66., 67.], [ 68., 69.], [ 70., 71.], [ 72., 73.], [ 74., 75.], [ 76., 77.], [ 78., 79.], [ 80., 81.], [ 82., 83.], [ 84., 85.], [ 86., 87.], [ 88., 89.], [ 90., 91.], [ 92., 93.], [ 94., 95.], [ 96., 97.], [ 98., 99.], [100.,101.], [102.,103.], [104.,105.], [106.,107.], [108.,109.], [110.,111.], [112.,113.], [114.,115.], [116.,117.], [118.,119.], [120.,121.], [122.,123.], [124.,125.], [126.,127.], [128.,129.], [130.,131.], [132.,133.], [134.,135.], [136.,137.], [138.,139.], [140.,141.], [142.,143.], [144.,145.], [146.,147.], [148.,149.], [150.,151.], [152.,153.], [154.,155.], [156.,157.], [158.,159.], [160.,161.], [162.,163.], [164.,165.], [166.,167.]]], - [ [5.5499999999999989, 0.22500000000000014, 0], [5.1858543417366949, 0.1780112044817927, 0], [5.1858543417366949, 0.63613445378151257, 0], [5.7750000000000004, 0.45000000000000001, 0], [5.3638655462184888, 0.81414565826330532, 0], [5.8219887955182079, 0.81414565826330532, 0], [4.5500000000000007, 1.2250000000000001, 0], [4.1858543417366949, 1.178011204481793, 0], [4.1858543417366958, 1.6361344537815128, 0], [4.7750000000000004, 1.45, 0], [4.3638655462184879, 1.8141456582633053, 0], [4.8219887955182088, 1.8141456582633049, 0], [5.5499999999999989, 1.2250000000000001, 0], [5.1858543417366949, 1.1780112044817923, 0], [5.1858543417366949, 1.6361344537815128, 0], [5.7750000000000004, 1.4499999999999997, 0], [5.3638655462184897, 1.8141456582633051, 0], [5.821988795518207, 1.8141456582633055, 0], [4.5500000000000007, 2.2250000000000005, 0], [4.1858543417366949, 2.1780112044817934, 0], [4.1858543417366967, 2.6361344537815126, 0], [4.7750000000000004, 2.4500000000000002, 0], [4.3638655462184879, 2.8141456582633051, 0], [4.8219887955182088, 2.8141456582633051, 0], [5.5499999999999998, 2.2250000000000001, 0], [5.1858543417366949, 2.1780112044817934, 0], [5.1858543417366949, 2.6361344537815126, 0], [5.7750000000000004, 2.4500000000000002, 0], [5.3638655462184879, 2.8141456582633051, 0], [5.821988795518207, 2.8141456582633064, 0], [5.5499999999999998, 3.2250000000000005, 0], [5.1858543417366949, 3.1780112044817921, 0], [5.1858543417366949, 3.6361344537815126, 0], [5.7750000000000004, 3.4500000000000006, 0], [5.363865546218487, 3.8141456582633051, 0], [5.821988795518207, 3.8141456582633064, 0], [1.75, 0.25, 0], [1.25, 0.24999999999999994, 0], [1.25, 0.75, 0], [1.75, 0.75, 0], [2.75, 0.25, 0], [2.25, 0.24999999999999994, 0], [2.25, 0.75, 0], [2.75, 0.75, 0], [3.75, 0.25, 0], [3.25, 0.25, 0], [3.25, 0.75, 0], [3.75, 0.75, 0], [4.75, 0.25, 0], [4.25, 0.24999999999999989, 0], [4.25, 0.75, 0], [4.75, 0.75, 0], [2.75, 1.25, 0], [2.25, 1.25, 0], [2.25, 1.75, 0], [2.75, 1.75, 0], [3.75, 1.25, 0], [3.25, 1.25, 0], [3.25, 1.75, 0], [3.75, 1.75, 0], [2.75, 2.25, 0], [2.25, 2.25, 0], [2.25, 2.75, 0], [2.75, 2.75, 0], [3.75, 2.25, 0], [3.25, 2.25, 0], [3.25, 2.75, 0], [3.75, 2.75, 0], [1.75, 3.25, 0], [1.25, 3.25, 0], [1.25, 3.75, 0], [1.75, 3.75, 0], [2.75, 3.25, 0], [2.25, 3.25, 0], [2.25, 3.75, 0], [2.75, 3.75, 0], [3.75, 3.25, 0], [3.25, 3.25, 0], [3.25, 3.75, 0], [3.75, 3.75, 0], [4.75, 3.25, 0], [4.25, 3.25, 0], [4.25, 3.75, 0], [4.75, 3.75, 0] ], -[0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, ], - ), - (['zeField0'], - ['TS0/Mesh/ComSup1/zeField0_MM1@@][@@GAUSS'], - [[[116.,117.], [118.,119.], [120.,121.], [122.,123.], [124.,125.], [126.,127.], [128.,129.], [130.,131.], [132.,133.], [134.,135.], [136.,137.], [138.,139.], [140.,141.], [142.,143.], [144.,145.], [146.,147.], [148.,149.], [150.,151.]]], - [ [0.1875, 0, 0], [0.5, 0, 0], [0.8125, 0, 0], [1.1875, 0, 0], [1.5, 0, 0], [1.8125, 0, 0], [2.1875, 0, 0], [2.5, 0, 0], [2.8125, 0, 0], [3.1875, 0, 0], [3.5, 0, 0], [3.8125, 0, 0], [4.1875, 0, 0], [4.5, 0, 0], [4.8125, 0, 0], [5.1875, 0, 0], [5.5, 0, 0], [5.8125, 0, 0]], - [0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375] - ), - (['zeField0', 'zeField1'], - ['TS0/Mesh/ComSup2/zeField0_MM2@@][@@GAUSS', - 'TS0/Mesh/ComSup2/zeField1_MM0@@][@@GAUSS'], - [[[152.,153.], [154.,155.], [156.,157.], [158.,159.], [160.,161.], [162.,163.], [164.,165.], [166.,167.], [168.,169.], [170.,171.], [172.,173.], [174.,175.], [176.,177.], [178.,179.], [180.,181.], [182.,183.]], - [[500.,501.], [502.,503.], [504.,505.], [506.,507.], [508.,509.], [510.,511.], [512.,513.], [514.,515.], [516.,517.], [518.,519.], [520.,521.], [522.,523.], [524.,525.], [526.,527.], [528.,529.], [530.,531.]]], - [ [6, 0.14999999999999999, 0], [6, 0.40000000000000002, 0], [6, 0.59999999999999998, 0], [6, 0.84999999999999998, 0], [6, 1.1499999999999999, 0], [6, 1.3999999999999999, 0], [6, 1.6000000000000001, 0], [6, 1.8500000000000001, 0], [6, 2.1499999999999999, 0], [6, 2.3999999999999999, 0], [6, 2.5999999999999996, 0], [6, 2.8499999999999996, 0], [6, 3.1499999999999999, 0], [6, 3.3999999999999999, 0], [6, 3.5999999999999996, 0], [6, 3.8499999999999996, 0]], - [0.3, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.3] - ), - (['zeField1'], - ['TS0/Mesh/ComSup3/zeField1_MM1@@][@@GAUSS'], - [[[532.,533.], [534.,535.], [536.,537.], [538.,539.], [540.,541.], [542.,543.], [544.,545.], [546.,547.], [548.,549.], [550.,551.], [552.,553.], [554.,555.], [556.,557.], [558.,559.], [560.,561.], [562.,563.], [564.,565.], [566.,567.], [568.,569.], [570.,571.], [572.,573.], [574.,575.], [576.,577.], [578.,579.], [580.,581.], [582.,583.], [584.,585.], [586.,587.], [588.,589.], [590.,591.]]], - [ [5.875, 4, 0], [5.6666666666666661, 4, 0], [5.5, 4, 0], [5.3333333333333339, 4, 0], [5.125, 4, 0], [4.875, 4, 0], [4.666666666666667, 4, 0], [4.5, 4, 0], [4.333333333333333, 4, 0], [4.125, 4, 0], [3.875, 4, 0], [3.666666666666667, 4, 0], [3.5, 4, 0], [3.333333333333333, 4, 0], [3.125, 4, 0], [2.875, 4, 0], [2.6666666666666665, 4, 0], [2.5, 4, 0], [2.3333333333333335, 4, 0], [2.125, 4, 0], [1.875, 4, 0], [1.6666666666666667, 4, 0], [1.5, 4, 0], [1.3333333333333333, 4, 0], [1.125, 4, 0], [0.875, 4, 0], [0.66666666666666674, 4, 0], [0.5, 4, 0], [0.33333333333333331, 4, 0], [0.125, 4, 0]], # Center mass -[0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, ], - ) - ] - -for field_names, field, refs, center_mass, volume in fields: - testMEDReader14med.AllArrays = field - testMEDReader14med.UpdatePipeline() - - # create a new 'ELGA field To Surface' - eLGAfieldToSurface1 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface1', - Input=testMEDReader14med) - eLGAfieldToSurface1.UpdatePipeline() - - print(" ~> Geometry check") - test_geom(eLGAfieldToSurface1, np.array(center_mass), np.array(volume)) - eLGAfieldToSurface1.UpdatePipeline() - - for field_name, ref in zip(field_names, refs): - print(" ~> Field check for leaf {} and field {}".format(field, field_name)) - test_fields(eLGAfieldToSurface1, np.array(ref), field_name) - - -### -# Test of PG_3D.med -### -# create a new 'MED Reader' -file_name = os.path.join(data_dir, "PG_3D.med") -pG_3Dmed = MEDReader(registrationName='PG_3D.med', FileName=file_name) -pG_3Dmed.AllArrays = ['TS0/Extruded/ComSup0/Extruded@@][@@P0', - 'TS0/Extruded/ComSup0/MyFieldPG@@][@@GAUSS'] -print("Testing {}".format(file_name)) -pG_3Dmed.UpdatePipeline() - -fields = [('Extruded', - [ 0., 0., 0., 0., 0., 0., 0., 1., 1., 1., 1., 1., 1., 1., 2., 2., 2., 2., 2., 2., 2., 3., 3., 3., 3., 3., 3., 3., 4., 4., 4., 4., 4., 4., 4., 5., 5., 5., 5., 5., 5., 5., 6., 6., 6., 6., 6., 6., 6., 7., 7., 7., 7., 7., 7., 7., 8., 8., 8., 8., 8., 8., 8., 9., 9., 9., 9., 9., 9., 9.,10.,10., 10.,10.,10.,10.,10.,11.,11.,11.,11.,11.,11.,11.,12.,12.,12.,12.,12.,12., 12.,13.,13.,13.,13.,13.,13.,13.,14.,14.,14.,14.,14.,14.,14.,15.,15.,15., 15.,15.,15.,15.,16.,16.,16.,16.,16.,16.,16.,17.,17.,17.,17.,17.,17.,17., 18.,18.,18.,18.,18.,18.,18.,19.,19.,19.,19.,19.,19.,19.,20.,20.,20.,20., 20.,20.,20.,21.,21.,21.,21.,21.,21.,21.,22.,22.,22.,22.,22.,22.,22.,23., 23.,23.,23.,23.,23.,23.,24.,24.,24.,24.,24.,24.,24.,25.,25.,25.,25.,25., 25.,25.,26.,26.,26.,26.,26.,26.,26.,27.,27.,27.,27.,27.,27.,27.,28.,28., 28.,28.,28.,28.,28.,29.,29.,29.,29.,29.,29.,29.,30.,30.,30.,30.,30.,30., 30.,31.,31.,31.,31.,31.,31.,31.,32.,32.,32.,32.,32.,32.,32.,33.,33.,33., 33.,33.,33.,33.,34.,34.,34.,34.,34.,34.,34.,35.,35.,35.,35.,35.,35.,35., 36.,36.,36.,36.,36.,36.,36.,37.,37.,37.,37.,37.,37.,37.,38.,38.,38.,38., 38.,38.,38.,39.,39.,39.,39.,39.,39.,39.,40.,40.,40.,40.,40.,40.,40.,41., 41.,41.,41.,41.,41.,41.,42.,42.,42.,42.,42.,42.,42.,43.,43.,43.,43.,43., 43.,43.,44.,44.,44.,44.,44.,44.,44.,45.,45.,45.,45.,45.,45.,45.,46.,46., 46.,46.,46.,46.,46.,47.,47.,47.,47.,47.,47.,47.,48.,48.,48.,48.,48.,48., 48.,49.,49.,49.,49.,49.,49.,49.,50.,50.,50.,50.,50.,50.,50.,51.,51.,51., 51.,51.,51.,51.,52.,52.,52.,52.,52.,52.,52.,53.,53.,53.,53.,53.,53.,53., 54.,54.,54.,54.,54.,54.,54.,55.,55.,55.,55.,55.,55.,55.,56.,56.,56.,56., 56.,56.,56.,57.,57.,57.,57.,57.,57.,57.,58.,58.,58.,58.,58.,58.,58.,59., 59.,59.,59.,59.,59.,59.,60.,60.,60.,60.,60.,60.,60.,61.,61.,61.,61.,61., 61.,61.,62.,62.,62.,62.,62.,62.,62.,63.,63.,63.,63.,63.,63.,63.] - ), - ('MyFieldPG', - [ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13., 14., 15., 16., 17., 18., 19., 20., 21., 22., 23., 24., 25., 26., 27., 28., 29., 30., 31., 32., 33., 34., 35., 36., 37., 38., 39., 40., 41., 42., 43., 44., 45., 46., 47., 48., 49., 50., 51., 52., 53., 54., 55., 56., 57., 58., 59., 60., 61., 62., 63., 64., 65., 66., 67., 68., 69., 70., 71., 72., 73., 74., 75., 76., 77., 78., 79., 80., 81., 82., 83., 84., 85., 86., 87., 88., 89., 90., 91., 92., 93., 94., 95., 96., 97., 98., 99., 100., 101., 102., 103., 104., 105., 106., 107., 108., 109., 110., 111., 112., 113., 114., 115., 116., 117., 118., 119., 120., 121., 122., 123., 124., 125., 126., 127., 128., 129., 130., 131., 132., 133., 134., 135., 136., 137., 138., 139., 140., 141., 142., 143., 144., 145., 146., 147., 148., 149., 150., 151., 152., 153., 154., 155., 156., 157., 158., 159., 160., 161., 162., 163., 164., 165., 166., 167., 168., 169., 170., 171., 172., 173., 174., 175., 176., 177., 178., 179., 180., 181., 182., 183., 184., 185., 186., 187., 188., 189., 190., 191., 192., 193., 194., 195., 196., 197., 198., 199., 200., 201., 202., 203., 204., 205., 206., 207., 208., 209., 210., 211., 212., 213., 214., 215., 216., 217., 218., 219., 220., 221., 222., 223., 224., 225., 226., 227., 228., 229., 230., 231., 232., 233., 234., 235., 236., 237., 238., 239., 240., 241., 242., 243., 244., 245., 246., 247., 248., 249., 250., 251., 252., 253., 254., 255., 256., 257., 258., 259., 260., 261., 262., 263., 264., 265., 266., 267., 268., 269., 270., 271., 272., 273., 274., 275., 276., 277., 278., 279., 280., 281., 282., 283., 284., 285., 286., 287., 288., 289., 290., 291., 292., 293., 294., 295., 296., 297., 298., 299., 300., 301., 302., 303., 304., 305., 306., 307., 308., 309., 310., 311., 312., 313., 314., 315., 316., 317., 318., 319., 320., 321., 322., 323., 324., 325., 326., 327., 328., 329., 330., 331., 332., 333., 334., 335., 336., 337., 338., 339., 340., 341., 342., 343., 344., 345., 346., 347., 348., 349., 350., 351., 352., 353., 354., 355., 356., 357., 358., 359., 360., 361., 362., 363., 364., 365., 366., 367., 368., 369., 370., 371., 372., 373., 374., 375., 376., 377., 378., 379., 380., 381., 382., 383., 384., 385., 386., 387., 388., 389., 390., 391., 392., 393., 394., 395., 396., 397., 398., 399., 400., 401., 402., 403., 404., 405., 406., 407., 408., 409., 410., 411., 412., 413., 414., 415., 416., 417., 418., 419., 420., 421., 422., 423., 424., 425., 426., 427., 428., 429., 430., 431., 432., 433., 434., 435., 436., 437., 438., 439., 440., 441., 442., 443., 444., 445., 446., 447.] - ), - ] - -ref_mass_center = [ [0.94762333243336117, 0.39671811506554749, 0.50000000000000022], [1.2856123659358007, 1.2937176028321535, 0.5], [0.60317166845782599, 1.1866543795235607, 0.49999999999999983], [0.31754942022615412, 0.3498246714004748, 0.49999999999999983], [0.67005418565845731, 0.66874178318868727, 0.49999999999999989], [1.0693170841349982, 0.90625807035941752, 0.49999999999999961], [0.92174856006299788, 1.1991729071340309, 0.49999999999999989], [1.9612936341755762, 0.50348318537092351, 0.50000000000000022], [2.2064075305015223, 1.382444756245496, 0.50000000000000033], [1.566693611827279, 1.2761686507020438, 0.4999999999999985], [1.3634692328068108, 0.45627567992173185, 0.49999999999999956], [1.6733772009850372, 0.76935226549794333, 0.49999999999999967], [2.0337072751412824, 1.0027753030374018, 0.5], [1.8684620659172329, 1.2892131924280825, 0.50000000000000122], [2.9189931607763295, 0.61023957197171785, 0.50000000000000011], [3.0712285806234125, 1.4711617857383916, 0.50000000000000011], [2.4742622100419083, 1.3656631479714718, 0.49999999999999778], [2.353412093878398, 0.56271918249158237, 0.49999999999999994], [2.6207114821730149, 0.86995893152151471, 0.50000000000000011], [2.9420980471289018, 1.0992924611855683, 0.50000000000000056], [2.7591912351279548, 1.3792470911050265, 0.50000000000000155], [3.8207265974811908, 0.71698620423188686, 0.5], [3.8800804506420783, 1.5598670948805409, 0.49999999999999983], [3.3258864500883116, 1.4551347200409823, 0.49999999999999617], [3.2873817694613265, 0.66915422974951189, 0.49999999999999917], [3.5120589475853734, 0.97056125117737468, 0.50000000000000011], [3.7944894614288533, 1.195809536997656, 0.50000000000000033], [3.5939390686114931, 1.4692736164053282, 0.50000000000000289], [1.395304554372264, 1.729157639348992, 0.50000000000000033], [1.7268056439430948, 2.4443749198861071, 0.49999999999999994], [1.139810258382987, 2.3653479708368494, 0.500000000000001], [0.85011258317843807, 1.6959098655987328, 0.5], [1.1699597425216433, 1.9493227901497743, 0.50000000000000067], [1.5237848261919678, 2.1363367169617011, 0.49999999999999933], [1.4119777502635156, 2.3723592442384547, 0.50000000000000122], [2.2689962780471022, 1.8079150043709842, 0.49999999999999917], [2.5076153246062343, 2.5050911293932603, 0.50000000000000056], [1.9633506244485432, 2.4268414277162744, 0.49999999999999983], [1.7560450450810097, 1.774354325997584, 0.49999999999999895], [2.0332907472607107, 2.0219293493545893, 0.50000000000000133], [2.3481769148963831, 2.2048536494459738, 0.49999999999999978], [2.2186967567517417, 2.4343932432074089, 0.49999999999999761], [3.0867278716275299, 1.8866611503992379, 0.50000000000000089], [3.2324609533010822, 2.5657933194298672, 0.49999999999999745], [2.7309545026101438, 2.4883076033333404, 0.50000000000000067], [2.6060084315793559, 1.8527890730110954, 0.50000000000000033], [2.8406372064211651, 2.0945307999080098, 0.49999999999999989], [3.1165699125765931, 2.2733704576614162, 0.49999999999999956], [2.969437069956574, 2.49641854082433, 0.49999999999999784], [3.8485072219503031, 1.9653944053160137, 0.49999999999999956], [3.9013512429912391, 2.6264786853937379, 0.49999999999999778], [3.4426374332033656, 2.5497409925362771, 0.49999999999999883], [3.4000089860484537, 1.9312126164197227, 0.49999999999999928], [3.592002405616304, 2.167126263118837, 0.500000000000002], [3.8289639444548826, 2.341887124172374, 0.500000000000002], [3.6642038641453327, 2.5584334431518974, 0.50000000000000233], [1.8429344844616757, 2.7816785778249042, 0.50000000000000189], [2.1679659779622691, 3.315102842720786, 0.49999999999999806], [1.6764000665080054, 3.264177701250552, 0.50000000000000133], [1.382638564442336, 2.7620638276480811, 0.49999999999999833], [1.6698418778859232, 2.9499351625225807, 0.499999999999995], [1.9782478727650958, 3.0864157767117208, 0.499999999999999], [1.9021965887377699, 3.2655916574943942, 0.49999999999999778], [2.5766471835242943, 2.8324298764678009, 0.500000000000001], [2.8087867799030333, 3.3478080591320842, 0.49999999999999872], [2.3599467247399768, 3.2976509153453302, 0.4999999999999985], [2.1485800293339876, 2.8125032620844279, 0.49999999999999944], [2.3931802866873291, 2.994538072875764, 0.49999999999999778], [2.6626428805340403, 3.1269322229991268, 0.50000000000000389], [2.5689167885216895, 3.2996199266994686, 0.50000000000000289], [3.2544173077164329, 2.883166276531282, 0.49999999999999772], [3.3936602075182747, 3.3804928180330172, 0.500000000000002], [2.9875831612767874, 3.3310847042152356, 0.50000000000000111], [2.8585647653384383, 2.8629298029738561, 0.50000000000000155], [3.0605410224700473, 3.039133864938464, 0.49999999999998429], [3.291039491843855, 3.1674484336067099, 0.49999999999999845], [3.1796671276405557, 3.3336358308716743, 0.49999999999999467], [3.8762597976675011, 2.9338849468785351, 0.50000000000000044], [3.9226037904554003, 3.4131515175119778, 0.50000000000000933], [3.5593394534481599, 3.3644682457320285, 0.49999999999999983], [3.5126042694442949, 2.913340920443205, 0.499999999999999], [3.6719304269254969, 3.0837209228569815, 0.50000000000000178], [3.863438019509482, 3.2079643608852657, 0.49999999999999906], [3.7344576117904769, 3.367636113884751, 0.4999999999999985], [2.2904814857498028, 3.5543397387612528, 0.50000000000000033], [2.6090903782288888, 3.9059611268460475, 0.50000000000000011], [2.2129758537694886, 3.8832556414138799, 0.4999999999999955], [1.9151197415276484, 3.5483358259005939, 0.499999999999999], [2.1696872340043147, 3.6706038571015411, 0.50000000000000089], [2.4326996779192753, 3.7564960681507791, 0.50000000000000544], [2.3924218055122894, 3.8789065824914792, 0.50000000000000289], [2.8841998984957486, 3.5770929042548816, 0.5], [3.1099010903342279, 3.9106625899725782, 0.49999999999999734], [2.7564812412331463, 3.8887241240831254, 0.50000000000000044], [2.5410518329576623, 3.5707774093800757, 0.49999999999999778], [2.7530259835441089, 3.6872060967081546, 0.50000000000000733], [2.9770995873755957, 3.7690116443984794, 0.50000000000000022], [2.919126559752371, 3.8849347437228317, 0.49999999999999017], [3.4220066794895612, 3.5998259701187703, 0.50000000000000044], [3.5547923202814071, 3.9153327789611954, 0.49999999999999695], [3.2441142769906111, 3.8941339824469603, 0.49999999999999833], [3.1110465701398939, 3.5932017735474724, 0.50000000000000067], [3.2803987405891997, 3.7037980999659528, 0.49999999999999811], [3.4655029620569326, 3.7815266686093754, 0.50000000000000155], [3.3898743690402782, 3.8909449368802123, 0.50000000000000033], [3.9039362336420136, 3.6225335025360939, 0.50000000000000155], [3.9438071133822659, 3.9199580829825589, 0.49999999999999684], [3.6759426175928152, 3.8994602051249383, 0.50000000000000133], [3.6251287520188078, 3.6156041296616945, 0.50000000000000044], [3.7518202398148928, 3.7203763939539267, 0.50000000000000144], [3.8979109204672659, 3.7940409553624206, 0.499999999999999], [3.8046879269395544, 3.896929832233293, 0.50000000000000044], [0.94762333243336094, 0.39671811506554761, 1.5000000000000004], [1.2856123659358001, 1.2937176028321535, 1.5], [0.60317166845782566, 1.1866543795235622, 1.5000000000000031], [0.31754942022615407, 0.34982467140047474, 1.4999999999999991], [0.67005418565845787, 0.66874178318868716, 1.5], [1.0693170841349993, 0.90625807035941641, 1.4999999999999987], [0.92174856006299843, 1.1991729071340302, 1.5], [1.9612936341755707, 0.50348318537092407, 1.5000000000000007], [2.2064075305015241, 1.3824447562454969, 1.5000000000000022], [1.5666936118272796, 1.2761686507020471, 1.4999999999999949], [1.3634692328068088, 0.45627567992173196, 1.4999999999999991], [1.6733772009850372, 0.76935226549794167, 1.4999999999999976], [2.0337072751412859, 1.0027753030374011, 1.5], [1.8684620659172388, 1.2892131924280823, 1.5000000000000036], [2.9189931607763513, 0.61023957197172063, 1.5000000000000024], [3.0712285806234059, 1.4711617857383894, 1.5000000000000013], [2.474262210041883, 1.3656631479714754, 1.4999999999999902], [2.3534120938784038, 0.5627191824915817, 1.5000000000000004], [2.6207114821730166, 0.86995893152151482, 1.5000000000000009], [2.9420980471288853, 1.0992924611855623, 1.5000000000000016], [2.7591912351279668, 1.3792470911050214, 1.5000000000000056], [3.8207265974811802, 0.71698620423188375, 1.499999999999998], [3.8800804506420734, 1.559867094880542, 1.499999999999998], [3.3258864500882677, 1.4551347200409841, 1.4999999999999918], [3.2873817694613083, 0.66915422974951322, 1.4999999999999973], [3.5120589475853627, 0.97056125117738057, 1.4999999999999998], [3.7944894614287961, 1.1958095369976693, 1.5000000000000029], [3.59393906861151, 1.4692736164053313, 1.5000000000000155], [1.3953045543722722, 1.7291576393489876, 1.5000000000000004], [1.7268056439431132, 2.444374919886104, 1.5000000000000022], [1.1398102583829886, 2.3653479708368526, 1.5000000000000042], [0.85011258317844074, 1.695909865598733, 1.5000000000000009], [1.1699597425216419, 1.9493227901497767, 1.5000000000000018], [1.5237848261919607, 2.1363367169617011, 1.4999999999999978], [1.4119777502635074, 2.3723592442384609, 1.5000000000000042], [2.2689962780471076, 1.8079150043709773, 1.4999999999999978], [2.5076153246062627, 2.5050911293932585, 1.5000000000000011], [1.963350624448543, 2.4268414277162651, 1.4999999999999953], [1.756045045081005, 1.7743543259975834, 1.4999999999999969], [2.0332907472607049, 2.0219293493545956, 1.5000000000000069], [2.348176914896404, 2.2048536494459752, 1.5000000000000007], [2.2186967567517373, 2.4343932432074138, 1.4999999999999873], [3.0867278716275921, 1.8866611503992379, 1.5000000000000016], [3.232460953301, 2.5657933194298574, 1.4999999999999858], [2.7309545026101589, 2.4883076033333489, 1.500000000000006], [2.6060084315793866, 1.8527890730110959, 1.5000000000000016], [2.8406372064211922, 2.0945307999080107, 1.5], [3.1165699125766215, 2.2733704576614162, 1.4999999999999987], [2.9694370699565842, 2.4964185408243402, 1.499999999999994], [3.8485072219503316, 1.9653944053159991, 1.5], [3.9013512429912356, 2.6264786853937485, 1.4999999999999938], [3.4426374332034193, 2.5497409925362899, 1.4999999999999925], [3.4000089860485074, 1.9312126164197219, 1.4999999999999967], [3.5920024056163022, 2.1671262631188304, 1.5000000000000051], [3.8289639444548964, 2.3418871241724011, 1.5000000000000062], [3.6642038641453101, 2.558433443151872, 1.5000000000000124], [1.8429344844616906, 2.7816785778248603, 1.5000000000000049], [2.1679659779622833, 3.315102842720806, 1.4999999999999867], [1.676400066507993, 3.2641777012505768, 1.5000000000000027], [1.38263856444233, 2.7620638276480851, 1.4999999999999969], [1.6698418778859192, 2.9499351625225949, 1.4999999999999818], [1.9782478727651263, 3.0864157767117475, 1.4999999999999991], [1.9021965887377461, 3.2655916574944626, 1.4999999999999905], [2.5766471835242943, 2.832429876467796, 1.5000000000000067], [2.8087867799030342, 3.3478080591321104, 1.4999999999999962], [2.359946724739971, 3.2976509153453177, 1.4999999999999871], [2.1485800293339685, 2.8125032620844159, 1.4999999999999989], [2.3931802866872931, 2.9945380728757933, 1.4999999999999871], [2.6626428805340914, 3.1269322229991352, 1.5000000000000107], [2.5689167885216131, 3.2996199266994837, 1.5000000000000246], [3.2544173077166034, 2.8831662765312651, 1.4999999999999958], [3.3936602075180655, 3.3804928180329901, 1.5000000000000049], [2.9875831612767874, 3.3310847042152365, 1.499999999999996], [2.8585647653384383, 2.862929802973853, 1.5000000000000051], [3.0605410224700447, 3.0391338649384441, 1.499999999999946], [3.2910394918437409, 3.1674484336067428, 1.4999999999999929], [3.1796671276407276, 3.3336358308716401, 1.4999999999999598], [3.8762597976675579, 2.9338849468785986, 1.5000000000000031], [3.9226037904554705, 3.4131515175118317, 1.5000000000000311], [3.5593394534480507, 3.3644682457320649, 1.4999999999999811], [3.5126042694442998, 2.9133409204432201, 1.5000000000000016], [3.6719304269255759, 3.0837209228569984, 1.5000000000000089], [3.8634380195095148, 3.2079643608852968, 1.4999999999999891], [3.7344576117906332, 3.3676361138847315, 1.4999999999999951], [2.290481485749821, 3.5543397387612243, 1.4999999999999969], [2.6090903782288115, 3.9059611268460737, 1.4999999999999982], [2.2129758537694983, 3.8832556414138604, 1.5000000000000036], [1.9151197415276635, 3.5483358259005606, 1.499999999999994], [2.1696872340043738, 3.6706038571015149, 1.5000000000000064], [2.432699677919318, 3.7564960681509265, 1.5000000000000053], [2.3924218055122042, 3.8789065824914539, 1.5000000000000093], [2.8841998984957997, 3.5770929042549278, 1.5], [3.1099010903337425, 3.9106625899726088, 1.4999999999999944], [2.7564812412330895, 3.8887241240829891, 1.5000000000000042], [2.5410518329576646, 3.5707774093800544, 1.4999999999999956], [2.7530259835441089, 3.6872060967081288, 1.500000000000034], [2.9770995873754651, 3.7690116443983488, 1.500000000000002], [2.9191265597521787, 3.8849347437227726, 1.4999999999999547], [3.4220066794895558, 3.59982597011878, 1.5], [3.5547923202815519, 3.9153327789611412, 1.4999999999999887], [3.2441142769906923, 3.8941339824468657, 1.5000000000000067], [3.1110465701399188, 3.5932017735474604, 1.5000000000000007], [3.28039874058928, 3.7037980999658422, 1.4999999999999925], [3.4655029620569708, 3.7815266686090645, 1.499999999999988], [3.3898743690403488, 3.8909449368805227, 1.499999999999988], [3.9039362336421823, 3.6225335025360001, 1.4999999999999873], [3.9438071133820896, 3.9199580829825589, 1.4999999999999947], [3.6759426175929462, 3.8994602051250937, 1.500000000000004], [3.6251287520186279, 3.6156041296616728, 1.5000000000000029], [3.7518202398147968, 3.7203763939539147, 1.500000000000006], [3.8979109204674489, 3.7940409553624894, 1.4999999999999942], [3.8046879269396392, 3.8969298322331238, 1.4999999999999987], [0.94762333243336028, 0.39671811506554844, 2.4999999999999991], [1.2856123659357976, 1.29371760283215, 2.4999999999999996], [0.60317166845782633, 1.1866543795235613, 2.4999999999999987], [0.3175494202261539, 0.34982467140047502, 2.5000000000000009], [0.67005418565845565, 0.66874178318868638, 2.4999999999999991], [1.069317084135001, 0.90625807035941719, 2.4999999999999991], [0.92174856006299577, 1.199172907134034, 2.5000000000000009], [1.9612936341755758, 0.50348318537092374, 2.4999999999999982], [2.2064075305015249, 1.3824447562454893, 2.5000000000000027], [1.5666936118272798, 1.2761686507020435, 2.5000000000000018], [1.3634692328068097, 0.45627567992173157, 2.4999999999999987], [1.6733772009850341, 0.76935226549794677, 2.5000000000000004], [2.0337072751412739, 1.0027753030374067, 2.5000000000000018], [1.8684620659172364, 1.2892131924280832, 2.5000000000000027], [2.918993160776314, 0.6102395719717193, 2.4999999999999973], [3.0712285806234219, 1.4711617857383916, 2.5000000000000053], [2.4742622100418856, 1.365663147971484, 2.4999999999999964], [2.3534120938783807, 0.56271918249158026, 2.4999999999999996], [2.6207114821730402, 0.86995893152152015, 2.5000000000000004], [2.9420980471289147, 1.0992924611855712, 2.5000000000000044], [2.7591912351279779, 1.3792470911050136, 2.4999999999999978], [3.8207265974811753, 0.7169862042318863, 2.5000000000000022], [3.880080450642049, 1.5598670948805389, 2.5000000000000018], [3.325886450088325, 1.4551347200409837, 2.5000000000000022], [3.2873817694613523, 0.66915422974950733, 2.5000000000000004], [3.5120589475853272, 0.97056125117737002, 2.4999999999999942], [3.7944894614287863, 1.1958095369976756, 2.5000000000000027], [3.5939390686115966, 1.4692736164053464, 2.5000000000000164], [1.3953045543722791, 1.7291576393490014, 2.4999999999999991], [1.7268056439431096, 2.4443749198861191, 2.499999999999992], [1.1398102583829821, 2.365347970836853, 2.500000000000008], [0.85011258317843852, 1.6959098655987432, 2.5000000000000022], [1.1699597425216424, 1.9493227901497725, 2.4999999999999973], [1.5237848261919529, 2.1363367169616891, 2.5000000000000013], [1.4119777502635102, 2.3723592442384933, 2.4999999999999987], [2.2689962780470916, 1.8079150043709833, 2.5000000000000009], [2.5076153246063635, 2.5050911293932909, 2.4999999999999964], [1.9633506244485393, 2.426841427716294, 2.5000000000000018], [1.7560450450810232, 1.7743543259975736, 2.5000000000000013], [2.0332907472606956, 2.0219293493545774, 2.5000000000000107], [2.3481769148963778, 2.2048536494459801, 2.4999999999999925], [2.2186967567517168, 2.4343932432074098, 2.499999999999964], [3.0867278716275921, 1.8866611503992439, 2.4999999999999991], [3.2324609533010351, 2.5657933194299463, 2.4999999999999725], [2.7309545026101425, 2.4883076033333391, 2.5000000000000409], [2.606008431579395, 1.8527890730110934, 2.5000000000000053], [2.8406372064211518, 2.0945307999080045, 2.4999999999999964], [3.1165699125766579, 2.2733704576613998, 2.5000000000000044], [2.9694370699565367, 2.4964185408243704, 2.4999999999999769], [3.8485072219502339, 1.9653944053159877, 2.5000000000000067], [3.9013512429911867, 2.6264786853937472, 2.4999999999999964], [3.4426374332034739, 2.5497409925362451, 2.4999999999999711], [3.4000089860484564, 1.9312126164197168, 2.5000000000000018], [3.5920024056163009, 2.1671262631188624, 2.500000000000008], [3.8289639444550061, 2.3418871241724233, 2.5000000000000102], [3.6642038641454362, 2.5584334431518601, 2.5000000000000284], [1.8429344844616891, 2.7816785778248896, 2.5000000000000031], [2.1679659779624019, 3.3151028427208762, 2.4999999999999667], [1.6764000665079744, 3.2641777012506101, 2.5000000000000013], [1.3826385644423203, 2.7620638276480682, 2.4999999999999911], [1.6698418778859365, 2.9499351625226171, 2.5000000000000178], [1.9782478727651034, 3.0864157767115725, 2.4999999999999938], [1.9021965887377579, 3.2655916574944355, 2.49999999999998], [2.5766471835243205, 2.8324298764677471, 2.5000000000000151], [2.8087867799029373, 3.3478080591320865, 2.5000000000000004], [2.359946724739999, 3.2976509153452707, 2.4999999999999516], [2.1485800293339685, 2.8125032620844257, 2.4999999999999987], [2.3931802866872425, 2.9945380728757951, 2.4999999999999671], [2.6626428805339533, 3.1269322229990482, 2.5000000000000187], [2.5689167885217552, 3.2996199266995361, 2.5000000000000688], [3.2544173077165501, 2.8831662765313384, 2.4999999999999907], [3.3936602075181073, 3.3804928180328342, 2.5000000000000231], [2.9875831612768309, 3.3310847042152769, 2.4999999999999951], [2.8585647653383583, 2.8629298029738339, 2.5000000000000075], [3.0605410224700171, 3.0391338649384565, 2.5000000000000351], [3.2910394918442449, 3.1674484336069049, 2.4999999999999929], [3.1796671276404629, 3.3336358308715983, 2.4999999999998925], [3.8762597976674127, 2.933884946878635, 2.5000000000000089], [3.9226037904552831, 3.413151517511932, 2.5000000000000573], [3.559339453447997, 3.3644682457321391, 2.4999999999999698], [3.5126042694444024, 2.913340920443261, 2.4999999999999853], [3.6719304269255235, 3.0837209228569811, 2.5000000000000044], [3.8634380195097635, 3.2079643608849144, 2.5000000000000098], [3.7344576117904378, 3.3676361138850051, 2.4999999999999916], [2.2904814857498299, 3.5543397387612425, 2.4999999999999876], [2.6090903782287569, 3.9059611268460439, 2.4999999999999853], [2.2129758537695241, 3.8832556414135975, 2.4999999999999885], [1.9151197415276122, 3.548335825900649, 2.499999999999972], [2.1696872340044644, 3.6706038571015505, 2.5000000000000244], [2.4326996779196191, 3.7564960681506614, 2.5000000000000053], [2.392421805512154, 3.8789065824915041, 2.5000000000000169], [2.8841998984957526, 3.5770929042548167, 2.5000000000000302], [3.1099010903336737, 3.9106625899727501, 2.4999999999999685], [2.75648124123326, 3.8887241240830686, 2.4999999999999996], [2.5410518329576428, 3.5707774093800695, 2.4999999999999627], [2.7530259835441471, 3.6872060967082798, 2.5000000000000644], [2.9770995873754078, 3.7690116443978852, 2.5], [2.9191265597522729, 3.8849347437230159, 2.499999999999909], [3.4220066794897224, 3.5998259701187529, 2.4999999999999756], [3.5547923202814182, 3.9153327789611172, 2.4999999999999996], [3.2441142769908078, 3.8941339824473071, 2.5000000000000462], [3.1110465701397647, 3.5932017735476247, 2.4999999999999951], [3.2803987405892912, 3.7037980999653715, 2.5000000000000031], [3.4655029620563949, 3.7815266686093367, 2.5000000000000031], [3.3898743690402782, 3.8909449368807021, 2.5000000000000169], [3.9039362336419212, 3.6225335025360135, 2.5000000000000244], [3.9438071133824417, 3.9199580829825589, 2.5000000000000187], [3.6759426175928054, 3.8994602051250835, 2.500000000000008], [3.625128752018655, 3.6156041296617243, 2.4999999999999947], [3.7518202398148373, 3.7203763939540027, 2.5000000000000009], [3.89791092046748, 3.7940409553618566, 2.4999999999999716], [3.804687926939653, 3.896929832233476, 2.4999999999999925], [0.94762333243336416, 0.39671811506554755, 3.5000000000000018], [1.2856123659357994, 1.2937176028321593, 3.5000000000000031], [0.6031716684578271, 1.1866543795235631, 3.4999999999999876], [0.31754942022615379, 0.34982467140047518, 3.499999999999996], [0.67005418565845754, 0.66874178318868649, 3.4999999999999987], [1.0693170841349975, 0.90625807035941519, 3.4999999999999987], [0.92174856006300498, 1.1991729071340285, 3.499999999999996], [1.9612936341755924, 0.50348318537092507, 3.5000000000000067], [2.2064075305015378, 1.38244475624551, 3.5000000000000178], [1.5666936118272796, 1.2761686507020438, 3.4999999999999742], [1.3634692328068054, 0.45627567992173107, 3.4999999999999925], [1.6733772009850356, 0.76935226549793778, 3.4999999999999876], [2.0337072751412704, 1.0027753030373998, 3.4999999999999982], [1.8684620659172446, 1.2892131924280887, 3.5000000000000187], [2.9189931607763624, 0.61023957197171852, 3.5000000000000107], [3.0712285806234285, 1.4711617857383898, 3.4999999999999902], [2.4742622100418905, 1.3656631479714536, 3.4999999999999507], [2.3534120938783971, 0.5627191824915827, 3.4999999999999964], [2.6207114821730113, 0.86995893152151282, 3.5000000000000036], [2.9420980471288529, 1.099292461185561, 3.5000000000000075], [2.7591912351280268, 1.3792470911050205, 3.5000000000000351], [3.8207265974811992, 0.7169862042318853, 3.4999999999999951], [3.8800804506420516, 1.5598670948805367, 3.4999999999999964], [3.325886450088313, 1.4551347200409834, 3.4999999999999605], [3.287381769461339, 0.66915422974951422, 3.4999999999999929], [3.5120589475853419, 0.97056125117737757, 3.4999999999999925], [3.794489461428828, 1.19580953699767, 3.4999999999999991], [3.5939390686114643, 1.4692736164053213, 3.5000000000000693], [1.3953045543722569, 1.7291576393489811, 3.5000000000000022], [1.7268056439431108, 2.444374919886092, 3.5000000000000093], [1.1398102583829848, 2.3653479708368441, 3.5000000000000089], [0.85011258317843674, 1.6959098655987417, 3.5000000000000009], [1.1699597425216446, 1.9493227901497889, 3.5000000000000084], [1.5237848261919511, 2.1363367169617513, 3.4999999999999996], [1.4119777502635158, 2.3723592442384533, 3.5000000000000271], [2.2689962780470849, 1.8079150043709571, 3.4999999999999933], [2.5076153246062267, 2.5050911293932079, 3.5000000000000058], [1.9633506244485581, 2.4268414277162913, 3.5000000000000009], [1.756045045081011, 1.7743543259976018, 3.4999999999999902], [2.0332907472607191, 2.0219293493545858, 3.5000000000000284], [2.348176914896388, 2.2048536494459801, 3.5000000000000075], [2.2186967567517799, 2.4343932432074165, 3.4999999999999303], [3.086727871627553, 1.8866611503992281, 3.5000000000000053], [3.2324609533012052, 2.5657933194298144, 3.4999999999999152], [2.7309545026101065, 2.4883076033333822, 3.5000000000000582], [2.6060084315793923, 1.8527890730110881, 3.5000000000000018], [2.8406372064212224, 2.0945307999080307, 3.5000000000000071], [3.1165699125764452, 2.2733704576614358, 3.4999999999999858], [2.9694370699566295, 2.4964185408242807, 3.4999999999999845], [3.8485072219503054, 1.9653944053160162, 3.4999999999999964], [3.9013512429911938, 2.6264786853937419, 3.4999999999999725], [3.4426374332033562, 2.5497409925362442, 3.4999999999999694], [3.4000089860483369, 1.9312126164197634, 3.4999999999999969], [3.5920024056163591, 2.1671262631188344, 3.500000000000016], [3.8289639444548156, 2.3418871241723713, 3.5000000000000173], [3.6642038641453181, 2.5584334431518885, 3.5000000000000688], [1.8429344844616937, 2.7816785778248478, 3.5000000000000213], [2.1679659779623264, 3.3151028427205889, 3.4999999999999303], [1.6764000665079972, 3.26417770125052, 3.4999999999999849], [1.382638564442314, 2.7620638276481086, 3.4999999999999942], [1.6698418778859234, 2.9499351625225456, 3.4999999999999032], [1.9782478727652961, 3.0864157767118998, 3.5000000000000049], [1.902196588737683, 3.2655916574944408, 3.4999999999999454], [2.5766471835242455, 2.8324298764677316, 3.500000000000004], [2.8087867799030972, 3.3478080591320873, 3.4999999999999818], [2.3599467247399155, 3.2976509153453497, 3.4999999999999041], [2.1485800293339761, 2.8125032620843697, 3.4999999999999907], [2.3931802866873486, 2.9945380728758337, 3.4999999999999569], [2.6626428805340234, 3.1269322229993306, 3.5000000000000262], [2.5689167885215776, 3.2996199266991875, 3.5000000000001332], [3.254417307716384, 2.8831662765312891, 3.4999999999999916], [3.3936602075183631, 3.3804928180330749, 3.5000000000000266], [2.987583161276731, 3.3310847042152267, 3.4999999999999836], [2.8585647653383965, 2.8629298029739085, 3.5000000000000049], [3.0605410224700829, 3.0391338649384618, 3.4999999999997975], [3.2910394918434371, 3.1674484336066007, 3.499999999999996], [3.1796671276408031, 3.333635830871716, 3.4999999999997913], [3.8762597976675131, 2.9338849468786012, 3.4999999999999942], [3.9226037904556139, 3.4131515175118459, 3.5000000000001279], [3.5593394534482914, 3.3644682457318242, 3.4999999999999316], [3.5126042694442918, 2.9133409204431922, 3.5000000000000044], [3.6719304269257864, 3.0837209228569757, 3.5000000000000293], [3.8634380195096143, 3.2079643608854114, 3.5000000000000253], [3.7344576117906843, 3.367636113884684, 3.4999999999999956], [2.2904814857497899, 3.5543397387612901, 3.4999999999999951], [2.6090903782285717, 3.9059611268463406, 3.500000000000016], [2.2129758537694992, 3.8832556414138666, 3.500000000000028], [1.9151197415276859, 3.5483358259005695, 3.4999999999999858], [2.1696872340042499, 3.6706038571015545, 3.5000000000000018], [2.4326996779195516, 3.7564960681506863, 3.5000000000000382], [2.3924218055123876, 3.8789065824917568, 3.5000000000000271], [2.8841998984958397, 3.577092904254763, 3.4999999999999862], [3.1099010903341222, 3.9106625899725977, 3.4999999999999973], [2.7564812412332174, 3.8887241240826294, 3.4999999999999982], [2.5410518329576406, 3.5707774093801148, 3.5000000000000191], [2.7530259835440725, 3.6872060967078593, 3.5000000000001483], [2.9770995873757795, 3.7690116443986925, 3.4999999999999845], [2.9191265597523062, 3.8849347437229427, 3.4999999999997664], [3.4220066794894444, 3.5998259701187663, 3.4999999999999654], [3.5547923202818414, 3.9153327789612136, 3.4999999999999356], [3.2441142769903375, 3.8941339824466588, 3.5000000000000098], [3.1110465701400205, 3.5932017735473507, 3.4999999999999996], [3.2803987405888613, 3.7037980999664271, 3.4999999999999574], [3.4655029620570916, 3.7815266686086901, 3.5000000000000218], [3.3898743690404456, 3.8909449368801337, 3.4999999999999796], [3.9039362336417995, 3.6225335025364989, 3.4999999999999574], [3.943807113381737, 3.9199580829826028, 3.4999999999999596], [3.6759426175933441, 3.899460205124559, 3.5000000000000635], [3.6251287520184414, 3.6156041296619916, 3.5000000000000409], [3.7518202398145579, 3.7203763939539862, 3.500000000000036], [3.8979109204676017, 3.7940409553624357, 3.5000000000000213], [3.8046879269392848, 3.8969298322328534, 3.4999999999999694]] -ref_volume = [0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937, 0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937, 0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937, 0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937] - -# create a new 'ELGA field To Surface' -eLGAfieldToSurface2 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface2', Input=pG_3Dmed) -eLGAfieldToSurface2.UpdatePipeline() - -print(" ~> Geometry check") -test_geom(eLGAfieldToSurface2, np.array(ref_mass_center), np.array(ref_volume)) - -for field_name, ref in fields: - print(" ~> Field check for field {}".format(field_name)) - test_fields(eLGAfieldToSurface2, np.array(ref), field_name) - -### -# Test of VoroGauss1.med -### - -fname = os.path.join(data_dir, "VoroGauss1.med") -meshName="mesh" -mm=MEDFileUMesh() -coords=DataArrayDouble([0,0, 1,0, 2,0, 3,0, 4,0, 5,0, 0,1, 1,1, 2,1, 0,2, 1,2, 3,1, 4,1],13,2) -m0=MEDCouplingUMesh(meshName,2) -m0.setCoords(coords) -m0.allocateCells() -m0.insertNextCell(NORM_TRI3,[2,3,8]) -m0.insertNextCell(NORM_TRI3,[3,4,11]) -m0.insertNextCell(NORM_TRI3,[4,5,12]) -m0.insertNextCell(NORM_TRI3,[6,7,9]) -m0.insertNextCell(NORM_TRI3,[7,8,10]) -m0.insertNextCell(NORM_QUAD4,[0,1,7,6]) -m0.insertNextCell(NORM_QUAD4,[1,2,8,7]) -mm[0]=m0 -m1=MEDCouplingUMesh(meshName,1) -m1.setCoords(coords) -m1.allocateCells() -m1.insertNextCell(NORM_SEG2,[0,1]) -m1.insertNextCell(NORM_SEG2,[1,2]) -m1.insertNextCell(NORM_SEG2,[2,3]) -m1.insertNextCell(NORM_SEG2,[3,4]) -m1.insertNextCell(NORM_SEG2,[4,5]) -mm[-1]=m1 -mm.setFamilyFieldArr(0,DataArrayInt([-1,-1,-2,-3,-3,-1,-3])) -mm.setFamilyFieldArr(-1,DataArrayInt([-1,-4,-4,-4,-1])) -for i in [-1,-2,-3,-4]: - mm.setFamilyId("Fam_%d"%i,i) - mm.setFamiliesOnGroup("G%d"%(abs(i)),["Fam_%d"%i]) - pass -mm.write(fname,2) -# -f0=MEDCouplingFieldDouble(ON_GAUSS_PT) -f0.setMesh(m0) -f0.setName("MyFieldPG") ; f0.setMesh(m0) -f0.setGaussLocalizationOnType(NORM_TRI3,[0,0, 1,0, 0,1],[0.1,0.1, 0.8,0.1, 0.1,0.8],[0.3,0.3,0.4]) -f0.setGaussLocalizationOnType(NORM_QUAD4,[-1,-1, 1,-1, 1,1, -1,1],[-0.57735,-0.57735,0.57735,-0.57735,0.57735,0.57735,-0.57735,0.57735],[0.25,0.25,0.25,0.25]) -arr=DataArrayDouble(f0.getNumberOfTuplesExpected()) ; arr.iota() -arr=DataArrayDouble.Meld(arr,arr) -arr.setInfoOnComponents(["comp0","comp1"]) -f0.setArray(arr) -WriteFieldUsingAlreadyWrittenMesh(fname,f0) -# -f1=MEDCouplingFieldDouble(ON_CELLS) -f1.setMesh(m0) -f1.setName("MyFieldCell") ; f1.setMesh(m0) -arr=DataArrayDouble(f1.getNumberOfTuplesExpected()) ; arr.iota() -arr=DataArrayDouble.Meld(arr,arr) -arr.setInfoOnComponents(["comp2","comp3"]) -f1.setArray(arr) -WriteFieldUsingAlreadyWrittenMesh(fname,f1) - -# create a new 'MED Reader' -voroGauss1med = MEDReader(registrationName='VoroGauss1.med', FileName=fname) -voroGauss1med.AllArrays = ['TS0/mesh/ComSup0/MyFieldCell@@][@@P0', - 'TS0/mesh/ComSup0/MyFieldPG@@][@@GAUSS'] -voroGauss1med.AllTimeSteps = ['0000'] -print("Testing {}".format(fname)) -voroGauss1med.UpdatePipeline() - -# create a new 'ELGA field To Surface' -eLGAfieldToSurface3 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface3', Input=voroGauss1med) -eLGAfieldToSurface3.UpdatePipeline() - -ref_mass_center = [ [2.2250000000000001, 0.22499999999999998, 0], [2.6361344537815126, 0.1780112044817927, 0], [2.1780112044817925, 0.63613445378151257, 0], [3.2250000000000001, 0.22499999999999998, 0], [3.636134453781513, 0.17801120448179258, 0], [3.178011204481793, 0.63613445378151268, 0], [4.2249999999999996, 0.22499999999999998, 0], [4.6361344537815121, 0.1780112044817927, 0], [4.1780112044817912, 0.63613445378151257, 0], [0.22499999999999998, 1.2250000000000001, 0], [0.63613445378151257, 1.1780112044817928, 0], [0.1780112044817927, 1.6361344537815126, 0], [1.2250000000000001, 1.2250000000000001, 0], [1.6361344537815126, 1.1780112044817928, 0], [1.1780112044817919, 1.6361344537815115, 0], [0.25, 0.25, 0], [0.75, 0.24999999999999994, 0], [0.75, 0.75, 0], [0.24999999999999997, 0.75, 0], [1.25, 0.25, 0], [1.75, 0.25, 0], [1.75, 0.75, 0], [1.25, 0.75, 0]] - -ref_volume = [0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, ] - -print(" ~> Geometry check") -test_geom(eLGAfieldToSurface3, np.array(ref_mass_center), np.array(ref_volume)) - -fields = [('MyFieldCell', - [[0., 0.], [0., 0.], [0., 0.], [1., 1.], [1., 1.], [1., 1.], [2., 2.], [2., 2.], [2., 2.], [3., 3.], [3., 3.], [3., 3.], [4., 4.], [4., 4.], [4., 4.], [5., 5.], [5., 5.], [5., 5.], [5., 5.], [6., 6.], [6., 6.], [6., 6.], [6., 6.]] - ), - ('MyFieldPG', - [[ 0., 0.], [ 1., 1.], [ 2., 2.], [ 3., 3.], [ 4., 4.], [ 5., 5.], [ 6., 6.], [ 7., 7.], [ 8., 8.], [ 9., 9.], [10., 10.], [11., 11.], [12., 12.], [13., 13.], [14., 14.], [15., 15.], [16., 16.], [17., 17.], [18., 18.], [19., 19.], [20., 20.], [21., 21.], [22., 22.]] - ) - ] - -for field_name, ref in fields: - print(" ~> Field check for field {}".format(field_name)) - test_fields(eLGAfieldToSurface3, np.array(ref), field_name) - -### -# Test for hexa element -### - -#[ 1 ] : 185 189 205 201 186 190 206 202 -file_name = os.path.join(data_dir, "simple_mesh.med") -coords = [0.024000, 0.024000, 1.200000, #185:0 - 0.024000, 0.048000, 1.200000, #186:1 - 0.048000, 0.024000, 1.200000, #189:2 - 0.048000, 0.048000, 1.200000, #190:3 - 0.024000, 0.024000, 1.600000, #201:4 - 0.024000, 0.048000, 1.600000, #202:5 - 0.048000, 0.024000, 1.600000, #205:6 - 0.048000, 0.048000, 1.600000, #206:7 - ] - -conn = [0,2,6,4,1,3,7,5] - - -mesh=MEDCouplingUMesh("MESH", 3) - -mesh.allocateCells(1) -mesh.insertNextCell(NORM_HEXA8, conn) - -mesh.finishInsertingCells() - -coords_array = DataArrayDouble(coords, 8, 3) -mesh.setCoords(coords_array) -mesh.checkConsistencyLight() -WriteMesh(file_name, mesh, True) - -fieldGauss=MEDCouplingFieldDouble.New(ON_GAUSS_PT,ONE_TIME); -fieldGauss.setMesh(mesh); -fieldGauss.setName("RESU____EPSI_NOEU"); -fieldGauss.setTimeUnit("s") -fieldGauss.setTime(0.0,1,-1) - - -hexa8CooGauss = [-0.577350, -0.577350, -0.577350, - -0.577350, -0.577350, +0.577350, - -0.577350, +0.577350, -0.577350, - -0.577350, +0.577350, +0.577350, - +0.577350, -0.577350, -0.577350, - +0.577350, -0.577350, +0.577350, - +0.577350, +0.577350, -0.577350, - +0.577350, +0.577350, +0.577350 - ] -hexa8CooRef = [ -1.000000, -1.000000, -1.000000, - -1.000000, +1.000000, -1.000000, - +1.000000, +1.000000, -1.000000, - +1.000000, -1.000000, -1.000000, - -1.000000, -1.000000, +1.000000, - -1.000000, +1.000000, +1.000000, - +1.000000, +1.000000, +1.000000, - +1.000000, -1.000000, +1.000000 - ] -wg8 = [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]; -fieldGauss.setGaussLocalizationOnType(NORM_HEXA8,hexa8CooRef,hexa8CooGauss,wg8); - -nbTuples=8 -array=DataArrayDouble.New(); -values=[ - -5.65022e-05,-5.6733e-05 , 0.000179768,-3.56665e-07,-7.22919e-07,-0.00020561, - 5.65022e-05, 5.6733e-05 ,-0.000179768,-3.56665e-07, 7.22919e-07,-0.00020561, - -5.63787e-05,-5.65226e-05, 0.000179703,-1.43488e-07,-2.4061e-07 ,-0.000207459, - 5.63787e-05, 5.65226e-05,-0.000179703,-1.43488e-07, 2.4061e-07 ,-0.000207459, - -2.49762e-05,-2.40288e-05, 9.05803e-05, 2.53861e-06, 2.20988e-07,-0.000207793, - 2.49762e-05, 2.40288e-05,-9.05803e-05, 2.53861e-06,-2.20988e-07,-0.000207793, - -2.49587e-05,-2.41105e-05, 9.05832e-05, 9.76774e-07, 3.27621e-08,-0.000210835, - 2.49587e-05, 2.41105e-05,-9.05832e-05, 9.76774e-07,-3.27621e-08,-0.000210835 - ] -array.setValues(values, nbTuples, 6); -array.setInfoOnComponents(["EPXX", "EPYY", "EPZZ", "EPXY", "EPXZ", "EPYZ"]) -fieldGauss.setArray(array); -fieldGauss.checkConsistencyLight(); - -WriteFieldUsingAlreadyWrittenMesh(file_name, fieldGauss) - - -fieldGauss2=MEDCouplingFieldDouble.New(ON_GAUSS_PT,ONE_TIME); -fieldGauss2.setMesh(mesh); -fieldGauss2.setName("RESU____SIGM_NOEU"); -fieldGauss2.setTimeUnit("s") -fieldGauss2.setTime(0.0,1,-1) - -fieldGauss2.setGaussLocalizationOnType(NORM_HEXA8,hexa8CooRef,hexa8CooGauss,wg8); - -nbTuples=8 -array=DataArrayDouble.New(); -values=[ - -1.06652e+06, -1.1038e+06 , 3.71003e+07 , -57615.2, -116779 , -3.3214e+07, - 1.06652e+06 , 1.1038e+06 , -3.71003e+07, -57615.2, 116779 , -3.3214e+07, - -1.01401e+06, -1.03727e+06, 3.71223e+07 , -23178.9, -38867.8, -3.35127e+07, - 1.01401e+06 , 1.03727e+06 , -3.71223e+07, -23178.9, 38867.8 , -3.35127e+07, - 1.00241e+06 , 1.15545e+06 , 1.96692e+07 , 410084 , 35698.1 , -3.35666e+07, - -1.00241e+06, -1.15545e+06, -1.96692e+07, 410084 , -35698.1, -3.35666e+07, - 997783 , 1.1348e+06 , 1.96622e+07 , 157787 , 5292.34 , -3.40579e+07, - -997783 , -1.1348e+06 , -1.96622e+07, 157787 , -5292.34, -3.40579e+07 - ] -array.setValues(values, nbTuples, 6); -array.setInfoOnComponents(["SIXX", "SIYY", "SIZZ", "SIXY", "SIXZ", "SIYZ"]) -fieldGauss2.setArray(array); -fieldGauss2.checkConsistencyLight(); - -WriteFieldUsingAlreadyWrittenMesh(file_name, fieldGauss2) - -# create a new 'MED Reader' -simple_meshmed = MEDReader(registrationName='simple_mesh.med', FileName=file_name) -simple_meshmed.AllArrays = ['TS0/MESH/ComSup0/RESU____EPSI_NOEU@@][@@GAUSS', - 'TS0/MESH/ComSup0/RESU____SIGM_NOEU@@][@@GAUSS'] -simple_meshmed.AllTimeSteps = ['0000'] -print("Testing {}".format(file_name)) -simple_meshmed.UpdatePipeline() - -# create a new 'ELGA field To Surface' -eLGAfieldToSurface4 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface4', Input=simple_meshmed) -eLGAfieldToSurface4.UpdatePipeline() - - -fields = [('RESU____EPSI_NOEU', - [ - [-5.65022e-05,-5.6733e-05 , 0.000179768 , -3.56665e-07, -7.22919e-07, -0.00020561], - [ 5.65022e-05, 5.6733e-05 , -0.000179768, -3.56665e-07, 7.22919e-07 , -0.00020561], - [-5.63787e-05,-5.65226e-05, 0.000179703 , -1.43488e-07, -2.4061e-07 , -0.000207459], - [ 5.63787e-05, 5.65226e-05, -0.000179703, -1.43488e-07, 2.4061e-07 , -0.000207459], - [-2.49762e-05,-2.40288e-05, 9.05803e-05 , 2.53861e-06 , 2.20988e-07 , -0.000207793], - [ 2.49762e-05, 2.40288e-05, -9.05803e-05, 2.53861e-06 , -2.20988e-07, -0.000207793], - [-2.49587e-05,-2.41105e-05, 9.05832e-05 , 9.76774e-07 , 3.27621e-08 , -0.000210835], - [ 2.49587e-05, 2.41105e-05, -9.05832e-05, 9.76774e-07 , -3.27621e-08, -0.000210835], - ]), - ('RESU____SIGM_NOEU', - [ - [-1.06652e+06, -1.1038e+06 , 3.71003e+07 , -57615.2, -116779 , -3.3214e+07], - [1.06652e+06 , 1.1038e+06 , -3.71003e+07, -57615.2, 116779 , -3.3214e+07], - [-1.01401e+06, -1.03727e+06, 3.71223e+07 , -23178.9, -38867.8, -3.35127e+07], - [1.01401e+06 , 1.03727e+06 , -3.71223e+07, -23178.9, 38867.8 , -3.35127e+07], - [1.00241e+06 , 1.15545e+06 , 1.96692e+07 , 410084 , 35698.1 , -3.35666e+07], - [-1.00241e+06, -1.15545e+06, -1.96692e+07, 410084 , -35698.1, -3.35666e+07], - [997783 , 1.1348e+06 , 1.96622e+07 , 157787 , 5292.34 , -3.40579e+07], - [-997783 , -1.1348e+06 , -1.96622e+07, 157787 , -5292.34, -3.40579e+07], - - ]) - ] - -ref_mass_center = [ [0.030000000000000041, 0.029999999999999947, 1.3000000000000034], [0.029999999999999968, 0.042000000000000086, 1.2999999999999967], [0.04200000000000001, 0.030000000000000013, 1.3000000000000036], [0.042000000000000051, 0.042000000000000107, 1.2999999999999954], [0.030000000000000058, 0.030000000000000103, 1.499999999999992], [0.029999999999999912, 0.041999999999999808, 1.5000000000000067], [0.041999999999999836, 0.030000000000000041, 1.4999999999999989], [0.042000000000000134, 0.041999999999999961, 1.5000000000000013]] - -ref_volume = [2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05] - -print(" ~> Geometry check") -test_geom(eLGAfieldToSurface4, np.array(ref_mass_center), np.array(ref_volume)) - -for field_name, ref in fields: - print(" ~> Field check for field {}".format(field_name)) - test_fields(eLGAfieldToSurface4, np.array(ref), field_name) diff --git a/src/Plugins/VoroGauss/Test/tests.set b/src/Plugins/VoroGauss/Test/tests.set deleted file mode 100644 index f0adbc46..00000000 --- a/src/Plugins/VoroGauss/Test/tests.set +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (C) 2012-2020 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 -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -SET(TEST_NAMES - test_VoroGauss - ) - -SET(all_src - PG_3D.med - testMEDReader14.med - test_VoroGauss.py - ) diff --git a/src/Plugins/VoroGauss/plugin/Test/CMakeLists.txt b/src/Plugins/VoroGauss/plugin/Test/CMakeLists.txt new file mode 100644 index 00000000..f858747f --- /dev/null +++ b/src/Plugins/VoroGauss/plugin/Test/CMakeLists.txt @@ -0,0 +1,38 @@ +# Copyright (C) 2012-2020 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : Yoann Audouin (EDF) + +INCLUDE(tests.set) + +SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env) + +FOREACH(tfile ${TEST_NAMES}) + SET(TEST_NAME ${COMPONENT_NAME}_${tfile}) + ADD_TEST(${TEST_NAME} python ${CMAKE_CURRENT_SOURCE_DIR}/${tfile}.py) + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES ENVIRONMENT "${tests_env}") +ENDFOREACH() + +# Application tests + +SET(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test/VoroGauss) +INSTALL(FILES ${all_src} tests.set DESTINATION ${TEST_INSTALL_DIRECTORY}) + +INSTALL(FILES CTestTestfileInstall.cmake + DESTINATION ${TEST_INSTALL_DIRECTORY} + RENAME CTestTestfile.cmake) diff --git a/src/Plugins/VoroGauss/plugin/Test/CTestTestfileInstall.cmake b/src/Plugins/VoroGauss/plugin/Test/CTestTestfileInstall.cmake new file mode 100644 index 00000000..a7ada705 --- /dev/null +++ b/src/Plugins/VoroGauss/plugin/Test/CTestTestfileInstall.cmake @@ -0,0 +1,31 @@ +# Copyright (C) 2015-2020 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +SET(COMPONENT_NAME PARAVIS) + +INCLUDE(tests.set) + +FOREACH(tfile ${TEST_NAMES}) + SET(TEST_NAME ${COMPONENT_NAME}_${tfile}) + ADD_TEST(${TEST_NAME} python ${tfile}.py) + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES + LABELS "${COMPONENT_NAME}" + TIMEOUT ${TIMEOUT} + ) +ENDFOREACH() diff --git a/src/Plugins/VoroGauss/plugin/Test/PG_3D.med b/src/Plugins/VoroGauss/plugin/Test/PG_3D.med new file mode 100644 index 00000000..9c7e51e7 Binary files /dev/null and b/src/Plugins/VoroGauss/plugin/Test/PG_3D.med differ diff --git a/src/Plugins/VoroGauss/plugin/Test/testMEDReader14.med b/src/Plugins/VoroGauss/plugin/Test/testMEDReader14.med new file mode 100644 index 00000000..c7ff867f Binary files /dev/null and b/src/Plugins/VoroGauss/plugin/Test/testMEDReader14.med differ diff --git a/src/Plugins/VoroGauss/plugin/Test/test_VoroGauss.py b/src/Plugins/VoroGauss/plugin/Test/test_VoroGauss.py new file mode 100644 index 00000000..02bee8d1 --- /dev/null +++ b/src/Plugins/VoroGauss/plugin/Test/test_VoroGauss.py @@ -0,0 +1,405 @@ +# Copyright (C) 2017-2021 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : Yoann Audouin (EDF R&D) + +from os import path, remove +#### import the simple module from the paraview +from paraview.simple import * +from vtk.util import numpy_support +import numpy as np + +from medcoupling import * +import MEDLoader as ml +from MEDLoader import * + +import inspect +data_dir = os.path.dirname(inspect.getfile(lambda: None)) + +#### disable automatic camera reset on 'Show' +paraview.simple._DisableFirstRenderCameraReset() + +def MyAssert(clue): + if not clue: + raise RuntimeError("Assertion failed !") + + +def test_fields(result, ref, field_name): + """ + Test fields content of result from VoroGauss filter + """ + ds0 = servermanager.Fetch(result) + block = ds0.GetBlock(0) + + data = numpy_support.vtk_to_numpy(block.GetCellData().GetArray(field_name)) + + MyAssert(np.allclose(data, ref)) + +def test_geom(result, ref_mass_center, ref_volumes): + """ + Test center of mass and volumes of result from VoroGauss filter + """ + tmp_file = os.path.join(data_dir, "tmp_mesh.med") + if path.exists(tmp_file): + remove(tmp_file) + + # If we write the time steps It will move the time to the last time step + SaveData(tmp_file, proxy=result, WriteAllTimeSteps=0) + + data = ml.MEDFileData(tmp_file) + mesh = data.getMeshes()[0] + + mesh0 = mesh.getLevel0Mesh() + + centerOfMass = mesh0.computeCellCenterOfMass() + MyAssert(np.allclose(np.array(centerOfMass.getValuesAsTuple()), ref_mass_center)) + + volume = mesh0.getMeasureField(True).getArray() + MyAssert(np.allclose(np.array(volume.getValues()), ref_volumes)) + + +### +# Test of testMEDReader14 +### +# create a new 'MED Reader' +file_name = os.path.join(data_dir, "testMEDReader14.med") +testMEDReader14med = MEDReader(registrationName='testMEDReader14.med', + FileName=file_name) +testMEDReader14med.AllTimeSteps = ['0000', '0001', '0002', '0003', '0004'] +print("Testing {}".format(file_name)) + +fields = [(['zeField0'], + ['TS0/Mesh/ComSup0/zeField0_MM0@@][@@GAUSS'], + [[[100.,101.], [102.,103.], [104.,105.], [106.,107.], [108.,109.], [110.,111.], [112.,113.], [114.,115.], [ 0., 1.], [ 2., 3.], [ 4., 5.], [ 6., 7.], [ 8., 9.], [ 10., 11.], [ 12., 13.], [ 14., 15.], [ 16., 17.], [ 18., 19.], [ 20., 21.], [ 22., 23.], [ 24., 25.], [ 26., 27.], [ 28., 29.], [ 30., 31.], [ 32., 33.], [ 34., 35.], [ 36., 37.], [ 38., 39.], [ 40., 41.], [ 42., 43.], [ 44., 45.], [ 46., 47.], [ 48., 49.], [ 50., 51.], [ 52., 53.], [ 54., 55.], [ 56., 57.], [ 58., 59.], [ 60., 61.], [ 62., 63.], [ 64., 65.], [ 66., 67.], [ 68., 69.], [ 70., 71.], [ 72., 73.], [ 74., 75.], [ 76., 77.], [ 78., 79.], [ 80., 81.], [ 82., 83.], [ 84., 85.], [ 86., 87.], [ 88., 89.], [ 90., 91.], [ 92., 93.], [ 94., 95.], [ 96., 97.], [ 98., 99.], [100.,101.], [102.,103.], [104.,105.], [106.,107.], [108.,109.], [110.,111.], [112.,113.], [114.,115.], [116.,117.], [118.,119.], [120.,121.], [122.,123.], [124.,125.], [126.,127.], [128.,129.], [130.,131.], [132.,133.], [134.,135.], [136.,137.], [138.,139.], [140.,141.], [142.,143.], [144.,145.], [146.,147.], [148.,149.], [150.,151.], [152.,153.], [154.,155.], [156.,157.], [158.,159.], [160.,161.], [162.,163.], [164.,165.], [166.,167.]]], + [ [5.5499999999999989, 0.22500000000000014, 0], [5.1858543417366949, 0.1780112044817927, 0], [5.1858543417366949, 0.63613445378151257, 0], [5.7750000000000004, 0.45000000000000001, 0], [5.3638655462184888, 0.81414565826330532, 0], [5.8219887955182079, 0.81414565826330532, 0], [4.5500000000000007, 1.2250000000000001, 0], [4.1858543417366949, 1.178011204481793, 0], [4.1858543417366958, 1.6361344537815128, 0], [4.7750000000000004, 1.45, 0], [4.3638655462184879, 1.8141456582633053, 0], [4.8219887955182088, 1.8141456582633049, 0], [5.5499999999999989, 1.2250000000000001, 0], [5.1858543417366949, 1.1780112044817923, 0], [5.1858543417366949, 1.6361344537815128, 0], [5.7750000000000004, 1.4499999999999997, 0], [5.3638655462184897, 1.8141456582633051, 0], [5.821988795518207, 1.8141456582633055, 0], [4.5500000000000007, 2.2250000000000005, 0], [4.1858543417366949, 2.1780112044817934, 0], [4.1858543417366967, 2.6361344537815126, 0], [4.7750000000000004, 2.4500000000000002, 0], [4.3638655462184879, 2.8141456582633051, 0], [4.8219887955182088, 2.8141456582633051, 0], [5.5499999999999998, 2.2250000000000001, 0], [5.1858543417366949, 2.1780112044817934, 0], [5.1858543417366949, 2.6361344537815126, 0], [5.7750000000000004, 2.4500000000000002, 0], [5.3638655462184879, 2.8141456582633051, 0], [5.821988795518207, 2.8141456582633064, 0], [5.5499999999999998, 3.2250000000000005, 0], [5.1858543417366949, 3.1780112044817921, 0], [5.1858543417366949, 3.6361344537815126, 0], [5.7750000000000004, 3.4500000000000006, 0], [5.363865546218487, 3.8141456582633051, 0], [5.821988795518207, 3.8141456582633064, 0], [1.75, 0.25, 0], [1.25, 0.24999999999999994, 0], [1.25, 0.75, 0], [1.75, 0.75, 0], [2.75, 0.25, 0], [2.25, 0.24999999999999994, 0], [2.25, 0.75, 0], [2.75, 0.75, 0], [3.75, 0.25, 0], [3.25, 0.25, 0], [3.25, 0.75, 0], [3.75, 0.75, 0], [4.75, 0.25, 0], [4.25, 0.24999999999999989, 0], [4.25, 0.75, 0], [4.75, 0.75, 0], [2.75, 1.25, 0], [2.25, 1.25, 0], [2.25, 1.75, 0], [2.75, 1.75, 0], [3.75, 1.25, 0], [3.25, 1.25, 0], [3.25, 1.75, 0], [3.75, 1.75, 0], [2.75, 2.25, 0], [2.25, 2.25, 0], [2.25, 2.75, 0], [2.75, 2.75, 0], [3.75, 2.25, 0], [3.25, 2.25, 0], [3.25, 2.75, 0], [3.75, 2.75, 0], [1.75, 3.25, 0], [1.25, 3.25, 0], [1.25, 3.75, 0], [1.75, 3.75, 0], [2.75, 3.25, 0], [2.25, 3.25, 0], [2.25, 3.75, 0], [2.75, 3.75, 0], [3.75, 3.25, 0], [3.25, 3.25, 0], [3.25, 3.75, 0], [3.75, 3.75, 0], [4.75, 3.25, 0], [4.25, 3.25, 0], [4.25, 3.75, 0], [4.75, 3.75, 0] ], +[0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, ], + ), + (['zeField0'], + ['TS0/Mesh/ComSup1/zeField0_MM1@@][@@GAUSS'], + [[[116.,117.], [118.,119.], [120.,121.], [122.,123.], [124.,125.], [126.,127.], [128.,129.], [130.,131.], [132.,133.], [134.,135.], [136.,137.], [138.,139.], [140.,141.], [142.,143.], [144.,145.], [146.,147.], [148.,149.], [150.,151.]]], + [ [0.1875, 0, 0], [0.5, 0, 0], [0.8125, 0, 0], [1.1875, 0, 0], [1.5, 0, 0], [1.8125, 0, 0], [2.1875, 0, 0], [2.5, 0, 0], [2.8125, 0, 0], [3.1875, 0, 0], [3.5, 0, 0], [3.8125, 0, 0], [4.1875, 0, 0], [4.5, 0, 0], [4.8125, 0, 0], [5.1875, 0, 0], [5.5, 0, 0], [5.8125, 0, 0]], + [0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375, 0.375, 0.25, 0.375] + ), + (['zeField0', 'zeField1'], + ['TS0/Mesh/ComSup2/zeField0_MM2@@][@@GAUSS', + 'TS0/Mesh/ComSup2/zeField1_MM0@@][@@GAUSS'], + [[[152.,153.], [154.,155.], [156.,157.], [158.,159.], [160.,161.], [162.,163.], [164.,165.], [166.,167.], [168.,169.], [170.,171.], [172.,173.], [174.,175.], [176.,177.], [178.,179.], [180.,181.], [182.,183.]], + [[500.,501.], [502.,503.], [504.,505.], [506.,507.], [508.,509.], [510.,511.], [512.,513.], [514.,515.], [516.,517.], [518.,519.], [520.,521.], [522.,523.], [524.,525.], [526.,527.], [528.,529.], [530.,531.]]], + [ [6, 0.14999999999999999, 0], [6, 0.40000000000000002, 0], [6, 0.59999999999999998, 0], [6, 0.84999999999999998, 0], [6, 1.1499999999999999, 0], [6, 1.3999999999999999, 0], [6, 1.6000000000000001, 0], [6, 1.8500000000000001, 0], [6, 2.1499999999999999, 0], [6, 2.3999999999999999, 0], [6, 2.5999999999999996, 0], [6, 2.8499999999999996, 0], [6, 3.1499999999999999, 0], [6, 3.3999999999999999, 0], [6, 3.5999999999999996, 0], [6, 3.8499999999999996, 0]], + [0.3, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.3, 0.3, 0.2, 0.2, 0.3] + ), + (['zeField1'], + ['TS0/Mesh/ComSup3/zeField1_MM1@@][@@GAUSS'], + [[[532.,533.], [534.,535.], [536.,537.], [538.,539.], [540.,541.], [542.,543.], [544.,545.], [546.,547.], [548.,549.], [550.,551.], [552.,553.], [554.,555.], [556.,557.], [558.,559.], [560.,561.], [562.,563.], [564.,565.], [566.,567.], [568.,569.], [570.,571.], [572.,573.], [574.,575.], [576.,577.], [578.,579.], [580.,581.], [582.,583.], [584.,585.], [586.,587.], [588.,589.], [590.,591.]]], + [ [5.875, 4, 0], [5.6666666666666661, 4, 0], [5.5, 4, 0], [5.3333333333333339, 4, 0], [5.125, 4, 0], [4.875, 4, 0], [4.666666666666667, 4, 0], [4.5, 4, 0], [4.333333333333333, 4, 0], [4.125, 4, 0], [3.875, 4, 0], [3.666666666666667, 4, 0], [3.5, 4, 0], [3.333333333333333, 4, 0], [3.125, 4, 0], [2.875, 4, 0], [2.6666666666666665, 4, 0], [2.5, 4, 0], [2.3333333333333335, 4, 0], [2.125, 4, 0], [1.875, 4, 0], [1.6666666666666667, 4, 0], [1.5, 4, 0], [1.3333333333333333, 4, 0], [1.125, 4, 0], [0.875, 4, 0], [0.66666666666666674, 4, 0], [0.5, 4, 0], [0.33333333333333331, 4, 0], [0.125, 4, 0]], # Center mass +[0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, 0.25, 0.16666667, 0.16666667, 0.16666667, 0.25, ], + ) + ] + +for field_names, field, refs, center_mass, volume in fields: + testMEDReader14med.AllArrays = field + testMEDReader14med.UpdatePipeline() + + # create a new 'ELGA field To Surface' + eLGAfieldToSurface1 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface1', + Input=testMEDReader14med) + eLGAfieldToSurface1.UpdatePipeline() + + print(" ~> Geometry check") + test_geom(eLGAfieldToSurface1, np.array(center_mass), np.array(volume)) + eLGAfieldToSurface1.UpdatePipeline() + + for field_name, ref in zip(field_names, refs): + print(" ~> Field check for leaf {} and field {}".format(field, field_name)) + test_fields(eLGAfieldToSurface1, np.array(ref), field_name) + + +### +# Test of PG_3D.med +### +# create a new 'MED Reader' +file_name = os.path.join(data_dir, "PG_3D.med") +pG_3Dmed = MEDReader(registrationName='PG_3D.med', FileName=file_name) +pG_3Dmed.AllArrays = ['TS0/Extruded/ComSup0/Extruded@@][@@P0', + 'TS0/Extruded/ComSup0/MyFieldPG@@][@@GAUSS'] +print("Testing {}".format(file_name)) +pG_3Dmed.UpdatePipeline() + +fields = [('Extruded', + [ 0., 0., 0., 0., 0., 0., 0., 1., 1., 1., 1., 1., 1., 1., 2., 2., 2., 2., 2., 2., 2., 3., 3., 3., 3., 3., 3., 3., 4., 4., 4., 4., 4., 4., 4., 5., 5., 5., 5., 5., 5., 5., 6., 6., 6., 6., 6., 6., 6., 7., 7., 7., 7., 7., 7., 7., 8., 8., 8., 8., 8., 8., 8., 9., 9., 9., 9., 9., 9., 9.,10.,10., 10.,10.,10.,10.,10.,11.,11.,11.,11.,11.,11.,11.,12.,12.,12.,12.,12.,12., 12.,13.,13.,13.,13.,13.,13.,13.,14.,14.,14.,14.,14.,14.,14.,15.,15.,15., 15.,15.,15.,15.,16.,16.,16.,16.,16.,16.,16.,17.,17.,17.,17.,17.,17.,17., 18.,18.,18.,18.,18.,18.,18.,19.,19.,19.,19.,19.,19.,19.,20.,20.,20.,20., 20.,20.,20.,21.,21.,21.,21.,21.,21.,21.,22.,22.,22.,22.,22.,22.,22.,23., 23.,23.,23.,23.,23.,23.,24.,24.,24.,24.,24.,24.,24.,25.,25.,25.,25.,25., 25.,25.,26.,26.,26.,26.,26.,26.,26.,27.,27.,27.,27.,27.,27.,27.,28.,28., 28.,28.,28.,28.,28.,29.,29.,29.,29.,29.,29.,29.,30.,30.,30.,30.,30.,30., 30.,31.,31.,31.,31.,31.,31.,31.,32.,32.,32.,32.,32.,32.,32.,33.,33.,33., 33.,33.,33.,33.,34.,34.,34.,34.,34.,34.,34.,35.,35.,35.,35.,35.,35.,35., 36.,36.,36.,36.,36.,36.,36.,37.,37.,37.,37.,37.,37.,37.,38.,38.,38.,38., 38.,38.,38.,39.,39.,39.,39.,39.,39.,39.,40.,40.,40.,40.,40.,40.,40.,41., 41.,41.,41.,41.,41.,41.,42.,42.,42.,42.,42.,42.,42.,43.,43.,43.,43.,43., 43.,43.,44.,44.,44.,44.,44.,44.,44.,45.,45.,45.,45.,45.,45.,45.,46.,46., 46.,46.,46.,46.,46.,47.,47.,47.,47.,47.,47.,47.,48.,48.,48.,48.,48.,48., 48.,49.,49.,49.,49.,49.,49.,49.,50.,50.,50.,50.,50.,50.,50.,51.,51.,51., 51.,51.,51.,51.,52.,52.,52.,52.,52.,52.,52.,53.,53.,53.,53.,53.,53.,53., 54.,54.,54.,54.,54.,54.,54.,55.,55.,55.,55.,55.,55.,55.,56.,56.,56.,56., 56.,56.,56.,57.,57.,57.,57.,57.,57.,57.,58.,58.,58.,58.,58.,58.,58.,59., 59.,59.,59.,59.,59.,59.,60.,60.,60.,60.,60.,60.,60.,61.,61.,61.,61.,61., 61.,61.,62.,62.,62.,62.,62.,62.,62.,63.,63.,63.,63.,63.,63.,63.] + ), + ('MyFieldPG', + [ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13., 14., 15., 16., 17., 18., 19., 20., 21., 22., 23., 24., 25., 26., 27., 28., 29., 30., 31., 32., 33., 34., 35., 36., 37., 38., 39., 40., 41., 42., 43., 44., 45., 46., 47., 48., 49., 50., 51., 52., 53., 54., 55., 56., 57., 58., 59., 60., 61., 62., 63., 64., 65., 66., 67., 68., 69., 70., 71., 72., 73., 74., 75., 76., 77., 78., 79., 80., 81., 82., 83., 84., 85., 86., 87., 88., 89., 90., 91., 92., 93., 94., 95., 96., 97., 98., 99., 100., 101., 102., 103., 104., 105., 106., 107., 108., 109., 110., 111., 112., 113., 114., 115., 116., 117., 118., 119., 120., 121., 122., 123., 124., 125., 126., 127., 128., 129., 130., 131., 132., 133., 134., 135., 136., 137., 138., 139., 140., 141., 142., 143., 144., 145., 146., 147., 148., 149., 150., 151., 152., 153., 154., 155., 156., 157., 158., 159., 160., 161., 162., 163., 164., 165., 166., 167., 168., 169., 170., 171., 172., 173., 174., 175., 176., 177., 178., 179., 180., 181., 182., 183., 184., 185., 186., 187., 188., 189., 190., 191., 192., 193., 194., 195., 196., 197., 198., 199., 200., 201., 202., 203., 204., 205., 206., 207., 208., 209., 210., 211., 212., 213., 214., 215., 216., 217., 218., 219., 220., 221., 222., 223., 224., 225., 226., 227., 228., 229., 230., 231., 232., 233., 234., 235., 236., 237., 238., 239., 240., 241., 242., 243., 244., 245., 246., 247., 248., 249., 250., 251., 252., 253., 254., 255., 256., 257., 258., 259., 260., 261., 262., 263., 264., 265., 266., 267., 268., 269., 270., 271., 272., 273., 274., 275., 276., 277., 278., 279., 280., 281., 282., 283., 284., 285., 286., 287., 288., 289., 290., 291., 292., 293., 294., 295., 296., 297., 298., 299., 300., 301., 302., 303., 304., 305., 306., 307., 308., 309., 310., 311., 312., 313., 314., 315., 316., 317., 318., 319., 320., 321., 322., 323., 324., 325., 326., 327., 328., 329., 330., 331., 332., 333., 334., 335., 336., 337., 338., 339., 340., 341., 342., 343., 344., 345., 346., 347., 348., 349., 350., 351., 352., 353., 354., 355., 356., 357., 358., 359., 360., 361., 362., 363., 364., 365., 366., 367., 368., 369., 370., 371., 372., 373., 374., 375., 376., 377., 378., 379., 380., 381., 382., 383., 384., 385., 386., 387., 388., 389., 390., 391., 392., 393., 394., 395., 396., 397., 398., 399., 400., 401., 402., 403., 404., 405., 406., 407., 408., 409., 410., 411., 412., 413., 414., 415., 416., 417., 418., 419., 420., 421., 422., 423., 424., 425., 426., 427., 428., 429., 430., 431., 432., 433., 434., 435., 436., 437., 438., 439., 440., 441., 442., 443., 444., 445., 446., 447.] + ), + ] + +ref_mass_center = [ [0.94762333243336117, 0.39671811506554749, 0.50000000000000022], [1.2856123659358007, 1.2937176028321535, 0.5], [0.60317166845782599, 1.1866543795235607, 0.49999999999999983], [0.31754942022615412, 0.3498246714004748, 0.49999999999999983], [0.67005418565845731, 0.66874178318868727, 0.49999999999999989], [1.0693170841349982, 0.90625807035941752, 0.49999999999999961], [0.92174856006299788, 1.1991729071340309, 0.49999999999999989], [1.9612936341755762, 0.50348318537092351, 0.50000000000000022], [2.2064075305015223, 1.382444756245496, 0.50000000000000033], [1.566693611827279, 1.2761686507020438, 0.4999999999999985], [1.3634692328068108, 0.45627567992173185, 0.49999999999999956], [1.6733772009850372, 0.76935226549794333, 0.49999999999999967], [2.0337072751412824, 1.0027753030374018, 0.5], [1.8684620659172329, 1.2892131924280825, 0.50000000000000122], [2.9189931607763295, 0.61023957197171785, 0.50000000000000011], [3.0712285806234125, 1.4711617857383916, 0.50000000000000011], [2.4742622100419083, 1.3656631479714718, 0.49999999999999778], [2.353412093878398, 0.56271918249158237, 0.49999999999999994], [2.6207114821730149, 0.86995893152151471, 0.50000000000000011], [2.9420980471289018, 1.0992924611855683, 0.50000000000000056], [2.7591912351279548, 1.3792470911050265, 0.50000000000000155], [3.8207265974811908, 0.71698620423188686, 0.5], [3.8800804506420783, 1.5598670948805409, 0.49999999999999983], [3.3258864500883116, 1.4551347200409823, 0.49999999999999617], [3.2873817694613265, 0.66915422974951189, 0.49999999999999917], [3.5120589475853734, 0.97056125117737468, 0.50000000000000011], [3.7944894614288533, 1.195809536997656, 0.50000000000000033], [3.5939390686114931, 1.4692736164053282, 0.50000000000000289], [1.395304554372264, 1.729157639348992, 0.50000000000000033], [1.7268056439430948, 2.4443749198861071, 0.49999999999999994], [1.139810258382987, 2.3653479708368494, 0.500000000000001], [0.85011258317843807, 1.6959098655987328, 0.5], [1.1699597425216433, 1.9493227901497743, 0.50000000000000067], [1.5237848261919678, 2.1363367169617011, 0.49999999999999933], [1.4119777502635156, 2.3723592442384547, 0.50000000000000122], [2.2689962780471022, 1.8079150043709842, 0.49999999999999917], [2.5076153246062343, 2.5050911293932603, 0.50000000000000056], [1.9633506244485432, 2.4268414277162744, 0.49999999999999983], [1.7560450450810097, 1.774354325997584, 0.49999999999999895], [2.0332907472607107, 2.0219293493545893, 0.50000000000000133], [2.3481769148963831, 2.2048536494459738, 0.49999999999999978], [2.2186967567517417, 2.4343932432074089, 0.49999999999999761], [3.0867278716275299, 1.8866611503992379, 0.50000000000000089], [3.2324609533010822, 2.5657933194298672, 0.49999999999999745], [2.7309545026101438, 2.4883076033333404, 0.50000000000000067], [2.6060084315793559, 1.8527890730110954, 0.50000000000000033], [2.8406372064211651, 2.0945307999080098, 0.49999999999999989], [3.1165699125765931, 2.2733704576614162, 0.49999999999999956], [2.969437069956574, 2.49641854082433, 0.49999999999999784], [3.8485072219503031, 1.9653944053160137, 0.49999999999999956], [3.9013512429912391, 2.6264786853937379, 0.49999999999999778], [3.4426374332033656, 2.5497409925362771, 0.49999999999999883], [3.4000089860484537, 1.9312126164197227, 0.49999999999999928], [3.592002405616304, 2.167126263118837, 0.500000000000002], [3.8289639444548826, 2.341887124172374, 0.500000000000002], [3.6642038641453327, 2.5584334431518974, 0.50000000000000233], [1.8429344844616757, 2.7816785778249042, 0.50000000000000189], [2.1679659779622691, 3.315102842720786, 0.49999999999999806], [1.6764000665080054, 3.264177701250552, 0.50000000000000133], [1.382638564442336, 2.7620638276480811, 0.49999999999999833], [1.6698418778859232, 2.9499351625225807, 0.499999999999995], [1.9782478727650958, 3.0864157767117208, 0.499999999999999], [1.9021965887377699, 3.2655916574943942, 0.49999999999999778], [2.5766471835242943, 2.8324298764678009, 0.500000000000001], [2.8087867799030333, 3.3478080591320842, 0.49999999999999872], [2.3599467247399768, 3.2976509153453302, 0.4999999999999985], [2.1485800293339876, 2.8125032620844279, 0.49999999999999944], [2.3931802866873291, 2.994538072875764, 0.49999999999999778], [2.6626428805340403, 3.1269322229991268, 0.50000000000000389], [2.5689167885216895, 3.2996199266994686, 0.50000000000000289], [3.2544173077164329, 2.883166276531282, 0.49999999999999772], [3.3936602075182747, 3.3804928180330172, 0.500000000000002], [2.9875831612767874, 3.3310847042152356, 0.50000000000000111], [2.8585647653384383, 2.8629298029738561, 0.50000000000000155], [3.0605410224700473, 3.039133864938464, 0.49999999999998429], [3.291039491843855, 3.1674484336067099, 0.49999999999999845], [3.1796671276405557, 3.3336358308716743, 0.49999999999999467], [3.8762597976675011, 2.9338849468785351, 0.50000000000000044], [3.9226037904554003, 3.4131515175119778, 0.50000000000000933], [3.5593394534481599, 3.3644682457320285, 0.49999999999999983], [3.5126042694442949, 2.913340920443205, 0.499999999999999], [3.6719304269254969, 3.0837209228569815, 0.50000000000000178], [3.863438019509482, 3.2079643608852657, 0.49999999999999906], [3.7344576117904769, 3.367636113884751, 0.4999999999999985], [2.2904814857498028, 3.5543397387612528, 0.50000000000000033], [2.6090903782288888, 3.9059611268460475, 0.50000000000000011], [2.2129758537694886, 3.8832556414138799, 0.4999999999999955], [1.9151197415276484, 3.5483358259005939, 0.499999999999999], [2.1696872340043147, 3.6706038571015411, 0.50000000000000089], [2.4326996779192753, 3.7564960681507791, 0.50000000000000544], [2.3924218055122894, 3.8789065824914792, 0.50000000000000289], [2.8841998984957486, 3.5770929042548816, 0.5], [3.1099010903342279, 3.9106625899725782, 0.49999999999999734], [2.7564812412331463, 3.8887241240831254, 0.50000000000000044], [2.5410518329576623, 3.5707774093800757, 0.49999999999999778], [2.7530259835441089, 3.6872060967081546, 0.50000000000000733], [2.9770995873755957, 3.7690116443984794, 0.50000000000000022], [2.919126559752371, 3.8849347437228317, 0.49999999999999017], [3.4220066794895612, 3.5998259701187703, 0.50000000000000044], [3.5547923202814071, 3.9153327789611954, 0.49999999999999695], [3.2441142769906111, 3.8941339824469603, 0.49999999999999833], [3.1110465701398939, 3.5932017735474724, 0.50000000000000067], [3.2803987405891997, 3.7037980999659528, 0.49999999999999811], [3.4655029620569326, 3.7815266686093754, 0.50000000000000155], [3.3898743690402782, 3.8909449368802123, 0.50000000000000033], [3.9039362336420136, 3.6225335025360939, 0.50000000000000155], [3.9438071133822659, 3.9199580829825589, 0.49999999999999684], [3.6759426175928152, 3.8994602051249383, 0.50000000000000133], [3.6251287520188078, 3.6156041296616945, 0.50000000000000044], [3.7518202398148928, 3.7203763939539267, 0.50000000000000144], [3.8979109204672659, 3.7940409553624206, 0.499999999999999], [3.8046879269395544, 3.896929832233293, 0.50000000000000044], [0.94762333243336094, 0.39671811506554761, 1.5000000000000004], [1.2856123659358001, 1.2937176028321535, 1.5], [0.60317166845782566, 1.1866543795235622, 1.5000000000000031], [0.31754942022615407, 0.34982467140047474, 1.4999999999999991], [0.67005418565845787, 0.66874178318868716, 1.5], [1.0693170841349993, 0.90625807035941641, 1.4999999999999987], [0.92174856006299843, 1.1991729071340302, 1.5], [1.9612936341755707, 0.50348318537092407, 1.5000000000000007], [2.2064075305015241, 1.3824447562454969, 1.5000000000000022], [1.5666936118272796, 1.2761686507020471, 1.4999999999999949], [1.3634692328068088, 0.45627567992173196, 1.4999999999999991], [1.6733772009850372, 0.76935226549794167, 1.4999999999999976], [2.0337072751412859, 1.0027753030374011, 1.5], [1.8684620659172388, 1.2892131924280823, 1.5000000000000036], [2.9189931607763513, 0.61023957197172063, 1.5000000000000024], [3.0712285806234059, 1.4711617857383894, 1.5000000000000013], [2.474262210041883, 1.3656631479714754, 1.4999999999999902], [2.3534120938784038, 0.5627191824915817, 1.5000000000000004], [2.6207114821730166, 0.86995893152151482, 1.5000000000000009], [2.9420980471288853, 1.0992924611855623, 1.5000000000000016], [2.7591912351279668, 1.3792470911050214, 1.5000000000000056], [3.8207265974811802, 0.71698620423188375, 1.499999999999998], [3.8800804506420734, 1.559867094880542, 1.499999999999998], [3.3258864500882677, 1.4551347200409841, 1.4999999999999918], [3.2873817694613083, 0.66915422974951322, 1.4999999999999973], [3.5120589475853627, 0.97056125117738057, 1.4999999999999998], [3.7944894614287961, 1.1958095369976693, 1.5000000000000029], [3.59393906861151, 1.4692736164053313, 1.5000000000000155], [1.3953045543722722, 1.7291576393489876, 1.5000000000000004], [1.7268056439431132, 2.444374919886104, 1.5000000000000022], [1.1398102583829886, 2.3653479708368526, 1.5000000000000042], [0.85011258317844074, 1.695909865598733, 1.5000000000000009], [1.1699597425216419, 1.9493227901497767, 1.5000000000000018], [1.5237848261919607, 2.1363367169617011, 1.4999999999999978], [1.4119777502635074, 2.3723592442384609, 1.5000000000000042], [2.2689962780471076, 1.8079150043709773, 1.4999999999999978], [2.5076153246062627, 2.5050911293932585, 1.5000000000000011], [1.963350624448543, 2.4268414277162651, 1.4999999999999953], [1.756045045081005, 1.7743543259975834, 1.4999999999999969], [2.0332907472607049, 2.0219293493545956, 1.5000000000000069], [2.348176914896404, 2.2048536494459752, 1.5000000000000007], [2.2186967567517373, 2.4343932432074138, 1.4999999999999873], [3.0867278716275921, 1.8866611503992379, 1.5000000000000016], [3.232460953301, 2.5657933194298574, 1.4999999999999858], [2.7309545026101589, 2.4883076033333489, 1.500000000000006], [2.6060084315793866, 1.8527890730110959, 1.5000000000000016], [2.8406372064211922, 2.0945307999080107, 1.5], [3.1165699125766215, 2.2733704576614162, 1.4999999999999987], [2.9694370699565842, 2.4964185408243402, 1.499999999999994], [3.8485072219503316, 1.9653944053159991, 1.5], [3.9013512429912356, 2.6264786853937485, 1.4999999999999938], [3.4426374332034193, 2.5497409925362899, 1.4999999999999925], [3.4000089860485074, 1.9312126164197219, 1.4999999999999967], [3.5920024056163022, 2.1671262631188304, 1.5000000000000051], [3.8289639444548964, 2.3418871241724011, 1.5000000000000062], [3.6642038641453101, 2.558433443151872, 1.5000000000000124], [1.8429344844616906, 2.7816785778248603, 1.5000000000000049], [2.1679659779622833, 3.315102842720806, 1.4999999999999867], [1.676400066507993, 3.2641777012505768, 1.5000000000000027], [1.38263856444233, 2.7620638276480851, 1.4999999999999969], [1.6698418778859192, 2.9499351625225949, 1.4999999999999818], [1.9782478727651263, 3.0864157767117475, 1.4999999999999991], [1.9021965887377461, 3.2655916574944626, 1.4999999999999905], [2.5766471835242943, 2.832429876467796, 1.5000000000000067], [2.8087867799030342, 3.3478080591321104, 1.4999999999999962], [2.359946724739971, 3.2976509153453177, 1.4999999999999871], [2.1485800293339685, 2.8125032620844159, 1.4999999999999989], [2.3931802866872931, 2.9945380728757933, 1.4999999999999871], [2.6626428805340914, 3.1269322229991352, 1.5000000000000107], [2.5689167885216131, 3.2996199266994837, 1.5000000000000246], [3.2544173077166034, 2.8831662765312651, 1.4999999999999958], [3.3936602075180655, 3.3804928180329901, 1.5000000000000049], [2.9875831612767874, 3.3310847042152365, 1.499999999999996], [2.8585647653384383, 2.862929802973853, 1.5000000000000051], [3.0605410224700447, 3.0391338649384441, 1.499999999999946], [3.2910394918437409, 3.1674484336067428, 1.4999999999999929], [3.1796671276407276, 3.3336358308716401, 1.4999999999999598], [3.8762597976675579, 2.9338849468785986, 1.5000000000000031], [3.9226037904554705, 3.4131515175118317, 1.5000000000000311], [3.5593394534480507, 3.3644682457320649, 1.4999999999999811], [3.5126042694442998, 2.9133409204432201, 1.5000000000000016], [3.6719304269255759, 3.0837209228569984, 1.5000000000000089], [3.8634380195095148, 3.2079643608852968, 1.4999999999999891], [3.7344576117906332, 3.3676361138847315, 1.4999999999999951], [2.290481485749821, 3.5543397387612243, 1.4999999999999969], [2.6090903782288115, 3.9059611268460737, 1.4999999999999982], [2.2129758537694983, 3.8832556414138604, 1.5000000000000036], [1.9151197415276635, 3.5483358259005606, 1.499999999999994], [2.1696872340043738, 3.6706038571015149, 1.5000000000000064], [2.432699677919318, 3.7564960681509265, 1.5000000000000053], [2.3924218055122042, 3.8789065824914539, 1.5000000000000093], [2.8841998984957997, 3.5770929042549278, 1.5], [3.1099010903337425, 3.9106625899726088, 1.4999999999999944], [2.7564812412330895, 3.8887241240829891, 1.5000000000000042], [2.5410518329576646, 3.5707774093800544, 1.4999999999999956], [2.7530259835441089, 3.6872060967081288, 1.500000000000034], [2.9770995873754651, 3.7690116443983488, 1.500000000000002], [2.9191265597521787, 3.8849347437227726, 1.4999999999999547], [3.4220066794895558, 3.59982597011878, 1.5], [3.5547923202815519, 3.9153327789611412, 1.4999999999999887], [3.2441142769906923, 3.8941339824468657, 1.5000000000000067], [3.1110465701399188, 3.5932017735474604, 1.5000000000000007], [3.28039874058928, 3.7037980999658422, 1.4999999999999925], [3.4655029620569708, 3.7815266686090645, 1.499999999999988], [3.3898743690403488, 3.8909449368805227, 1.499999999999988], [3.9039362336421823, 3.6225335025360001, 1.4999999999999873], [3.9438071133820896, 3.9199580829825589, 1.4999999999999947], [3.6759426175929462, 3.8994602051250937, 1.500000000000004], [3.6251287520186279, 3.6156041296616728, 1.5000000000000029], [3.7518202398147968, 3.7203763939539147, 1.500000000000006], [3.8979109204674489, 3.7940409553624894, 1.4999999999999942], [3.8046879269396392, 3.8969298322331238, 1.4999999999999987], [0.94762333243336028, 0.39671811506554844, 2.4999999999999991], [1.2856123659357976, 1.29371760283215, 2.4999999999999996], [0.60317166845782633, 1.1866543795235613, 2.4999999999999987], [0.3175494202261539, 0.34982467140047502, 2.5000000000000009], [0.67005418565845565, 0.66874178318868638, 2.4999999999999991], [1.069317084135001, 0.90625807035941719, 2.4999999999999991], [0.92174856006299577, 1.199172907134034, 2.5000000000000009], [1.9612936341755758, 0.50348318537092374, 2.4999999999999982], [2.2064075305015249, 1.3824447562454893, 2.5000000000000027], [1.5666936118272798, 1.2761686507020435, 2.5000000000000018], [1.3634692328068097, 0.45627567992173157, 2.4999999999999987], [1.6733772009850341, 0.76935226549794677, 2.5000000000000004], [2.0337072751412739, 1.0027753030374067, 2.5000000000000018], [1.8684620659172364, 1.2892131924280832, 2.5000000000000027], [2.918993160776314, 0.6102395719717193, 2.4999999999999973], [3.0712285806234219, 1.4711617857383916, 2.5000000000000053], [2.4742622100418856, 1.365663147971484, 2.4999999999999964], [2.3534120938783807, 0.56271918249158026, 2.4999999999999996], [2.6207114821730402, 0.86995893152152015, 2.5000000000000004], [2.9420980471289147, 1.0992924611855712, 2.5000000000000044], [2.7591912351279779, 1.3792470911050136, 2.4999999999999978], [3.8207265974811753, 0.7169862042318863, 2.5000000000000022], [3.880080450642049, 1.5598670948805389, 2.5000000000000018], [3.325886450088325, 1.4551347200409837, 2.5000000000000022], [3.2873817694613523, 0.66915422974950733, 2.5000000000000004], [3.5120589475853272, 0.97056125117737002, 2.4999999999999942], [3.7944894614287863, 1.1958095369976756, 2.5000000000000027], [3.5939390686115966, 1.4692736164053464, 2.5000000000000164], [1.3953045543722791, 1.7291576393490014, 2.4999999999999991], [1.7268056439431096, 2.4443749198861191, 2.499999999999992], [1.1398102583829821, 2.365347970836853, 2.500000000000008], [0.85011258317843852, 1.6959098655987432, 2.5000000000000022], [1.1699597425216424, 1.9493227901497725, 2.4999999999999973], [1.5237848261919529, 2.1363367169616891, 2.5000000000000013], [1.4119777502635102, 2.3723592442384933, 2.4999999999999987], [2.2689962780470916, 1.8079150043709833, 2.5000000000000009], [2.5076153246063635, 2.5050911293932909, 2.4999999999999964], [1.9633506244485393, 2.426841427716294, 2.5000000000000018], [1.7560450450810232, 1.7743543259975736, 2.5000000000000013], [2.0332907472606956, 2.0219293493545774, 2.5000000000000107], [2.3481769148963778, 2.2048536494459801, 2.4999999999999925], [2.2186967567517168, 2.4343932432074098, 2.499999999999964], [3.0867278716275921, 1.8866611503992439, 2.4999999999999991], [3.2324609533010351, 2.5657933194299463, 2.4999999999999725], [2.7309545026101425, 2.4883076033333391, 2.5000000000000409], [2.606008431579395, 1.8527890730110934, 2.5000000000000053], [2.8406372064211518, 2.0945307999080045, 2.4999999999999964], [3.1165699125766579, 2.2733704576613998, 2.5000000000000044], [2.9694370699565367, 2.4964185408243704, 2.4999999999999769], [3.8485072219502339, 1.9653944053159877, 2.5000000000000067], [3.9013512429911867, 2.6264786853937472, 2.4999999999999964], [3.4426374332034739, 2.5497409925362451, 2.4999999999999711], [3.4000089860484564, 1.9312126164197168, 2.5000000000000018], [3.5920024056163009, 2.1671262631188624, 2.500000000000008], [3.8289639444550061, 2.3418871241724233, 2.5000000000000102], [3.6642038641454362, 2.5584334431518601, 2.5000000000000284], [1.8429344844616891, 2.7816785778248896, 2.5000000000000031], [2.1679659779624019, 3.3151028427208762, 2.4999999999999667], [1.6764000665079744, 3.2641777012506101, 2.5000000000000013], [1.3826385644423203, 2.7620638276480682, 2.4999999999999911], [1.6698418778859365, 2.9499351625226171, 2.5000000000000178], [1.9782478727651034, 3.0864157767115725, 2.4999999999999938], [1.9021965887377579, 3.2655916574944355, 2.49999999999998], [2.5766471835243205, 2.8324298764677471, 2.5000000000000151], [2.8087867799029373, 3.3478080591320865, 2.5000000000000004], [2.359946724739999, 3.2976509153452707, 2.4999999999999516], [2.1485800293339685, 2.8125032620844257, 2.4999999999999987], [2.3931802866872425, 2.9945380728757951, 2.4999999999999671], [2.6626428805339533, 3.1269322229990482, 2.5000000000000187], [2.5689167885217552, 3.2996199266995361, 2.5000000000000688], [3.2544173077165501, 2.8831662765313384, 2.4999999999999907], [3.3936602075181073, 3.3804928180328342, 2.5000000000000231], [2.9875831612768309, 3.3310847042152769, 2.4999999999999951], [2.8585647653383583, 2.8629298029738339, 2.5000000000000075], [3.0605410224700171, 3.0391338649384565, 2.5000000000000351], [3.2910394918442449, 3.1674484336069049, 2.4999999999999929], [3.1796671276404629, 3.3336358308715983, 2.4999999999998925], [3.8762597976674127, 2.933884946878635, 2.5000000000000089], [3.9226037904552831, 3.413151517511932, 2.5000000000000573], [3.559339453447997, 3.3644682457321391, 2.4999999999999698], [3.5126042694444024, 2.913340920443261, 2.4999999999999853], [3.6719304269255235, 3.0837209228569811, 2.5000000000000044], [3.8634380195097635, 3.2079643608849144, 2.5000000000000098], [3.7344576117904378, 3.3676361138850051, 2.4999999999999916], [2.2904814857498299, 3.5543397387612425, 2.4999999999999876], [2.6090903782287569, 3.9059611268460439, 2.4999999999999853], [2.2129758537695241, 3.8832556414135975, 2.4999999999999885], [1.9151197415276122, 3.548335825900649, 2.499999999999972], [2.1696872340044644, 3.6706038571015505, 2.5000000000000244], [2.4326996779196191, 3.7564960681506614, 2.5000000000000053], [2.392421805512154, 3.8789065824915041, 2.5000000000000169], [2.8841998984957526, 3.5770929042548167, 2.5000000000000302], [3.1099010903336737, 3.9106625899727501, 2.4999999999999685], [2.75648124123326, 3.8887241240830686, 2.4999999999999996], [2.5410518329576428, 3.5707774093800695, 2.4999999999999627], [2.7530259835441471, 3.6872060967082798, 2.5000000000000644], [2.9770995873754078, 3.7690116443978852, 2.5], [2.9191265597522729, 3.8849347437230159, 2.499999999999909], [3.4220066794897224, 3.5998259701187529, 2.4999999999999756], [3.5547923202814182, 3.9153327789611172, 2.4999999999999996], [3.2441142769908078, 3.8941339824473071, 2.5000000000000462], [3.1110465701397647, 3.5932017735476247, 2.4999999999999951], [3.2803987405892912, 3.7037980999653715, 2.5000000000000031], [3.4655029620563949, 3.7815266686093367, 2.5000000000000031], [3.3898743690402782, 3.8909449368807021, 2.5000000000000169], [3.9039362336419212, 3.6225335025360135, 2.5000000000000244], [3.9438071133824417, 3.9199580829825589, 2.5000000000000187], [3.6759426175928054, 3.8994602051250835, 2.500000000000008], [3.625128752018655, 3.6156041296617243, 2.4999999999999947], [3.7518202398148373, 3.7203763939540027, 2.5000000000000009], [3.89791092046748, 3.7940409553618566, 2.4999999999999716], [3.804687926939653, 3.896929832233476, 2.4999999999999925], [0.94762333243336416, 0.39671811506554755, 3.5000000000000018], [1.2856123659357994, 1.2937176028321593, 3.5000000000000031], [0.6031716684578271, 1.1866543795235631, 3.4999999999999876], [0.31754942022615379, 0.34982467140047518, 3.499999999999996], [0.67005418565845754, 0.66874178318868649, 3.4999999999999987], [1.0693170841349975, 0.90625807035941519, 3.4999999999999987], [0.92174856006300498, 1.1991729071340285, 3.499999999999996], [1.9612936341755924, 0.50348318537092507, 3.5000000000000067], [2.2064075305015378, 1.38244475624551, 3.5000000000000178], [1.5666936118272796, 1.2761686507020438, 3.4999999999999742], [1.3634692328068054, 0.45627567992173107, 3.4999999999999925], [1.6733772009850356, 0.76935226549793778, 3.4999999999999876], [2.0337072751412704, 1.0027753030373998, 3.4999999999999982], [1.8684620659172446, 1.2892131924280887, 3.5000000000000187], [2.9189931607763624, 0.61023957197171852, 3.5000000000000107], [3.0712285806234285, 1.4711617857383898, 3.4999999999999902], [2.4742622100418905, 1.3656631479714536, 3.4999999999999507], [2.3534120938783971, 0.5627191824915827, 3.4999999999999964], [2.6207114821730113, 0.86995893152151282, 3.5000000000000036], [2.9420980471288529, 1.099292461185561, 3.5000000000000075], [2.7591912351280268, 1.3792470911050205, 3.5000000000000351], [3.8207265974811992, 0.7169862042318853, 3.4999999999999951], [3.8800804506420516, 1.5598670948805367, 3.4999999999999964], [3.325886450088313, 1.4551347200409834, 3.4999999999999605], [3.287381769461339, 0.66915422974951422, 3.4999999999999929], [3.5120589475853419, 0.97056125117737757, 3.4999999999999925], [3.794489461428828, 1.19580953699767, 3.4999999999999991], [3.5939390686114643, 1.4692736164053213, 3.5000000000000693], [1.3953045543722569, 1.7291576393489811, 3.5000000000000022], [1.7268056439431108, 2.444374919886092, 3.5000000000000093], [1.1398102583829848, 2.3653479708368441, 3.5000000000000089], [0.85011258317843674, 1.6959098655987417, 3.5000000000000009], [1.1699597425216446, 1.9493227901497889, 3.5000000000000084], [1.5237848261919511, 2.1363367169617513, 3.4999999999999996], [1.4119777502635158, 2.3723592442384533, 3.5000000000000271], [2.2689962780470849, 1.8079150043709571, 3.4999999999999933], [2.5076153246062267, 2.5050911293932079, 3.5000000000000058], [1.9633506244485581, 2.4268414277162913, 3.5000000000000009], [1.756045045081011, 1.7743543259976018, 3.4999999999999902], [2.0332907472607191, 2.0219293493545858, 3.5000000000000284], [2.348176914896388, 2.2048536494459801, 3.5000000000000075], [2.2186967567517799, 2.4343932432074165, 3.4999999999999303], [3.086727871627553, 1.8866611503992281, 3.5000000000000053], [3.2324609533012052, 2.5657933194298144, 3.4999999999999152], [2.7309545026101065, 2.4883076033333822, 3.5000000000000582], [2.6060084315793923, 1.8527890730110881, 3.5000000000000018], [2.8406372064212224, 2.0945307999080307, 3.5000000000000071], [3.1165699125764452, 2.2733704576614358, 3.4999999999999858], [2.9694370699566295, 2.4964185408242807, 3.4999999999999845], [3.8485072219503054, 1.9653944053160162, 3.4999999999999964], [3.9013512429911938, 2.6264786853937419, 3.4999999999999725], [3.4426374332033562, 2.5497409925362442, 3.4999999999999694], [3.4000089860483369, 1.9312126164197634, 3.4999999999999969], [3.5920024056163591, 2.1671262631188344, 3.500000000000016], [3.8289639444548156, 2.3418871241723713, 3.5000000000000173], [3.6642038641453181, 2.5584334431518885, 3.5000000000000688], [1.8429344844616937, 2.7816785778248478, 3.5000000000000213], [2.1679659779623264, 3.3151028427205889, 3.4999999999999303], [1.6764000665079972, 3.26417770125052, 3.4999999999999849], [1.382638564442314, 2.7620638276481086, 3.4999999999999942], [1.6698418778859234, 2.9499351625225456, 3.4999999999999032], [1.9782478727652961, 3.0864157767118998, 3.5000000000000049], [1.902196588737683, 3.2655916574944408, 3.4999999999999454], [2.5766471835242455, 2.8324298764677316, 3.500000000000004], [2.8087867799030972, 3.3478080591320873, 3.4999999999999818], [2.3599467247399155, 3.2976509153453497, 3.4999999999999041], [2.1485800293339761, 2.8125032620843697, 3.4999999999999907], [2.3931802866873486, 2.9945380728758337, 3.4999999999999569], [2.6626428805340234, 3.1269322229993306, 3.5000000000000262], [2.5689167885215776, 3.2996199266991875, 3.5000000000001332], [3.254417307716384, 2.8831662765312891, 3.4999999999999916], [3.3936602075183631, 3.3804928180330749, 3.5000000000000266], [2.987583161276731, 3.3310847042152267, 3.4999999999999836], [2.8585647653383965, 2.8629298029739085, 3.5000000000000049], [3.0605410224700829, 3.0391338649384618, 3.4999999999997975], [3.2910394918434371, 3.1674484336066007, 3.499999999999996], [3.1796671276408031, 3.333635830871716, 3.4999999999997913], [3.8762597976675131, 2.9338849468786012, 3.4999999999999942], [3.9226037904556139, 3.4131515175118459, 3.5000000000001279], [3.5593394534482914, 3.3644682457318242, 3.4999999999999316], [3.5126042694442918, 2.9133409204431922, 3.5000000000000044], [3.6719304269257864, 3.0837209228569757, 3.5000000000000293], [3.8634380195096143, 3.2079643608854114, 3.5000000000000253], [3.7344576117906843, 3.367636113884684, 3.4999999999999956], [2.2904814857497899, 3.5543397387612901, 3.4999999999999951], [2.6090903782285717, 3.9059611268463406, 3.500000000000016], [2.2129758537694992, 3.8832556414138666, 3.500000000000028], [1.9151197415276859, 3.5483358259005695, 3.4999999999999858], [2.1696872340042499, 3.6706038571015545, 3.5000000000000018], [2.4326996779195516, 3.7564960681506863, 3.5000000000000382], [2.3924218055123876, 3.8789065824917568, 3.5000000000000271], [2.8841998984958397, 3.577092904254763, 3.4999999999999862], [3.1099010903341222, 3.9106625899725977, 3.4999999999999973], [2.7564812412332174, 3.8887241240826294, 3.4999999999999982], [2.5410518329576406, 3.5707774093801148, 3.5000000000000191], [2.7530259835440725, 3.6872060967078593, 3.5000000000001483], [2.9770995873757795, 3.7690116443986925, 3.4999999999999845], [2.9191265597523062, 3.8849347437229427, 3.4999999999997664], [3.4220066794894444, 3.5998259701187663, 3.4999999999999654], [3.5547923202818414, 3.9153327789612136, 3.4999999999999356], [3.2441142769903375, 3.8941339824466588, 3.5000000000000098], [3.1110465701400205, 3.5932017735473507, 3.4999999999999996], [3.2803987405888613, 3.7037980999664271, 3.4999999999999574], [3.4655029620570916, 3.7815266686086901, 3.5000000000000218], [3.3898743690404456, 3.8909449368801337, 3.4999999999999796], [3.9039362336417995, 3.6225335025364989, 3.4999999999999574], [3.943807113381737, 3.9199580829826028, 3.4999999999999596], [3.6759426175933441, 3.899460205124559, 3.5000000000000635], [3.6251287520184414, 3.6156041296619916, 3.5000000000000409], [3.7518202398145579, 3.7203763939539862, 3.500000000000036], [3.8979109204676017, 3.7940409553624357, 3.5000000000000213], [3.8046879269392848, 3.8969298322328534, 3.4999999999999694]] +ref_volume = [0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937, 0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937, 0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937, 0.2307479, 0.15204144, 0.19605815, 0.24402906, 0.25322044, 0.13539794, 0.15197308, 0.2160346, 0.14138917, 0.18234545, 0.22845154, 0.23639212, 0.12632931, 0.14146982, 0.2018309, 0.13110621, 0.16910217, 0.21340714, 0.22014299, 0.11757428, 0.13132831, 0.1881368, 0.12119257, 0.15632831, 0.19889586, 0.20447304, 0.10913285, 0.12154857, 0.1593864, 0.10358834, 0.13421564, 0.16917946, 0.17428482, 0.0929404, 0.10399294, 0.1472211, 0.09478267, 0.12285004, 0.15626754, 0.1603524, 0.08543977, 0.09529848, 0.1355654, 0.08634631, 0.11195386, 0.14388874, 0.14699917, 0.07825274, 0.08696578, 0.1244193, 0.07827927, 0.1015271, 0.13204306, 0.13422512, 0.07137931, 0.07899484, 0.1007649, 0.06436824, 0.08410863, 0.10765786, 0.1098287, 0.05832286, 0.06505681, 0.0911476, 0.05740917, 0.07509013, 0.09741154, 0.09879218, 0.05239023, 0.05817114, 0.0820399, 0.05081941, 0.06654105, 0.08769834, 0.08833485, 0.0467712, 0.05164724, 0.0734418, 0.04459897, 0.05846139, 0.07851826, 0.0784567, 0.04146578, 0.0454851, 0.0548834, 0.03438114, 0.04573713, 0.05946426, 0.05985208, 0.03154533, 0.03516467, 0.0478141, 0.02926867, 0.03906573, 0.05188354, 0.05171146, 0.0271807, 0.03008781, 0.0412544, 0.02452551, 0.03286375, 0.04483594, 0.04415003, 0.02312967, 0.02537271, 0.0352043, 0.02015167, 0.02713119, 0.03832146, 0.03716778, 0.01939224, 0.02101937] + +# create a new 'ELGA field To Surface' +eLGAfieldToSurface2 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface2', Input=pG_3Dmed) +eLGAfieldToSurface2.UpdatePipeline() + +print(" ~> Geometry check") +test_geom(eLGAfieldToSurface2, np.array(ref_mass_center), np.array(ref_volume)) + +for field_name, ref in fields: + print(" ~> Field check for field {}".format(field_name)) + test_fields(eLGAfieldToSurface2, np.array(ref), field_name) + +### +# Test of VoroGauss1.med +### + +fname = os.path.join(data_dir, "VoroGauss1.med") +meshName="mesh" +mm=MEDFileUMesh() +coords=DataArrayDouble([0,0, 1,0, 2,0, 3,0, 4,0, 5,0, 0,1, 1,1, 2,1, 0,2, 1,2, 3,1, 4,1],13,2) +m0=MEDCouplingUMesh(meshName,2) +m0.setCoords(coords) +m0.allocateCells() +m0.insertNextCell(NORM_TRI3,[2,3,8]) +m0.insertNextCell(NORM_TRI3,[3,4,11]) +m0.insertNextCell(NORM_TRI3,[4,5,12]) +m0.insertNextCell(NORM_TRI3,[6,7,9]) +m0.insertNextCell(NORM_TRI3,[7,8,10]) +m0.insertNextCell(NORM_QUAD4,[0,1,7,6]) +m0.insertNextCell(NORM_QUAD4,[1,2,8,7]) +mm[0]=m0 +m1=MEDCouplingUMesh(meshName,1) +m1.setCoords(coords) +m1.allocateCells() +m1.insertNextCell(NORM_SEG2,[0,1]) +m1.insertNextCell(NORM_SEG2,[1,2]) +m1.insertNextCell(NORM_SEG2,[2,3]) +m1.insertNextCell(NORM_SEG2,[3,4]) +m1.insertNextCell(NORM_SEG2,[4,5]) +mm[-1]=m1 +mm.setFamilyFieldArr(0,DataArrayInt([-1,-1,-2,-3,-3,-1,-3])) +mm.setFamilyFieldArr(-1,DataArrayInt([-1,-4,-4,-4,-1])) +for i in [-1,-2,-3,-4]: + mm.setFamilyId("Fam_%d"%i,i) + mm.setFamiliesOnGroup("G%d"%(abs(i)),["Fam_%d"%i]) + pass +mm.write(fname,2) +# +f0=MEDCouplingFieldDouble(ON_GAUSS_PT) +f0.setMesh(m0) +f0.setName("MyFieldPG") ; f0.setMesh(m0) +f0.setGaussLocalizationOnType(NORM_TRI3,[0,0, 1,0, 0,1],[0.1,0.1, 0.8,0.1, 0.1,0.8],[0.3,0.3,0.4]) +f0.setGaussLocalizationOnType(NORM_QUAD4,[-1,-1, 1,-1, 1,1, -1,1],[-0.57735,-0.57735,0.57735,-0.57735,0.57735,0.57735,-0.57735,0.57735],[0.25,0.25,0.25,0.25]) +arr=DataArrayDouble(f0.getNumberOfTuplesExpected()) ; arr.iota() +arr=DataArrayDouble.Meld(arr,arr) +arr.setInfoOnComponents(["comp0","comp1"]) +f0.setArray(arr) +WriteFieldUsingAlreadyWrittenMesh(fname,f0) +# +f1=MEDCouplingFieldDouble(ON_CELLS) +f1.setMesh(m0) +f1.setName("MyFieldCell") ; f1.setMesh(m0) +arr=DataArrayDouble(f1.getNumberOfTuplesExpected()) ; arr.iota() +arr=DataArrayDouble.Meld(arr,arr) +arr.setInfoOnComponents(["comp2","comp3"]) +f1.setArray(arr) +WriteFieldUsingAlreadyWrittenMesh(fname,f1) + +# create a new 'MED Reader' +voroGauss1med = MEDReader(registrationName='VoroGauss1.med', FileName=fname) +voroGauss1med.AllArrays = ['TS0/mesh/ComSup0/MyFieldCell@@][@@P0', + 'TS0/mesh/ComSup0/MyFieldPG@@][@@GAUSS'] +voroGauss1med.AllTimeSteps = ['0000'] +print("Testing {}".format(fname)) +voroGauss1med.UpdatePipeline() + +# create a new 'ELGA field To Surface' +eLGAfieldToSurface3 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface3', Input=voroGauss1med) +eLGAfieldToSurface3.UpdatePipeline() + +ref_mass_center = [ [2.2250000000000001, 0.22499999999999998, 0], [2.6361344537815126, 0.1780112044817927, 0], [2.1780112044817925, 0.63613445378151257, 0], [3.2250000000000001, 0.22499999999999998, 0], [3.636134453781513, 0.17801120448179258, 0], [3.178011204481793, 0.63613445378151268, 0], [4.2249999999999996, 0.22499999999999998, 0], [4.6361344537815121, 0.1780112044817927, 0], [4.1780112044817912, 0.63613445378151257, 0], [0.22499999999999998, 1.2250000000000001, 0], [0.63613445378151257, 1.1780112044817928, 0], [0.1780112044817927, 1.6361344537815126, 0], [1.2250000000000001, 1.2250000000000001, 0], [1.6361344537815126, 1.1780112044817928, 0], [1.1780112044817919, 1.6361344537815115, 0], [0.25, 0.25, 0], [0.75, 0.24999999999999994, 0], [0.75, 0.75, 0], [0.24999999999999997, 0.75, 0], [1.25, 0.25, 0], [1.75, 0.25, 0], [1.75, 0.75, 0], [1.25, 0.75, 0]] + +ref_volume = [0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.2025, 0.14875, 0.14875, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, ] + +print(" ~> Geometry check") +test_geom(eLGAfieldToSurface3, np.array(ref_mass_center), np.array(ref_volume)) + +fields = [('MyFieldCell', + [[0., 0.], [0., 0.], [0., 0.], [1., 1.], [1., 1.], [1., 1.], [2., 2.], [2., 2.], [2., 2.], [3., 3.], [3., 3.], [3., 3.], [4., 4.], [4., 4.], [4., 4.], [5., 5.], [5., 5.], [5., 5.], [5., 5.], [6., 6.], [6., 6.], [6., 6.], [6., 6.]] + ), + ('MyFieldPG', + [[ 0., 0.], [ 1., 1.], [ 2., 2.], [ 3., 3.], [ 4., 4.], [ 5., 5.], [ 6., 6.], [ 7., 7.], [ 8., 8.], [ 9., 9.], [10., 10.], [11., 11.], [12., 12.], [13., 13.], [14., 14.], [15., 15.], [16., 16.], [17., 17.], [18., 18.], [19., 19.], [20., 20.], [21., 21.], [22., 22.]] + ) + ] + +for field_name, ref in fields: + print(" ~> Field check for field {}".format(field_name)) + test_fields(eLGAfieldToSurface3, np.array(ref), field_name) + +### +# Test for hexa element +### + +#[ 1 ] : 185 189 205 201 186 190 206 202 +file_name = os.path.join(data_dir, "simple_mesh.med") +coords = [0.024000, 0.024000, 1.200000, #185:0 + 0.024000, 0.048000, 1.200000, #186:1 + 0.048000, 0.024000, 1.200000, #189:2 + 0.048000, 0.048000, 1.200000, #190:3 + 0.024000, 0.024000, 1.600000, #201:4 + 0.024000, 0.048000, 1.600000, #202:5 + 0.048000, 0.024000, 1.600000, #205:6 + 0.048000, 0.048000, 1.600000, #206:7 + ] + +conn = [0,2,6,4,1,3,7,5] + + +mesh=MEDCouplingUMesh("MESH", 3) + +mesh.allocateCells(1) +mesh.insertNextCell(NORM_HEXA8, conn) + +mesh.finishInsertingCells() + +coords_array = DataArrayDouble(coords, 8, 3) +mesh.setCoords(coords_array) +mesh.checkConsistencyLight() +WriteMesh(file_name, mesh, True) + +fieldGauss=MEDCouplingFieldDouble.New(ON_GAUSS_PT,ONE_TIME); +fieldGauss.setMesh(mesh); +fieldGauss.setName("RESU____EPSI_NOEU"); +fieldGauss.setTimeUnit("s") +fieldGauss.setTime(0.0,1,-1) + + +hexa8CooGauss = [-0.577350, -0.577350, -0.577350, + -0.577350, -0.577350, +0.577350, + -0.577350, +0.577350, -0.577350, + -0.577350, +0.577350, +0.577350, + +0.577350, -0.577350, -0.577350, + +0.577350, -0.577350, +0.577350, + +0.577350, +0.577350, -0.577350, + +0.577350, +0.577350, +0.577350 + ] +hexa8CooRef = [ -1.000000, -1.000000, -1.000000, + -1.000000, +1.000000, -1.000000, + +1.000000, +1.000000, -1.000000, + +1.000000, -1.000000, -1.000000, + -1.000000, -1.000000, +1.000000, + -1.000000, +1.000000, +1.000000, + +1.000000, +1.000000, +1.000000, + +1.000000, -1.000000, +1.000000 + ] +wg8 = [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]; +fieldGauss.setGaussLocalizationOnType(NORM_HEXA8,hexa8CooRef,hexa8CooGauss,wg8); + +nbTuples=8 +array=DataArrayDouble.New(); +values=[ + -5.65022e-05,-5.6733e-05 , 0.000179768,-3.56665e-07,-7.22919e-07,-0.00020561, + 5.65022e-05, 5.6733e-05 ,-0.000179768,-3.56665e-07, 7.22919e-07,-0.00020561, + -5.63787e-05,-5.65226e-05, 0.000179703,-1.43488e-07,-2.4061e-07 ,-0.000207459, + 5.63787e-05, 5.65226e-05,-0.000179703,-1.43488e-07, 2.4061e-07 ,-0.000207459, + -2.49762e-05,-2.40288e-05, 9.05803e-05, 2.53861e-06, 2.20988e-07,-0.000207793, + 2.49762e-05, 2.40288e-05,-9.05803e-05, 2.53861e-06,-2.20988e-07,-0.000207793, + -2.49587e-05,-2.41105e-05, 9.05832e-05, 9.76774e-07, 3.27621e-08,-0.000210835, + 2.49587e-05, 2.41105e-05,-9.05832e-05, 9.76774e-07,-3.27621e-08,-0.000210835 + ] +array.setValues(values, nbTuples, 6); +array.setInfoOnComponents(["EPXX", "EPYY", "EPZZ", "EPXY", "EPXZ", "EPYZ"]) +fieldGauss.setArray(array); +fieldGauss.checkConsistencyLight(); + +WriteFieldUsingAlreadyWrittenMesh(file_name, fieldGauss) + + +fieldGauss2=MEDCouplingFieldDouble.New(ON_GAUSS_PT,ONE_TIME); +fieldGauss2.setMesh(mesh); +fieldGauss2.setName("RESU____SIGM_NOEU"); +fieldGauss2.setTimeUnit("s") +fieldGauss2.setTime(0.0,1,-1) + +fieldGauss2.setGaussLocalizationOnType(NORM_HEXA8,hexa8CooRef,hexa8CooGauss,wg8); + +nbTuples=8 +array=DataArrayDouble.New(); +values=[ + -1.06652e+06, -1.1038e+06 , 3.71003e+07 , -57615.2, -116779 , -3.3214e+07, + 1.06652e+06 , 1.1038e+06 , -3.71003e+07, -57615.2, 116779 , -3.3214e+07, + -1.01401e+06, -1.03727e+06, 3.71223e+07 , -23178.9, -38867.8, -3.35127e+07, + 1.01401e+06 , 1.03727e+06 , -3.71223e+07, -23178.9, 38867.8 , -3.35127e+07, + 1.00241e+06 , 1.15545e+06 , 1.96692e+07 , 410084 , 35698.1 , -3.35666e+07, + -1.00241e+06, -1.15545e+06, -1.96692e+07, 410084 , -35698.1, -3.35666e+07, + 997783 , 1.1348e+06 , 1.96622e+07 , 157787 , 5292.34 , -3.40579e+07, + -997783 , -1.1348e+06 , -1.96622e+07, 157787 , -5292.34, -3.40579e+07 + ] +array.setValues(values, nbTuples, 6); +array.setInfoOnComponents(["SIXX", "SIYY", "SIZZ", "SIXY", "SIXZ", "SIYZ"]) +fieldGauss2.setArray(array); +fieldGauss2.checkConsistencyLight(); + +WriteFieldUsingAlreadyWrittenMesh(file_name, fieldGauss2) + +# create a new 'MED Reader' +simple_meshmed = MEDReader(registrationName='simple_mesh.med', FileName=file_name) +simple_meshmed.AllArrays = ['TS0/MESH/ComSup0/RESU____EPSI_NOEU@@][@@GAUSS', + 'TS0/MESH/ComSup0/RESU____SIGM_NOEU@@][@@GAUSS'] +simple_meshmed.AllTimeSteps = ['0000'] +print("Testing {}".format(file_name)) +simple_meshmed.UpdatePipeline() + +# create a new 'ELGA field To Surface' +eLGAfieldToSurface4 = ELGAfieldToSurface(registrationName='ELGAfieldToSurface4', Input=simple_meshmed) +eLGAfieldToSurface4.UpdatePipeline() + + +fields = [('RESU____EPSI_NOEU', + [ + [-5.65022e-05,-5.6733e-05 , 0.000179768 , -3.56665e-07, -7.22919e-07, -0.00020561], + [ 5.65022e-05, 5.6733e-05 , -0.000179768, -3.56665e-07, 7.22919e-07 , -0.00020561], + [-5.63787e-05,-5.65226e-05, 0.000179703 , -1.43488e-07, -2.4061e-07 , -0.000207459], + [ 5.63787e-05, 5.65226e-05, -0.000179703, -1.43488e-07, 2.4061e-07 , -0.000207459], + [-2.49762e-05,-2.40288e-05, 9.05803e-05 , 2.53861e-06 , 2.20988e-07 , -0.000207793], + [ 2.49762e-05, 2.40288e-05, -9.05803e-05, 2.53861e-06 , -2.20988e-07, -0.000207793], + [-2.49587e-05,-2.41105e-05, 9.05832e-05 , 9.76774e-07 , 3.27621e-08 , -0.000210835], + [ 2.49587e-05, 2.41105e-05, -9.05832e-05, 9.76774e-07 , -3.27621e-08, -0.000210835], + ]), + ('RESU____SIGM_NOEU', + [ + [-1.06652e+06, -1.1038e+06 , 3.71003e+07 , -57615.2, -116779 , -3.3214e+07], + [1.06652e+06 , 1.1038e+06 , -3.71003e+07, -57615.2, 116779 , -3.3214e+07], + [-1.01401e+06, -1.03727e+06, 3.71223e+07 , -23178.9, -38867.8, -3.35127e+07], + [1.01401e+06 , 1.03727e+06 , -3.71223e+07, -23178.9, 38867.8 , -3.35127e+07], + [1.00241e+06 , 1.15545e+06 , 1.96692e+07 , 410084 , 35698.1 , -3.35666e+07], + [-1.00241e+06, -1.15545e+06, -1.96692e+07, 410084 , -35698.1, -3.35666e+07], + [997783 , 1.1348e+06 , 1.96622e+07 , 157787 , 5292.34 , -3.40579e+07], + [-997783 , -1.1348e+06 , -1.96622e+07, 157787 , -5292.34, -3.40579e+07], + + ]) + ] + +ref_mass_center = [ [0.030000000000000041, 0.029999999999999947, 1.3000000000000034], [0.029999999999999968, 0.042000000000000086, 1.2999999999999967], [0.04200000000000001, 0.030000000000000013, 1.3000000000000036], [0.042000000000000051, 0.042000000000000107, 1.2999999999999954], [0.030000000000000058, 0.030000000000000103, 1.499999999999992], [0.029999999999999912, 0.041999999999999808, 1.5000000000000067], [0.041999999999999836, 0.030000000000000041, 1.4999999999999989], [0.042000000000000134, 0.041999999999999961, 1.5000000000000013]] + +ref_volume = [2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05, 2.88e-05] + +print(" ~> Geometry check") +test_geom(eLGAfieldToSurface4, np.array(ref_mass_center), np.array(ref_volume)) + +for field_name, ref in fields: + print(" ~> Field check for field {}".format(field_name)) + test_fields(eLGAfieldToSurface4, np.array(ref), field_name) diff --git a/src/Plugins/VoroGauss/plugin/Test/tests.set b/src/Plugins/VoroGauss/plugin/Test/tests.set new file mode 100644 index 00000000..f0adbc46 --- /dev/null +++ b/src/Plugins/VoroGauss/plugin/Test/tests.set @@ -0,0 +1,28 @@ +# Copyright (C) 2012-2020 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +SET(TEST_NAMES + test_VoroGauss + ) + +SET(all_src + PG_3D.med + testMEDReader14.med + test_VoroGauss.py + )