<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=725996008059693&amp;ev=PageView&amp;noscript=1">

Technisches Magazin Ausgabe 2 | 2021

SIMULIA | Tipps & Tricks |
Mishel Zucko, Dipl.-Ing., Consultant FEM

Verwendung einer virtuellen Linux Maschine zur Entwicklung von User-Subroutines in Abaqus

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.

CENTOS 7.7

Abb. 1: CENTOS 7.7

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.

Linux Konsole

Abb. 2: Verify auf der Linux Konsole