晶体塑性有限元显式代码VUMAT(同时也包含umat子程序),基于黄永刚umat的vumat子...
晶体塑性有限元显式代码VUMAT同时也包含umat子程序基于黄永刚umat的vumat子送学习资料。 黄永刚huang.for晶体塑性子程序具有良好的收敛性以及较高的计算效率在一般变形下可直接使用。 然而在一些特殊的工况下切削轧制冲压等隐式存在收敛性问题通常使用显式程序进行计算。最近在折腾晶体塑性有限元的朋友应该都经历过这样的场景明明材料模型没问题但做切削仿真时死活不收敛眼看着作业一次次中断血压都快飙到临界值。这时候老司机们会神秘一笑上VUMAT试试说到黄永刚先生的Huang.for子程序那可是塑性仿真领域的初代网红代码。这版UMAT用着牛顿迭代法走天下常规变形下又快又稳。但遇到刀具切入材料这种瞬间大变形隐式算法就像新手开手动挡离合器总踩不准——迭代发散家常便饭。显式VUMAT这时候就显露出暴力美学的优势了。来看段典型的应力更新核心代码C 显式应力更新核心 DO K1,NBLOCK TAUN TAUTO(K) G*DDEPS(K) !弹性预测 F ABS(TAUN) - (Y0 H*EVPSTAN(K)) !屈服函数 IF(F.GT.ZERO) THEN DGAMA F/(GH) !显式塑性乘子 TAUN SIGN(1.0,TAUN)*(ABS(TAUN)-G*DGAMA) EVPSTAN(K) EVPSTAN(K) DGAMA ENDIF TAUNEW(K) TAUN ENDDO这段代码最妙的地方在于完全摒弃了隐式迭代。弹性预测阶段直接拿应变增量算试探应力如果超过屈服面直接用显式塑性乘子DGAMA做修正。没有雅可比矩阵计算没有迭代容差判断简单粗暴但有效。晶体塑性有限元显式代码VUMAT同时也包含umat子程序基于黄永刚umat的vumat子送学习资料。 黄永刚huang.for晶体塑性子程序具有良好的收敛性以及较高的计算效率在一般变形下可直接使用。 然而在一些特殊的工况下切削轧制冲压等隐式存在收敛性问题通常使用显式程序进行计算。不过显式计算也有自己的坑。比如时间步长必须满足CFL条件这就像给仿真速度加了限速器。笔者曾试过在轧制仿真中偷懒放大时间步结果材料直接表演量子隧穿——轧辊还没接触工件已经出现迷之变形。切削仿真中的典型参数设置值得注意C 材料参数配置 PROPS(1) 120000.0 !弹性模量 PROPS(2) 0.3 !泊松比 PROPS(3) 400.0 !初始屈服 PROPS(4) 1000.0 !硬化模量 PROPS(5) 0.001 !率敏感参数这里第5个参数经常被忽视。显式算法虽然回避了收敛性问题但材料率效应会让结果产生时间步长依赖性。有次笔者把率敏感参数设为零结果不同网格尺寸的切削力差异高达30%被导师当场抓包。对想上手VUMAT的朋友建议先从黄永刚的UMAT版本改造入手。比如把隐式迭代模块替换为径向返回算法保留原有的晶体取向更新部分。这种渐进式改造比从零写起更安全毕竟晶体塑性里那些滑移系计算可不是闹着玩的。最后给个真香警告显式计算虽然避免了迭代烦恼但计算量可能比隐式大一个数量级。建议在提交大型仿真前先用单单元模型做验证。毕竟看着十万核时的计算资源因为一个符号错误打水漂那滋味可比仿真不收敛酸爽多了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2460873.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!