Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

USDFLD-Modelling functionally graded materials in ABAQUS 1

Status
Not open for further replies.

indebtanup

Mechanical
Aug 21, 2008
5
0
0
US
I'm trying to model a simple beam with the Young's modulus varying with position. I've followed all the instructions for the USDFLD detailed by akabarten in the posts:

and

The relationship between E and FV1 is E=1E9*FV1.

The USDFLD looks like:

if (kstep .eq. 1 .and. kinc .eq. 1) then

X=COORD(1)
Y=COORD(2)
R=(X**2 + Y**2)**0.5
TH=ATAN(Y/X)
EZ=210
EC=EZ*(1 + 0.8095238*(0.5-(5*(R-2))))*EXP(-0.25*TH)
FIELD(1)=EC
STATEV(1)=EC

else
c assign initial values calculated in first inc.
FIELD(1) = STATEV(1)

end if

My input file includes the code:

** MATERIALS
**
*Material, name=FGM
*Depvar
1,
1, E, Elastic_module
*Elastic, dependencies=1, TYPE=ISOTROPIC
1e+09, 0.3, , 1.
2e+09, 0.3, , 2.
*User Defined Field
**


However, Abaqus only seems to use E=2E9 (as a homogeneous material) and DOES NOT vary E with the FV1.

I've outputed FV1 and SDV1 and they vary exactly as given in the USDFLD, so the sub-routine is working.

When I use E=0

*Elastic, dependencies=1, TYPE=ISOTROPIC
0, 0.3, , 0.
1e+09, 0.3, , 1.
*User Defined Field

I get an error stating that "Young's modulus cannot be 0".

When I use

*Elastic, dependencies=1, TYPE=ISOTROPIC
1e+09, 0.3, , 1.
3e+09, 0.3, , 3.
*User Defined Field

Abaqus uses E=3E9 for the entire beam (homogeneous again).

Why is Abaqus not designating a direct relation between the Young's Modulus and the Field1 variable ?

I'm using Abaqus/Standard 6.14 for a simply static linear analysis. Any help would be much appreciated!
 
Replies continue below

Recommended for you

Hi,

I ran your model and I noticed FV1 vary between value of 145.0 and 375.0.
With your material definition it make sense only when FV1 vary from 1.0 to 2.0.
Abaqus use constant extrapolation outside field variable range so any value above 2.0 will use E=2e+09.

Please check your equation inside subroutine.

Regards,
Bartosz

VIM filetype plugin for Abaqus
 
Hi Bartosz,

Thank you for pointing out my mistake!

I incorrectly assumed that Abaqus would use the same interpolation that it uses within the FV range specified (of 1-2) to extrapolate outside the FV range.

However, as you mention, Abaqus uses a CONSTANT extrapolation outside the range of FV, resulting in it using E=2E9 for any value above FV=2.

I fixed this by changing the range of FV to 100-400 (so that all values of FV computed at the integration points lie within this), and the simulation worked as expected.

Thank you for taking the time to help me!
 
Status
Not open for further replies.
Back
Top