×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Fortran - variables management

Fortran - variables management

Fortran - variables management

(OP)
Hi everyone,

I've recently started to implement an UMAT in Fortran to use with Abaqus/standard. I'm fairly new in this topic and I'm struggling with some issues related with variables initialization.

My questions are:
- Do I have to declare and initialize all the variables I use within the code?
- What does the statement "IMPLICIT DOUBLE PRECISION(A-H,O-Z" exactly means?

I used the above statement in my subroutine interface and I got the following error: "ABA_PARAM.INC(1): error #6214: The same letter must not appear as a single letter or be included in a range of letters more than once in all IMPLICIT statements in a scoping unit." What does this means?

Thanks!

RE: Fortran - variables management

IMPLICIT DOUBLE PRECISION (A-H,O-Z)

means any variable beginning with letters between A and H or O and Z are double precision. Variables beginning with letters between I and N will probably be integers.

Your error probably means there is an overlap with the letters somewhere. Possibly something like

IMPLICIT DOUBLE PRECISION (O-Z)
IMPLICIT REAL(T-X)

If a variable began with T, the compiler wouldn't know whether it was real or DP. That is the Fortran bit done. I've got no idea what UMAT or Abaqus but google is your friend. http://imechanica.org/files/Writing%20a%20UMAT.pdf

RE: Fortran - variables management

(OP)
Thanks!

RE: Fortran - variables management

There are LOTS and LOTS of online Fortran tutorials, for beginners and even for non-beginners.

As for management of variables, I HIGHLY suggest that you place an "Implicit None" statement at the top of each of your routines. Then, you must explicity declare every variable that your subroutine uses or needs, ie..

Subroutine Dog_N_Cat_Fight()
Implicit None
Integer :: i1, i2
Real :: dog(10), cat(10)

If you don't do things this way... I can very safely bet money that you will always be attempting to chase down seemingly elusive bugs in your code.

Dan smile

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members! Already a Member? Login


Resources

White Paper - Implementing a Multi-Domain System
IoT systems are multi-domain designs that often require AMS, Digital, RF, photonics and MEMS elements within the system. Tanner EDA provides an integrated, top-down design flow for IoT design that supports all these design domains. Learn more about key solutions that the Tanner design flow offers for successful IoT system design and verification. Download Now

Close Box

Join Eng-Tips® Today!

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.

Here's Why Members Love Eng-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close