Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
The Intel sign-in experience has changed to support enhanced security controls. If you sign in, click here for more information.
27653 Discussions

How to Use Intel's Fortran Compiler with Abaqus

Barbara_P_Intel
Moderator
2,872 Views

For those who want to use Intel's Fortran compiler with Abaqus on Windows, read this blog for detailed instructions.

 

4 Replies
JohnNichols
Valued Contributor II
2,854 Views

A really good set of instructions.  The young lady who developed the notes does some interesting work on unusual materials.  

Steve_Lionel
Black Belt Retired Employee
2,845 Views

In the past this did not always work, with issues related to uppercase and lowercase letters. The user subroutine(s) could then not be found. If the .log file shows that the compiler is linked, and the .msg file mentions that the user subroutine is missing, then try this workaround (mentioned by Raul Munoz on our previous blog):

The following line can be added at the end of your environment file:

compile_fortran += ['/names:lowercase',]

AUGH! DO NOT DO THIS!!!!!! It will make things increasingly difficult for you. If you do have this issue, I'd suggest BIND(C) for your routine, or maybe !DEC$ ATTRIBUTES ALIAS. Lots of things won't work if you make everything lowercase.

Cao__Yanmei
Beginner
2,815 Views

Hi Steve, I did everything as the link said except the lowercase stuff. ABAQUS verification shows errors related to user subroutines. I have no idea where is the problem... Any suggestion? Many thanks

 

Ron_Green
Moderator
2,806 Views

Steve is suggesting using !DEC$ ATTRIBUTES ALIAS. 

 

 

As an example, let's say you have a subroutine "AbbyNormal" that you want to call and you want the subroutine name in all lower case, "abbynormal".  The code would look like this, roughly

 

 

!DEC$ ATTRIBUTES ALIAS:'abbynormal' :: AbbyNormal
subroutine AbbyNormal( x, n )
real :: x(n)
!do stuff
end subroutine AbbyNormal

 

 

I do not know Abaqus.  I was assuming somewhere in your Abaqus code/script you want to call your Fortran subroutine AbbyNormal with this example. I was just showing how to use ATTRIBUTES ALIAS to force the symbol for AbbyNormal to be all lower case.

 

 

Reply