做了两个高斯热源随时间循环交变加载的程序,但运行出错
rb=0.001!!!!!!!!!!!!!!!!!!!!每个单元的大小max_time=length/rb+1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!焊接长度总节点数
max_x=length/rb+1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!长度总节点数
max_y=width/rb+1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!宽度总节点数
*dim,flux2,table,max_x,max_y,max_time,x,y,time!!!!!!!!!!!!定义热流FLUX2
!!!!!!!!!!!!!!!先定义奇数时间内的高斯热流
*do,k,1,max_time,2
*do,i,1,max_x,2
flux2(i,0,k)=(i-1)*rb
*enddo
*do,j,1,max_y,2
flux2(0,j,k)=(j-1)*rb
*enddo
*do,i,1,max_x,2
*do,j,1,max_y,2
xcenter=v*(k-1)*tinc !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!焊接时单元停留长度坐标值
ycenter=0
distance=sqrt(((i-1)*rb-xcenter)**2+((j-1)*rb-ycenter)**2)!!所有点距离焊枪的距离
*if,distance,le,r1,then
flux2(i,j,k)=qmax1*exp(3*distance**2/(r1**2))!!!!高斯热源
*else
flux2(i,j,k)=0
*endif
*enddo
*enddo
*enddo
!!!!!!!再定义偶数时间内的高斯热源
*do,k,2,max_time-1,2
*do,i,2,max_x-1,2
flux2(i,0,k)=(i-1)*rb
*enddo
*do,j,2,max_y-1,2
flux2(0,j,k)=(j-1)*rb
*enddo
*do,i,2,max_x-1,2
*do,j,2,max_y-1,2
xcenter=v*(k-1)*tinc !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!焊接时单元停留长度坐标值
ycenter=0
distance=sqrt(((i-1)*rb-xcenter)**2+((j-1)*rb-ycenter)**2)!!所有点距离焊枪的距离
*if,distance,le,r2,then
flux2(i,j,k)=qmax2*exp(3*distance**2/(r2**2))!!!!高斯热源
*else
flux2(i,j,k)=0
*endif
*enddo
*enddo
*enddo
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!热源的加载 求高手指点,为什么运行结果不正确呢
页:
[1]