下面是我编写的高斯热源命令流,可在执行命令流时,高斯热源怎么也不移动,请各位大虾帮忙看一下,问题到底出现在哪里?
finish
/clear
/units,si
/filname,thermal1,1
/prep7
mptemp,,,,,,,,
mptemp,1,20
mptemp,2,200
mptemp,3,500
mptemp,4,700
mptemp,5,1000
mptemp,6,1300
mptemp,7,1600
mptemp,8,2500
mpdata,dens,1,,7960
mpdata,dens,1,,7778
mpdata,dens,1,,7646
mpdata,dens,1,,7556
mpdata,dens,1,,7418
mpdata,dens,1,,7280
mpdata,dens,1,,7141
mpdata,dens,1,,6718
mptemp,,,,,,,,
mptemp,1,20
mptemp,2,200
mptemp,3,500
mptemp,4,700
mptemp,5,1000
mptemp,6,1300
mptemp,7,1600
mptemp,8,2500
mpdata,kxx,1,,13.8
mpdata,kxx,1,,16.6
mpdata,kxx,1,,21.8
mpdata,kxx,1,,25.4
mpdata,kxx,1,,29.5
mpdata,kxx,1,,33.7
mpdata,kxx,1,,400
mpdata,kxx,1,,600
mptemp,,,,,,,,
mptemp,1,20
mptemp,2,200
mptemp,3,500
mptemp,4,700
mptemp,5,1000
mptemp,6,1300
mptemp,7,1600
mptemp,8,2500
mpdata,c,1,,400
mpdata,c,1,,440
mpdata,c,1,,502
mpdata,c,1,,528
mpdata,c,1,,555
mpdata,c,1,,582
mpdata,c,1,,599
mpdata,c,1,,635
allsel,all
save
lsize=5e-4
et,1,solid70
et,2,solid90
block,0,0.100,0,-0.005,-0.005,0.005
block,0,0.100,0,-0.005,0.005,0.020
block,0,0.100,0,-0.005,0.020,0.045
block,0,0.100,0,0.005,-0.005,0
block,0,0.100,0.005,0.020,-0.005,0
block,0,0.100,0.020,0.050,-0.005,0
aovlap,all
/view,1,1,1,1
save
type,1
mshkey,1
mshape,0
esize,lsize
vmesh,1
vmesh,4
esize,4*lsize
vmesh,3
vmesh,6
type,2
mshkey,0
mshape,1
vmesh,2
vmesh,5
eplot
*get,ncount,node,,count
*get,ncount,elem,,count
save
/solu
antype,4
tunif,20
trnopt,full
outres,nsol,all
nropt,full,,on
autots,1
nsubst,2, , ,
kbc,1
lnsrch,1
tsres,erase
tintp,,,,1,,,,,!!!
timint,0,struct
timint,1,therm
timint,0,mag
nsel,s,loc,x,0
sf,all,conv,15,25
allsel,all
nsel,s,loc,y,0
sf,all,conv,15,25
allsel,all
nsel,s,loc,z,0
sf,all,conv,15,25
v=0.001
tinc=lsize/v
tm=0.100/v
Umax=18
Imax=100
Umin=11
Imin=10
ef=0.61
Pmax=Umax*Imax*ef
Pmim=Umin*Imin*ef
r=0.002
tt=1
*do,tt,tinc,tm,tinc
加脉冲电流
*if,mod(tt,2),eq,1,then
Qmax=3*Pmax/(3.14159*r**2)
*else
Qmax=3*Pmim/(3.14159*r**2)
*endif
tt=tt+1
*enddo
max_time=0.100/lsize+1
max_x=0.100/lsize+1
max_y=0.050/lsize+1
*dim,flux2,table,max_x,max_y,max_time,x,y,time
*do,k,1,max_time,1
*do,i,1,max_x,1
flux2(i,0,k)=(i-1)*lsize
*enddo
*do,j,1,max_y,1
flux2(0,j,k)=(j-1)*lsize
*enddo
*do,i,1,max_x,1
*do,j,1,max_y,1
xcenter=v*(k-1)*tinc
ycenter=0
distance=sqrt(((i-1)*lsize-xcenter)**2+((j-1)*lsize-ycenter)**2)
*if,distance,le,r,then
flux2(i,j,k)=qmax/exp(3*distance**2/(r**2))
*else
flux2(i,j,k)=0
*endif
*enddo
*enddo
flux2(0,0,k)=(k-1)*tinc
*enddo
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!热源的加载
*do,t,tinc,tm,tinc
time,t
nsel,s,loc,z,0.005
sfdele,all,conv
sf,all,hflux,%flux2%
allsel,all
solve
nsel,s,loc,z,0.005
sfdele,all,hflux
sf,all,conv,15,25
allsel,all
*enddo
save
finish
|