Entwicklung von User-Subroutines in Abaqus

Veröffentlicht 07.07.2021

Häufig besteht die Notwendigkeit eine User Subroutine in Abaqus zu entwickeln. Anwender eines Windows Betriebssystems werden dann schnell mit dem kostenpflichtigen INTEL Fortran Compiler konfrontiert. Aber es gibt eine alternative Lösung unter Linux. Wer keinen Linuxrechner hat, kann unter Windows (Host) eine virtuelle Maschine einrichten und den freien gFortran Compiler unter Linux (Guest) installieren.

Redaktionsleitung
Dipl.-Ing. Nicole Meyer
Dipl.-Ing. Nicole Meyer
Senior Consulting 3DS-PLM | Redakteurin 3DS-PLM Technisches Magazin
Autor*in
Mishel Zucko
Mishel Zucko
Consultant FEM 3DS-PLM

Verwendet werden können freie Linux-Distributionen, wie zum Beispiel eine CENTOS 7.9, Open SuSE Leap 42.3 oder Ubuntu 16.04. Wichtig ist, daß der Kernel nicht höher als 4.4 ist. Da diese freien Distributionen nicht direkt von Abaqus unterstützt werden, müssen vor Beginn der Installationen zwei Variablen definiert werden:

export DSY_Force_OS=linux_a64

export DSYAuthOS_$(lsb_release --short --id |sed 's/ //g')=1

Abhängig von der gewählten Linux-Distribution und der genutzten Abaqus Version, müssen noch weitere Pakete installiert werden, wie auch gFortran (Teil des GCC-Projektes). Anschließend müssen in der Datei „custom_v6.txt“ folgende Einstellungen für den Compiler eingetragen werden:

compile_fortran = 'gfortran -c -O -fPIC -fno-second-underscore -I%I'

link_sl = 'g++ -shared -fPIC -Wl,-Bdynamic -Wl,--add-needed %E -Wl,-soname,%U -o %U %F %A %L %B'

link_exe = 'g++ -fPIC -Wl,-Bdynamic -Wl,--add-needed -o %J %F %M %L %B %O -lgfortran'

Mit einem einfachen Test läßt sich die Installation und der Fortran-Compiler überprüfen:

  1. abaqus -job c8 -user c8
  2. abaqus verify -user_std
  3. abaqus verify -user_exp

Führt man diese Tests auf der Kommandozeile aus, sollte eine erfolgreiche Meldung erscheinen, wie sie im folgenden Bild dargestellt ist.

Weitere Artikel zum Thema

Technisches Magazin jetzt abonnieren