Abaqus超弹体:VUSDFLD子程序详解

subroutine vusdfld(nblock,nstatev,nfieldv,nprops,ndir,

     &                 nshr,jElem,kIntPt,kLayer,kSecPt, 

     &                   stepTime,totalTime,dt,cmname, 

     &                   coordMp,direct,T,charLength,props, 

     &                    stateOld,stateNew,field )

C

C      include 'ABA_PARAM.INC'

C

      include 'vaba_param.inc'

C

      dimension jElem(nblock), coordMp(nblock,*), 

     1          direct(nblock,3,3), T(nblock,3,3), 

     2          charLength(nblock), props(nprops), 

     3          stateOld(nblock,nstatev), 

     4          stateNew(nblock,nstatev),

     5          field(nblock,nfieldv)

      character*80 cmname

      

      parameter( nrData=6 )

      character*3 cData(maxblk*nrData)

      dimension rData(maxblk*nrData), jData(maxblk*nrData)

C   

   real*8,dimension(6)::sigmaNew

   real*8,dimension(1)::Critical_Strain 

   real*8,dimension(1)::MaxStress   

   real*8,dimension(1)::term1

   real*8,dimension(1)::term2

   real*8,dimension(1)::term3

   real*8,dimension(1)::term4

   real*8,dimension(1)::term5

   real*8,dimension(1)::maxprincipalE

   real*8,dimension(1)::minprincipalE 

   jStatus = 1

   call vgetvrm('LE',rdata,jdata,cdata,jStatus)

      if( jStatus .ne. 0 ) then

        call xplb_abqerr(-2,'Utility routine VGETVRM '//

     .      'failed to get variable.',0,zero,' ')

        call xplb_exit

      end if

C

C

   Critical_Strain(1)=0.3000

C

      do k = 1, nblock

        StrainE11 = rData(k)

        StrainE22 = rData(nblock+k) 

        StrainE33 = rData(2*nblock+k)

        StrainE12 = rData(3*nblock+k) 

  term1(1) = (StrainE11+StrainE22)/2

  term2(1) = (StrainE11-StrainE22)/2

  term3(1) = StrainE12/2

  term4(1) = ((term2(1)*term2(1))+(term3(1)*term3(1)))

  term5(1) = SQRT(term4(1))

  maxprincipalE(1) = term1(1) + term5(1)

  minprincipalE(1) = term1(1) - term5(1)

  

        if (maxprincipalE(1) .ge. Critical_Strain(1)) then

         stateNew(k,1) = 0

        end if

      end do

      RETURN

      END

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空