myzcl 发表于 2006-4-23 15:54:11

本人做的隧道开挖的例子

长宽高:54x50x50
只做了一个土层(以后再加)

[ 本帖最后由 benjackxu 于 2007-5-30 11:44 编辑 ]

hhzjw 发表于 2007-5-27 03:50:50

  做的还不错,只考虑重力作用下只能把竖直方向的结果给别人看看,大多数软件对于地下工程开挖问题在竖直方向的模拟结果一般都可以解决;
  这么小的初始地应力szz_0<1MPa;岩体力学参数设这么高,能算出这么大的位移简直是奇迹啊;
其实对于地下工程开挖问题来说,主要还是关注水平方向变形模拟的准确.可能对于一些浅埋地下工程实际关注地表沉降问题(采空区问题),但水平方向的变形会影响到竖直方向的变形.
  归结起来,主要还是确定整个计算区域的初始地应力场水平,按照有限元的计算理论,一般引入"构造应力"的概念,(增加一点:各自方向的构造应力控制着各自方向的应力和变形),至于构造应力的加法有很多(可以直接在模型apply sxx ....,其他2个方向类似,这个方法存在缺陷,差的选择),加到什么样的水平也有不同的意见,我就基于E. Hoek得到的世界各地初始地应力数据稍微说一下(主要还是关注数值计算中的取法):
  sxx=sxx_w(自重应力)+sxx_t(构造应力),其他2个方向类似,一般来说sxx_w=syy_w=(1/3)*szz_w,通过自重形成的应力场和构造应力迭代得到,具体操作中可以认为sxx_t=syy_t、szz_t=0,如果有应力监测数据和位移监测数据,那样通过反分析方法来获取构造应力效果更好,过程也比较简单,只需要简单的fish操作,如果没有监测数据,那只能按经验来取,可以肯定的是,不管地下工程属于什么类型,不加水平构造应力那肯定是错误的.以下稍微说一下经验的构造应力取值法(也可以简单的采用sxx=syy=szz):
(1) 浅埋地下工程:具体适用的尺度也不好明确界定,一般来说,采空区、城市地铁等地下工程应该属于浅埋,埋深比较浅,sxx_t在0.5MPa~1.0MPa基本就可以了;
(2) 深埋地下工程:如深埋隧洞等,sxx_t一般要超过1.0MPa;
  具体的取值和埋深有关系.(确定水平方向的构造应力根据所需的水平方向变形就可以大致确定一个数值),要合理取值,当然要结合现场试验和监测资料进行.
  
  哇,说了这么多,也没人看,大家比较关注数值模拟的结果,不怎么关注数值模拟的过程和基础理论,:) 没得人看啊.以上是我一点心得,本人做隧洞时间也不长,Flac3D用的也不行,主要目的是来学习的,对于地下工程计算参数的确定和数值模拟最近花很多时间在研究,希望和大家相互学习和讨论,要是大版能开个什么"大家讲坛"给我讲讲就好了,just take a joke!我也很少来这里发言,主要是比较忙,做项目,做点自己的事情,反正累啊!偶尔来一下!:D

hhzjw 发表于 2007-5-29 00:40:34

原帖由 笑沧海 于 2007-5-28 14:46 发表 http://www.simwe.com/forum/images/common/back.gif
软土中构造应力不大吧,或者说不存在,对于深埋岩石这当然需要考虑,浅见;
  软土问题主要关注的是竖直沉降问题,对水平方向的变形不怎么关注,就拿城市地铁盾构来说,施工单位大多关心隧道开挖会不会引起地表沉降等垂直方向的问题,在这种状态下,如果仅考虑自重条件下的开挖问题(浅埋地下工程埋深比较浅,如果开挖洞径比较大,那么很容易得到洞顶沉降位移只能达到洞底反弹位移的1/2~1/4),而水平方向的位移则更小,这与实际并不符合,为了反映地表沉降问题,数值模拟中采用的方法可能是弱化隧道上部的材料参数,提高隧道下部的材料参数,这种做法一定程度上解决了问题,但总体计算结果很难与实际相符.

  反而对于深埋岩体隧洞来说,不考虑构造应力的计算结果还可以接受,因为在埋深远大于洞径,不考虑构造应力产生的负面效应比较小,当然,水平方向的变形还是与实际不符!

  当然,主要产生现在这种状态,也可能理论和认识上的不完善,弹塑性理论也可能不怎么适合解决此类问题,很早以前E. Hoek等就认识到这个问题,但是到现在也没有太大的发展,具体怎么解决初始地应力场的问题还是比较复杂的,虽然有诸如现场试验和统计分析等方法,但由于构造应力的复杂(初始地应力的不好测量),对地质构造的把握不是很足够等很多不确定因素,具体涉及的内容太多,也不好弄清,加之学术界对于这个问题不怎么关心,发展速度及其缓慢,希望有高人出现来改变一下这种现状.:)

myzcl 发表于 2006-4-23 15:58:35

原始应力

myzcl 发表于 2006-4-23 16:23:27

开挖20M

myzcl 发表于 2006-4-23 16:35:04

沉降曲线

myzcl 发表于 2006-4-23 16:49:20

模拟的结果并不理想
主要原因可能是应力释放那里没做好(一直不知道怎么做,最后就直接step 200,呵呵)
另一个原因可以是材料参数设置问题

请高手指点

lidiyuan123 发表于 2006-4-23 18:59:45

初始地应力计算那一部分写得不好,你应当使用ini szz grad 0 0 * z * *等命令加快运算速度
沉降曲线使用的小fish语言写的不错,值得学习!:D

[ 本帖最后由 lidiyuan123 于 2006-4-23 19:00 编辑 ]

fy980220 发表于 2006-4-24 00:18:19

galu 发表于 2006-4-29 18:05:58

正如lidiyuan123所说: 沉降曲线的fish程序相当不错,可见楼主功底之深厚。
多谢楼主的无私精神,向你学习啊。

mining2005 发表于 2006-4-29 18:36:18

位移确实有点大,但沉降曲线不错!

xiangruide 发表于 2006-5-2 09:36:46

请问一下你每种围岩的颜色都不一样,是怎么设的?谢谢啦。

myzcl 发表于 2006-5-2 09:47:51

用group,不同的岩层做成不同的group
然后plot block group,就可以按group显示模型了

freddie_1999 发表于 2006-5-2 22:42:16

以下的例子说明了在FLAC3D中模拟应力释放系数的方法,其中(1-rstop)即为释放系数,供大家参考
def relax_ini
    nstart=step
    nstop=nstart+ninc
end

def relax_hist
    if step < nstop
       step_inc=float(step-nstart)
       relax_hist=rstart-((rstart-rstop)/float(ninc))*step_inc
    else
       relax_hist=rstop
endif
end

def relax
    p_gp=gp_head
    loop while p_gp # null
         xloc=gp_xpos(p_gp)
         yloc=gp_ypos(p_gp)
         zloc=gp_zpos(p_gp)
         t_rad=sqrt(xloc^2+(zloc-20.3)^2)
         if t_rad < 3.52 then
         if t_rad > 3.48 then
            xf=gp_xfunbal(p_gp)
            yf=gp_yfunbal(p_gp)
            zf=gp_zfunbal(p_gp)
            xf=-rstop*xf
            zf=-rstop*zf
            yf=-rstop*yf
            pid=gp_id(p_gp)
              if yloc > 0.5 then
                 if yloc < 39.5 then
                  command
                         apply xforce xf hist relax_hist rang id pid
                         apply yforce yf hist relax_hist rang id pid
                         apply zforce zf hist relax_hist rang id pid
                  endcommand
               else
                  command
                         apply xforce xf hist relax_hist rang id pid
                         apply zforce zf hist relax_hist rang id pid
                  endcommand       
               endif
              else
               command
                   apply xforce xf hist relax_hist rang id pid
                   apply zforce zf hist relax_hist rang id pid
               endcommand
              endif               
         else
         endif
         else
         endif
         p_gp=gp_next(p_gp)
    endloop
end

myzcl 发表于 2006-5-3 21:59:29

其它的话就不说了
感谢!

chensha 发表于 2006-5-8 11:57:12

xf=-rstop*xf
zf=-rstop*zf
yf=-rstop*yf
应该去掉!

笑沧海 发表于 2007-5-13 09:59:03

原帖由 freddie_1999 于 2006-5-2 22:42 发表 http://www.simwe.com/forum/images/common/back.gif
以下的例子说明了在FLAC3D中模拟应力释放系数的方法,其中(1-rstop)即为释放系数,供大家参考
def relax_ini
    nstart=step
    nstop=nstart+ninc
end

def relax_hist
    if step < nstop
      ...


请问,这段命令是手册上的么,斑竹可不可以解释一下啊,看到论坛里很多人对于应力释放这个操作不是太理解,隧道开挖应力释放总觉着不是太明白,谢谢!

hhzjw 发表于 2007-5-27 03:57:50

补充一点,计算地下工程问题,一点要加水平构造应力,不然在自重条件下的结果只能给人家看看竖直方向的计算结果,水平方向的让别人看到会闹笑话的,呵呵!还有就是在做反分析的时候,应该先确定构造应力,再去反分析参数,效果会更好(个人经验和见解)!以上发言如有不对,还请包涵!:lol

zakar 发表于 2007-5-27 12:04:07

呵呵·· 好羡慕你们这些高手啊

笑沧海 发表于 2007-5-28 14:46:57

软土中构造应力不大吧,或者说不存在,对于深埋岩石这当然需要考虑,浅见;

duoshou1 发表于 2007-5-28 16:09:16

有了这些具体的实例,学习起来好多了,比干巴巴的叙述好些。。
页: [1] 2 3 4 5
查看完整版本: 本人做的隧道开挖的例子