许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  abaqus子程序配好了没?验证方法一步到位

abaqus子程序配好了没?验证方法一步到位

阅读数 2
点赞 0
article_banner


Abaqus/Standard analysis exited with an error,msg里就这一行,子程序编没编过根本看不出来,还得翻log。子程序配好没配好,跑一个最简单的单单元模型验证,别直接上大模型,崩了都不知道是配置问题还是模型问题。

D:\temp\verify_sub\single_elem.inp,一个C3D8R单元,1×1×1mm,弹性模量206000,泊松比0.3,一端固定,另一端加100MPa压力。USER MATERIAL, CONSTANTS=2,DEPVAR,NSTATEV=10,SOLID SECTION, ELSET=ALL, MATERIAL=USERMAT。UMAT里就写线弹性,DDSDDE按各向同性填,STRESS用DDSDDE乘以DSTRAN累加。DFLUX验证就换成一个热传导步,表面加1000W/m²热流,子程序里按Q=FLUX(1)AREA算生热率写进RPL。UEL验证要单独建模型,一个单元两个节点,刚度矩阵自己组装,边界条件自己处理。

abaqus job=single_elem user=umat_test.for cpus=1 interactive,命令行敲下去,屏幕刷出“Abaqus JOB single_elem”和“Begin Compiling”,这两行出来说明编译器在动了。编译报错行里找“error”,链接报错行里找“LNK”,这两个是配置没配好。编过了之后跑完看msg,最后一行“THE ANALYSIS HAS COMPLETED SUCCESSFULLY”才算真过了。sta文件里看增量步和迭代次数,dat文件里看单元刚度和应力输出,odb里看云图跟手算对一下。

Abaqus 2022、VS2019、oneAPI 2021.4、ifort 2021.4.0、D:\SIMULIA\EstProducts\2022\win_b64\SMA\site\win86_64.env、D:\SIMULIA\EstProducts\2022\win_b64\SMA\site\abaqus_v6.env、D:\temp\verify_sub\umat_test.for、D:\temp\verify_sub\single_elem.inp、D:\temp\verify_sub\single_elem.log、D:\temp\verify_sub\single_elem.msg。

有一次帮新来的同事配环境,他装完VS2019和oneAPI之后直接拿一个混凝土的UMAT提交,崩了。当时他工位旁边的窗户开着,楼下有人在用割草机,声音嗡嗡的。第一反应是UMAT代码有问题,把代码拿到我机器上跑,编过了,结果也对,排除了代码。回到他机器上查环境变量,PATH里ifort的路径写的是oneAPI的编译器目录,但LIB和INCLUDE指向的是老版本IVF的目录,两套库混着链接。他之前装过IVF2020没卸干净,oneAPI装的时候又没覆盖全。把IVF2020卸了,oneAPI重新modify一遍,PATH、LIB、INCLUDE全部统一到oneAPI,再跑单单元验证,过了。前后折腾了三个多小时,真正改代码一行都没动。

abaqus子程序配好了没

编译产物在D:\temp\verify_sub\下,Standard生成standardU.dll和standardU.exp,Explicit生成explicitU.dll和explicitU-D.dll。dll文件在说明编译链接成功了,但能不能用还得看运行结果。有时候dll生成了但UMAT根本没被调用,原因通常是inp里忘了写USER MATERIAL或者SOLID SECTION的MATERIAL名字跟UMAT里的CMNAME对不上,程序不报错,直接拿默认材料属性算,结果看起来正常但其实错了。验证的时候在UMAT第一行加一个STATEV(1)=1.0,后处理看SDV1,全是1才说明子程序被调了,全0就是没调。

dll的时间戳跟log里编译的时间对一下,能确认是不是这次提交编的。CPU数大于1的时候子程序会多线程调用,UMAT必须是线程安全的,里面用了SAVE或COMMON块存状态的,多线程下会互相覆盖,单单元单CPU验证过了不代表多CPU就没问题。跑通单单元之后换一个20单元的梁模型,cpus=4再验一遍。D:\temp\verify_sub\standardU.dll


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

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

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空