顶部banner
Logo 折叠
学习从这里开始
下载app
返回旧版
首页 成长助手 小邻学院 社区 发现
职业认证 企业服务 行业会议

登录解锁更多功能

还没有账号?立即注册

技术邻
技术引领职场价值
电话
0571-86682823
商务合作
service@jishulink.com

ABAQUS用VUSDFLD子程序模拟结果输出存在1.#QNAN,是什么原因? 30

浏览: 2389 回答: 1

代码

subroutine vusdfld(
 c Read only -
     *   nblock, nstatev, nfieldv, nprops, ndir, nshr,
     *   jElem, kIntPt, kLayer, kSecPt,
     *   stepTime, totalTime, dt, cmname,
     *   coordMp, direct, T, charLength, props,
     *   stateOld,
c Write only -
     *   stateNew, field )
c
      include 'vaba_param.inc'
c
      dimension props(nprops),
     *          jElem(nblock), coordMp(nblock, *),
     *          direct(nblock, 3, 3), T(nblock,3,3),
     *          charLength(nblock),
     *          stateOld(nblock, nstatev),
     *          stateNew(nblock, nstatev),
     *          field(nblock, nfieldv)
      character*80 cmname
C
C Local arrays from vgetvrm are dimensioned to
C maximum block size (maxblk)
C
      parameter( nrData=6 )
      character*3 cData(maxblk*nrData)
      dimension rData(maxblk*nrData), jData(maxblk*nrData)
      dimension StatusOld(NBLOCK,1),StatusNew(NBLOCK,1)
     
      PARAMETER(ZERO=0.0,ONE=1.0,TWO=2.0,THREE=3.0)
      DIMENSION STRESSNEW(NDIR+NSHR)    
C
C     INPUT CONSTANT PARAMETERS
C
        EMOD=80000
        ENU=0.33
        DC1=5.0992
        DC2=0.7247
        DC3=0.3611
        EA=301.0
        EQ=205.0
        EB=18.0
       
        EBULK3=EMOD/(ONE-TWO*ENU)
        EG2=EMOD/(ONE+ENU)
        EG=EG2/TWO
        EG3=THREE*EG
        ELAM=(EBULK3-EG2)/THREE
      
      DO K0=1,NBLOCK
       
C
C  INITIAL FAILURE FLAGS FROM STATE VARIABLES
C
       DAMAGE=stateOld(K0,2)
       CALL VGETVRM('S',RDATA,JDATA,CDATA,JSTATUS)
         STRESSNEW(1)=RDATA(K0*1)
         STRESSNEW(2)=RDATA(K0*2)
         STRESSNEW(3)=RDATA(K0*3)
         STRESSNEW(4)=RDATA(K0*4)
         IF(NSHR.GT.1) THEN
         STRESSNEW(5)=RDATA(K0*5) 
         STRESSNEW(6)=RDATA(K0*6)
         END IF
      
       CALL VGETVRM('PEEQ',RDATA,JDATA,CDATA,JSTATUS)
       EQPLAS=RDATA(K0)
      
       IF(NSHR.EQ.1) THEN
         POTENIAL=0.50*((STRESSNEW(1)-STRESSNEW(2))**2+
     1   (STRESSNEW(2)-STRESSNEW(3))**2+(STRESSNEW(3)-STRESSNEW(1))**2
     2   +6*STRESSNEW(4)**2)
       ELSE
         POTENIAL=0.50*((STRESSNEW(1)-STRESSNEW(2))**2+
     1   (STRESSNEW(2)-STRESSNEW(3))**2+(STRESSNEW(3)-STRESSNEW(1))**2
     2   +6*(STRESSNEW(4)**2+STRESSNEW(5)**2+STRESSNEW(6)**2))
       END IF
         EFS=SQRT(POTENIAL)
      
         HARD=0.0
       IF(EQPLAS.EQ.0.0) THEN
         SYIELD=EA
       ELSE
         HARD=EQ*EB*EXP(-1*EB*EQPLAS)
         SYIELD=EA+EQ*(1-EXP(-1*EB*EQPLAS))
       END IF
      
         RHS=EFS-SYIELD
C
C  JUDGE IF YIELD
C
       IF(RHS.GT.0.0) THEN
         DEQPLAS=RHS/(EG3+HARD)
        
         STRESSM=(STRESSNEW(1)+STRESSNEW(2)+STRESSNEW(3))/3
       
        HJ2=((STRESSNEW(1)-STRESSNEW(2))**2+(STRESSNEW(2)-STRESSNEW(3))
     1      **2+(STRESSNEW(3)-STRESSNEW(1))**2+6.0*STRESSNEW(4)**2)/6.0
        HJ3=(STRESSNEW(1)-STRESSM)*(STRESSNEW(2)-STRESSM)*
     1    (STRESSNEW(3)-STRESSM)-(STRESSNEW(3)-STRESSM)*STRESSNEW(4)**2
        THETA=ACOS(3.0**1.5*HJ3/(2.0*HJ2**1.50))/3
       
        CR11=COS(THETA)
        CR12=SIN(THETA)
        CR21=-1.0*SIN(THETA)
        CR22=COS(THETA)
       
        SP1=CR11**2*STRESSNEW(1)+CR21**2*STRESSNEW(2)+
     1      2*CR11*CR21*STRESSNEW(4)
        SP2=CR12**2*STRESSNEW(1)+CR22**2*STRESSNEW(2)+
     1      2*CR12*CR22*STRESSNEW(4)
        SP3=STRESSNEW(3)
       
        HYSTRESS=(SP1+SP2+SP3)/3.0
     
        TNH=HYSTRESS/EFS
       
        SP1=MAX(SP1,SP2,SP3)
        SP3=MIN(SP1,SP2,SP3)
       
        DDAMAGE=(((SP1-SP3)/EFS)**DC1+(TNH-1.0/3.0))**DC2*DEQPLAS
     1        /DC3
       
      
       END IF
      
       DAMAGE=DAMAGE+DDAMAGE
       stateNew(K0,2)=DAMAGE
       
       IF(stateNew(K0,2).GE.1) THEN
          stateNew(K0,1)=0.0
       ELSE
          stateNew(K0,1)=1.0
       END IF
        
     
      END DO  
      RETURN
      END

VUSDFLD子程序损伤模拟

全部回答 (1)

默认 最新
沉默的果冻 2024年2月18日
"1.#QNAN" 是浮点数运算中出现的特殊值,表示“不是一个数”,出现这样的输出通常意味着程序在执行过程中出现了某些数学计算上的错误或者非法操作,导致了浮点数的异常值。我也出现了同样的问题,正在找bug...
2024年2月18日
评论 点赞

相似问题

查看全部
  • abaqus的Vgetvrm所提取的第一主应力为什么等于0? 5个回答

    具体程序段如下: call vgetvrm( 'SP', rData, jData, cData, jStatus ) SIG1(K)=RDATA(K) 输出值为0 call vgetvrm( 'SP', rData, jData, cData, jStatus ) SIG1(K)=RDATA(2*NBLOCK+K) 有输出值 看完兵哥的视频后就在想是不是2022版本abaqus的主应力也是 S1

  • ABAQUS的vusdfld模拟组织遇到云图显示错误和黑色区域的问题? 5个回答

    在这里附上子程序的内容,麻烦相关人士指正错误: subroutine vusdfld( c Read only - * nblock, nstatev, nfieldv, nprops, ndir, nshr, * jElemUid, kIntPt, kLayer, kSecPt, * stepTime, totalTime, dt, cmname, * coordMp, direct, T, c

  • 关于VUSDFLD中新旧变量的提取问题? 6个回答

    最近,我再将以前写的一个隐式计算的USDFLS的子程序改写为VUSDFLD,结果遇到的问题 我使用vusdfld在实现单元的删除,在里面计算等效塑性应变的增量的时候,我令一个变量等于stateOld,然后用stateNew减去这个值来实现我的目的,为什么不行?也就是stateOld里面并不是存的上一步的等效塑性应变的结果? 这个问题困扰我很久了,能否有大神助一臂之力的? 附上子程序和inp文件,以

推荐阅读

手把手教你ABAQUS耗能钢节点建模与分析

手把手教你ABAQUS耗能钢节点建模与分析

1点 1点
¥169
step by step 教你如何在abaqus中使用实体单元和连接单元建立螺栓连接

step by step 教你如何在abaqus中使用实体单元和连接单元建立螺栓连接

幻想飞翔 幻想飞翔
¥30
2020全英华人汽车工程协会年会Part 2——汽车产品工程研发的数字化未来

2020全英华人汽车工程协会年会Part 2——汽车产品工程研发的数字化未来

陈东陈 陈东陈
免费
测量不确定度的应用实践

测量不确定度的应用实践

HBK测试与测量 HBK测试与测量
免费
无网格划分软件midas MeshFree - 功能培训

无网格划分软件midas MeshFree - 功能培训

MIDAS官方 MIDAS官方
免费
探究实时仿真GPU求解器加速汽车行业设计创新

探究实时仿真GPU求解器加速汽车行业设计创新

Ansys中国 Ansys中国
免费
Fluent中升力和阻力的计算

Fluent中升力和阻力的计算

宁博士CAE团队 宁博士CAE团队
免费
【入门案例02】Abaqus——钢筋混凝土构件的碳纤维布+钢板加固模拟

【入门案例02】Abaqus——钢筋混凝土构件的碳纤维布+钢板加固模拟

臻元咨询
¥30
张量计算课程合集

张量计算课程合集

引垂思汀 引垂思汀
¥50
精品课程A30-考虑初始缺陷的栓焊连接组合节点滞回模拟

精品课程A30-考虑初始缺陷的栓焊连接组合节点滞回模拟

大平-结构工程 大平-结构工程
¥598
vof案例-射流

vof案例-射流

CFD流 CFD流
免费
线控底盘市场趋势分析

线控底盘市场趋势分析

小木匠砍树 小木匠砍树
免费
用EVOLVE对接INSPIRE,加速产品迭代优化

用EVOLVE对接INSPIRE,加速产品迭代优化

咸鱼氮泵 咸鱼氮泵
免费
遗传算法解决(TSP)商旅问题matlab代码超详细解说(适用于新手)

遗传算法解决(TSP)商旅问题matlab代码超详细解说(适用于新手)

活泼可男_matlab教学 活泼可男_matlab教学
¥10
船舶行进过程中的流场分布规律分析

船舶行进过程中的流场分布规律分析

龙樱 龙樱
免费
BOX-3D变宽斜钢箱梁绘图及功能更新演示

BOX-3D变宽斜钢箱梁绘图及功能更新演示

敦樸DUNPU 敦樸DUNPU
免费
abaqus埋地管道受力分析

abaqus埋地管道受力分析

冷月 冷月
¥25
基于iSIGHT+Workbench的开孔平板性能优化

基于iSIGHT+Workbench的开孔平板性能优化

sjktzy sjktzy
¥5
Hyperworks CFD v2022.1前后处理教程

Hyperworks CFD v2022.1前后处理教程

ALTAIR ALTAIR
免费
品索设计-Creo自学练习集讲解(草绘部分)

品索设计-Creo自学练习集讲解(草绘部分)

深圳品索设计Creo培训 深圳品索设计Creo培训
免费