首页/文章/ 详情

Abaqus传热分析HETVAL和USDFLD子程序联合

7月前浏览13288

本文摘要(由AI生成):

本文主要介绍了Abaqus传热分析中Hetval子程序的使用,包括其函数体、与USDFLD子程序的联合使用、材料设置、边界和分析步的设置以及作业的建立。通过使用Hetval子程序,可以定义材料内部的生热量,实现热应力耦合分析。最后,文章展示了计算结果,并与理论计算进行了比较,证明了热源加载的正确性。


1、HETVAL简介

Abaqus传热分析中,Hetval子程序常用于定义内部热源,该子程序可以定义材料内部的生热量(如相变、高分子结晶生热),并且能够调用state variable 状态变量,可以与USDFLD子程序联合使用。其函数体如下:

SUBROUTINE HETVAL(CMNAME,TEMP,TIME,DTIME,STATEV,FLUX,

1 PREDEF,DPRED)

INCLUDE 'ABA_PARAM.INC'

CHARACTER*80 CMNAME

DIMENSION TEMP(2),STATEV(*),PREDEF(*),TIME(2),FLUX(2),

1 DPRED(*)

User coding to define FLUX and update statev !此处定义你的Flux() 更新状态变量

RETURN

END

2、模型  1mx1mx0.5m的方块,进行热应力耦合分析,选用C3D8T单元

3、Hetval 和USDFLD联合

USDFLD和HETVAL写在一个for文件中,HETVAL中通过State(1)来定义热源,而state(1)是通过USDFLD更新,实现数据传递

4、材料 

设置材料为钢,给定力、热属性。 同时在general 选项中添加 User Defined Filed 和Depvar ,Depvar中的number of solution-dependent state variables 根据实际需求设置(本例中设为1))。在Thermal 选项下添加Heat Generation   

5、边界和分析步

给定初始温度30 、通过hetval子程序添加热生成率 1e7W/m3,下端面全部约束。选择*Coupled Temperature-displacement 分析步,进行热力学分析

6、建立作业

此时已经定义了USDFlD和HETVAL子程序,但是USDFLD子程序还没有激活,需要通过* *INITIAL CONDITIONS, TYPE=FIELD来激活,导出iob inp文件 ,在STEP前面加上如下命令*INITIAL CONDITIONS, TYPE=FIELD, VARIABLE=1,如截图所示

 最后通过cmd命令提交job

7、结果展示

初始温度30度

 通过Hetval 加载热生成率1e7W/m3,计算完温度32.84 

 

热应力

 

理论计算

根据比热容  即可得到

7800*0.5*452*=1e7*0.5*1

可见和计算结果完全吻合,说明了热源加载的正确性

8、总结

    1、两个子程序写在一个for文件中,保证程序的正确性

    2、两个子程序都要在material模块设置,并且USDFLD要通过initial condition关键 字激活,否则不起作用

    3、*Initial condition 不支持CAE操作 所以通过cmd 提交job

    4、USDFLD中按实际需求更改STATE(1)的值,可以通过GETVARM函数获取计算结果,如应力、应变、温度。



Abaqus
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2019-09-27
最近编辑:7月前
工程计算与仿真
硕士 | CAE仿真工程师 电磁热力流&汽车行业
获赞 88粉丝 2447文章 31课程 3
点赞
收藏
未登录
3条评论
May
签名征集中
2年前
您好,能分享一下源文件么,谢谢,21983751@qq.com,可以有偿
回复
千度
签名征集中
2年前
您好,能分享一下源文件么,谢谢,2022262846@qq.com,可以有偿
回复
怎么肥事
签名征集中
4年前
您好,能分享一下源文件么,谢谢827324029@qq.com,我最近在学习abaqus子程序
回复
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈