SUBROUTINE UMIXMODEFATIGUE(DADN,SKI_MAX,SKII_MAX,SKIII_MAX, $ SKI_MIN,SKII_MIN,SKIII_MIN,TEMP,DTEMP,PREDEF,DPRED,NFIELD,NPROPS, $ PROPS,NSTATV,STATEV,NIARRAY,I_ARRAY,NRARRAY,R_ARRAY,NCARRAY, $ C_ARRAY, DA) c INCLUDE 'ABA_PARAM.INC' c dimension props(nprops),statev(nstatv), predef(nfield), $ dpred(nfield),i_array(niarray), r_array(nrarray) character*80 c_array(ncarray) parameter (tol=1.0d-6) skeff=sqrt((SKI_MAX-SKI_MIN)**2+(SKII_MAX-SKII_MIN)**2 $ +(SKIII_MAX-SKIII-MIN)**2) skTT = sqrt(SKI_MAX**2+SKII_MAX**2+SKIII_MAX**2) skshear=sqrt(SKII_MAX**2+SKIII_MAX**2) test=1.0 if (abs(skTT).gt.abs(skshear)*tol) test=0.0 skModeR= abs(skshear)*(1.0-test)/(abs(skTT)+test) an1=props(1) an2=props(2) c1=props(3) c2=props(4) if(skModeR.gt.0.5)Then dadN=c1*skeff**an1 else dadN=c2*skeff**an2 endif c write(*,*) 'an1,c1',an1,an2,c1,c2 c write(*,*) 'gtt','gmodeR','dadn',gtt,gmodeR,dadn return end