*if嵌套到*do循环中运行不了,请各位帮忙看一下
我看了很久也没找出原因,烦请各位前辈费心指点:加荷载的时候有两段程序,第一段可以运行:
csys,0
asel,s,area,,2
esla,s
nsla,s,1
*get,enmax,elem,,num,max
*get,enmin,elem,,num,min
fcum,add
*do,i,enmin,enmax,1
*if,esel(i),eq,1,then
*get,ae,elem,i,area
ze=centrz(i)
p_e=-(ka*gama2*(depth-0.05)+ka*gama1*0.050)
f_tot=p_e*ae
esel,s,elem,,i
nsle,s,corner
*get,nn,node,,count
f_n=f_tot/nn
*do,j,1,nn
f,nelem(i,j),fz,f_n
*enddo
*endif
esla,s
*enddo
但是把第一段中加一个*if循环,成为第二段就运行不了了:
csys,11
asel,s,area,,1
esla,s
nsla,s,1
*get,enmax,elem,,num,max
*get,enmin,elem,,num,min
fcum,add
*do,i,enmin,enmax,1
*if,esel(i),eq,1,then
*get,ae,elem,i,area
ze=centrz(i)
*if,ze,ge,0,and,ze,lt,depth-0.05,then
p_e=-(ka*gama2*(depth-ze-0.050)+ka*gama1*0.05
*elseif,ze,ge,depth-0.05,and,ze,le,depth,then
p_e=-(ka*gama1*(depth-ze))
*else
p_e=0
*endif
f_tot=p_e*ae
esel,s,elem,,i
nsle,s,corner
*get,nn,node,,count
f_n=f_tot/nn
*do,j,1,nn
f,nelem(i,j),fx,f_n
*enddo
*endif
esla,s
*enddo
加上这段,就会在file.err 中出现 Specified forces from the previous F command were applied only to the
selected NODAL LOAD set.
[ 本帖最后由 p1gx 于 2007-7-17 20:49 编辑 ] 这不是你题目中所说的问题,一步一步调试一下,看看每一步的结果是否和你要求的一致 *elseif,ze,ge,depth-0.05,and,ze,le,depth,then
把这句的then去掉试试。
页:
[1]