Table of Contents
Commit 2014-12-02
Modifications
Transfert de donnée - CGAL
Ajout des méthodes de transfert de données utilisant un supermaillage (dans mtExactDataTransfer_CGAL
)
- Méthode de transfert utilisant des volumes finis avec un calcul exact du couplage entre les maillages
- Méthode de transfert utilisant les éléments joints (Mortar Elements) avec un calcul exact du couplage entre les maillages
Ces méthodes de transfert sont décrites en détail dans l'article suivant:
Ces méthodes de transfert utilisent la librairie CGAL uniquement pour le calcul de l'intersection entre les éléments des deux maillages (dans la classe ExactCouplingElement
).
CGAL
La version 4.0.5 de CGAL est installée sur thorgal et blueberry.
Sur mon PC j'utilise la version 4.4 de CGAL
- Boost
Boost:
- télécharger boost_1_55_0-msvc-11.0-64.exe
- installer dans
F:\LibsCGALVS2012\boost_1_55_0
- Ajouter les variables d'environnement suivantes:
BOOST_LIBRARYDIR
=F:\LibsCGALVS2012\boost_1_55_0\lib64-msvc-11.0
BOOST_INCLUDEDIR
=F:\LibsCGALVS2012\boost_1_55_0
CGAL
- télécharger CGAL-4.4-Setup.exe
- installer avec l'option GMP and MPFR precompiled libs dans F:\CGAL\CGAL-4.4
- Avec CMake Gui:
- source code:
F:\CGAL\CGAL-4.4
- bin:
F:\CGAL\CGAL-4.4\build
- dans la configuration CMake redéfinir la variable
CMAKE_INSTALL_PREFIX
=F:/LibsCGALVS2012/CGAL-4.4
- Générer le projet et le compiler avec VS2012
- compiler le projet INSTALL → copie des fichiers dans
F:/LibsCGALVS2012/CGAL-4.4
Ajouter au Path:
F:\LibsCGALVS2012\boost_1_55_0\lib64-msvc-11.0
F:\LibsCGALVS2012\CGAL-4.4\bin
F:\CGAL\CGAL-4.3\auxiliary\gmp\lib
CMake
Ajout de ces lignes dans les fichiers Cmake
des stations (thorgal.cmake
et blueberry.cmake
)
SET(METAFOR_USE_CGAL ON CACHE BOOL "" FORCE) SET(CGAL_LIB_DIR "/usr/lib" CACHE INTERNAL "") SET(GMP_LIBRARIES_DIR "/usr/lib" CACHE INTERNAL "") SET(Boost_LIBRARY_DIRS "/usr/lib" CACHE INTERNAL "")
SET(CGAL_INCL_DIR "/usr/include" CACHE INTERNAL "") SET(GMP_INCLUDE_DIR "/usr/include" CACHE INTERNAL "") SET(Boost_INCLUDE_DIRS "/usr/include/boost" CACHE INTERNAL "")
SET(CGAL_LIBS "CGAL" CACHE PATH "" FORCE)
Ajout de ces lignes dans mon fichier Cmake
(win64-vs2012-CGAL.cmake
)
SET(METAFOR_USE_CGAL ON CACHE BOOL "" FORCE) SET(CGAL_LIB_DIR "F:/LibsCGALVS2012/CGAL-4.4/lib" CACHE INTERNAL "") SET(GMP_LIBRARIES_DIR "F:/CGAL/CGAL-4.4/auxiliary/gmp/lib" CACHE INTERNAL "") SET(Boost_LIBRARY_DIRS "F:/LibsCGALVS2012/boost_1_55_0/lib64-msvc-11.0" CACHE INTERNAL "")
SET(CGAL_INCL_DIR "F:/LibsCGALVS2012/CGAL-4.4/include" CACHE INTERNAL "") SET(GMP_INCLUDE_DIR "F:/CGAL/CGAL-4.4/auxiliary/gmp/include" CACHE INTERNAL "") SET(Boost_INCLUDE_DIRS "F:/LibsCGALVS2012/boost_1_55_0" CACHE INTERNAL "")
SET(CGAL_LIBS "${CGAL_LIB_DIR}/*.lib;${GMP_LIBRARIES_DIR}/*.lib" CACHE PATH "" FORCE)
Tests
Ajout de tests en 2D et 3D pour les méthodes de transfert avec calcul exact du couplage entre les maillages dans le répertoire oo_meta/mtExactDataTransfer_CGAL/tests
Tests - CGAL - Windows
Différences entre ma battery (windows) avec et sans CGAL (fichier Windows-diff
):
FAILED-Windows-msvc.txt
mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - failed! - missing! mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - failed! - missing! mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - failed! - missing! mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - failed! - missing! mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - failed! - missing! mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - failed! - missing!
STP-Windows-msvc.txt
mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - Number of steps - missing! - 2 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - Number of steps - missing! - 2 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - Number of steps - missing! - 2
ITE-Windows-msvc.txt
mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - Number of mech. iterations - missing! - 1
EXT-Windows-msvc.txt
mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Error on Field(TO,RE) After Transfer in % - missing! - -0.117214 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Error on IF_EPL After Transfer in % - missing! - -0.117214 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Mean of Field(TO,RE) After Transfer - missing! - 49.939 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Mean of Field(TO,RE) Befor Transfer - missing! - 49.9976 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Mean of IF_EPL After Transfer - missing! - 49.939 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Mean of IF_EPL Befor Transfer - missing! - 49.9976 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - meanEPL - missing! - 78.222 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - meanTemperature - missing! - 78.3892 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - pressure (comp 0) - missing! - 26.8388 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - time - missing! - 2 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Error on Field(TO,RE) After Transfer in % - missing! - 2.66659e-011 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Error on IF_EPL After Transfer in % - missing! - 2.66202e-011 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Mean of Field(TO,RE) After Transfer - missing! - 14.0625 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Mean of Field(TO,RE) Befor Transfer - missing! - 14.0625 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Mean of IF_EPL After Transfer - missing! - 20.3125 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Mean of IF_EPL Befor Transfer - missing! - 20.3125 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - meanEPL - missing! - 16.0494 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - meanTemperature - missing! - 11.1111 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - pressure (comp 0) - missing! - 7.18671e-011 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - time - missing! - 2 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Error on Field(TO,RE) After Transfer in % - missing! - 2.65901e-011 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Error on IF_EPL After Transfer in % - missing! - 2.66202e-011 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Mean of Field(TO,RE) After Transfer - missing! - 14.0625 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Mean of Field(TO,RE) Befor Transfer - missing! - 14.0625 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Mean of IF_EPL After Transfer - missing! - 20.3125 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Mean of IF_EPL Befor Transfer - missing! - 20.3125 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - meanEPL - missing! - 16.0494 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - meanTemperature - missing! - 11.1111 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - pressure (comp 0) - missing! - 7.82475e-011 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - time - missing! - 2
LKS-Windows-msvc.txt
mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Sum of memory leaks - missing! - 0 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - Sum of memory leaks - missing! - 0 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Sum of memory leaks - missing! - 12948 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - Sum of memory leaks - missing! - 0 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Sum of memory leaks - missing! - 13128 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - Sum of memory leaks - missing! - 0
CPU-Windows-msvc.txt
mtExactDataTransfer_CGAL.tests.disk3D_LocMort_2 - Real Data transfer Remeshing CPU Time - missing! - 62.761 mtExactDataTransfer_CGAL.tests.disk3D_LocMort_3 - User CPU Time - missing! - 0.0312002 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_2 - Real Data transfer Remeshing CPU Time - missing! - 220.473 mtExactDataTransfer_CGAL.tests.rotMesh_FVTMCell_CGAL_3 - User CPU Time - missing! - 0.0312002 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_2 - Real Data transfer Remeshing CPU Time - missing! - 36.533 mtExactDataTransfer_CGAL.tests.rotMesh_LocMTMCell_CGAL_3 - User CPU Time - missing! - 0
Fichiers ajoutés/supprimés
[a]:oo_meta/mtExactDataTransfer_CGAL [a]:oo_meta/mtExactDataTransfer_CGAL/_src [a]:oo_meta/mtExactDataTransfer_CGAL/src [a]:oo_meta/mtExactDataTransfer_CGAL/tests [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactCouplingElement.cpp [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactFVTMCell.cpp [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactFVTMCellElShcuts.cpp [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactMTMCell.cpp [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactMTMCellElShcuts.cpp [a]:oo_meta/mtExactDataTransfer_CGAL/src/mtExactDataTransfer_CGAL.cpp [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactCouplingElement.h [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactFVTMCell.h [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactFVTMCellElShcuts.h [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactMTMCell.h [a]:oo_meta/mtExactDataTransfer_CGAL/src/ExactMTMCellElShcuts.h [a]:oo_meta/mtExactDataTransfer_CGAL/src/mtExactDataTransfer_CGAL.h [a]:oo_meta/mtExactDataTransfer_CGAL/_src/mtExactDataTransfer_CGAL.i [a]:oo_meta/mtExactDataTransfer_CGAL/__init__.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/__init__.py [a]:oo_meta/mtExactDataTransfer_CGAL/_src/CMakeLists.txt [a]:oo_meta/mtExactDataTransfer_CGAL/src/CMakeLists.txt
Tests ajoutés/supprimés
[a]:oo_meta/apps/remeshing/disk3D_ETM_1.py [a]:oo_meta/apps/remeshing/disk3D_ETM_2.py [a]:oo_meta/apps/remeshing/disk3D_ETM_3.py [a]:oo_meta/apps/remeshing/disk3D_FVTM_1.py [a]:oo_meta/apps/remeshing/disk3D_FVTM_2.py [a]:oo_meta/apps/remeshing/disk3D_FVTM_3.py [a]:oo_meta/apps/remeshing/disk3D_GlobMort_1.py [a]:oo_meta/apps/remeshing/disk3D_GlobMort_2.py [a]:oo_meta/apps/remeshing/disk3D_GlobMort_3.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/disk3D_LocMort_1.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/disk3D_LocMort_2.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/disk3D_LocMort_3.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/rotMesh_FVTMCell_CGAL_1.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/rotMesh_FVTMCell_CGAL_2.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/rotMesh_FVTMCell_CGAL_3.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/rotMesh_LocMTMCell_CGAL_1.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/rotMesh_LocMTMCell_CGAL_2.py [a]:oo_meta/mtExactDataTransfer_CGAL/tests/rotMesh_LocMTMCell_CGAL_3.py
— Philippe BUSSETTA 2014/–/–