UMAT日常小知识

  • 张量类型的变量如果不在开头声明类型,则会报错;但是如果不声明常数型变量为real或double类型,UMAT会自动判定为整数型变量。则会对结果的计算造成偏差,尤其是若该变量是一个介于0与1的数,那么ABAQUS可能会认定其为0。UMAT的传入的材料变量也需要在一开始声明类型。


  • ABAQUS在指定input文件路径以及子程序文件路径时,注意不能有空格和符号。(小案例:有时候用户名会带有空格,此时在桌面创建的文件夹下运行时候,input和for文件的路径都会自带空格,会导致无法提交


  • 编写好UMAT时,一般来说运行都会报错,因为有语法错误、逻辑错误等。

  1. 首先语法错误好排除,一般来说abaqus能够轻易检测出,并标注在log文件中,只需要修改其提到的对应位置即可,可能是矩阵的维度写错、变量未预定义类型、少写了运算符号等;

  2. 但是当出现逻辑错误的时候,一般来说都是最头疼的了。如果在写UMAT的时候有秉持每次仅增加一部分内容的好习惯,则能够相对容易地定位到逻辑错误发现的大致位置——即与上次成功运行版本不同的地方。则此时可将自己定义的最终变量赋0来观察到底是添加了哪一部分以后使得运算报错。如果想进一步观察变量的值,可以使用write语句,语法规则为    write (*,*) 'Stress(11)',STRESS(1,1)


默认 最新
当前暂无评论,小编等你评论哦!
点赞 1 评论 收藏 1
关注