高斯热源 & 生死单元技术模型-谢谢
我用高斯热源(边界热流)和生死技术建立了一个简单的模型,其APDL如下或者附件所示。大家能帮忙看一下有问题吗?谢谢了。/prep7 !进入前处理
/unit,SI !指定单位制
et,1,plane13 !单元类型选择
%几何尺寸
length=0.01 !长度
width=0.01 !宽度
blc4,0,0,length,width,0 !矩形框
%材料参数
mat,1
mp,dens,1,2520 !密度
mp,kxx,1,1.03 !热导率
mp,C,1,800 !热熔
%网格划分
rb=0.0001 !单元尺寸值
esize,rb,0 !单元尺寸设定
eshape,0,2D !单元形状
mshkey,0 !自由划分
allsel !选择所有实体
amesh,all !划分网格
%求解
/solu
%高斯光束=======开始======
%激光参数
p=40 !激光能量(W)
r=0.0035 !光斑直径(m)
qmax=p/(3.14159*r**2) !峰值功率(W/m2)
A=0.03 !吸收率
%光斑中心
xcenter=length !中心点的x坐标
ycenter=width/2 !中心点的x坐标
%表维数
max_x=length/rb+1 !x向最大维数
max_y=width/rb+1 !y向最大维数
*dim,flux2,table,max_x,max_y,,x,y !定义表
%表头
*do,i,1,max_x,1 !x表头
flux2(i,0)=(i-1)*rb
*enddo
*do,j,1,max_y,1 !y表头
*flux2(0,j)=(j-1)*rb
*enddo
%表元素
*do,i,1,max_x,1
*do,j,1,max_y,1
distance=sqrt(((i-1)*rb-xcenter)**2+((j-1)*rb-ycenter)**2) !各个单元距离中心的距离
*if,distance,le,r,then !半径内
flux2(i,j)=A*qmax*exp(-distance**2/r**2) !r为光强为1/e时的半径
*else !半径外
flux2(i,j)=0
*endif
*enddo
*enddo
%高斯光束=======结束======
%时间总时间及时间步长
tall=0.5 !总时间
nt=30 !载荷步数
tsize=tall/nt !时间子步
%输出及求解设置
antype,4 !瞬态分析
autos,on !自动时间步长跟踪
outres,,all !输出控制
nropt,full !牛顿-拉夫逊
kbc,1 !阶跃加载(貌似没有用)
%初始温度和边界条件加载
tunif,20 !初始温度
nsel,s,loc,y,width !选择上边界
sf,all,hflux2,%flux2% !热流加载
%循环求解及单元杀死=====开始=====
*do k,1,nt,1
time,k*tsize !每次循环的时间
nsel,all
solve !求解
%杀死单元==开始==
Tr=3535 !材料去除温度
%后处理-数据读取及单元选择
/post1
set,last !读取最后一子步的数据
etable,melty,temp !读取其温度值,并存在表melty中
esel,s,etab,melty,Tr !选择了温度大于Tr的单元格
finish
%返回求解
/solu
ekill,all !单元杀死
%杀死单元==结束==
antypes,,rest !重复之前的设置/前一次分析的重新启动
*enddo
%循环求解及单元杀死=====结束=====
txt文件模型如下:
LZ有没有发现在一个子步里,温度超过熔点的现象。由于生死单元是在一个子步计算结束才判断,这样在一个子步里最大温度可能会超过熔点。请问LZ是如何解决这个问题的? wq1627 发表于 2012-4-23 13:29 static/image/common/back.gif
LZ有没有发现在一个子步里,温度超过熔点的现象。由于生死单元是在一个子步计算结束才判断,这样在一个子步 ...
我也遇到这个问题,计算结果远远超过熔点 schuhi 发表于 2012-4-24 10:09 static/image/common/back.gif
我也遇到这个问题,计算结果远远超过熔点
这个问题现在还没解决,以后可以交流一下 schuhi 发表于 2012-4-24 10:09 static/image/common/back.gif
我也遇到这个问题,计算结果远远超过熔点
这个问题是普遍的,不知道是为什么,我试过在后处理中对单元的温度进行了可视化,温度会比设置的偏差一些。 wq1627 发表于 2012-4-23 13:29 static/image/common/back.gif
LZ有没有发现在一个子步里,温度超过熔点的现象。由于生死单元是在一个子步计算结束才判断,这样在一个子步 ...
恩,是的,这个现象很普遍,曾经吉大的一个学生发的SCI文章中就出现了这样的问题,而且随着加载时间的增加,其偏差很大。理论上其单元杀死之后,其温度应该恒定在熔化温度(或者附近),但那个论文得到的最高温度为1W多,这貌似与常理存在矛盾。 huangfuminkyjy 发表于 2012-4-30 10:19 static/image/common/back.gif
恩,是的,这个现象很普遍,曾经吉大的一个学生发的SCI文章中就出现了这样的问题,而且随着加载时间的增 ...
那没有人解决或者讨论过这个问题吗?或者这是FEM计算的一个bug 谢谢楼主,果断抱走
页:
[1]