Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Fortran Compiler for Abaqus

Ivo
Beginner
24,101 Views

Hi, I need a compiler for running Fortran Subroutines in Abaqus. I am using Abaqus 2018. In my understanding I should go for Intel Parallel Studio XE. Does the newest version work with Abaqus 2018?

Thanks

0 Kudos
1 Solution
Steve_Lionel
Honored Contributor III
22,395 Views

We get a lot of questions about Abaqus and Fortran, where users request years-old versions because that's what the Abaqus documentation mentions.  There's no inherent reason to think that the now-current version of the compiler won't work with Abaqus. We keep telling people that and I have yet to see someone come back and say it didn't work. At most you may have to change a setup script Abaqus uses to locate the Intel compiler.

Use the current version from the Intel oneAPI HPC Toolkit and write back here with descriptions of any issues you encounter.

View solution in original post

58 Replies
RahulV_intel
Moderator
11,521 Views

Hi,


We are redirecting your query to an appropriate forum.


Thanks,

Rahul


0 Kudos
Steve_Lionel
Honored Contributor III
22,396 Views

We get a lot of questions about Abaqus and Fortran, where users request years-old versions because that's what the Abaqus documentation mentions.  There's no inherent reason to think that the now-current version of the compiler won't work with Abaqus. We keep telling people that and I have yet to see someone come back and say it didn't work. At most you may have to change a setup script Abaqus uses to locate the Intel compiler.

Use the current version from the Intel oneAPI HPC Toolkit and write back here with descriptions of any issues you encounter.

arogz
Novice
11,487 Views

Hello all!

I downloaded oneAPI HPC tool kit but I am struggling to figure out how to link ABAQUS and the Fortran compiler included in the tool kit. It seems like in previous versions the Fortran compiler was linked to ABAQUS by calling the file ifortvars.bat from the ABAQUS CAE launcher as explained here: https://grabcad.com/tutorials/linking-abaqus-and-fortran 

The thing is that I do not find the ifortvars.bat file in the oneAPI folder in the C unit... could you please help me with this issue? which file is the equivalent to ifortvars.bat in this new distribution?

Otherwise, could you please let me know how to download a previous version of Parallel Studio XE?

(I am a student)

I would really appreciate your help in this matter, I need Fortran to implement subroutines in ABAQUS for my research work...

Best regards,

Alfredo

0 Kudos
mecej4
Honored Contributor III
11,480 Views

The batch file that you want is setvars.bat in the ONEAPI root directory.

You can find this for yourself by finding the OneAPI entries in the Start menu, right click on one of the shortcuts and select Properties. You will see the full path to the batch file and arguments to it displayed.

0 Kudos
gotham1808
Beginner
11,410 Views

Hello,

I did include the setvars in the CAE launcher:

@Echo off
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" x64
call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat" x64

"C:\SIMULIA\CAE\2017\win_b64\code\bin\ABQLauncher.exe" %*

However, when I run the Abaqus verification, it does not recognize the Fortran and C++ compilers. Could you please help me with this? Thank you.

0 Kudos
Greg_T_
Valued Contributor I
11,273 Views

I've had problems in the past with the Abaqus verification automatic checking.  I'd recommend that you run a small analysis with a user subroutine to check if that will work with Abaqus and the Fortran compiler.  An example could be a small mesh for a stress analysis with a distributed load given by the DLOAD user subroutine.

I've had success running Abaqus with Fortran by first opening the Intel compiler console window from the Start button: Start->Intel Parallel Studio->Compiler Update for Intel 64...

That opens the initialized Intel Fortran console window, which should take care of the initializations that the batch files you tried should have done, or that the Abaqus validation should have used.  In that Intel console window I change directory to my Abaqus input file, then enter the Abaqus command line to run the analysis, including the "user=" parameter to give the name of the Fortran source file.

Have you tried this approach?

Regards, Greg T.

arogz
Novice
11,077 Views

Many thanks for your insights on this. I did tried your approach and unfortunately I got the following warning and error, do you have any idea how to solve these issues?

Thanks in advance!

Job-1.JPG

0 Kudos
Steve_Lionel
Honored Contributor III
11,067 Views

You are using the Fortran compiler that generates code for 32-bit processors and combining it with Abaqus code for 64-bit processors. Make sure that you use the "Intel 64" version of the compiler setup.

Ivo
Beginner
10,932 Views

Hi, many thanks for the answer. So the Intel oneAPI HPC Toolkit can be used instead of Parallel Studio and no license has to be purchased?

0 Kudos
mecej4
Honored Contributor III
10,923 Views

Ivo, correct on both points. Do note, however, that most of us do not have Abaqus (I do not), so we cannot tell you whether the Abaqus scripts need slight modifications to make them work with OneAPI HPC Toolkit, but such modifications can be discussed here.

0 Kudos
Greg_T_
Valued Contributor I
9,565 Views

Hi Ivo,

For more help with the Abaqus side of this issue, the 3DExperience "Modeling and Simulation" (ModSim) on-line community web page may be a source of assistance. 

I use my 3DExperience login to access the on-line Abaqus documentation, the SIMULIA web pages, and access the 3DSwym community pages.  The ModSim community web page is at:
https://r1132100503382-eu1-3dswym.3dexperience.3ds.com/#community:NW2ka9hPSeGtBpFUAtPUcQ

If you don't yet have a login, you should be able create a new login for access.  I believe you can post a question there, or browse the many articles and links to see if others have addressed using the OneAPI Fortran compiler with Abaqus.

Regards, Greg T.

0 Kudos
arogz
Novice
9,459 Views

Thank you all for your replies in this thread. I have been in touch with Dassault Systems technical support team and I can finally confirm that the issues I am having  with the compiler included in the oneAPI toolkit are due to compatibility issues. According to them the following versions are 100% compatible with Abaqus2020  in Windows:

-Intel® Fortran Version 16.0.1 is a Qualified Platform with Visual Studio 2015 Update 3.
-Intel® Fortran Version 19.0.4 with Microsoft Visual Studio 2017 is a Validated Platform

I searched in your website and found out that for students and researchers (like myself) it is only possible to download oneAPI toolkit distributions, perhaps I am wrong? Otherwise, I would really appreciate if you could tell me how can I have access to one of the aforementioned versions of the Fortran compiler.

Many thanks!

 

0 Kudos
mecej4
Honored Contributor III
9,450 Views

In my opinion (and mine only: I do not speak for Intel), it would be far better for everyone concerned if the Abaqus developers provided their users script files for use with the current release of the Intel Fortran compiler, instead of sending their customers here with repetitive requests for old versions that may not be available anymore. It should take them about an hour to do this work.

0 Kudos
arogz
Novice
9,445 Views

Dear @mecej4 ,

First of all, many thanks for taking the time of actively replying to this thread. And just for the sake of clarification, nobody in Dassault Systems explicitly sent me to you (Intel nor this forum).

I found there is a way to download previous versions of the compiler https://software.intel.com/content/www/us/en/develop/articles/older-version-product.html unfortunately it seems that this is only possible if a license has been purchased. Can I apply for such a license as a PhD student? If so, what is the procedure?

BR

0 Kudos
mecej4
Honored Contributor III
9,426 Views

I cannot answer licensing questions. Note that many pages that predate the release of OneAPI may contain statements that are no longer valid.

I suggest that you try going through the Online Service Center . State your needs and make your request there.

arogz
Novice
9,420 Views
0 Kudos
anis
Beginner
9,403 Views

Hi everyone, i am a PhD student and need the compiler for my research.

did any of you resolve this issue?

sincerely,

0 Kudos
mecej4
Honored Contributor III
9,392 Views

There is no "issue" if you want just the current version of the compiler package, which you may obtain from this link .

If you want an older version, or need help to get the compiler to work with a third party package such as Abaqus, which is the topic of this thread, there are issues and limitations.

0 Kudos
anis
Beginner
9,388 Views

Hi, 

that is exactly my concern, Abaqus. I sent a request for older versions of the compiler and hope to get an answer soon, Thanks

0 Kudos
Kamalendu
New Contributor I
9,265 Views

Hi All,

I wrote to SIMULIA about this issue and the following is their reply:

"

We/SIMULIA have not tested this brand new compiler version, but it should work.

 

There is an Intel Fortran bug that was discovered by SIMULIA Support Team recently when the user reported error trying to link ABAQUS to Fortran from the new Intel OneAPI HPC Toolkit.

 

Workaround and Justification:

Cannot run user subroutines because of fortran compilers from Intel OneAPI HPC Toolkit.

The support team asked the user to run:

abaqus verify –user_std –verbose –retainFiles –log

 

He did, and, they showed that his compilation and link were successful, but in the .msg file the user gets: ***ERROR: USER SUBROUTINE DISP IS MISSING

 

Support Team's analysis indicates that Intel Fortran 2021 is ignoring the /iface:cref command line option.

They ran dumpbin /symbols on the object file, and it showed that the DISP subroutine symbol in uppercase. The /iface:cref options is supposed to create lowercase symbol names.

This may be a new Intel Fortran 2021 bug.

 

As a workaround support team asked the user to try this:

  1. Fetch the std_user model: abq2019 -j std_user fetch
  2. Edit the std_user.for subroutine and add the following line at the top: !DEC$ ATTRIBUTES ALIAS:"disp"::DISP
  3. Run the job manually: abq2019 -j std_user -user std_user.for -int -verbose 2

 

This seemed to have solved the problem.

This means adding the line " !DEC$ ATTRIBUTES ALIAS:"user"::USER" at the start of every user defined subroutine (for both standard and explicit).

So, for instance, it would be " !DEC$ ATTRIBUTES ALIAS:"vumat"::VUMAT", for a VUMAT subroutine.

 

Or download and install Intel Fortran 2019 or earlier.

 

SIMULIA R&D was going to report the compiler bug with Intel.

It's not a pretty workaround.

 

I’ll let you know if I get updated information.

"

0 Kudos
Reply