m0_61896647 2022-07-25 10:58
浏览 209
已结题

Ansys APDL命令流 DO循环只循环一次

问题遇到的现象和发生背景

Ansys APDL命令流 DO循环只循环一次

问题相关代码,请勿粘贴截图

/clear
xmin=0
xmax=20
ymin=0
ymax=20
zmin=0
zmax=20
num=10
rmin=1.5
rmax=1.5

*dim,sph,array,num,4 !定义,名称,类型,num行,4列
cum=0
*do,i,1,100000
*if,cum,eq,num,then !如果cum=num,退出
*exit
*endif
x=rand(xmin,xmax) !x=在最值范围内的随机数
y=rand(ymin,ymax)
z=rand(zmin,zmax)
r=rand(rmin,rmax)
*if,x-r,gt,xmin,and,x+r,lt,xmax,then !gt大于,lt小于
*if,y-r,gt,ymin,and,y+r,lt,ymax,then
*if,z-r,gt,zmin,and,z+r,lt,zmax,then
*if,cum,eq,0,then
cum=cum+1
sph(cum,1)=x !将xyzr的值赋给cum行的4列
sph(cum,2)=y
sph(cum,3)=z
sph(cum,4)=r
*else
sum=0
*do,j,1,cum
dist=sqrt((sph(j,1)-x)**2+(sph(j,2)-y)**2+(sph(j,3)-z)**2) !dist颗粒间距离
*if,dist,lt,sph(j,4)+r,then
*exit
*else
sum=sum+1
*endif
*enddo
*if,sum,eq,cum,then
cum=cum+1
sph(cum,1)=x
sph(cum,2)=y
sph(cum,3)=z
*endif
*endif
*endif
*endif
*endif
*enddo

运行结果及报错内容

do循环做一次后就enddo了

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 8月2日
    • 创建了问题 7月25日