subroutine usdfld(field,statev,pnewdt,direct,t,celent,time,dtime, 1 cmname,orname,nfield,nstatv,noel,npt,layer,kspt,kstep,kinc, 2 ndi,nshr,coord,jmac,jmtyp,matlayo,laccflg) c include 'aba_param.inc' c character*80 cmname,orname character*3 flgray(15) dimension field(nfield),statev(nstatv),direct(3,3),t(3,3),time(2), * coord(*),jmac(*),jmtyp(*) dimension array(15),jarray(15) c if (cmname.eq.'MAT1') then c PRESS call getvrm('SINV',array,jarray,flgray,jrcd, $ jmac, jmtyp, matlayo, laccflg) field(1) = array(3) else if (cmname.eq.'MAT2') then c PEEQ from previous increment. Passed in as array(7) call getvrm('PE',array,jarray,flgray,jrcd, $ jmac, jmtyp, matlayo, laccflg) field(1) = array(7) c PRESS call getvrm('SINV',array,jarray,flgray,jrcd, $ jmac, jmtyp, matlayo, laccflg) field(2) = array(3) else if (cmname.eq.'MAT3') then c TRIAX call getvrm('SINV',array,jarray,flgray,jrcd, $ jmac, jmtyp, matlayo, laccflg) field(1) =-array(3)/max(1.0/1.d36,array(1)) else if (cmname.eq.'MAT4') then c PEEQ from previous increment. Passed in as array(7) call getvrm('PE',array,jarray,flgray,jrcd, $ jmac, jmtyp, matlayo, laccflg) field(1) = array(7) c TRIAX call getvrm('SINV',array,jarray,flgray,jrcd, $ jmac, jmtyp, matlayo, laccflg) field(2) =-array(3)/max(1.0/1.d36,array(1)) end if c return end