Restore windows and old-gmm compatibility
Windows compatibility
- The compilation was broken on Windows. There was a problem in the SWIG-generated code from the new
ELTYPEandMATTYPEclass enums. More precisely, the problem was related to the translation ofoperator<<(which does not becomeprintor__str__but__lshift__in python!). I have prevented SWIG from wrapping this function. - Compilation of Trilinos is automatically disabled on Windows since Trilinos is not compatible with Windows.
Compilation with old versions of gmm
- It is now possible to compile the code with the (old) version of gmm that is bundled with Ubuntus<18. These old versions define
std::operator<<(std::vector<double> const &)although the newest version does not. I previously added our own definition of this missing function in the headergmm_extra.h. Obviously, this definition broke the compatibility with the old version of gmm. Now, theTRY_COMPILEfeature of CMake is used to check whether this function is already defined or not. This knowledge is transferred to the compiler using the newGMM_DEFINITIONSvariable which is dynamically set inFindGMM.cmake(see this file for more details).
Usage of gmsh v4.x
- By default the new version of gmsh (version 4) writes meshes in a new (incompatible) format. I am currently trying to upgrade
MshDataso that it can read this new format. In the meantime, I have forced gmsh to write its output in version 2 (seegmsh.py). It temporarily solves the problem. We should, however, be careful to avoid gmsh4 commands in the.geofiles!
Future new models for mirrors
- I have added several basic
.geofiles inmirrors. I will use them in a near future to make additional basic mechanical tests (to be continued).
CTest
- Successful on gaston
- Successful on Windows (without Trilinos)