1. 12 Nov, 2020 1 commit
    • Alexis SALZMAN's avatar
      [CMAKE] Add option to xTensor and xMapping creation · 8ce1bff4
      Alexis SALZMAN authored
      xTensor and xMapping library were not managed by any options. For sure
      both may/are (I don't know) needed by almost all other libraries. But it
      is not the question of "need" but the question of "when" that those new
      option answer to.
      
      In many free project the moto to get them in use is
      "configure/cmake, make, make install"
      
      Here if we consider that all ours repositories works like that, xFiles
      and xTest and ...(Applis) may be compiled separately with steps:
      "make install"
      Introducing those options gives a way to avoid xMapping and xTensor
      compilation all the time. They are compiled and installed when dealing
      with xFiles. Then there is no need to compile then for  XTest ....
      Actual vision is to use the same GEMUtil CMakelist.txt and switch option.
      That introduce this constraint but maybe in future we will split that
      file in some peaces : option block, Xfiles, xTest, APPLI.
      8ce1bff4
  2. 10 Nov, 2020 1 commit
    • Nicolas CHEVAUGEON's avatar
      m] library xGeomTools added · bc14d18b
      Nicolas CHEVAUGEON authored
      Main changes :
      - A new library xGeomTools is added in xGeom.
        *This library is meant to collect "simple" geometrical classes/functions.
         By "simple" we mean that they dependent only on xtensor, and xtool.
        *All the classes and functions of xGeomTools are in namespace xgeom.
        *For this commit it contains :
         xBoundingBox.h/cc, xOctreeGrid.h, xRegularGrid.h/cc, xSimpleGeometry.h,
         moved from xTensor or xFEM.
        *Previous library xGeom is split in two libraries : xDistanceNearest and
         xScanElement in respectivevly xGeom/xDistanceNearest
         and xGeom/xScanElement,
        *The old xGeom library do not exist any more.
        *Note that the 3 libraries contained in directory xGeom populate
         the namespace xGeom.
        *Global build option BUILD_XGEOM is removed.
        *Global build option BUILD_XGEOMTOOLS, BUILD_XDISTANCENEAREST,
          BUILD_XSCANELEMENT are added.
        *xGeom/CMakeLists.txt is removed
        *xUTil/cmakeUtil :
         FindxGeomTools.cmake, FindxDistanceNearest.cmake, FindxScanElement.cmake
         added, FindxGeom.cmake is removed.
        *xAnalyticalSolution, xCrack, xDoubleCut, xLegacySimpleCut, xDomainDecomp,
         xExport, xExt, xFEM, xInterfaceAOMD, xMeshInterface, xOctree, xMapping,
         xTLS, now depend on  xGeomTools.
        *xOctree and xTLS now depends on xDistanceNearest
      - xBoundingBox :
        *added member functions  inclose(), now used in xMesh, xSubMesh
        and xLagrangeMapping.
        *added default constructor and constructor for 2 xPoint.
        *default constructor now build an  empty "bb"  by havinh min(i) > max (i)
      - xRegularGrid : dependencies to xMesh are removed.
      - xMesh.h :  part of previous xOctreeGrid that was dependent of xMesh are
        no directly implemented in xMesh. (see xMesh::createGrid() and
        xMesh::locateElement)
      
      Miscanelous changes along the way (removing useless dependencies)
      - xValue.cc : removed "useless" inclusions of "xApproxFunction.h",
        "xField.h", "xLevelSet.h", "xSpacePolynomial.h", "xTensors.h",
        "xTensorsPtr.h" "xVector.h" as well as useless using AOMD::mEdge
        and using AOMD::mEntity.
      - xValue.h : removed useless inclusions of  <set>,
        <boost/graph/adjacency_list.hpp>, <boost/graph/connected_components.hpp>,
        "xTensorsPtr.h", "xDebug.h", "xNearestNeighborInterface.h"
      - xValue_imp.h : removed useless includes "mEdge.h" and "xGeomeElem.h"
      - xValueManager.h - removed dependencies to xMesh.
      - some of AOMD include cascading in other files because of the previous
        removed inclusion were putting std::string in global namespace.
        std::string is now added in the following files :
        std::string xExport.h, xExportEnsight, xExportGmsh.h
        xExportTranslate.cc/h, xField.h, xFEM/src/xSpacePolynomial.h.
      - xData.cc inside void xData::ReadInfo(const char *filename),
        unused variable xBoundary crvboundary; is removed.
      - all modified and added files are clang-formatted.
      bc14d18b
  3. 05 Nov, 2020 1 commit
    • Nicolas CHEVAUGEON's avatar
      [xFEM/test] added 2 atomic test for 3d search structure · a7cd5a68
      Nicolas CHEVAUGEON authored
      First, I added a test directory inside xFEM for xFEM Atomic test that was missing. (As usual Atomic test means that the test do not need other library that the current tested library dependencies)
      A new Build option is added, corresponding to the xFEM Atomic test  : BUILD_XFEM_TEST. It must be set to ON in your parent CMakeFiles.txt for this test to be builded, thanks to the Xfiles/CMakeLists.txt that will add the subdirectory xFEM/test to the build if BUILD_XFEM_TEST is set to ON
      
      In xFEM/test I added two tests cases :
      testxOctreeGrid and testxRegularGrid, along with there references.
      
      Some other tests from in Xtest/xfem-seq-test for example could also be moved here.
      a7cd5a68
  4. 09 Sep, 2020 1 commit
  5. 09 Jun, 2020 1 commit
    • Nicolas CHEVAUGEON's avatar
      [xmapping] added atomic test for xmapping library · c1f59b73
      Nicolas CHEVAUGEON authored
      added atomic test in xmapping library. There were none and it will be needed soon since the implementation of mapping will change in the process to move to the mesh interface.
      
      atomic test added here :
      xMapping/test/testxLagrangeMapping/main.cc
      with xMapping/test/CMakeLists.txt.
      Xfile CMakeLists.txt : added the inclusion of the test case.
      
      other small changes :
      
      * xtensor/xTensor2.h :  removed useless inclusion of xTensor4.h
      
      *Trellis/Util/Util/calculus/Mapping.h,
       Trellis/Util/Util/include/mTensor2.h : added some documentations.
      
      all the modifyied .cc/.h were clang-formated
      c1f59b73
  6. 27 May, 2020 1 commit
  7. 09 Dec, 2019 1 commit
    • Nicolas CHEVAUGEON's avatar
      remove the depencies of xFEM on xExport · 967e0a06
      Nicolas CHEVAUGEON authored
          Before the current commit, we had the problem that the xfem library depends on the export library and vice versa. This cyclic dependencies causes lot of problemes for the build.
          In particular, it was very difficult to make some of our test case build with cmake version 3.13.4
          To make xFEM independant of xExport, the main task was to move the Export algorithms out of the xFEM library. All these algorithm are now implemented in xExportAlgorithm.h/cc int the xExport library, under the xexport name space.
          That done, some dependencies remained in the xVectorLevelset.h/cc. This file previously contain our first version of vectorlevelset (that came before the signed vector distance function) and the first version of the 2d doublecut algorithm, embedded in the class xPhysSurfVLS. The class xPhysSurfVLS itself has been moved where I think it belong, to xCut/xLegacy and the xcut namespace in file xPhysSurfVLS.h/cc. This being done we are one step closer to also have removed the cyclic dependencies between xfem and xcut.
          Most of the other changes in the library reflect the fact that we now have to include xExportAlgorithm.h to have access to the Export algorithm which is now in name space xexport. The same work as been done in the xTest repository and will be commited next.
          A small "bug" in  xUtil/cmakeUtil/FindNoHeaderLibrary.cmake as also been corrected. (it was always printing lapack REQUIRED whatever the library that was missing)
      
       + small modif in FindTAUCS.cmake. It was freezing when TAUCS_INCLUDE_PATH was not set.
      
      Squashed commit of the following:
      
      commit 1f50932ee6a6a4dde8cd35d5793112a6f4b934d4
      Merge: 9e3ba9e db82eb04
      Author: Nicolas CHEVAUGEON <nchevaug@titan.ec-nantes.fr>
      Date:   Mon Dec 9 10:36:16 2019 +0100
      
          Merge remote-tracking branch 'origin/master' into remove_xexport_dep
      
      commit 9e3ba9e57013dfa2de1e39163b29faa409a2cb21
      Author: Nicolas CHEVAUGEON <nchevaug@titan.ec-nantes.fr>
      Date:   Mon Dec 9 10:02:36 2019 +0100
      
          finishing the move of Export algo to xexport.
          + small modif in FindTAUCS.cmake. It was freezing when TAUCS_INCLUDE_PATH was not set.
      
      commit fa64d29ddc406acd5225774b7aae487072b0666c
      Merge: 8a6a9557 f94d6e0
      Author: Nicolas CHEVAUGEON <nchevaug@titan.ec-nantes.fr>
      Date:   Fri Dec 6 12:05:11 2019 +0100
      
          Merge branch 'tryingtobuild' of http://git.gem.ec-nantes.fr/nchevaugeon/Xfiles_Save into remove_xexport_dep
      
      commit f94d6e0b722c7066f526d7e45970a2c02ed27d9d
      Author: chevaugeon <nicolas.chevaugeon@ec-nantes.fr>
      Date:   Fri Dec 6 09:38:34 2019 +0100
      
      commit b3ac48f0d5d5d29ea8ab8f5798775e607598525b
      Author: chevaugeon <nicolas.chevaugeon@ec-nantes.fr>
      Date:   Wed Dec 4 16:30:33 2019 +0100
      
          remove the depencies of xFEM on xExport
      
          Before the current commit, we had the problem that the xfem library depends on the export library and vice versa. This cyclic dependencies causes lot of problemes for the build.
          In particular, it was very difficult to make some of our test case build with cmake version 3.13.4
          To make xFEM independant of xExport, the main task was to move the Export algorithms out of the xFEM library. All these algorithm are now implemented in xExportAlgorithm.h/cc int the xExport library, under the xexport name space.
          That done, some dependencies remained in the xVectorLevelset.h/cc. This file previously contain our first version of vectorlevelset (that came before the signed vector distance function) and the first version of the 2d doublecut algorithm, embedded in the class xPhysSurfVLS. The class xPhysSurfVLS itself has been moved where I think it belong, to xCut/xLegacy and the xcut namespace in file xPhysSurfVLS.h/cc. This being done we are one step closer to also have removed the cyclic dependencies between xfem and xcut.
          Most of the other changes in the library reflect the fact that we now have to include xExportAlgorithm.h to have access to the Export algorithm which is now in name space xexport. The same work as been done in the xTest repository and will be commited next.
          A small "bug" in  xUtil/cmakeUtil/FindNoHeaderLibrary.cmake as also been corrected. (it was always printing lapack REQUIRED whatever the library that was missing)
      967e0a06
  8. 14 Jun, 2019 1 commit
    • Gilles MARCKMANN's avatar
      refactoring 2019: renames namespace, creates new directories, ... · e6039c6a
      Gilles MARCKMANN authored
          rename directory and namespaces. Modifications below:
      
          Original directory (Master)    ->             New directory (refactoring)                 Namespace (refactoring)
          ===========================                   ===========================                 =======================
      
          Xfiles:
          =======
      
          Util
             |_eXlibris_tools                           xTool                                     xtool::
             |
             |                                          xUtil
             |_cmakeUtile                                   |_cmakeUtile
             |
             |_FloUtil                                      attic
             |_Split                                        attic
             |_doxygen_tools                                attic
             |_tags_tools                                   attic
      
          Xcrack                                        xCrack
               |_ xCrack                                     |_ src                               xcrack::
               |
               |_ xCrackFMM                                  attic
      
          Xcut                                          xCut
             |_XdoubleCut                                  |_xDoubleCut                           xcut::
      
          Xdomaindecomp                                 xDomainDecomp
                      |_DomainManager                               |_DomainManager               xdomaindecomp::
                      |_Solvers                                     |_Solver                      xdomaindecomp::
      
          Xext
             |_AnalyicalSolutions                       xAnalyticalSolution
             |                  |_Elastic2D                               |_Elastic2D             xanalyticalsolution::
             |
             |_Xext                                     xExt
                  |_src                                    |_src                                  xext::
                  |
                  |_ImageProcessing                        attic
      
          Xfem
             |_Xfem ___________________________________ xFEM                                      xfem::
                                               \_______ xCut
                                                \          |_xLegacySimpleCut                     xcut::
                                                 \
                                                  \____ xExport                                   xexport::
                                                   \___ xTensor                                   xtensor::
                                                    \__ xMapping                                  xmapping
                                                     \_ xQuadrature                               xquadrature::
      
          FastMarching                                  xFastMarching
                     |_src                                          |_src                         xfastmarching::
                     |   |_FMSkeleton                               |   |_Skeleton                xfastmarching::skeleton
                     |                                              |
                     |_xDistFM                                      |_xDistFM                     xfastmarching::
                             |_xDistFM                                      |_src                 xfastmarching::
      
          Geom                                          xGeom                                     xgeom::
      
          Xinterfaces                                   xInterface
                    |_XAOMDInterface                             |_AOMD                           xinterface::aomd::
                    |                                            |
                    |_GraphInterface                             |_Graph
                    |              |_ParMetis                    |     |_ParMetis                 xinterface::parmetis::
                    |                                            |
                    |_XoctreeInterface                           |_xOctree                        xinterface::xoctree::
                    |                                                    |
                    |_xSplitMeshInterface                                |_xTemplateRefineMesh    xinterface::xtempaterefinemesh::
                    |
                    |
                    |_SolverInterfaces                   xLinAlg
                                     |_SolverBase              |_SolverBase                       xlinalg::
                                     |_SuperLu                 |_xInterfaceSuperLu                xlinalg::
                                     |_Taucs                   |_xInterfaceTaucs                  xlinalg::
                                     |_Lapack                  |_xInterfaceTaucs                  xlinalg::
                                     |_Mumps                   |_xInterfaceMumps                  xlinalg::
                                     |_BasicIterSolver         |_xInterfaceBasicIterSolver        xlinalg::
                                     |_Pastix                  |_xInterfacePastix                 xlinalg::
                                     |
                                     |_NonLinearSolver         attic
                                     |_PetscParallel           attic
                                     |_PetscSeq                attic
                                     |_SparsKit                attic
                                     |_Itl                     attic
                                     |_Mtl                     attic
                                     |_KSPParallel             attic
      
          MeshMachine                                   xMeshTools
                    |_DistMesh                                   |_xDistMesh                      xmeshtool::
                    |_SplitMesh                                  |_xTemplateRefineMesh            xmeshtool::
                    |
                    |_FastMarching                               attic
                    |_LinearAlgebra                              attic
                    |_Stlmesh                                    attic
      
          Octree                                        xOctree                                   xoctree::
      
          Physics
                |_Physics                               xPhysics
                        |_Materials                            |_Materials                        xphysics::
                        |_src                                  |_src                              xphysics::
      
          xTLS
             |_trunck
             |_xTLS                                     xTLS                                      xtls::
      
          ============================================================================================
      
          Xfem splitting:
          ===============
      
          xCut
             |_src
                 |__ xDoubleCut
                 |             |__(unchanged)
                 |
                 |__ xLegacySimpleCut
                                    |__ xPhysSurfByTagging.cc
                                    |__ xPhysSurfByTagging.h
                                    |__ xPhysSurf.cc
                                    |__ xPhysSurf.h
                                    |__ xPhysSurfParameter.cc
                                    |__ xPhysSurfParameter.h
                                    |__ xRefCut.cc
                                    |__ xRefCut.h
                                    |__ xRefCutToAOMD.cc
                                    |__ xRefCutToAOMD.h
                                    |__ xRefCutToIsoZeroVector.cc
                                    |__ xRefCutToIsoZeroVector.h
                                    |__ xRefMesh.cc
                                    |__ xRefMesh.h
      
          xExport
                |_src
                    |__ xExport.cc
                    |__ xExportEnsight.cc
                    |__ xExportEnsight.h
                    |__ xExportGmsh.cc
                    |__ xExportGmsh.h
                    |__ xExportGmsh_imp.h
                    |__ xExport.h
                    |__ xExportManager.cc
                    |__ xExportManager.h
                    |__ xExportTranslate.cc
                    |__ xExportTranslate.h
                    |__ xPostPro.cc
                    |__ xPostPro.h
                    |__ xPostProMSH.cc
                    |__ xPostProMSH.h
                    |__ xPostProVTU.cc
                    |__ xPostProVTU.h
                    |__ xSensors.cc
                    |__ xSensors.h
      
          xTensor
                |_src
                    |__ xPoint.h
                    |__ xTensor2.cc
                    |__ xTensor2.h
                    |__ xTensor2Sym.cc
                    |__ xTensor2Sym.h
                    |__ xTensor3.h
                    |__ xTensor4.h
                    |__ xTensorOperations.h
                    |__ xVector.cc
                    |__ xVector.h
                    |__ xVectorScalarProd.h
      
      =============================================================================================
          cmake variables rules for module Xfiles/xFoe (no more Xfiles/Xfoe) :
      
                Xfiles/xFoe  => find_package(xFoe)  => xFoe_INCLUDE_DIR  / xFoe_LIBRARIES
      
          in C++ source files, namespace are in lower cases: xfoe
      
      =============================================================================================
      
          New xfastmarching namespace have been introduced but pack/unPack helping function
          must remain in :: namescpace (i.e. in no namescpace). This is to let FMupdaterGeneric
          call ::pack  ::unPack in a generic way (no assumption on VECT or TRANSPORTED
          namespace)
      
      =============================================================================================
      
          Macro Super for SuperLU 5 (experimental ) added in xinterface superlu
      
      =============================================================================================
      
          modifiyed xCSRVector.h and cc so that the .h does not include xBlasDef.h since it can produce conflict when including xVector.h in superLU interface
      
      =============================================================================================
      e6039c6a
  9. 05 Jun, 2018 1 commit
    • Rebecca NAKHOUL's avatar
      Fix some CMake bugs · ad0699fd
      Rebecca NAKHOUL authored
      FindMetis : the location of metis.h wasn't always workingm depending on the Cmake install
      Find for boost where needed
      ad0699fd
  10. 03 May, 2018 1 commit
  11. 18 Apr, 2018 1 commit
    • Alexis SALZMAN's avatar
      Xdomaindecomp: Add a new library to deal with domain decomposition resolution · 195533de
      Alexis SALZMAN authored
      This library is not indented to replace huge project like PETSC. It is just
      a little library to test basic domain decomposition method and provide some
      hint on those method in the context of eXlibris.
      
      A DomainManager folder contain the concept of encapsulating a double manager
      (that have to be in a prescribe state) to offer basic domain decomposition services:
       *provide a DeclareState method to set the state of the dofs
       *provide a Visit method to communicate with embedded double manager (write,
        read, ... via xWriteSolutionVisitor, ...)
      
      xDomainDecomp is the abstract class that describe this general concept
      
      A xDomainDecompSchur class instantiate a concrete version of this
      concept related with Schur complement usage. This version consider that
      a domain is held by only one proc. Schur dof are the one that are
      connected to remote proc. Other experimental concrete version
      (xDomainDecompSchurLarger and xDomainDecompSchurMultiProc) consider
      that a domain span on more than one proc but is fully contained on those
      proc (i.e a proc may not have  part of different domain).
      
      A other folder, Solvers, hold the concept of linear solver for domain
      decomposition problem. It has the same interface as the last
      linear solver interface provided by SolverInterfaces library (
      conectMatrix,symb,fact,solve).
      A folder MUMPS correspond to the concrete implementation of this domain
      solver with use of MUMPS as background solver. In particular
      xLinearDomainSolverMumpsSchurIterthe correspond to the context where
      domains are known by their Schur complement and the global condensed
      unassembled dense problem is solved by an iterative solver (
      lalg::xBasicIterSolver).
      
      Those solver are driven by xDomainDecomp instance (traits).
      195533de
  12. 28 Mar, 2018 1 commit
  13. 09 Jan, 2018 1 commit
    • Gilles MARCKMANN's avatar
      Squashed commit of the following: · 418b9ec4
      Gilles MARCKMANN authored
      Author: Salzman Alexis <alexis.salzman@ec-nantes.fr>
      Date:   Fri Dec 1 13:36:40 2017 +0100
      
          Remove find MPI4 and set_cxx_compiler
      
          I originally add set_cxx_compiler to handle TAU warper and complete FIND MPI3 with LIGER specific search in
          FIND MPI4. It gives me a quick solution to use titan,liger,... but was not working so well regarding mandatory fortran MPI libray required by MUMPS (F90 library)
          Both changes, as pointed by N.C., where a insane way of dealing with MPI project when using CMAKE.
      
          This commit try to propose a more "conventional" way of doing those thinks.
          * Now find is done with official find MPI function provided with CMAKE
          * Now compiler used for all compilation is the C++ compiler, not the MPI warper.
      
          FINDMPI provide include and libs in MPI_<LANG>_INCLUDE_PATH and MPI_<LANG>_LIBRARIES.
          This setting have been used where it have to. In fact it is almost everywhere now, as we switch eXlibris in MPI. But I did want to trace real usage of those MPI material. So please don't add those include and library in a top level CMakefile.txt
      
          This work shows that many files have been changed, too many .... But clearly it show that in term of dependency eXlibris_tools (in particular for xMPIEnv) depend on MPI include and libraries. Then all library/executable using eXlibris_tools will depend on MPI. It turns out that using transitiveness of last CMAKE functionality would have transform this work into a simple modification of one target, other inhering naturally those changes .... I hope that one day we come to use thing like that ...
      
          Now regarding what does "find FINDMPI" it is an other story. We may hope that next version will be more "efficient". This commit have been test on the following:
          titan: centos7 + mvapich2.2 (rpm install) + g++ 4.8.2
          titan: centos7 + mvapich2.2 (rpm install) + g++ 4.8.2 + TAU
          liger: Red Hat Enterprise Linux Server release 6.6 + intel mpi + intel compiler (back end g++ 4.9)
          desktop: fedora core 19 + mpich3 (rpm install) + g++ 4.8.3
          laptop: OpenSuse 42.3 + openmpi 10  + g++ xxx
          On all those platform some setting where in fact provided in LocalConfig.cmake that correspond more or less to what we where expecting from FINDMPI.
          Anyway the good aspect is that now adapted setting are not anymore introduced in a proprietary FINDMPI with a huge maintenance cost and a arguable performance.
          Those adapted setting are :
          * MPI_<C,CXX,Fortran>_COMPILER (in LocalConfig): If you need to set compiler for one language do it for all( In some platforme FINDTRHEAD need C lanquage to be activate which imply for FINDMPI, with required argument, that MPI_C_COMPILER is found even if we don't need it). Fortran use here and there imply fortran language enable and like C impose a MPI fortran compiler available. I don't think that this constraint is so important as in general an MPI library provide all those compilers.
          For tau giving taucc,taucxx and tauf90 is fine and works nicely.
          * MPIEXEC (in LocalConfig): surprisingly FINDMPI is not giving always the launcher corresponding to the given compiler !? Typically for titan it gives the hpmpi version ? On liger it was found by FINDMPI but in fact mpirun was the correct launcher to use with  impi. This commit have modified all test so that they use those  MPIEXEC,MPIEXEC_NUMPROC_FLAG,MPIEXEC_PREFLAGS and MPIEXEC_POSTFLAGS variable. Please maintain this way of writing.
          * for intel mpi compiled with ifort an extra ifcore library must be provided at linking stage (see main CMakeFile.txt)
      
          Not that now there is only one call find_package(MPI REQUIRED) in the top CMakeLists.txt (GemUtil). The idea is that you use this files for all what you need (Appli,lib,Atomic,test,...). By including machine dependent feature and doing appropriate test it permit to have every thing normally working.
      
          TTK is to be treated ... soon and hopefully like said above.
          ====================
      
          This commit check Atomic and Xtest test:
          On all those platforms  4 tests crash:
          front
          cube_planar_crack
          geometricderivative
          singular3d_one
      
          (mostly related to something in xLevelset new // version)
      
          And ~9 test give inappropriate results compare to reference when ndiff was available in those platform.
          (to be investigate. But already: spacePolyOctree has been not modified at time
           of some change in spaces => it naturally cannot work anymore)
      
      Author: Salzman Alexis <alexis.salzman@ec-nantes.fr>
      Date:   Wed Nov 22 14:23:17 2017 +0100
      
          cmake: retrieving Atomic strategy of master branch + some debug
      
          Atomic test are back in top buildir location
          Atomic are now under BUILD_ATOMIC family options only (if you want to
          run atomic test on already installed library or in the course of
          compiling needed library or in a step by step manner it is possible )
          =>Change CMakeLists.txt of atomic test so that they can be done
          independently of the library it test.
      
          Miscellaneous bug correction (with G.M.):
          * in some test correct way of launching program
          * add a FindLinearAlgebra for Atomic LinearAlgebra test
          * good test in FindXmodule so that ERROR message stop process
          * set_cxx_compiler: This function should not exist. When someone get time a look
           to tau warper may give a way to use standard standard CMAKE project
           language selection with MPI include. Then library given by standard MPI
           find and some extra stuff for TAU will be used with CXX compiler found
           by cmake. Anyway, bugg here was related to newer version of CMAKE that
           refuse to change variable setted in parent scope when setting them in
           the cache. An extra setting n this function using PARENT_SCOPE correct
           this problem.
          * Remove add_definitions in CMakeLists.txt file of eXlibris_tools so
            that xMPIENV is not using any imposed initialisation. This have to be
            modified in the source. But I don't have a nett solution for now so
            it stays like that for the moment
      
      Author: Gilles Marckmann <gilles.marckmann@ec-nantes.fr>
      Date:   Tue Nov 14 17:52:30 2017 +0100
      
          suppress set_internal( )command and replace with suitable add_definition(...) at the bottom level if needed
          correction of bug in definitions of tests for ctest
      
      Author: Gilles Marckmann <gilles.marckmann@ec-nantes.fr>
      Date:   Tue Nov 14 14:00:49 2017 +0100
      
          split Util/cmakeUtil/FindSolverInterfaces.cmake  into :
      
                   Util/cmakeUtil/FindInterfaceKSPParallel.cmake
                   Util/cmakeUtil/FindInterfaceLapack.cmake
                   Util/cmakeUtil/FindInterfaceMtl.cmake
                   Util/cmakeUtil/FindInterfaceMumps.cmake
                   Util/cmakeUtil/FindInterfaceNonLinearSolver.cmake
                   Util/cmakeUtil/FindInterfacePastix.cmake
                   Util/cmakeUtil/FindInterfacePetscParallel.cmake
                   Util/cmakeUtil/FindInterfacePetscSeq.cmake
                   Util/cmakeUtil/FindInterfaceSparsKit.cmake
                   Util/cmakeUtil/FindInterfaceSuperLu.cmake
                   Util/cmakeUtil/FindInterfaceTaucs.cmake
                   Util/cmakeUtil/FindSolverBase.cmake
      
          Split  Xinterfaces/SolverInterfaces/CMakeLists.txt into:
      
                   Xinterfaces/SolverInterfaces/Itl/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/KSPParallel/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/Lapack/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/Itl/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/KSPParallel/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/Lapack/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/PetscParallel/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/PetscSeq/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/SolverBase/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/Mtl/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/NonLinearSolver/CMakeLists.txt
                   Xinterfaces/SolverInterfaces/Taucs/CMakeLists.txt
      
          Split find_package(SolverInterfaces) into appropriate find_package(Interface<Solver>):
      
      Author: Salzman Alexis <alexis.salzman@ec-nantes.fr>
      Date:   Tue Nov 14 09:46:49 2017 +0100
      
          Miscellaneous modification
      
          FindLAPACK2
          ===========
          use of function instead of particular hand made instruction
      
          FindMETIS.cmake
          ===============
          detail
      
          FindMPI4
          ========
          order of mpi fortran lib for liger
      
          FindNoHeaderLibrary/FindStandardLibrary (from G.M. and A.S. work)
          =================================================================
          reshaping those function so that one call the other for lib and
          when user give a path find stick to hit and not to everywhere below it.
      
          common_functions.cmake
          ======================
          add is_not_installed function for LocalConfig.cmake file
          correct bug on link
      
          CMakeLists.txt of SolverInterfaces
          ==================================
          update
      
          Xfem/Xfem/src/xRefMesh.h
          ========================
          comment #define so that associated option do something
      
      Author: Gregory Legrain <gregory.legrain@ec-nantes.fr>
      Date:   Thu Nov 9 18:07:44 2017 +0100
      
              * Options have to be set from the main CmakeLists.txt.
              If you want to build a standalone component of the library, you should
              adapt its CMakeLists.txt by befining the required options
      
              * Replace XXXX_APPLI by USE_XXXX
      
      Author: Gregory Legrain <gregory.legrain@ec-nantes.fr>
      Date:   Wed Nov 8 21:30:27 2017 +0100
      
          Fix a warning in FindBLAS2.cmake (cmake 3.9)
          Fix an issue in FindMPI4.cmake : do not reset MPI_PREFIX_PATH if it was
          already set from outside
      
      Author: Salzman Alexis <alexis.salzman@ec-nantes.fr>
      Date:   Wed Nov 8 15:18:01 2017 +0100
      
          cmake: general option related to ATOMIC test is now in cmakefiles
      
          NOTE:
          As mentioned in previous commit, general atomic option is now used
          where it have to, instead of having a painful function to maintain.
      
          Somme option have been removed. Here situation have to be clarified.
          Most option are general and have them on top CMAKEFILE is natural.
          Setting then in intermediate CMAKEFILE is somehow painful to maintain,
          and removing them from those intermediate files look like a
          simplification.
          But some others are less general. For example if in Xcut we don't need
          GEOM but in XFEM yes what do we do with the potential USE_GEOM on top
          CMAKEFILE. A solution is to comment it and set it to "off" in XCUT CMAKEFILE
          and "on" in XFEM CMAKEFILE ...and then we would be glade that they
          already exist....
      
          So this commit has just removed few intermediate option declaration. But
          reflection must progress on this aspect ... if we keep this system.
      
      Author: Salzman Alexis <alexis.salzman@ec-nantes.fr>
      Date:   Tue Nov 7 16:10:44 2017 +0100
      
          cmake: to stick to NEW policy with 3.7 version
      
      Author: Salzman Alexis <alexis.salzman@ec-nantes.fr>
      Date:   Fri Oct 27 19:40:44 2017 +0200
      
          cmakeUtil: add force_atomic function to follow new option BUILD_ATOMIC_TEST
      
          See commit in GemUtil for explanation. Should be removed when all cmake
          will take into account the BUILD_ATOMIC_TEST option
      
      Author: Gilles Marckmann <gilles.marckmann@ec-nantes.fr>
      Date:   Mon Oct 16 14:51:26 2017 +0200
      
          All CMakeLists.txt have been modified to take into account :
      
          1. Ability to turn ON or OFF the verbosity of the CMakeLists.txt while executing cmake
             command: Option VERBOSE has been added. It works with a new function message_verbose()
             defined in Xfiles/Util/cmakeUtil/common_functions.cmake. This function displays a
             string variable:
      
                   set(text  "my text to print when option VERBOSE is ON")
                   message_verbose(text)
      
          2. Customization of installation path:
      
             2.1. LIBRARIES_INSTALL_PATH is a new cmake variable which describes the destination
             	of the librairies (where they will be installed or where they are installed).
                	If this variable is not defined, libraries will be installed in ${DEVROOT}/lib,
          	like in the previous CMakeLists version.
      
             2.2. EXECUTABLES_INSTALL_PATH is a new cmake variable which describes the destination
                 	of the executables (where tests will be writen). If this variable is not defined,
                 	libraries will be writen in the build directory of the executable, like in the
                 	previous CMakeLists version. The ARCHOS suffix is added to the name of the test
          	to create the name of the executable. In this way, several executables can be
          	written in the same test directory but can be distinguished. Nevertheless, the
          	test names for ctest command are the name of the test-cases without ARCHOS suffix.
          	Thus, the ctest command executes the latest built executables.
      
          3. Simplification of the find_XXX.cmake = find_package(XXX) :
      
             3.1. findXmodule.cmake describes a new function standardizing the find_package() of
             	each module of eXlibris (Xfem, Octre, Xcut, ...) in the present organization.
              	(See examples in FindXfem.cmake, FindOctree.cmake, ...). Modules are searched:
          		- as a target if any,
          		- in the subdirectory ARCHOS or the LIBRARIES_INSTALL_PATH,
          		- a FATAL_ERROR appears if the module is NOTFOUND or void.
          		- includes are always known as DEVROOT is known.
          		- when FOUND, librairies are forced in the cache to ensure unicity.
          		  A message is displayed even if VERBOSE is OFF.
          	     	- when the library and includes are known, no more search is done
          		  (the cache variables are taken and displayed if VERBOSE is ON),
          		- mark_as_advanced() functions are removed so that libraries can be
          		  displayed in cmake GUIs.
      
             3.2. External librairies are searched in a new ways:
      
             	3.2.1. In the DEVROOT directory, a new file called ExternalLibrariesPaths.cmake
          	       describes the path of external librairies (ANN, CGAL, MPI, ...). All
          	       directory containing the libraries to find can be set() with the name
          	       <the library>_LIBRARY_PATH and <the library>_INCLUDE_PATH.
          	       Default paths can be set() in CMAKE_PREFIX_PATH for libraries and
          	       CMAKE_SYSTEM_PREFIX_PATH for MPI (See example in
          	       GeMUtil/ExternalLibrariesPaths_titan.cmake)
      
          	3.2.2. cmakeUtil/FindStandardLibrary.cmake describes a new function to find a
          	       library and its include directory (see example in FindITL.cmake or
          	       FindANN.cmake). A FATAL_ERROR appears if the library or includes are
          	       NOTFOUND.
      
          	3.2.3. cmakeUtil/FindNoHeaderLibrary.cmake describes a new function to find a
          	       library without includes (see example in FindSUPERLU.cmake). A FATAL_ERROR
          	       appears if the library is NOTFOUND.
      
          	3.2.4  For the sake of consistency FindAOMDInterfaceGeneral.cmake has been renamed
          	       in FindXAOMDInterfaceGeneral.cmake. Library variable is
          	       XAOMDInterfaceGeneral_LIBRARIES and includes are in
          	       XAOMDInterfaceGeneral_INCLUDE_DIR.
      
          	3.2.5  FindXInterfaces.cmake is now obsolete. We have to be more precise by using:
          	       - find_package(SolverInterfaces)
           	       - find_package(XAOMDInterfaceGeneral)
          	       - find_package(XoctreeInterface)
          	       - find_package(XsplitMeshInterface)
      
          4. Access of options in the main CMakeLists.txt: all options are gathered in the main
             CMakeLists.txt.
      
             4.1. New options are added to build the librairies, atomic tests and tests:
      
          	- Options BUILD_EXLIBRISTOOLS, BUILD_GEOM, BUILD_MESHMACHINE, BUILD_OCTREE,
             	  BUILD_PHYSICS, BUILD_TRELLIS, BUILD_XCRACK, BUILD_XCUT, BUILD_XEXT, BUILD_XFEM,
          	  BUILD_XTLS and BUILD_SOLVERBASE to build the modules.
      
                  - Options BUILD_INTERFACE_MUMPS, BUILD_INTERFACE_LAPACK, BUILD_INTERFACE_SUPERLU ,
              	  BUILD_INTERFACE_TAUCS, BUILD_INTERFACE_NONLINEARSOLVER, BUILD_DISTMESH,
          	  BUILD_LINEARALGEBRA, BUILD_SPLITMESH,  BUILD_XAOMDINTERFACEGENERAL
          	  BUILD_INTERFACE_MTL, BUILD_INTERFACE_PETSC_SEQUENTIEL, BUILD_INTERFACE_SPARSKIT,
          	  BUILD_INTERFACE_KSPPARALLEL, BUILD_INTERFACE_PETSC_PARALLEL,
          	  BUILD_INTERFACE_PASTIX to build the interface (sub-modules).
      
                  - Options BUILD_EXLIBRIS_TOOLS_TEST, BUILD_TRELLIS_TEST, BUILD_OCTREE_TEST,
             	  BUILD_SPLIT_TEST, BUILD_LINEARALGEBRA_TEST, BUILD_DISTMESH_TEST,
          	  BUILD_FASTMARCHING_TEST, BUILD_XTLS_TEST, BUILD_SOLVERBASE_TEST,
          	  BUILD_SUPERLU_TEST, BUILD_LAPACK_TEST,BUILD_NONLINEARSOLVER_TEST,
          	  BUILD_ANALYTICAL_TEST, BUILD_LINEARALGEBRA_TEST to build atomic tests.
      
            	- Options BUILD_GEOM_TEST, BUILD_PHYSICS_SEQ_TEST, BUILD_SOLVERINTERFACES_TEST,
            	  BUILD_XCRACK_TEST, BUILD_XCUT_TEST, BUILD_XEXT_TEST, BUILD_XFEM_PARA_TEST,
          	  BUILD_XFEM_SEQ_TEST, BUILD_XOCTREEINTERFACE_TEST, BUILD_XTLS_TEST,
          	  BUILD_XSPLITMESHINTERFACE_TEST to build tests of Xtest.
      
             4.2. Options are harmonized to use or not the librairies, even ever they are build or
             	found. Options names ENABLE_<library> has been renamed in USE_<library>  which
          	suggests that we will use the library or not:
      
             	- USE_ANN, USE_XCUT, USE_XEXT, USE_AOMD, USE_PHYSICS, USE_XREFMESH_WITH_SUB,
          	  USE_MULTICUT, USE_FASTMARCHING, USE_MTL, USE_ITL, USE_SUPERLU, USE_TAUCS,
          	  USE_PETSC_SEQUENTIE, USE_SPARSKIT, USE_NONLINEARSOLVER, USE_KSPPARALLEL,
          	  USE_PETSC_SEQUENTIEL, USE_MUMPS, USE_PARMETIS, USE_PTSCOTCH, USE_PASTIX,
          	  USE_MKL, USE_BOOST_SYS_MT
      
          5. Simplification of the project names: all project() functions have been remouved. The
             project() must been defined in the main CMakeLists.txt as all modules and tests belong
             to the same project(). This avoid loop in building because of the reset of the C++
             compiler (MPIC++ for eXlibris).
      418b9ec4
  14. 27 May, 2016 5 commits
  15. 18 Sep, 2015 1 commit
  16. 18 Dec, 2014 1 commit
  17. 23 Jul, 2014 1 commit
  18. 17 Jul, 2014 1 commit
    • Alexis SALZMAN's avatar
      This commit is dedicated to Totalview user. · 52ccf972
      Alexis SALZMAN authored
      A tv_display like method function is added in AOMD library to mEntity class.
      It permit to have a direct representation of node numbers on wich mEntity is defined when diving on any entity in totalview.
      It gives also part of attached data (here a ugly hack was mandatory : duplication of some xfem attached data information ...
      It's ok for now as there is not that much Totalview user).
      
      
      git-svn-id: https://svn.ec-nantes.fr/eXlibris/Trellis@58 4d1f3600-f62c-47c4-8379-4938db4bed93
      52ccf972
  19. 09 Jul, 2014 3 commits
  20. 07 Apr, 2014 1 commit
  21. 13 Feb, 2014 1 commit
  22. 28 Jun, 2013 1 commit
  23. 27 Mar, 2013 2 commits
  24. 11 Mar, 2013 1 commit
  25. 10 Jul, 2012 1 commit
  26. 14 Jun, 2012 1 commit
  27. 21 May, 2012 3 commits
    • Nicolas CHEVAUGEON's avatar
      · aed43deb
      Nicolas CHEVAUGEON authored
      git-svn-id: https://svn.ec-nantes.fr/eXlibris/Xinterfaces@423 1a88e339-5195-4b2f-a36d-6a9bfce0ca9a
      aed43deb
    • Alexis SALZMAN's avatar
      oLevelSetOperators · e8bb74f7
      Alexis SALZMAN authored
      =====================
      
      Add new modifier mainly for TLS apli : oLevelSetAnalyticalAndShiftedActiveInterOnActiveModifier
      Glurp what a name ... here is the translation : 
      modifier for OnActive oLevelSet to get the "intersection" with  2 other oLevelset. One is analytical and the other is also a OnActive oLevelSet shifted
      by a value given to the constructor. The result of this "intersection" of this  2 others oLevelset replace the value of the visited level set.
      Somme signe modification is also done.
      More clear ?
      
      
      oLevelSet
      =========
      
      Had oLevelSetAnalyticalAndShiftedActiveInterOnActiveModifier as friend of oLevelSetOnActive
      
      
      CMakeLists.txt
      ==============
      
      Remove TR1 stuff which are already in find_package(TR1)
      
      
      
      git-svn-id: https://svn.ec-nantes.fr/eXlibris/Octree@277 067bc89c-24c1-4a69-83c4-db531f3c9a32
      e8bb74f7
    • Alexis SALZMAN's avatar
      InterfaceOctreeToAOMD.cc · ff6d2b2d
      Alexis SALZMAN authored
      ========================
      Add tag information is_hanging_by to have a mean for a entity "e" to get the hanging entity which is hanging on this entity "e".
      It's some how the opposite of is_hanging_on.
      The tag itself is added to xMesh : commit on xfem to come
      
      CMakeLists.txt
      ==============
      remove TR1 stuff which are already in find_package(TR1)
      
      
      
      git-svn-id: https://svn.ec-nantes.fr/eXlibris/Xinterfaces@422 1a88e339-5195-4b2f-a36d-6a9bfce0ca9a
      ff6d2b2d
  28. 10 May, 2012 1 commit
  29. 25 Apr, 2012 1 commit
  30. 06 Apr, 2012 2 commits