Abaqus UMAT使用中的诡异错误(1)

abaqus umat使用中会出现一些意想不到的错误,记录一下,也许有人会用得到

  1. 不能使用multiple processors: 调用umat计算时,有时会发现只要使用multiple processors就不能模拟,但是用单核就可以计算。在我这里,这个情况是由于我在调试程序时为了输出变量,写了很多write(),尤其是将每一步每个积分点的数据都创建一个.txt进行输出。这样的话,用multiple processors就会出问题。
  2. 用Notepad++编辑fortran(fixed form): 因为Notepad++的高亮等语法提示看着比较舒服,所以我将umat中的一个subroutine先在Notepad++里面编辑,然后直接粘贴到Microsoft VS里面。然后发现本来这一行已经超过长度限制了,但是VS里面并没有提示,非常难以发现。需要把复制的几行重新手动输入一下。
  3. 关于write()可以影响程序的运行结果: 调试umat的时候,会想利用write()输出一些变量,但是会发现有时候write()语句的添加会影响程序运行结果。我并没有想到好的解决办法,只是看哪一种可以得到我要的结果,就按照哪一种来运行程序。在Stack Overflow上面找到一些讨论:

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

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利