×
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

Jobs

Problem of transfering values from URDFIL to UTEMP

Problem of transfering values from URDFIL to UTEMP

Problem of transfering values from URDFIL to UTEMP

(OP)
Hi
I am making this model where i am calling some variables (void ratio, pore pressure, etc) and creating others (Bf) using UVARM subroutine. variables are read using URDFIL, then by using common block to transfere the values to UTEMP where i am relating the TEMP to (Bf).
The problem is , although abaqus reads the whole Bf array in URDFIL subroutine, but yet when it is transfered to UTEMP subroutine it only reads the last value of Bf which makes TEMP= a constant value in all nodes. Anybody can guide me how to overcome that and make UTEMP reads all Bf values?
 
   SUBROUTINE UTEMP(TEMP,NSECPT, KSTEP,KINC, TIME,NODE, COORDS)
C
      INCLUDE 'ABA_PARAM.INC'
C
      DIMENSION TEMP(NSECPT) ,COORDS(3) ,TIME(2)
 REAL    Bf(20)
 COMMON /TEMP/Bf
 write (7,*) 'Bf =', Bf(1), 'UTEMP'
 TEMP=Bf(1)
      RETURN
      END
      SUBROUTINE URDFIL(LSTOP, LOVRWRT,KSTEP, KINC,DTIME, TIME)
C
      INCLUDE 'ABA_PARAM.INC'
C
      DIMENSION ARRAY(513),JRRAY( NPRECD,513) ,TIME(2)
      EQUIVALENCE (ARRAY(1),JRRAY( 1,1))
 REAL    Bf(20)
 COMMON /TEMP/Bf
C
C FIND CURRENT INCREMENT.
C
 CALL POSFIL(KSTEP, KINC,ARRAY, JRCD)
      DO K1=1,999999
         CALL DBFILE(0,ARRAY, JRCD)
         IF (JRCD .NE. 0) GO TO 110
         KEY=JRRAY(1, 2)
C
C RECORD
C
      IF (KEY .EQ. 87) THEN
 Bf(1)=ARRAY( 6)
 write (7,*) 'Bf2 =', Bf(1), 'URDFIL'
 END IF
 enddo
 110  continue
C
      RETURN
      END
 

RE: Problem of transfering values from URDFIL to UTEMP

Did you declare Bf in a COMMOM block in the main part of the subroutine file (i.e. before the first SUBROUTINE) ?

 

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!


Resources