- 积分
- 0
- 注册时间
- 2009-8-12
- 仿真币
-
- 最后登录
- 1970-1-1
|
本帖最后由 pcllee 于 2010-3-24 16:18 编辑
研究的是一个二维的去除材料的热分析,模型很简单,在一块板上开一长方形槽,槽面不删除,但随着给定值的热源经过后逐步去除,下面给出的是关键的命令流,
/solu
antype,4
trnopt,full
nsel,s,loc,x,0
d,all,ux,0
nsel,r,loc,y,0
d,all,uy,0
nsel,all
nsel,s,loc,x,0
nsel,r,loc,x,1
d,all,temp,30
esel,all
*get,emax,elem,,num,max
asel,s,area,,2 !槽面为面2
esla
*get,nse,elem,,count
*dim,ne,,nse
*dim,nex,,nse
*dim,ney,,nse
*dim,neorder,,nse
mine=0
*do,i1,1,nse
esel,u,elem,,mine
*get,nse1,elem,,count
ii=0
*do,i,1,emax
*if,esel(i),eq,1,then
ii=ii+1
ne(ii)=i
*endif
*enddo
*do,i,1,nse1
*get,ney(i),elem,ne(i),cent,y !获取槽面的X,Y坐标,分别存储在数组里
*get,nex(i),elem,ne(i),cent,x
*enddo
miny=1e-10 !通过循环模拟槽面的材料由上至下逐步去除的过程
minx=1e20
*do,i,1,nse1
*if,ney(i),gt,miny,then
miny=ney(i)
minx=nex(i)
mine=ne(i)
*else
*if,ney(i),eq,miny,then
*if,nex(i),lt,minx,then
miny=ney(i)
minx=nex(i)
mine=ne(i)
*endif
*endif
*endif
*enddo
neorder(i1)=mine
*enddo
max_tem=1500 !给定的1500度的恒定温度
dt1=1e-3
dt=5
t=0
esel,all
*do,i,1,nse
ealive,neorder(i)
esel,s,live
*enddo
allsel,all
outres,all,all
ic,all,temp,20
kbc,1
timint,0,struct
timint,1,therm
timint,0,mag
tintp,0.005,,,1,0.5,0.2
nsub1=2
nsub2=40
*do,i,1,nse
t=t+dt1
time,t
nsubst,1
*do,j,1,4
d,nelem(neorder(i),j),temp,max_tem
*enddo
solve
t=t+dt1
time,t
solve
ekill,neorder(i) !为什么在这步定义了该单元已死后在下一载荷步计算时依然起作用?(见附件的附图)
esel,s,live
t=t+dt-2*dt1
time,t
nsubst,nsub1
solve
*enddo
t=t+1000
time,t
nsubst,nsub2
solve
finish
以上的命令流是模仿二维焊接仿真而改写的,总感觉有哪里不对,结果也的确有问题,请各路大神们救命!!! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|