基于的地下硐室通道锚网喷支护分析校园区

岩土工程中常用的数值计算方法主要有有限元法、有限差分法和离散元法等,今天我们要用到的FLAC3D软件采用的就是有限差分法。有限差分法历史悠久,其最初的使用甚至可以追溯的第一台电子计算机出现之前。有限差分法并不是为了电脑编程而出现的,而是计算机使用者后来发现有限差分法易于编程实现,使得有限差分法在数值计算领域得到不断推广和进一步发展。

越是弥足珍贵的软件,外表看上去,往往越是平常无奇,仿真模拟给全身心带来的幸福,从来也是如此。  --指尖上的仿真

FLAC3D软件主要用于解决岩土工程问题,由美国的ITASCA公司开发。ITASCA是1981年由美国明尼苏达大学5位教师联合创办的岩石力学技术机构,这些创始人当初在北美首创了岩石力学学科,并组织创立了国际岩石力学学会,因此,在业界ITASCA被认为是世界岩石力学学科发源地之一。

接下来介绍一下我们要解决的问题,就是地下硐室或通道结构的锚网喷支护问题。地下硐室或者通道开挖后引起地层内应力的重新分布,面临稳定性风险,因此需要及时支护,而锚网喷就是常用的方法之一。锚网喷支护方法自上世纪60年代以来,已被广泛采用。锚杆和喷射混凝土与围岩共同形成一个承载结构,可有效地限制围岩变形的自由发展,调整围岩的应力分布,防止岩体松散坠落。它既可以用作施工过程中的临时支护,也可以在围岩稳定性较好情况下,代替永久支护或衬砌。该方法在煤矿巷道、地下硐室和公路隧道中都有广泛应用。锚网喷支护的实景照片和某设计图如图1、2所示。

由于支护结构数量多,支护构件间存在复杂的相互作用,对支护有效性的分析多借助数值仿真方法进行。目前绝大多数数值计算软件并没有直接的相应内置单元来模拟锚杆,而FLAC3D内置了cable单元用于模拟锚杆或锚索支护结构,同时其强大的Fish语言允许用户通过编程实现大量锚杆的自动创建、连接的建立、属性参数的设置等工作,代码一旦编写完成只需少量修改即可反复使用,可以分析不同支护参数下的支护效果以便进行参数优化。

本文作者之前在国内两家著名仿真论坛公布了锚网喷支护的部分代码,获得了大量的点击和关注,当时公布的代码已经进行了简化,并未公开其中锚杆与喷层混凝土间连接的相关操作。在本文中,将较详细的介绍该结构单元节点上的连接的自动删除和新建方法,并公开相应的核心计算代码,该部分内容对于在模拟中获得真实的支护效果非常重要。

本文在接下来的第1节将介绍FLAC3D中结构单元的部分基础知识,尤其是单元间连接建立的一般方法,然后介绍在需要建立大量连接时,如何利用内置函数实现连接的建立。在第二节将介绍一个实例,在实例中具体演示连接的自动建立。第三节将给出该实例对应的完整代码。有了前面各节的铺垫,读者将更容易理解和掌握第三节的代码。

1 FLAC3D中连接的建立

1.1 基础介绍

FLAC3D中的结构单元主要包括:锚杆(锚索)单元(cable)、梁单元(beam)、壳体单元(shell)、衬砌单元(liner)和土工格栅(geogrid)。这些结构单元一般在普通实体单元(zone)表面(图3)或内部建立(图4),结构单元在创建时单元节点(node)会自动与邻近的实体单元建立连接(link)以实现与周围实体单元的相互作用。结构单元的单元与单元之间也通过节点(node)上的link实现共同作用。因此,link有两种类型,即:节点-实体单元(node-zone)(图4)、节点-节点(node-node)。默认情况下不同类型结构单元各自由度的link的类型,如表1所示:

其中,free和rigid分别表示该自由度上可以自由位移和刚性的,SY代表剪切屈服弹簧,NY代表法向屈服弹簧,PY代表桩屈服,PYDP代表依赖弹簧的桩屈服。

当有新的结构单元被创建时,会有新的节点出现在实体单元表面或内部,新的节点与实体单元间会按照表1中的默认属性自动建立node-zone连接,进而实现结构单元与实体单元间的相互作用。也就是说,结构单元与实体单元间的相互作用是通过node-zone连接实现的。

1.2 cable与liner的连接

在后面的建模中会利用cable单元模拟锚杆,用liner单元模拟含钢筋网片的混凝土喷层,因此,在此以cable和liner的连接,演示结构单元间node-node连接的建立方法。

如图6所示的cable和liner单元,图中紫色圆圈代表结构单元的node,圆圈内数字表示节点编号,这些编号是结构单元被创建时自动分配的。图中节点57和节点69被拉开了距离,主要是方便观察节点编号,实际建模时两个node是重合的。需要注意的是:结构单元在被创建时,其节点会自动与邻近的zone按表1的属性建立连接,两个结构单元的节点即使重合也不会自动建立连接。

因此,节点69和节点57都与liner后的实体单元(zone)自动建立了连接。在人为建立节点69和节点57间的连接前需要人为的删除节点与zone自动建立的连接。但连接的删除需要知道link的ID。命令清单提供了连接删除和建立的方法。

从上述代码可以看出两个node间的连接就需要多行代码才能完成,涉及两个link的删除,1个新link的建立以及属性的设置多个过程,尤其是当创建的连接很多时无法每个节点都通过print来人为的观察确定link的ID,这个过程过于繁琐。所以当需要删除和创建的link数量多时,必须利用FLAC3D内置的Fish语言,通过内置函数来完成相关操作。

一个成功的分析师,并不只依赖好的软件,更仰仗厚重的经验。 --指尖上的仿真

一个好的模拟分析,不是所有的操作都依靠鼠标,而更依赖于键盘。很多工作,写好代码就让它自己去算吧……

1.3 通过Fish删除指定坐标处liner节点的link

采用如下代码完成与cable外端节点重合的节点的定位、link的确定以及link的删除。

代码片段2中,nd_near(_x0, y0, z0)获得指向位置(_x0, y0, z0)处的节点的指针(图7中指针1), nd_link(_ndLPTR)则是根据节点指针获得指向该节点的link的指针(图7中指针2),此处的link是liner与邻近的zone间自动建立的连接。lk_id(_lkPTR)则根据指针2获得link的ID。命令:sel delete link range id linkID 根据link的ID删除该link。ndid(_ndLPTR)根据指向位置(_x0, y0, z0)处的节点的指针1获得该节点的ID。

1.4 删除靠近liner的锚杆节点的link

删除锚杆最外侧靠近liner的节点上的link,Fish代码如下:

在上述代码中,由s_near(_x1, y1, z1)获得指向指定坐标位置处的结构单元的指针,即获得指向cable单元的指针,再由该指针获得该结构单元的cid,然后按照FLAC3D生成cable单元的编号特征,获得靠近liner的一个节段的cable单元的cid号,再由该cid号通过s_find函数获得指向靠近liner处的cable单元的指针,由该指针通过s_node函数获得单元的第一个节点的指针,由该指针通过nd_id函数获得节点的ID。整个过程相对比较复杂,可以参考图8进行理解。从图8中围岩内最内侧的锚杆节点坐标(_x1, y1, z1)开始,沿着箭头的方向利用适当的fish函数,最终可以获得锚杆最外侧节点的id。之后删除这个节点创建时自动建立的link(对应命令:sel delete link range id _linkID)。

上面的代码看得头晕,有木有?这个可以有。慢慢理解吧,话说我在写这个代码时也是牺牲了很多脑细胞的。为什么这么绕呢?是因为liner的node与cable的node在锚杆的最外侧节点(_x0, y0, z0)处重合了。通过nd_near(_x0, y0, z0)函数只能获得重合位置处一个节点的指针,无法同时获得另外一个节点的指针。nd_near()函数在重合的2个node处是返回哪个node的指针,主要根据node的创建顺序,同一位置处的多个node,哪个先创建的,nd_near()返回指向它的指针。在本文的分析中,liner始终先于cable创建,所以可以利用nd_near()获得处liner的节点的指针。而同一位置处cable节点的指针则需要如图8中那样,通过最内侧的锚杆结构单元利用fish函数向外找到最外侧的节点。

1.5 建立cable节点与liner节点间的link

建立cable节点与liner节点间的link并设置link属性,代码如下:

到此,我们就完成了锚杆与衬砌结构单元间在重叠的节点处删除各自原有连接、新建node-node连接并设置相应属性这一最困难的工作。

2 应用实例

接下来将以一个煤矿巷道锚网喷支护的实例来演示上述结构单元link相应操作的实现。某煤矿巷道,其断面形式为直墙半圆拱型,混凝土喷层和锚杆的布置方式与图9中接近。锚杆加固的作用是提供局部抵抗岩块滑动及裂缝开展的刚度。锚杆借助于水泥浆或树脂药卷沿其长度方向提供了抗剪能力。锚杆及锚索采用cable单元进行模拟。

计算模型的边界条件主要采用位移边界条件:在模型底边施加竖向位移约束,在模型左右竖向边界面施加水平位移约束,在模型的前后竖向边界面施加前后的水平位移约束。在FLAC3D中,位移边界的实现是通过约束指定范围内网格节点(gridpoint)的速度实现的。

地应力主要包括自重应力和构造应力在岩体上产生的初始应力状态。结合淮南地区深部地应力的特点,取竖向应力和水平应力相等,数值按岩体自重应力换算而来。初始应力如图10所示。

模拟考虑了具体的施工过程,即先进行围岩的开挖,接下来进行混凝土喷层及网片的施工,再进行锚杆的安装施工。分节段先前推进,每个节段的进深为2.4m。在FLAC3D中模拟施工开挖比较方便,只需要赋予应该开挖部分的围岩null模型,该部分围岩的刚度等材料属性就被设置为极小的数值,相当于从模型中被挖去。本次模拟出于演示的目的,共有5个开挖步,每步开挖2.4m,直至开挖贯通整个模型的纵向。

开挖完每一段巷道岩体后,围岩的应力发生释放,围岩产生变形。之后马上进行锚网喷施工。混凝土喷层厚25mm,锚杆间排距800mm,锚杆长度2.5m。混凝土喷层采用liner单元模拟,锚杆采用cable单元模拟。一个开挖完毕节段内安装的喷层和锚杆情况如下图所示。

图11 第一节段开挖结束后锚杆和喷层布置图

支护结构安装完毕后,继续进行下一个节段的开挖。开挖后进行喷层和锚杆的支护施工。以此类推。图12为开挖完成三个节段后的喷层和锚杆布置图。

图12 第三个节段喷层和锚杆布置图

重复以上过程直至整个巷道纵深都开挖完毕。每一次开挖都回引起新的不平衡力,再不断的迭代计算过程中,不平衡力逐渐减小直至比率达到1×10-5,计算基本达到平衡。

在代码中一个截面的锚杆的施工被集成到一个函数中,该函数通过循环语句实现了多个单根锚杆的安装,而每一根锚杆的安装都包括原有连接的删除、新连接的建立、连接属性的设置等一些列的操作。因此代码是高度集成和简化的。在后面的每一节段的开挖支护施工中,只需要指定开挖截面的位置,然后调用开挖函数、锚杆支护函数就可以完成相应的任务。

开挖和支护全部完成后的锚杆和喷层支护情况如图13所示:

从图14中可以看出,在锚杆与喷层间具有节点连接的部位,存在明显的相互作用,由于锚杆拉力的存在,对喷层所受的法向压力起到了抵消作用。只有建立混凝土喷层与锚杆间的连接,模拟的支护效果才与真实的现场情况接近,分析才更具实践意义。混凝土喷层所受法向应力情况如图15所示。

仿真分析的目的是通过数值计算掌握围岩位移分布特征,判断支护参数的有效性,为支护的优化提供依据。在计算中,在围岩内部关键位置布置位移和应力监测点,监测整个计算过程中关键位置处位移和应力随开挖和支护的发展情况。

变化锚杆的长度以及锚杆布置的间排距,可以获得不同的支护效果,分别分析不同支护参数小的支护效果,主要是比较围岩位移(图16)、表面最大收敛位移和锚杆最大轴力(图17)。在确保围岩发生的位移变形在允许范围内,锚杆轴力不超过锚杆抗拉强度条件下,可以确定合理的锚杆长度和间排距。

上述问题由于存在围岩与结构的相互作用,支护结构多且复杂,同时还需考虑施工顺序的影响,因此还没有接近的理论分析方法可以应用。现场监测受现场条件和经费等影响只能提供某几个断面的监测结果,同时监测结果可能受到施工过程中各种人为因素的影响。而数值仿真分析能够为复杂工程提供满足精度要求的、纯理论分析和物理实验无法实现的详细的分析结果,易于快速实现不同参数的分析,为优化设计提供可靠依据,能够降低工程成本,合理指导工程实践。

目前数值仿真方法已成为工程实践中各种创新的重要支撑。

3 实例完整代码

与上面介绍的工程实例对应的完整演示代码在下面的代码列表中,该代码可以完成包括几何模型建立,在指定位置自动进行围岩开挖、混凝土喷层施工、锚杆的安装、连接的自动删除和建立以及结构单元属性的设置等相关工作。真正做到一劳永逸,实现无人值守式自动计算和保存。如果计算时间很长,可以去掉代码最后一行的注释,则软件会在计算结束后自动关机。

4 其他应用

5 结语

真实的世界使我感兴趣,因为它是可塑的。——法国作家纪德

仿真世界是另一个有趣的世界,因为你能发挥自己的想象力和创造力把一些东西从无到有的在那个虚拟世界中创造出来,再赋予它们以属性,建立它们间的关联,观察它们的发展…… 那不是很有趣吗?

0 前言

岩土工程中常用的数值计算方法主要有有限元法、有限差分法和离散元法等,今天我们要用到的FLAC3D软件采用的就是有限差分法。有限差分法历史悠久,其最初的使用甚至可以追溯的第一台电子计算机出现之前。有限差分法并不是为了电脑编程而出现的,而是计算机使用者后来发现有限差分法易于编程实现,使得有限差分法在数值计算领域得到不断推广和进一步发展。

越是弥足珍贵的软件,外表看上去,往往越是平常无奇,仿真模拟给全身心带来的幸福,从来也是如此。  --指尖上的仿真

FLAC3D软件主要用于解决岩土工程问题,由美国的ITASCA公司开发。ITASCA是1981年由美国明尼苏达大学5位教师联合创办的岩石力学技术机构,这些创始人当初在北美首创了岩石力学学科,并组织创立了国际岩石力学学会,因此,在业界ITASCA被认为是世界岩石力学学科发源地之一。

接下来介绍一下我们要解决的问题,就是地下硐室或通道结构的锚网喷支护问题。地下硐室或者通道开挖后引起地层内应力的重新分布,面临稳定性风险,因此需要及时支护,而锚网喷就是常用的方法之一。锚网喷支护方法自上世纪60年代以来,已被广泛采用。锚杆和喷射混凝土与围岩共同形成一个承载结构,可有效地限制围岩变形的自由发展,调整围岩的应力分布,防止岩体松散坠落。它既可以用作施工过程中的临时支护,也可以在围岩稳定性较好情况下,代替永久支护或衬砌。该方法在煤矿巷道、地下硐室和公路隧道中都有广泛应用。锚网喷支护的实景照片和某设计图如图1、2所示。

由于支护结构数量多,支护构件间存在复杂的相互作用,对支护有效性的分析多借助数值仿真方法进行。目前绝大多数数值计算软件并没有直接的相应内置单元来模拟锚杆,而FLAC3D内置了cable单元用于模拟锚杆或锚索支护结构,同时其强大的Fish语言允许用户通过编程实现大量锚杆的自动创建、连接的建立、属性参数的设置等工作,代码一旦编写完成只需少量修改即可反复使用,可以分析不同支护参数下的支护效果以便进行参数优化。

本文作者之前在国内两家著名仿真论坛公布了锚网喷支护的部分代码,获得了大量的点击和关注,当时公布的代码已经进行了简化,并未公开其中锚杆与喷层混凝土间连接的相关操作。在本文中,将较详细的介绍该结构单元节点上的连接的自动删除和新建方法,并公开相应的核心计算代码,该部分内容对于在模拟中获得真实的支护效果非常重要。

本文在接下来的第1节将介绍FLAC3D中结构单元的部分基础知识,尤其是单元间连接建立的一般方法,然后介绍在需要建立大量连接时,如何利用内置函数实现连接的建立。在第二节将介绍一个实例,在实例中具体演示连接的自动建立。第三节将给出该实例对应的完整代码。有了前面各节的铺垫,读者将更容易理解和掌握第三节的代码。

1 FLAC3D中连接的建立

1.1 基础介绍

FLAC3D中的结构单元主要包括:锚杆(锚索)单元(cable)、梁单元(beam)、壳体单元(shell)、衬砌单元(liner)和土工格栅(geogrid)。这些结构单元一般在普通实体单元(zone)表面(图3)或内部建立(图4),结构单元在创建时单元节点(node)会自动与邻近的实体单元建立连接(link)以实现与周围实体单元的相互作用。结构单元的单元与单元之间也通过节点(node)上的link实现共同作用。因此,link有两种类型,即:节点-实体单元(node-zone)(图4)、节点-节点(node-node)。默认情况下不同类型结构单元各自由度的link的类型,如表1所示:

其中,free和rigid分别表示该自由度上可以自由位移和刚性的,SY代表剪切屈服弹簧,NY代表法向屈服弹簧,PY代表桩屈服,PYDP代表依赖弹簧的桩屈服。

当有新的结构单元被创建时,会有新的节点出现在实体单元表面或内部,新的节点与实体单元间会按照表1中的默认属性自动建立node-zone连接,进而实现结构单元与实体单元间的相互作用。也就是说,结构单元与实体单元间的相互作用是通过node-zone连接实现的。

1.2 cable与liner的连接

在后面的建模中会利用cable单元模拟锚杆,用liner单元模拟含钢筋网片的混凝土喷层,因此,在此以cable和liner的连接,演示结构单元间node-node连接的建立方法。

如图6所示的cable和liner单元,图中紫色圆圈代表结构单元的node,圆圈内数字表示节点编号,这些编号是结构单元被创建时自动分配的。图中节点57和节点69被拉开了距离,主要是方便观察节点编号,实际建模时两个node是重合的。需要注意的是:结构单元在被创建时,其节点会自动与邻近的zone按表1的属性建立连接,两个结构单元的节点即使重合也不会自动建立连接。

因此,节点69和节点57都与liner后的实体单元(zone)自动建立了连接。在人为建立节点69和节点57间的连接前需要人为的删除节点与zone自动建立的连接。但连接的删除需要知道link的ID。命令清单提供了连接删除和建立的方法。

从上述代码可以看出两个node间的连接就需要多行代码才能完成,涉及两个link的删除,1个新link的建立以及属性的设置多个过程,尤其是当创建的连接很多时无法每个节点都通过print来人为的观察确定link的ID,这个过程过于繁琐。所以当需要删除和创建的link数量多时,必须利用FLAC3D内置的Fish语言,通过内置函数来完成相关操作。

一个成功的分析师,并不只依赖好的软件,更仰仗厚重的经验。 --指尖上的仿真

一个好的模拟分析,不是所有的操作都依靠鼠标,而更依赖于键盘。很多工作,写好代码就让它自己去算吧……

1.3 通过Fish删除指定坐标处liner节点的link

采用如下代码完成与cable外端节点重合的节点的定位、link的确定以及link的删除。

代码片段2中,nd_near(_x0, y0, z0)获得指向位置(_x0, y0, z0)处的节点的指针(图7中指针1), nd_link(_ndLPTR)则是根据节点指针获得指向该节点的link的指针(图7中指针2),此处的link是liner与邻近的zone间自动建立的连接。lk_id(_lkPTR)则根据指针2获得link的ID。命令:sel delete link range id linkID 根据link的ID删除该link。ndid(_ndLPTR)根据指向位置(_x0, y0, z0)处的节点的指针1获得该节点的ID。

1.4 删除靠近liner的锚杆节点的link

删除锚杆最外侧靠近liner的节点上的link,Fish代码如下:

在上述代码中,由s_near(_x1, y1, z1)获得指向指定坐标位置处的结构单元的指针,即获得指向cable单元的指针,再由该指针获得该结构单元的cid,然后按照FLAC3D生成cable单元的编号特征,获得靠近liner的一个节段的cable单元的cid号,再由该cid号通过s_find函数获得指向靠近liner处的cable单元的指针,由该指针通过s_node函数获得单元的第一个节点的指针,由该指针通过nd_id函数获得节点的ID。整个过程相对比较复杂,可以参考图8进行理解。从图8中围岩内最内侧的锚杆节点坐标(_x1, y1, z1)开始,沿着箭头的方向利用适当的fish函数,最终可以获得锚杆最外侧节点的id。之后删除这个节点创建时自动建立的link(对应命令:sel delete link range id _linkID)。

上面的代码看得头晕,有木有?这个可以有。慢慢理解吧,话说我在写这个代码时也是牺牲了很多脑细胞的。为什么这么绕呢?是因为liner的node与cable的node在锚杆的最外侧节点(_x0, y0, z0)处重合了。通过nd_near(_x0, y0, z0)函数只能获得重合位置处一个节点的指针,无法同时获得另外一个节点的指针。nd_near()函数在重合的2个node处是返回哪个node的指针,主要根据node的创建顺序,同一位置处的多个node,哪个先创建的,nd_near()返回指向它的指针。在本文的分析中,liner始终先于cable创建,所以可以利用nd_near()获得处liner的节点的指针。而同一位置处cable节点的指针则需要如图8中那样,通过最内侧的锚杆结构单元利用fish函数向外找到最外侧的节点。

1.5 建立cable节点与liner节点间的link

建立cable节点与liner节点间的link并设置link属性,代码如下:

到此,我们就完成了锚杆与衬砌结构单元间在重叠的节点处删除各自原有连接、新建node-node连接并设置相应属性这一最困难的工作。

2 应用实例

接下来将以一个煤矿巷道锚网喷支护的实例来演示上述结构单元link相应操作的实现。某煤矿巷道,其断面形式为直墙半圆拱型,混凝土喷层和锚杆的布置方式与图9中接近。锚杆加固的作用是提供局部抵抗岩块滑动及裂缝开展的刚度。锚杆借助于水泥浆或树脂药卷沿其长度方向提供了抗剪能力。锚杆及锚索采用cable单元进行模拟。

计算模型的边界条件主要采用位移边界条件:在模型底边施加竖向位移约束,在模型左右竖向边界面施加水平位移约束,在模型的前后竖向边界面施加前后的水平位移约束。在FLAC3D中,位移边界的实现是通过约束指定范围内网格节点(gridpoint)的速度实现的。

地应力主要包括自重应力和构造应力在岩体上产生的初始应力状态。结合淮南地区深部地应力的特点,取竖向应力和水平应力相等,数值按岩体自重应力换算而来。初始应力如图10所示。

模拟考虑了具体的施工过程,即先进行围岩的开挖,接下来进行混凝土喷层及网片的施工,再进行锚杆的安装施工。分节段先前推进,每个节段的进深为2.4m。在FLAC3D中模拟施工开挖比较方便,只需要赋予应该开挖部分的围岩null模型,该部分围岩的刚度等材料属性就被设置为极小的数值,相当于从模型中被挖去。本次模拟出于演示的目的,共有5个开挖步,每步开挖2.4m,直至开挖贯通整个模型的纵向。

开挖完每一段巷道岩体后,围岩的应力发生释放,围岩产生变形。之后马上进行锚网喷施工。混凝土喷层厚25mm,锚杆间排距800mm,锚杆长度2.5m。混凝土喷层采用liner单元模拟,锚杆采用cable单元模拟。一个开挖完毕节段内安装的喷层和锚杆情况如下图所示。

图11 第一节段开挖结束后锚杆和喷层布置图

支护结构安装完毕后,继续进行下一个节段的开挖。开挖后进行喷层和锚杆的支护施工。以此类推。图12为开挖完成三个节段后的喷层和锚杆布置图。

图12 第三个节段喷层和锚杆布置图

重复以上过程直至整个巷道纵深都开挖完毕。每一次开挖都回引起新的不平衡力,再不断的迭代计算过程中,不平衡力逐渐减小直至比率达到1×10-5,计算基本达到平衡。

在代码中一个截面的锚杆的施工被集成到一个函数中,该函数通过循环语句实现了多个单根锚杆的安装,而每一根锚杆的安装都包括原有连接的删除、新连接的建立、连接属性的设置等一些列的操作。因此代码是高度集成和简化的。在后面的每一节段的开挖支护施工中,只需要指定开挖截面的位置,然后调用开挖函数、锚杆支护函数就可以完成相应的任务。

开挖和支护全部完成后的锚杆和喷层支护情况如图13所示:

从图14中可以看出,在锚杆与喷层间具有节点连接的部位,存在明显的相互作用,由于锚杆拉力的存在,对喷层所受的法向压力起到了抵消作用。只有建立混凝土喷层与锚杆间的连接,模拟的支护效果才与真实的现场情况接近,分析才更具实践意义。混凝土喷层所受法向应力情况如图15所示。

仿真分析的目的是通过数值计算掌握围岩位移分布特征,判断支护参数的有效性,为支护的优化提供依据。在计算中,在围岩内部关键位置布置位移和应力监测点,监测整个计算过程中关键位置处位移和应力随开挖和支护的发展情况。

变化锚杆的长度以及锚杆布置的间排距,可以获得不同的支护效果,分别分析不同支护参数小的支护效果,主要是比较围岩位移(图16)、表面最大收敛位移和锚杆最大轴力(图17)。在确保围岩发生的位移变形在允许范围内,锚杆轴力不超过锚杆抗拉强度条件下,可以确定合理的锚杆长度和间排距。

上述问题由于存在围岩与结构的相互作用,支护结构多且复杂,同时还需考虑施工顺序的影响,因此还没有接近的理论分析方法可以应用。现场监测受现场条件和经费等影响只能提供某几个断面的监测结果,同时监测结果可能受到施工过程中各种人为因素的影响。而数值仿真分析能够为复杂工程提供满足精度要求的、纯理论分析和物理实验无法实现的详细的分析结果,易于快速实现不同参数的分析,为优化设计提供可靠依据,能够降低工程成本,合理指导工程实践。

目前数值仿真方法已成为工程实践中各种创新的重要支撑。

3 实例完整代码

与上面介绍的工程实例对应的完整演示代码在下面的代码列表中,该代码可以完成包括几何模型建立,在指定位置自动进行围岩开挖、混凝土喷层施工、锚杆的安装、连接的自动删除和建立以及结构单元属性的设置等相关工作。真正做到一劳永逸,实现无人值守式自动计算和保存。如果计算时间很长,可以去掉代码最后一行的注释,则软件会在计算结束后自动关机。

4 其他应用

5 结语

真实的世界使我感兴趣,因为它是可塑的。——法国作家纪德

仿真世界是另一个有趣的世界,因为你能发挥自己的想象力和创造力把一些东西从无到有的在那个虚拟世界中创造出来,再赋予它们以属性,建立它们间的关联,观察它们的发展…… 那不是很有趣吗?

THE END
0.flac3d梯度施加应力命令和弹性体本构赋值利用弹性本构来研究命令流的实现。 zonecmodel assign elastic zone property bulk 5.56e9 shear 2.71e9 ps:当赋值重力时,必须给密度参数。 stress xx 与 sterss-xx 的区别,前者可以一次性指定多个方向的应力值,没有赋值的默认为0,后者可以指定含有变量的值,但是每个分量的值都得单独赋值。 jvzquC41dnuh0lxfp0tfv8mh42841jwvkerf1mjvckrt1:9:78697:
1.flac3d初始地应力反演主应力方向与地质构造一致性 边界效应影响范围(应小于模型尺寸的20%) flac3d地应力反演命令流 在FLAC3D 中进行地应力反演的命令流可以分为以下几个步骤: 定义模型网格:使用model new命令创建一个新的模型,并使用zone generate或zone cmodel命令生成模型网格。 jvzquC41ygtlw7hufp4og}4cpu}ft86gq7ve;A;r
2.FLAC(精选十篇)而数值分析方法是一种较完善的力学分析方法,用于边坡稳定性分析有多个判断指标,如应力、位移、位移速度和塑性破坏区的大小和分布。本文采用了数值分析方法中的有限差分法FLAC3D对露天边坡的稳定性进行分析。 2 FLAC3D概述 FLAC(Fast Lagrangian Analysis of Continua)是基于有限差分法的数值模拟软件,最早应用在固体力学jvzquC41yy}/5?5ygpsj0lto1h5dptj{6l998q;0jvsm
3.FLAC3D模拟初始条件详解与实践在岩土工程中,初始应力场对于模拟的准确性有着决定性影响。初始应力场反映了未受外部干扰前,材料内部所承受的自然应力状态,这包括地应力、构造应力等多种因素。在FLAC3D中,正确设置初始应力场,有助于更准确地模拟出材料在施工和运营过程中可能出现的应力重分布和应力集中情况,尤其对于预测潜在的不稳定区域和变形行为具有jvzquC41dnuh0lxfp0tfv8|gkzooa<;4;8:568ftvkimg8igvcomu867297:6@7
4.FLAC3D介绍FLAC/FLAC3DFLAC3D主要适明模拟计算地质材料和岩土上程的力学行为。特别是材枓达到屈服极限后产生的塑性流动、材料通过单元和区域表示,根据计算对象的形状构成相应的网格。每个单元在外载和边界约束条件下,按照约定的线性或非线性应力—应变关系产生力学响应。由于FLAC3D程序主要是为岩上工程应用而开发的岩石力学计算程序,程序中包括了jvzquC41ddy/{jsvwenjpj3eqo5tkvung1oofn}0rjv@v:8562;`37mvon
5.高水平地应力下自然崩落法底部结构灾变机理国内外学者对自然崩落法底部结构的稳定性和地压显现相关理论方法进行了研究.Trueman等[8-11]研究了拉底方式、构造应力、底部结构高度等因素对自然崩落法底部结构的影响,并提出了控制措施.丁亦敏[12]通过监测铜矿峪矿在自然崩落法拉底和崩落过程中底部结构的受力,分析了自然崩落法开采过程中底部结构应力变化特征;Dierinjvzq<84uejupn7ktggqbq‚fp0eun1qjknqthlrfpi1njv8pg{ct04972138.2>4382=24A=73374:A=0ujznn
6.FLAC/FLAC3D软件应用经验与使用技巧再问陈老师,在模拟深部构造应力时,除了您书上说的SB法外,我个人想了一个思路:即模型四周加构造应力边界条件,底面固定,顶面施加一个应力边界条件来反演埋深自重应力,这样计算可以吗? 答 陈育民2013-06-18 15:02:32 是否可行,一试便知。有新想法很好,但是要对该方法的正确性进行验证方可。 问 xff36882013-06jvzquC41yy}/{jsvwenjpj3eqo5jp}jtxkkxu8igvcom1:>
7.煤巷掘进过断层应力变化规律数值模拟研究期刊摘要:以钱家营煤矿5#煤层巷道掘进过AF41和AF42逆断层为例,采用FLAC3D模拟了巷道掘进围岩应力分布及变化规律.结果表明:断层附近煤岩体初始垂直应力较大,构造应力影响范围为30 m;随着巷道掘进,断层附近围岩应力逐渐增大,应力集中程度更加显著;对于逆断层而言,沿断层下盘向断层掘进更容易导致应力集中,将更容易引起冲击地压jvzquC41f0}bpofpifguc7hqo0io1yjtkqjjejq1ovpt49682:637
8.flac3d基础知识介绍.pdf3.考虑网格划分的密度 FLAC3D 使用常应变单元。如果应力/应变曲线倾斜度比较高,那 么你将需要许多区域来代表多变的分区。通过运行划分密度不同的同 一个问题来检查影响。FLAC3D 应用常应变区域,因为当用多的少节 点单元与用比较少的多节点单元模拟塑性流动时相比更准确。 应尽可能保持网格,尤其是重要区域网格的统一jvzquC41oc~/dxtm33>/exr1jvsm1;5421663<4934727=6822633<80ujzn
9.基于FLAC3D的近距离极薄煤层开采数值模拟研究底板出现垂直向上的卸荷膨胀变形,煤层顶板变形大于底板;随着工作面的不断推进,煤层回采后,工作面前后方出现应力集中现象,随着开采进行,工作面前后方支承应力是移动型支承应力;煤层回采后,地表变形逐渐增大,且最大沉降与煤层倾角有关,约在煤层中部偏采区深部一侧。 Abstract: Through FLAC3D numerical simulation software,jvzquC41yy}/jjsurwh/q{l1lq{spjq1RcvftRshqtsbvrtp0cyqzHucrgxJFF7:82:
10.flac3dgpu加速51CTO博客已为您找到关于flac3d gpu加速的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及flac3d gpu加速问答内容。更多flac3d gpu加速相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。jvzquC41dnuh0>6evq4dqv4vqrod1A99;cg:8=hf:h;90qyon
11.ItascaFLAC3D/pfc3d/3dec/flac3d/massflow9.10.7使用界面,FLAC3D还可以模拟不连续性,例如断层,关节,层面,以及沿构造的工程边界。考虑3DEC在块状地面中jvzquC41ddy/gnyqr0io1}mtgcj.;B7;6:32/:3jvor
12.外法尔斯地区古环境中利用等厚图研究烃类潜力的构造控制机制通过采集50口井的测井数据(包括伽马、电阻率、声波和密度测井)及二维/三维地震资料,采用Petrel软件构建了从三叠系至白垩系的等厚图;利用FLAC3D进行地力学模拟,量化最大主应力(σ1 =12 MPa)、中间主应力(σ2 =10 MPa)和最小主应力(σ3 =8 MPa)的分布;结合分形维数计算(公式D=limr→0jvzquC41yy}/gknqvtgeg7hqo1tfy|k14286/?4424;18:>352:4:<=40jzn