Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2014:12_02

This is an old revision of the document!


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
Pour plus d'information, sur l'utilisation de ces méthodes voir la documentation sur le transfert de données dans le cadre du remaillage

Ces méthodes de transfert sont décrites en détail dans l'article suivant:

P. Bussetta, R. Boman and J.-P. Ponthot. Efficient 3D data transfer operators based on numerical integration. International Journal for Numerical Methods in Engineering 2014; XX:xxx-xxx, doi: 10.1002/nme.4821

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.

Dans la version actuelle de Metafor, CGAL n'est pas nécessaire pour la battery windows.

Sur mon PC j'utilise la version 4.4 de CGAL

Installation de CGAL VS2012:

Boost:

  • 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

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/–/–

commit/2014/12_02.1417518653.txt.gz · Last modified: 2016/03/30 15:22 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki