===== Commit 2017-08-22 ===== Migration VS2015 ==== Migration VisualStudio 2015 ==== Les librairies étant à jour, je migres ma configuration vers le visual studio 2015. Il n'est pas indispensable de migrer vos machines à court terme, les 2 compilateurs restent encore compatibles (mais je vous encourage à migrer rapidement, la compatibilité ne durera pas et sauf demande spécifique, je ne la vérifierais plus!!!). === Installation visual studio === * ATTENTION : la version à installer est "Visual Studio 2015 Community" (il existe une version express, mais qui n'est pas complète avec laquelle Metafor ne compilera pas). Si vous avez du mal à la trouver sur le site microsoft (j'ai eut du mal), une iso est archivée sur le ftp (/ftp/apps/_dev/Visual Studio Community 2015) * Seul le C++ est nécessaire à la compilation Metafor (avec tous les composantes du CPP : notament les mfc) * ATTENTION : Durant l'installation il réclame 13GB d'espace libre (libérez de l'espace ou adaptez vos partitions avant de lancer l'installation !!!) === LibsVS2015 : === * Les librairies nécessaire à la compilation de Metafor ont été recompilées avec le VS2015 (disponible sur le ftp : /ftp/metafor/bin/VS2015_X64) * Les dernières versions ont été utilisées (quand possible) : * vtk : 7.1.1 * Qt : 5.9.1 * Python : 2.7.13 avec * numpy : 1.13.1 * scipy : 0.19.1 (ATTENTION: je n'ai pas réussi à compiler le module "stats") * gnuplot : 1.8 * pip : 0.9.1 * pyQt : 5.9.1 (version en développement) * ... * cmake :3.9.0 * gmsh : 3.0.3 (logiciel que je dois enlever et à installer par l'utilisateur) * parasolid : 29.1 * swig : 3.0.12 * tcl/tk : 8.5.19 (pas osé passer à la version 8.6 vu le risque de conflit avec vtk n'était pas prévue) * J'ai supprimé MSMPI (vu qu'on a le mpi intel dans les community) * Les libs fonctionnent dans une virtual box (=> à priori ca devrait fonctionner chez vous) * Je n'ai pas (encore) prévu de "désinstalleur" de la version 2012. A l'exception des variables relatives à MSMPI, les autres variables doivent normalement écraser les précédentes. * Il n'est pas possible d'avoir les 2 versions des libs fonctionnelles dans une même configuration, mais il est possible de conserver les 2 versions fonctionnelles sur le même PC en jonglant entre 2 comptes utilisateurs (l'un configuré pour les libs vs2012, l'autre pour les libs vs2015). ===== Compilation : ===== * rien de changé sauf que le fichier de configuration CMake s'appelle dorénavant "win64-vs2015.cmake" * Les fichiers CMakeList des répertoires d'interface python (_src) ont été modifiés pour éviter des warnings CMake (SWIG_ADD_MODULE -> SWIG_ADD_LIBRARY). Attention, dans oo_meta, oo_nda ET parasolid !!! ===== Divers ===== * MetaFac : naming des fichiers "bfac.gz" sur 9 digits (les tests de fluotournage dépassant le millions de pas de temps). * OneParameterRuptureCriterion : Ajout d'un critère sur le fait que l'élément est en traction pour accumuler des valeurs sur les critères de rupture. if (getD() == COCKROFT ) { double cStress1 = getPrincipalStress1(GPM, volumElementShcut); double j2 = volumElementShcut.getMechMater()->getMatFields(GPM, IF_EVMS); if(j2 != 0.0 && cStress1 > 0.0) f = cStress1/j2; } else if (getD() == BROZZO ) { double cStress1 = getPrincipalStress1(GPM, volumElementShcut); double p = volumElementShcut.getMechMater()->getMatFields(GPM, IF_P); if ((cStress1-p) != 0.0 && cStress1 > 0.0) f = (2.0/3.0) * cStress1/(cStress1-p); } else if (getD() == AYADA ) { double p = volumElementShcut.getMechMater()->getMatFields(GPM, IF_P); double j2 = volumElementShcut.getMechMater()->getMatFields(GPM, IF_EVMS); if(j2 != 0.0 && p > 0.0) f = p/j2; } ===== Fichiers ajoutés/supprimés ===== A oo_meta\CMake\win64-vs2015.cmake ===== Tests ajoutés/supprimés ===== A --- //[[L.Papeleux@ulg.ac.be|Luc Papeleux]] 2017/08/22 //