Skip to main content

constant material properties in user-defined subroutines in ABAQUS

Submitted by Jungwook Kim on

Hello, I just started using abaqus couples of days ago, so this could be a very basic question, but I have no way to deal with it even after I spent hours with abaqus manual.

I'm using a user-defined subroutines for hyperelastic material in abaqus (UHYPER). I got a fortran file that defines the strain energy density with some material properties that need to be passed to the subroutine; they are defined as 'a = PROPS(1)', 'b = PROPS(2)', etc., and 'a' and 'b' are used to define U(1), UI(1), etc. in the fortran file. However, I'm wondering where and how can I define the numerical values (constants) of PROPS(1) and PROPS(2). I guess they should be specified outside the fortran file; maybe during creating MATERIALS in Abaqus CAE. In 'Edit Material' window of Abaqus CAE, I can set the 'Number of Property values', which I guess 'Property values' means PROPS(1) or PROPS(2), but not the actual numerical values of them. Can anyone tell me how can I define the values in Abaqus CAE?

Finally, in the fortran file (user-defined subroutine), 'TEMP' is used in defining U(1), UI(1), etc. Again, how and where can I set the numerical values of 'TEMP' in Abaqus CAE?

Thank you!

 

 If I use a User Material in ABAQUS, it gives me an error that there is no sub-routine supplied.

 

So my question would be, if I have User Material selected and I define my constants how can I "assign" the subroutine, (I have already selected the subroutine fine in the options under edit job)

Fri, 12/05/2008 - 21:04 Permalink

I am using a subroutine (for the Complementary enery
density function Ω=A_1 I_1^2+A_2 I_2 ) as follows :--



SUBROUTINE UHYPER
(BI1,BI2,AJ,U,UI1,UI2,UI3,TEMP,NOEL,



1
CMNAME,INCMPFLAG,NUMSTATEV,STATEV,NUMFIELDV,FIELDV ,



2
FIELDVINC,NUMPROPS,PROPS)

C

INCLUDE 'ABA_PARAM.INC'

C

CHARACTER*80
CMNAME

DIMENSION U(2),UI1(3),UI2(6),UI3(6),STATEV(*),FIELDV(*),

2
FIELDVINC(*),PROPS(*) C



C10 = PROPS(1)



C01 = PROPS(2)



D1 =
PROPS(3) C



STATEV(1) = BI1



STATEV(2) = BI2 C



U =
C10*(STATEV(1)-3.)+C01*(STATEV(2)-3.)+((AJ-1.)**2)/D1



UI1(1) =
C10



UI1(2) = C01



UI1(3) = 2./D1*(AJ-1.)



UI2(1) =
0.



UI2(2) = 0.



UI2(3) = 2./D1



UI2(4) = 0.



UI2(5)
= 0.



UI2(6) = 0.



UI3(1) = 0.



UI3(2) = 0.



UI3(3)
= 0.



UI3(4) = 0.



UI3(5) = 0.



UI3(6) = 0.



RETURN


END





while running the job it is showing that the job is aborted
because of compilation error........ I am using ifort-compiler..........

Can
anyone please provide me a uhyper subroutine (of any complementary energy
function ) so that i can test whether am i making mistake in the subroutine
itself or not..........

Can you please say me how to pass the variables (e.g.
-- bi1,bi2,temp,noel,cname) while writing the subroutines ???????
Wed, 05/13/2009 - 06:57 Permalink