Logo 折叠
全网首发仿真工程师项目实训
下载app
返回旧版
首页 成长助手 小邻学院 社区 发现
职业认证 企业服务 行业会议

登录解锁更多功能

还没有账号?立即注册

技术邻
技术引领职场价值
电话
0571-86682823
商务合作
service@jishulink.com
  • 全部  > 
  • CAE仿真

在使用fortran编写UMAT子程序时求积分上限时一直报错? 20

浏览: 1925 回答: 6

需要求一个积分的上限,求积分上限的程序是这样的

E_mn=0.5*D0_eff*T0_eff
   do while(E_mn.lt.Gsc)
       Df_eff=Df_eff+0.001
    E_mn=E_mn+0.001*exp(T0_eff*D0_eff/(Gc-0.5*T0_eff*D0_eff)*(1.0-Df_eff/D0_eff))*T0_eff
   end do

这是那一整部分程序

if (ftype.lt.1.0) then
! else  ! check for matrix failure
     if  (sigma_N.ge.0) then; 
      elt_m=(sigma_N/yt)**2+(tau_T/st)**2+(tau_L/sl)**2
  else
   elt_m=(tau_T/(st+sigma_N/tan(2*phio)))**2 &
       +(tau_L/(sl+sigma_N/tan(2*phio)))**2
  endif 
        if ((elt_m .ge. 1.0).and.(sigma_N.ge.0)) then !---------matrix tensile cracking---------
   Gnc=Gnct
   
     ftype=1.0
     T0_eff=T_eff/sqrt(elt_m)
     D0_eff=D_eff/sqrt(elt_m)
   Gc=Gnc+(Gsc-Gnc)*(Gs/(Gn+Gs))**eta
   Df_eff=D0_eff
   E_mn=0.5*D0_eff*T0_eff
   do while(E_mn.lt.Gc)
       Df_eff=Df_eff+0.001
    E_mn=E_mn+0.001*exp(T0_eff*D0_eff/(Gc-0.5*T0_eff*D0_eff)*(1.0-Df_eff/D0_eff))*T0_eff
   end do
   if(Df_eff.le.D0_eff) then
    dm=dgdf2
    ftype=1.5
   endif
      else if ((elt_m .ge. 1).and.(sigma_N.lt.0)) then !---------matrix compressive cracking---------
   
   ftype=2.0
   T0_eff=T_eff/sqrt(elt_m)
     D0_eff=D_eff/sqrt(elt_m)
     Df_eff=D0_eff
   E_mn=0.5*D0_eff*T0_eff
   do while(E_mn.lt.Gsc)
       Df_eff=Df_eff+0.001
    E_mn=E_mn+0.001*exp(T0_eff*D0_eff/(Gc-0.5*T0_eff*D0_eff)*(1.0-Df_eff/D0_eff))*T0_eff
   end do
   endif      
       
   if(Df_eff.le.D0_eff) then
    dm=dgdf2
    ftype=2.5
      endif
      else 
   dm=0.0
   ftype=0.0
     endif
 endif

但是提交之后一直报错,Error: Expecting END SUBROUTINE statement at (1)。

不知道是哪里有问题,请懂的前辈不吝赐教。

或者说,提示这样的错误是程序哪里出了问题呢?

FORTRAN 有限元理论及编程 ABAQUS 复合材料

全部回答 (3)

默认 最新
技术邻问答 2017年11月15日
如果觉得回答对你有帮助,请记得及时采纳哦
2017年11月15日
评论 点赞
干货有限元 2017年8月18日
如果没看错 你的do while 那个值 越来越小 所以跳不出循环来
2017年8月18日
评论 点赞
干货有限元 2017年8月16日
subroutine 结束后 要有end语句呀
2017年8月16日
评论 3 点赞

相似问题

查看全部
  • UMAT实现混凝土粘弹性徐变变形提问? 1个回答

    小白计划采用UMAT实现混凝土徐变粘弹性变形计算,其中一部分代码已编好(详见附件),现遇到以下问题: 1.直接运算可以计算,但无法查看结果,提示如下: The selected Primary Variable is not availablein the current frame for any elements inthe current display group. 2.初步判断问题出现在

  • marc焊接仿真二次开发-以几何位置激活生死单元的方法? 暂无回答

    二次开发指南上和网上关于生死单元的二次开发uactive()大多都是用单元号作的。这样在遍历单元格时很容易判断所遍历的单元生死状态,但对模型分网的网格单元号是有要求的。二次开发指南上网格单元号沿焊接路径方向有规律增加。可是对于不在marc上建模分网的焊接模型,网格号很难满足上述要求。 此时想用遍历单元与移动的热源中心相对位置来决定是否激活单元。我们看到二次开发指南中将生死单元状态另写入以文件中,仿

  • abaqus与子程序参数不匹配,怎么解决? 3个回答

    Error in job ex12-4-O1: Problem during linking - Abaqus/Standard User Subroutines. This error may be due to a mismatch in the Abaqus user subroutine arguments. These arguments sometimes change from re

推荐阅读

钢结构S1 ABAQUS经典金属弹塑性本构及模拟应用

钢结构S1 ABAQUS经典金属弹塑性本构及模拟应用

1点 1点
¥100
0#块箱梁托架法施工结构模拟

0#块箱梁托架法施工结构模拟

yudachuan1105 yudachuan1105
¥200
ABAQUS钢管混凝土柱温度场及耐火性能分析(未完)

ABAQUS钢管混凝土柱温度场及耐火性能分析(未完)

地下结构设计
¥40
前沿技术!大数据分析及人工智能在优化软件中的应用

前沿技术!大数据分析及人工智能在优化软件中的应用

IDAJ中国 IDAJ中国
¥9.99
新一代智能头灯的动态设计评估与仿真

新一代智能头灯的动态设计评估与仿真

Ansys中国 Ansys中国
免费
UG培训第九课:自由曲面构造法

UG培训第九课:自由曲面构造法

luffy8610 luffy8610
¥20
应用ANSYS瞬态动力学法模拟啮合齿轮的高速转动

应用ANSYS瞬态动力学法模拟啮合齿轮的高速转动

夏日星空 夏日星空
¥35
一线科技工作者接受仿真咨询服务的全过程经验分享

一线科技工作者接受仿真咨询服务的全过程经验分享

技术邻直播 技术邻直播
免费
混凝土材性试块拉压数值模拟(ABAQUS通法建模初级案例3)

混凝土材性试块拉压数值模拟(ABAQUS通法建模初级案例3)

大平-结构工程 大平-结构工程
¥299
汽车仪表模具模流分析的实战讲解

汽车仪表模具模流分析的实战讲解

北卡 北卡
免费
UG有限元基础教程

UG有限元基础教程

moonshine🤓 moonshine🤓
免费
ABAQUS桁架结构强度分析

ABAQUS桁架结构强度分析

wj_2704 wj_2704
¥500
ADAS功能软件基础介绍

ADAS功能软件基础介绍

Alex王 Alex王
免费
abaqus lamb波传播分析

abaqus lamb波传播分析

abaquser abaquser
¥25
abaqus模拟桩(三维)全过程

abaqus模拟桩(三维)全过程

红日当空q3120210076 红日当空q3120210076
¥62
solidworks 2016基础操作入门到精通

solidworks 2016基础操作入门到精通

新征程学院 新征程学院
免费
TurboTides 2024R2全新版本发布会--智能算法驱动的全自动优化透平机械集成设计平台

TurboTides 2024R2全新版本发布会--智能算法驱动的全自动优化透平机械集成设计平台

TurboTides TurboTides
免费
场景仿真加速智能网联开发测试进程

场景仿真加速智能网联开发测试进程

海克斯康设计与仿真 海克斯康设计与仿真
免费
ANSYS speos汽车信号灯案例实操教程

ANSYS speos汽车信号灯案例实操教程

IDAJ中国 IDAJ中国
¥9.9
ANSYS SI/PI/EMI&TI 2019 R3 新功能介绍

ANSYS SI/PI/EMI&TI 2019 R3 新功能介绍

Ansys中国 Ansys中国
免费