abaqus python scripting

Free Fortran Compiler for Abaqus

User-subroutines in Abaqus

Abaqus has a multitude of built-in features available for FE analyses, but it is possible for users to extend the software capabilities via user subroutines.
User subroutines are written in Fortran and a Fortran compiler is needed to compile your software code. Since recently it is possible to download and couple the free Intel oneAPI HPC Toolkit with Abaqus. This post describes the procedure to download, install and couple Intel oneAPI with Abaqus.
4RealSim customers can contact us to obtain a pdf with more details on the installation procedure + a link with all software downloads.

Abaqus Fortran Windows and Linux

The description below describes the procedure for Windows. Contact us if you need more details to install Intel one API on Linux.

Step 1: Installation of Visual Studio

Download Visual Studio Community 2019.
Once the installer is run, select the “Desktop development with C++” workload.
Install relevant Optional components as per Figure below.

Step 2: Installation of Intel oneAPI Base Toolkit

Download Intel oneAPI Base Toolkit.
Make sure your system meets the requirements needed for the installation.
For this step, it is important to make sure you are not logged in to the website
In order to proceed with the download, select “Continue as a guest”
Install the software using recommended installation option

Step 3: Installation of Intel oneAPI HPC Toolkit

Download Intel oneAPI HPC Toolkit.
Make sure your system meets the requirements needed for the installation.
For this step, it is important to make sure you are not logged in to the website
In order to proceed with the download, select “Continue as a guest”
Install the software using recommended installation option

Step 4: Coupling of Fortran Compiler and Abaqus

Once the required software is installed, it is necessary to link Abaqus to the compiler.

Step 4A: Locate the Intel one vars.bat file

Default installation: C:\Program Files (x86)\Intel\oneAPI\compiler\latest\env\vars.bat

Step 4B: Setting of environmental variables

Environmental variables can be set by running the following command: “”C:\Program Files (x86)\Intel\oneAPI\compiler\latest\env\vars.bat” intel64 vs2019“

Step 4C: Change target location of env file

Target location of the environmental in the Abaqus/CAE properties should be changed to “C:\Program Files (x86)\Intel\oneAPI\compiler\latest\env\vars.bat” intel64 vs2019 && C:\SIMULIA\EstProducts\2021\winb64\resources\install\cae\launcher.bat cae || pause” (default Abaqus installation)

Step 4D: Modification of Abaqus bat file

You should add the italic line in your Abaqus bat file.
@echo off
setlocal
set ABA_COMMAND=%~nx0
set ABA_COMMAND_FULL=%~f0
@call “C:\Program Files (x86)\Intel\oneAPI\compiler\latest\env\vars.bat” intel64 vs2019
“D:\programs\SIMULIA\2021\win_b64\code\bin\ABQLauncher.exe” %*
endlocal

Step 4E: Modification of user subroutine

The following line should be added in your user-subroutine
!DEC$ ATTRIBUTES ALIAS:”user”::USER

Such ATTRIBUTES directive option ALIAS is needed to specify an alternate external name to be used when referring to external subprograms (user subroutine).

The term “user” in the code line should be changed accordingly to the subroutine used. As an example, if a UEL (UserELement) subroutine is used, the code line will look as follows “!DEC$ ATTRIBUTES ALIAS:“uel”::UEL”.

Testing Abaqus fortran installation

For the sake of clarity, an example here is offered by using the Abaqus fetch command:
The sample Abaqus/Standard user subroutine files can be fetched with the following command:
abaqus –j std_user fetch
The std_user.for file should be modified as discussed in step 4E.
!DEC$ ATTRIBUTES ALIAS:”user”::USER

Run the job manually
abaqus –j std_user user=std_user -int

Do you need more info?

If you are a 4RealSim customer and you are facing issues with the above, do not hesitate to contact sales@4realsim.com