| 查看: 1637 | 回复: 1 | ||
[求助]
ANSYS用生死单元实现多层逐步加热,加载中存在小问题,求解
|
|
现在做的工作是对一种算法的有效性演算,所以建模和加载都进行了简化。 需要实现的功能是利用生死单元实现多层逐步加热:就是先激活底层,在底层加载;底层加热完成再激活上面的第二层,再进行加载;第二层加热完成后再激活上面的第三层…… 加载用的热源模型是锥形体热源,就是高斯激光作用于半无限大物体表面时所产生的热效应。就是这里出了问题,加载第一层还能够显示出锥形加热,但是到了第二层第三层时不再显示出是锥形,而是圆柱形。在计算过程中ANSYS也给出了警告:在选取节点进行加载时不能识别Z方向的NSEL命令。 希望能有人分析一下原因。下面是APDL程序。 /units,si /title, shengsi2204 /filn,shengsi2204 /replot !后面要用到的一些参数,如模型的长宽高,激光功率及相关参数(光斑半径、作用深度等) len=2/1000 wid=2/1000 hth=0.5/1000 q=15 h=1.5/1000 r1=0.12/1000 pi=3.1415926 qv=2*q/(pi*h*(r1**2)) lsize=0.1/1000 !为后面建立体热源表格做准备,三维表格每个维度的数量 max_x=len/lsize+1 max_y=wid/lsize+1 max_z=hth/lsize+1 !进入前处理器 /prep7 et,1,solid70 mp,dens,1,1000 mp,kxx,1,0.25 mp,c,1,1700 mp,emis,1,0.95 block,0,len,0,wid,0,hth block,0,len,0,wid,hth,2*hth block,0,len,0,wid,2*hth,3*hth /view,1,1,1,1 /replot allsel,all esize,0.1/1000 mat,1 vsel,s,volu,,1 vsel,a,volu,,2 vsel,a,volu,,3 vmesh,all !这里是接触设置,对整个程序没有很大影响,是计算实际需要,很长一段都可以不看 !接触设置开始 /COM, contact pair creation - start allsel,all asel,s,,,2 nsla,s,1 cm,target1,node asel,s,,,7 nsla,s,1 cm,contact1,node allsel,all mp,mu,1 mat,1 r,3 real,3 et,3,170 et,4,174 keyopt,4,9,0 keyopt,4,10,2 r,3, rmore,,,,,, rmore,,2500 rmore,0 keyopt,4,1,2 nsel,s,,,target1 type,3 esln,s,0 esurf,all nsel,s,,,contact1 type,4 esln,s,0 esurf,all allsel,all asel,s,,,8 nsla,s,1 cm,target1,node asel,s,,,13 nsla,s,1 cm,contact1,node allsel,all mp,mu,1 mat,1 r,3 real,3 et,3,170 et,4,174 keyopt,4,9,0 keyopt,4,10,2 r,3, rmore,,,,,, rmore,,2500 rmore,0 keyopt,4,1,2 nsel,s,,,target1 type,3 esln,s,0 esurf,all nsel,s,,,contact1 type,4 esln,s,0 esurf,all !接触设置结束 /COM, contact pair creation - end finish !进入求解器 /solu !定义锥形体热源,在水平方向上高斯分布,在深度方向上线性递减 *dim,gene1,table,max_x,max_y,max_z,x,y,z xc=len/2 yc=wid/2 *do,k,1,max_z,1 gene1(0,0,k)=(k-1)*lsize *do,i,1,max_x,1 gene1(i,0,k)=(i-1)*lsize *enddo *do,j,1,max_y,1 gene1(0,j,k)=(j-1)*lsize *enddo *do,i,1,max_x,1 *do,j,1,max_y,1 distance= (((i-1)*lsize-xc)**2+((j-1)*lsize-yc)**2)**(1/2) hei=1+(k-max_z)*lsize/h *if,distance,le,r1,then gene1(i,j,k)=Qv*EXP(-2*(distance/r1)**2)*hei *else gene1(i,j,k)=0 *endif *enddo *enddo *enddo !定义分析类型及一些设置 antype,trans trnopt,full tunif,100 allsel *set,delt,1 timint,on autots,on !将V2、V3所含单元杀死,只激活V1所含单元 allsel,all vsel,s,volu,,2 vsel,a,volu,,3 eslv,s,1 ekill,all esel,s,live eplot !0 !0.2<=t<0.3时,加载第三层 *do,i,1e-6,1,0.01 time,i deltim,i allsel,all *if,i,lt,0.1,then *if,yc,lt,2,then allsel,all nsel,s,x,loc,xc-r1,xc+r1 nsel,r,y,loc,yc-r1,yc+r1 nsel,r,z,loc,0,hth bf,all,hgen,%gene1% allsel,all *endif *elseif,i,ge,0.1,then allsel,all bfdele,all,hgen vsel,s,volu,,2 eslv,s,1 ealive,all eplot *if,i,lt,0.2,then *if,yc,lt,2,then allsel,all nsel,s,x,loc,xc-r1,xc+r1 nsel,r,y,loc,yc-r1,yc+r1 nsel,r,z,loc,hth,2*hth bf,all,hgen,%gene1% allsel,all *endif *elseif,i,ge,0.2,then allsel,all bfdele,all,hgen vsel,s,volu,,3 eslv,s,1 ealive,all eplot *if,i,lt,0.3,then *if,yc,lt,2,then allsel,all nsel,s,x,loc,xc-r1,xc+r1 nsel,r,y,loc,yc-r1,yc+r1 nsel,r,z,loc,2*hth,3*hth bf,all,hgen,%gene1% allsel,all *endif *elseif,i,ge,0.3,then allsel,all bfdele,all,hgen *endif *endif *endif allsel,all solve *enddo !计算结束 finish !************************************************* !下面是移动工作平面进行剖切,方便观察内部温度变化过程 wpoff,len/2,wid/2,0 wprot,0,0,90 |
» 猜你喜欢
帮我的英语口语老师找学生
已经有4人回复
计算三阶力常数用thirdorder扩胞时参数如何选择?临近原子数怎么取值
已经有7人回复
物理学I论文润色/翻译怎么收费?
已经有91人回复
2026年循环经济功能材料国际会议(ICFMCE 2026)
已经有0人回复
2026年第五届电气、电子与信息工程国际会议(ISEEIE 2026)
已经有0人回复
哈尔滨理工大学物理系招收物理学考研调剂
已经有4人回复
0702一志愿吉大B区求调剂
已经有5人回复
求调剂
已经有0人回复
0702一志愿吉大B区求调剂有论文
已经有0人回复
请问还有没有用Latex写文章的小伙伴们?
已经有0人回复

2楼2013-05-07 08:42:16













回复此楼
20