- 积分
- 0
- 注册时间
- 2008-10-8
- 仿真币
-
- 最后登录
- 1970-1-1
|
做了一个边坡加固的计算,需要计算用锚索框格梁加固的边坡的附加应力(垂直坡面方向的),我自己编了个fish函数,利用zextra进行计算,其中采用的柯西公式计算垂直坡面应力。我的初衷是在天然状态下用fish函数计算一次,在安设措施后再用fish计算一次,然后两次的值相减。具体过程如下
1.建模(包括config zextra 3)
2.初始状态计算(用弹性模型)
3.调用初始状态,进行天然状态计算(设置土参数,不加加固措施)然后用一下fish函数计算。
def chushi
p_z=zone_head
loop while p_z # null
for_vpm11 = ((l_fun)^2)*z_sxx(p_z)+((m_fun)^2)*z_syy(p_z)+((n_fun)^2)*z_szz(p_z)
for_vpm11 =for_vpm11 +2.*m_fun*n_fun*z_syz(p_z)+2.*n_fun*l_fun*z_sxz(p_z)+2.*l_fun*m_fun*z_sxy(p_z)
z_extra(p_z,1)=for_vpm11
p_z = z_next(p_z)
end_loop
end
chushi
4.调用初始状态,进行加固计算,然后再用fish函数计算一次
def maosuo
p_z=zone_head
loop while p_z # null
for_vpm21 = ((l_fun)^2)*z_sxx(p_z)+((m_fun)^2)*z_syy(p_z)+((n_fun)^2)*z_szz(p_z)
for_vpm21 = for_vpm21+ 2.*m_fun*n_fun*z_syz(p_z)+2.*n_fun*l_fun*z_sxz(p_z)+2.*l_fun*m_fun*z_sxy(p_z)
z_extra(p_z,2)=for_vpm21
p_z = z_next(p_z)
end_loop
end
maosuo
5.最后再进行相减
def fujiayinglichang
p_z=zone_head
loop while p_z # null
z_extra(p_z,3)=z_extra(p_z,2) - z_extra(p_z,1)
p_z=z_next(p_z)
end_loop
end
fujiayinglichang
发现这样的问题,计算完成后plo cont zextra 1 为0,计算出来的附加应力就成了加固状态的垂直坡面方向的应力了。主要是对zextra这个关键词不了解,不知道这样使用是不是对的?有没有别的方法可以存储天然状态下的应力状态,然后加固状态进行计算,两者相减,得出附加应力?不晓得哪位有关于附加应力计算方面的资料?本人新手,请各位不吝赐教。 |
|