mp,reft,1,10
mp,reft,2,10
mp,reft,3,10
v=0.03 !熔覆线速度
lx_number=125 !x方向分段数
ly_number=75 !y方向分段数
tinc=0.13 !单步时间长度
Q=2300 !激光功率
yita=0.03 !激光效率
R=0.002 !激光有效加热半径
pi=3.1415926
qq=Q*yita/(pi*R**2) !一个分步值
/SOLU
ANTYPE,4
TRNOPT,FULL
LUMPM,0
OUTRES,ERASE
OUTRES,BASI,LAST
EQSLV,PCG,1E-6
KBC,0.0
TIMINT,0
TRNOPT,FULL
THOPT,FULL,0.05,64, , , ,0
EQSLV,PCG, ,2, ,DELE
MSAVE,0
TUNIF,10,
TREF,10,
OUTPR,BASIC,LAST,
OUTRES,ALL,LAST,
SOLCONTROL,OFF, ,NOPL
TIME,0.13
AUTOTS,0
NSUBST,1,0,0,0
KBC,0
TSRES,ERASE
TIMINT,1
TINTP,0.005, , ,1,0.5,0.2,
SOLVE
alls
esel,s,mat,,3
esel,a,mat,,2
estif,1.0e-10
ekill,all
alls
timint,on
asel,s,,,1,6,1
nsla,s,1
sf,all,conv,-2,10
alls
!toffst,273
tintp,0.005,,,1.0,0.5,0.2
t=0.26
time,t
!nsubst,2
outpr,basic,all
outres,basic,all
alls
solve
alls
!autots,on
!*do,i,1,lx_number
*do,i,1,2
!*do,j,1,ly_number
*do,j,1,4
sfedele,all,6,hflux
tsres,erase
xc=0.002+(i-1)*0.008
yc=0.002+(j-1)*0.004
zc=0.043
*do,enum,46876,75000
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
eplot
qqq=qq
sfe,enum,6,hflux,,qqq
*endif
*enddo
alls
*do,enumm,1,46875
dist1=SQRT((centrx(enumm)-xc)**2+(centry(enumm)-yc)**2+(centrz(enumm)-0.042)**2)
*if,dist1,le,R,then
esel,s,,,enumm
sfdele,all,conv
*endif
*enddo
alls
*do,enumn,103126,112500
dist1=SQRT((centrx(enumn)-xc)**2+(centry(enumn)-yc)**2+(centrz(enumn)-zc)**2)
*if,dist1,le,R,then
ealive,enumn
eplot
esel,s,,,enumn
nsle
sf,all,conv,-2,10
*endif
*enddo
alls
esel,s,live
eplot
allsel,all
lnsrch,on
!nsubst,2
t=t+tinc
time,t
!*if,mod(j,5),ne,0,then
!outres,,none
!outpr,,none
!*else
outres,basic,last
outpr,basic,last
!*endif
solve
*enddo
alls
!*do,p,1,ly_number
*do,p,1,4
sfedele,all,6,hflux
tsres,erase
xc=0.006+(i-1)*0.008
!yc=0.298-0.004*(p-1)
yc=0.014-0.004*(p-1)
zc=0.043
*do,enum,46876,75000
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
eplot
qqq=qq
sfe,enum,6,hflux,,qqq
*endif
*enddo
*do,enumm,1,46875
dist1=SQRT((centrx(enumm)-xc)**2+(centry(enumm)-yc)**2+(centrz(enumm)-0.042)**2)
*if,dist1,le,R,then
esel,s,,,enumm
sfdele,all,conv
*endif
*enddo
alls
*do,enumn,103126,112500
dist1=SQRT((centrx(enumn)-xc)**2+(centry(enumn)-yc)**2+(centrz(enumn)-zc)**2)
*if,dist1,le,R,then
ealive,enumn
eplot
esel,s,,,enumn
nsle
sf,all,conv,-2,10
*endif
*enddo
alls
esel,s,live
eplot
allsel,all
outres,basic,last
outpr,basic,last
lnsrch,on
!nsubst,2
t=t+tinc
time,t
!*if,mod(p,5),ne,0,then
!outres,,none
!outpr,,none
!*else
outres,basic,last
outpr,basic,last
!*endif
solve
*enddo
*enddo
alls
outpr,basic,all
outres,basic,all
sfedele,all,6,hflux
t=t+300
time,t
solve
!第二层
alls
!*do,j,1,ly_number
*do,j,1,2
!*do,i,1,lx_number
*do,i,1,4
sfedele,all,6,hflux
tsres,erase
xc=0.002+(i-1)*0.004
yc=0.002+(j-1)*0.008
zc=0.044
*do,enum,75001,103125
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
eplot
qqq=qq
sfe,enum,6,hflux,,qqq
*endif
*enddo
alls
*do,enumm,46876,75000
dist1=SQRT((centrx(enumm)-xc)**2+(centry(enumm)-yc)**2+(centrz(enumm)-0.043)**2)
*if,dist1,le,R,then
esel,s,,,enumm
sfdele,all,conv
*endif
*enddo
alls
*do,enumn,112501,121875
dist1=SQRT((centrx(enumn)-xc)**2+(centry(enumn)-yc)**2+(centrz(enumn)-zc)**2)
*if,dist1,le,R,then
ealive,enumn
eplot
esel,s,,,enumn
nsle
sf,all,conv,-2,10
*endif
*enddo
alls
esel,s,live
eplot
allsel,all
lnsrch,on
nsubst,1
t=t+tinc
time,t
!*if,mod(i,5),ne,0,then
!outres,,none
!outpr,,none
!*else
outres,basic,last
outpr,basic,last
!*endif
solve
*enddo
alls
!*do,k,1,lx_number
*do,k,1,4
sfedele,all,6,hflux
tsres,erase
!xc=0.48-0.004*(k-1)
xc=0.014-0.004*(k-1)
yc=0.006+(j-1)*0.008
zc=0.044
*do,enum,75001,103125
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
eplot
qqq=qq
sfe,enum,6,hflux,,qqq
*endif
*enddo
*do,enumm,46876,75000
dist1=SQRT((centrx(enumm)-xc)**2+(centry(enumm)-yc)**2+(centrz(enumm)-0.043)**2)
*if,dist1,le,R,then
esel,s,,,enumm
sfdele,all,conv
*endif
*enddo
*do,enumn,112501,121875
dist1=SQRT((centrx(enumn)-xc)**2+(centry(enumn)-yc)**2+(centrz(enumn)-zc)**2)
*if,dist1,le,R,then
ealive,enumn
eplot
esel,s,,,enumn
nsle
sf,all,conv,-2,10
*endif
*enddo
alls
esel,s,live
eplot
allsel,all
outres,basic,last
outpr,basic,last
lnsrch,on
nsubst,1
time=time+tinc
time,time
!*if,mod(k,5),ne,0,then
! outres,,none
! outpr,,none
!*else
outres,basic,last
outpr,basic,last
!*endif
solve
*enddo
*enddo
alls
t=t+tinc
time,t
sfedele,all,6,hflux
solve
alls
outpr,basic,all
outres,basic,all
t=t+3600
time,t
solve
!save
!finish
/prep7
etchg,tts
mptemp,1,0,20,200,600,1200,2000
mpdata,ex,1,1,2.060e11,2.056e11,2.019e11,1.936e11,1.183e11,1.648e11
mpdata,ex,2,1,2.080e11,2.076e11,2.038e11,1.955e11,1.830e11,1.664e11
mpdata,ex,3,1,2.080e11,2.076e11,2.038e11,1.955e11,1.830e11,1.664e11
mpdata,alpx,1,1,11e-6,11.115e-6,12.15e-6,14.45e-6,17.9e-6,22.5e-6
mptemp,1,100,200,400,600,800,1000
mpdata,alpx,2,1,11e-6,12.1e-6,12.65e-6,13.6e-6,14.7e-6,15.21e-6
mpdata,alpx,3,1,11e-6,12.1e-6,12.65e-6,13.6e-6,14.7e-6,15.21e-6
mp,prxy,1,1,0.33
mp,prxy,2,1,0.33
mp,prxy,3,1,0.33
mp,reft,1,10
mp,reft,2,10
mp,reft,2,10
tb,bkin,1,4
tbtemp,0,1
tbdata,1,359.25e6,2.060e11
tbtemp,20,2
tbdata,1,350.28e6,2.056e11
tbtemp,200,3
tbdata,1,269.55e6,2.019e11
tbtemp,600,4
tbdata,1,90.15e6,1.936e11
!tbcopy,bkin,1,2
lx_number=250 !x方向分段数
ly_number=75 !y方向分段数
tinc=0.2 !单步时间长度
/solu
antype,trans
outpr,basic,last
outres,basic,last
kbc,0
autots,on
alls
nsel,s,,,189507
nsel,a,,,189582
d,all,ux,0
d,all,uy,0
time,0.01
alls
solve
esel,s,mat,,2
esel,a,mat,,3
ekill,all
allsel,all
time=0.02
time,time
solve
alls
esel,s,mat,,2
*do,j,1,lx_number
!j=1
*do,i,1,ly_number
tsres,erase
xc=0.002+(j-1)*0.004
yc=0.004*(i-1)
zc=0.043
*do,enum,37501,75000
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
*endif
*enddo
esel,s,live
eplot
allsel,all
time=time+tinc-0.01
time,time
ldread,temp,,,time,,,rth
!nsubst,5,20,1
lnsrch,on
!nlgeom,on
solve
time=time+0.01
time,time
bfdele,all,temp
solve
*enddo
*do,i,1,ly_number
tsres,erase
xc=0.002+(j-1)*0.004
yc=0.3-0.004*(i-1)
zc=0.043
*do,enum,37501,75000
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
*endif
*enddo
esel,s,live
eplot
allsel,all
time=time+tinc-0.01
time,time
ldread,temp,,,time,,,rth
!nsubst,5,20,1
lnsrch,on
!nlgeom,on
solve
time=time+0.01
time,time
bfdele,all,temp
solve
*enddo
*enddo
time=time+3600
time,time
ldread,temp,,,time,,,rth !(注意这里只读到最后的时间点?此处读取载荷步会不会好一点)
!nsubst,40
solve
save
time=time+600
time,time
ldread,temp,,,time,,,rth
!nsubst,20
solve
alls
esel,s,mat,,3
*do,j,1,lx_number
!j=1
*do,i,1,ly_number
tsres,erase
xc=0.002+(j-1)*0.004
yc=0.004*(i-1)
zc=0.044
*do,enum,1,37500
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
*endif
*enddo
esel,s,live
eplot
allsel,all
time=time+tinc-0.01
time,time
ldread,temp,,,time,,,rth
!nsubst,5,20,1
lnsrch,on
!nlgeom,on
solve
time=time+0.01
time,time
bfdele,all,temp
solve
*enddo
*do,i,1,ly_number
tsres,erase
xc=0.002+(j-1)*0.004
yc=0.3-0.004*(i-1)
zc=0.044
*do,enum,1,37500
dist1=SQRT((centrx(enum)-xc)**2+(centry(enum)-yc)**2+(centrz(enum)-zc)**2)
*if,dist1,le,R,then
ealive,enum
*endif
*enddo
esel,s,live
eplot
allsel,all
time=time+tinc-0.01
time,time
ldread,temp,,,time,,,rth
!nsubst,5,20,1
lnsrch,on
!nlgeom,on
solve
time=time+0.01
time,time
bfdele,all,temp
solve
*enddo
*enddo
time=time+3600
time,time
ldread,temp,,,time,,,rth
!nsubst,40
solve
save
finish |