huangwei20041 发表于 2011-11-20 19:47:41

fish中当变量名和函数名相同时怎么理解

在学习flac时,经常遇见在一个fish语言中,变量名跟函数名相同,在这种情况下是不是返回的函数值?用下面一个程序来讨论下吧:
gen zone brick size 6 8 8
model mohr
prop bulk = 1e8 shear = 0.3e8 fric = 35
prop coh = 1e10 tens = 1e10
set grav 0, 0, -9.81
ini dens = 1000
fix x range x -0.1 0.1
fix x range x 5.9 6.1
fix y range y -0.1 0.1
fix y range y 7.9 8.1
fix x y z range z -0.1 0.1
group hua range x 2 4 y 3 5 z 3 5
def loadg
p_gp = gp_head
load=0.0
loop while p_gp#null
x=gp_xpos(p_gp)
y=gp_ypos(p_gp)
z=gp_zpos(p_gp)
p_z=z_near(x,y,z)
if z_group(p_z) = 'hua' then
load=load+gp_zfunbal(p_gp)
endif
p_gp = gp_next(p_gp)
endloop
loadg=load
end
hist loadg
plot his 1
solve

程序中定义函数def loadg求z方向不平衡力之和,fish语言中定义变量loadg=load,此处变量loadg与函数名相同,这样做的目的是不是返回函数的值?
换句话说:当hist loadg,监测的是变量loadg的值还是loadg函数?或者监测的是其他?此处变量loadg与函数名相同的意义何在?
小弟琢磨了半天,没有想清楚,望大家多多指教


cid2012 发表于 2011-11-21 20:31:00

:)帮黄兄顶下,反正我是不求甚解的。

huangwei20041 发表于 2011-11-22 20:08:59

谢谢希望高手们多多指教啊
页: [1]
查看完整版本: fish中当变量名和函数名相同时怎么理解