DPS

Logo DPS 1300x650 1
FrançaisEnglish

Compilation de routine Fortran et C++ pour Abaqus

Procédure d’installation

Cet article présente un moyen simple pour installer et synchroniser les logiciels de programmation Fortran et C+ au logiciel Abaqus sur le système d’exploitation Windows. Cette méthode fonctionne pour les versions d’Abaqus supérieures à 2018.

Pré-requis

Avant toute chose, Abaqus doit être installé sur votre machine.

Il est indispensable que les modules suivant soient installés :

  • SIMULIA Established Products
  • SIMULIA Established Products CAAAPI

Le premier concerne les solveurs Abaqus et l’outil CAE.

Le second importe des librairies utiles à l’exécution des scripts Fortran ou C++.

Pour exécuter des scripts dans Abaqus, deux outils seront nécessaires : Visual Studio et Intel One Api, tous deux étant libres.

Deux fichiers de tests sont fournis : test_aba_fonc.for et test_verif.cpp. Ces fichiers vous serviront à valider la méthode aux travers de scripts simples.

Installation de Visual Studio

Télécharger et installer Visual studio 2019 (le 2017 peut aussi fonctionner) avec l’exécutable :

https://visualstudio.microsoft.com/fr/vs/community/

Bien sélectionner Développement Desktop en C++, et laisser Développement .NET Desktop et Développement web et ASP.NET :

Installation des outils Intel

Télécharger et installer Intel OneApi Base Toolkit avec l’exécutable :

https://software.intel.com/content/www/us/en/develop/tools/oneapi/base-toolkit/download.html

Laisser les options par défauts. Le logiciel doit détecter la présence de Visual Studio.

Installer Intel OneApi HPC Toolkit avec l’exécutable :

https://software.intel.com/content/www/us/en/develop/tools/oneapi/hpc-toolkit/download.html

Laisser les options par défauts. Le logiciel doit détecter la présence de Visual Studio.

Présence de la commande ifort sur le système

Vérifier l’existence du dossier suivant :

C:\Program Files (x86)\Intel\oneAPI\compiler\latest\windows\bin\intel64

Paramètres Abaqus

Chercher le fichier win86_64.env d’Abaqus. Ce chemin dépend de votre installation

C:\SIMULIA\EstProducts\20xx\win_b64\SMA\site

ou

C:\SIMULIA\V6R20xxx\win_b64\SMA\site

Ouvrir le fichier win86_64.env et ajouter la ligne :

compile_fortran += [‘/names:lowercase’,]

après le bloc compile_fortran (ligne 50 par défaut)

Ceci est indispensable pour que Fortran compile les fonctions Abaqus. En effet, la version OneAPi d’Intel est récente et certains paramètres ne sont pas définis par défaut dans Abaqus.

Compilation

Ouvrir une fenêtre de commande dans votre dossier de la routine.

Initialiser le lien Abaqus/Visual Studio avec la commande (chemin dépendant de votre installation).

@call “C:\Program Files (x86)\Intel\oneAPI\compiler\latest\env\vars.bat” intel64 vs2019

Ensuite, pour vérification, ouvrir une fenêtre de commande, et taper :

ifort /help

L’invite doit renvoyer la documentation de ifort. Faire Ctrl+C pour sortir.

La commande existe bien. Le call est très important pour que Windows reconnaisse ifort.

Compiler le fichier test_aba_fonc.for fournit, avec la commande :

abq2021 make library=test_aba_fonc.for

Un fichier test_aba_fonc.std.obj est créé ainsi que standardU.dll.

Ces deux fichiers doivent être copié dans le dossier de lancement de calcul qui utilise la routine.

Pour recompiler une autre routine, supprimer le fichier standardU.dll.

Compilation C++

Ouvrir une fenêtre de commande dans votre dossier de la routine.

Initialiser le lien Abaqus/Visual Studio avec la commande (chemin dépendant de votre installation).

@call “C:\Program Files (x86)\Intel\oneAPI\compiler\latest\env\vars.bat” intel64 vs2019

Compiler le fichier test.cpp fournit, avec la commande :

abq2021 make job=test_verif.cpp

Maitriser ces outils vous permettra d’aller plus loin avec le solver Abaqus, et d’en utiliser toutes ces capacités. Et pour encore mieux maitriser Abaqus, DPS propose des formations, notamment l’utilisation de Python, intégré au logiciel (Introduction to Abaqus scripting).

Bonne compilation à tous!

g

Nous allons vous recontacter prochainement, en attendant nous vous redirigeons vers la page adaptée à vos besoins.

 

This will close in 0 seconds