GGGGGGGGG GGGG GGGGGGGGG GGGGGG GGGGGG GGGGGGGGGG GGGG GGGG GGGG GGGGGG GGGGGG GGGG GGGG GGGG GGGGGGGGGGGG GGGGGGGGG G GGGG G GGGG GGGG GGGG GGGG GGGGGG GGGGGGGGGGGGG GGGGGGGGGG GG GGGG GG GGGG GGGG GGGGG GGGGG GGGGG GGGGGGGGGGGG GGGGGGGGG GG GGGGGG GGGG GGGG GGGG GGGG GGGG GGGG GGGG GG GGGG GGGG GGGG GGGG GGGGGGGGGG GGGG GGGGGGGGG GG GGG GGGG GGGGGGGGGG ====================================================================== ===== Geometry plus Simulation modules ===== ===== https://github.com/gismo ===== ======================================================================
Système | Statut | Plus d'informations |
---|---|---|
CDash | Rapporter les résultats de toutes les builds | |
Fournisseur d'applications | Windows MSVC 14.0 | |
Encerclez CI | MacOS XCode 14.3 (x86_64/arm64) | |
Codification | ||
GitLab | Configurations Linux non par défaut | |
Actions GitHub | Dernier Linux/MacOS/Windows | |
GitLab-Inria | CI chez Inria | |
Ferme du CCG | Statut | Constructeurs de la ferme GCC |
OBSC | binaires | Constructions de packages en amont pour de nombreuses distributions Linux |
Barre de lancement | binaires | Constructions de packages en amont pour les distributions Ubuntu |
Ce fichier README contient de brèves informations. Plus de détails se trouvent dans les pages Wiki.
La dernière révision du code peut être obtenue en utilisant git (via https) :
git clone https://github.com/gismo/gismo.git
ou en utilisant subversion :
svn co https://github.com/gismo/gismo/trunk gismo
ou sous forme de fichier tar.gz ou zip :
https://github.com/gismo/gismo/archive/stable.tar.gz
https://github.com/gismo/gismo/archive/stable.zip
Systèmes d'exploitation :
MS Windows
Linux
macOS
GratuitBSD
Configuration : CMake 2.8.12 ou plus récent.
Les compilateurs testés incluent des versions récentes de
AMD optimisant le compilateur C/C++
AppleClang voir ici pour le support OpenMP
Bruit
GNU CCG
Compilateur Intel C++
Mingw64
MS Visual Studio C++
PGI C/C++ uniquement avec GISMO_WITH_OPENMP=OFF
Compilateurs connus pour ne pas fonctionner
Oracle Developer Studio ne parvient pas à compiler Eigen
IBM XLC C/C++ ne parvient pas à compiler Eigen
Recommandé:
Doxygen pour générer de la documentation.
Paraview pour la visualisation.
La compilation nécessite une configuration à l'aide de CMake dans un nouveau dossier vide (les builds dans la source sont désactivées).
Sous Linux/macOS : Un makefile Unix existe dans le dossier source racine. L'exécution make
crée un sous-dossier nommé build
et exécute CMake et la compilation dans ce dossier. Vous pouvez également choisir votre propre dossier de construction et exécuter CMake en pointant vers les sources.
Sous MS Windows :
Pour compiler G+Smo de manière native, vous pouvez utiliser MS Visual Studio qui prend en charge CMake intégré depuis la version 2015. Vous pouvez également exécuter l'outil cmake-gui
(à partir d'un environnement configuré avec votre compilateur) pour générer des makefiles (ou Fichiers de projet Visual Studio). Exécutez ensuite l'outil make pour lancer la compilation. Vous pouvez également utiliser l'interface graphique de QtCreator et ouvrir le fichier CMakeLists.txt dans le dossier racine pour créer un projet QtCreator.
Une autre option consiste à installer le sous-système Windows pour Linux qui :
permet aux développeurs d'installer une distribution Linux [...] et d'utiliser des applications Linux, des utilitaires et des outils de ligne de commande Bash directement sur Windows, sans modification, sans la surcharge d'une machine virtuelle traditionnelle ou d'une configuration à double démarrage.
Vous pouvez ensuite télécharger, compiler et utiliser G+Smo comme si vous utilisiez une machine Linux native.
Après une compilation réussie, une bibliothèque dynamique est créée dans ./lib
et des exemples de programmes exécutables sont affichés dans le sous-répertoire ./bin
du dossier build.
De plus, si Doxygen est disponible sur le système, on peut exécuter (par exemple sous Linux) :
make doc
pour obtenir la documentation Doxygen au format HTML. La page principale de doxygen se trouve à ./doc/html/index.html
.
Plus d'informations sur https://github.com/gismo/gismo/wiki
Il existe un certain nombre de modules optionnels qui peuvent être activés.
Nom | Description |
---|---|
gsOpenCascade | Étend les fonctionnalités à l'aide d'OpenCascade |
gsÉlasticité | |
gsKLShell | |
gsStructuralAnalyse |
Pour activer par exemple gsSpectra et gsOpenCascade, définissez l'option suivante dans CMake :
-D GISMO_OPTIONAL="gsSpectra;gsOpenCascade"
Les options disponibles sont affichées dans la configuration de CMake. Une brève description et le paramètre par défaut suivent :
Version CMAKE_BUILD_TYPE
Les valeurs disponibles sont les configurations de build CMake standard : Debug, Release, RelWithDebInfo, MinSizeRel.
GISMO_COEFF_TYPE double
Le type arithmétique à utiliser pour tous les calculs. Les options disponibles incluent double, double long, flotteur.
GISMO_EXTRA_INSTANCE non défini
Si elle est définie sur une ou plusieurs des options disponibles pour GISMO_COEFF_TYPE, la bibliothèque G+Smo est compilée avec des types arithmétiques supplémentaires activés.
GISMO_WITH_XDEBUG DÉSACTIVÉ
S'il est défini sur ON, des outils de débogage supplémentaires sont activés lors de la compilation. Ceux-ci incluent les itérateurs vérifiés pour les compilateurs GCC et MSVC et l'impression de la trace de la pile d'appels lorsqu'une exception d'exécution se produit.
GISMO_BUILD_LIB ON
Si cette option est activée, une bibliothèque dynamique est créée à l'aide de l'arithmétique GISMO_COEFF_TYPE. Une cible pour une bibliothèque statique nommée gismo_static est également créée mais non compilée par défaut.
GISMO_BUILD_EXAMPLES SUR
Si cette option est activée, les programmes du dossier examples sont compilés et les exécutables sont créés dans build-folder/bin.
GISMO_BUILD_UNITTESTS DÉSACTIVÉ
Si cette option est activée, les tests du dossier unittests sont compilés et un exécutable est créé dans build-folder/bin.
GISMO_PLUGIN_AXL DÉSACTIVÉ
S'il est activé, le plugin pour le modeleur Axel est compilé (nécessite Axel).
GISMO_WITH_PSOLID DÉSACTIVÉ
Si activé, les extensions utilisant les fonctionnalités du noyau géométrique Parasolid sont compilées (nécessite Parasolid).
gsOpennurbs
Extension pour la lecture et l'écriture du 3DM de Rhinoceros.
CMAKE_INSTALL_PREFIX (dépendant du système)
L'emplacement d'installation de la bibliothèque, par exemple /usr/local sur certains systèmes Linux.
L'arborescence source se compose des sous-dossiers suivants :
src
Contient tous les fichiers sources. Le code est partitionné en modules. Actuellement onze modules sont présents sous forme de sous-dossiers :
gsCore
gsMatrice
gsNurbs
gsHSplines
gsModélisation
gsAssembleur
gsSolver
gsPde
gsTenseur
gsIO
gsUtils
exemples
Exemples d'utilisation, petits programmes et tutoriels.
tests unitaires
Tests unitaires pour certaines parties de la base de code.
données de fichier
Fichiers de données au format XML que G+Smo peut lire et écrire.
extensions
Fonctionnalités supplémentaires facultatives qui peuvent être compilées avec G+Smo.
plugins
Les plugins pour :
Modeleur Axel
3DM du rhinocéros
cmfaire
Fichiers de configuration Cmake.
doc
Fichiers liés à la documentation de doxygen.
Projet scientifique openSUSE : https://en.opensuse.org/openSUSE:Science_Math
Portage FreeBSD : https://www.freshports.org/math/gismo/
Packages Ubuntu en amont : https://launchpad.net/~g+smo/+archive/ubuntu/upstream
Pages wiki :
https://github.com/gismo/gismo/wiki
Rapports de bugs :
https://github.com/gismo/gismo/issues
Questions (Q&R) :
https://github.com/gismo/gismo/discussions/categories/qa
Coordinateur et mainteneur : Angelos Mantzaflaris
Voir la liste complète sur nos pages wiki
La bibliothèque G+Smo est distribuée sous la licence publique Mozilla v2.0. (voir LICENSE.txt).