Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

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

USDFLD/DEPVAR Switching between two material properties

Status
Not open for further replies.

Tomas331

Student
Dec 14, 2021
1
(New to subroutines) I need to vary between material properties based on temperature (easily implemented in Abaqus, under materials tab) but I also need to switch between material properties based on some flag-parameter (I have materail with two microstructural phases and hysteresis in the phase diagram - not so important for the question tho).

I have defined my material as temperature dependent and with field value 0 for one material (phase A) and 1 for the phase B, all under one material definition. Additionally I have defined depvar to use it as the flag-parameter. (Material behaves as phase A, unless it dips below certain temperature and then it behaves as material B, even if the temperature rises again.)

I tried to do something in these lines with the USDFLD:

SUB(USDFLD)...
CALL GETVRM('TEMP',ARRAY,JARRAY,FLGRAY,JRCD,
1 JMAC,JMATYP,MATLAYO, LACCFLG)

IF (STATEV(1).NE.1) THEN
IF (ARRAY(1).LE.310) THEN
FIELD(1)=1
STATEV(1)=1
ELSE
FIELD(1)=0
STATEV(1)=0
END IF
ELSE
FIELD(1)=1
STATEV(1)=1
END IF
RETURN
END

But the output is 0 for the first increment and then 1 for all the rest. I feel like I misunderstood something, when reading the documentation and could not find any similar topics.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor