ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Abaqus隧道开挖仿真全攻略:双洞、双盾构、小净距与连拱隧道建模要点

Abaqus隧道开挖仿真全攻略:双洞、双盾构、小净距与连拱隧道建模要点 我前阵子把Abaqus隧道开挖的几条常见路线完整地走了一遍从双洞隧道开挖、双盾构隧道开挖、小净距隧道开挖到连拱隧道开挖每一类都重新搭了模型、调了参数、排了一圈坑。说实话这四个工况看起来都是“挖洞、衬砌、看沉降”但背后的建模策略、工序模拟思路甚至网格布置卡的“命门”都不一样。如果你也正准备在Abaqus里做这类岩土工程分析或者已经被地应力平衡、单元生死、接触不收敛折腾到怀疑人生这篇就按step by step的节奏把我实际跑通的流程和踩过的坑都摊开讲清楚。这篇内容适合三类人一是刚上手Abaqus的学生需要照着搭出一个能出结果的隧道开挖模型二是做施工方案比选的技术人员想快速评估双洞间距、开挖顺序对地表沉降和中间岩柱的影响三是自己写论文需要一套可靠分析能耗的人。我不讲花哨的二次开发所有操作都基于Abaqus内置功能尽量让你能直接复现。1. 拿到这类隧道开挖课题先把仿真策略想清楚1.1 四种隧道的技术特点是选型的前提很多人一看到“双洞”“双盾构”“小净距”“连拱”就以为差不多实际在仿真里它们对应的力学难点差异很大。普通双洞隧道是两座单洞在平面位置上接近开挖相互影响通过围岩传递小净距隧道则强调两洞之间的净距小于一倍洞径甚至有小于0.5倍洞径的情况两洞之间那块“夹心岩柱”承担了大部分荷载是最容易发生塑性贯通的位置双盾构隧道开挖的重点不在洞形上而在施工工艺盾壳推进、管片拼装、注浆层硬化都是分步激活的模拟的核心是工序时序连拱隧道开挖则是两洞的拱部连成一个整体中间有一道中隔墙施工上通常先挖中导洞再做中墙再分部开挖左右洞整个结构受力有点像“M形”中墙的受力路径尤其关键。把这些区别先列成一张对比表后面的建模就不会跑偏。工况类型核心关注点仿真难点常用分析维度双洞隧道开挖两洞相互影响、地表沉降叠加对称性利用、先后开挖顺序二维平面应变或三维整体分析双盾构隧道开挖盾壳推进、管片拼装、壁后注浆工序时序和单元激活顺序三维逐环掘进需定义盾壳和注浆圈小净距隧道开挖中间岩柱稳定、塑性区贯通网格密度、材料软化、工序错距二维或三维重点加密夹心岩柱连拱隧道开挖中隔墙受力、左右洞相互影响分部开挖步序、中墙先期浇筑二维够用中墙局部可用三维校验1.2 先想清楚用什么模型二维断面还是三维掘进我在实际项目里的习惯是先做二维平面应变分析判断开挖顺序和支护参数对位移、塑性区的基本趋势再用三维模型验算关键断面的纵向效应。二维模型的优势非常明显计算快、调参方便、应力场清晰做方案比选足够。但双盾构挖掘这种问题因为盾构是沿着纵向连续推进的开挖面有支护压力、盾壳有锥度、管片是分环拼装的二维根本反映不了必须上三维。二维和三维的选择还有一个现实约束网格预算。一个三维隧道模型动辄几十万甚至上百万单元如果同时模拟双洞和盾构逐环掘进普通电脑很容易卡死。我自己会控制在两万到八万单元之间用对称模型减半再用“等效地层损失率”校准结果。如果你只是算地表沉降槽二维已经够用如果要算盾构推力的影响、管片环间接头再加三维。2. 几何建模与网格划分双洞、小净距和连拱的细节2.1 从断面中心线开始搭几何不管哪种隧道建模的第一步都不是直接画圆而是从断面中心线开始。我会先把土体“Part”建成长方形或长方体然后在草图中画出左右隧道的圆心位置和半径。对双洞和小净距最关键的两个几何参数是隧道中心距和开挖半径它们直接决定中间岩柱的厚度。比如两洞开挖直径都是10米中心距15米中间岩柱就是5米属于典型的小净距这个岩柱区域要单独切分出来后面才好加密网格。切分几何时我强烈建议用“Partition”功能把围岩切成多个区域左右隧道一定范围内的“开挖影响圈”、两洞之间的棱形岩柱、外围远场区域。不要嫌麻烦这一步越细后面网格布种越可控。Abaqus的自动网格划分在没有Partition的复杂多孔部件上经常给出楔形单元虽然也能算但隧道开挖这种强非线性分析特别吃网格质量锥形单元一多就容易不收敛。另外连拱隧道不要直接从两个圆相切画正确做法是先用中导洞轮廓减去中墙区域再把左右主洞轮廓切割进去。中墙通常宽1到2米最后浇筑混凝土它在几何模型里一开始是不存在的要等导洞开挖掉后才能“生长”出来。我见过不少人把中墙一开始就画在土体里结果开挖步还没到墙先跟土体互相存在应力场就乱了。2.2 网格布种洞周加密、中间岩柱是命门隧道开挖的核心力学响应都发生在洞室周边网格必须在径向和周向都足够密否则算出的塑性区范围和地表沉降会严重偏低。我的参考做法隧道径向离洞壁四周切出一圈厚1倍洞径的“加密区”沿径向布10到15个单元周向布48到64个单元。这样一来洞壁附近的最小单元尺寸约0.3到0.5米外围可以逐渐过渡到2到4米。小净距隧道的中间岩柱是另一个加密重点。两洞间距只有几米岩柱内可能只排得下4到8个单元宜多不宜少。单元少了塑性区被“锁死”根本没法体现夹心岩柱的渐进破坏。我自己用6面体单元C3D8R差一层的楔形单元都尽量避开。双盾构三维模型的网格策略要特别注意纵向分段。管片环宽一般是1.2米或1.5米纵向网格就按一环留2到4层单元格。盾壳长度通常8米左右要单独建立为薄壳或实体层。几何上我会把盾壳建为壳单元管片建为实体注浆圈也建为实体三套网格耦合在同一个模型中。网格尺寸在纵向和环向都对齐方便后续用*Model Change整环激活或钝化。2.3 盾构隧道的三层结构要在几何里建出来双盾构隧道分析里有一句话叫作“结构没分层盾构没法模拟”。盾构机尾部的围岩和管片之间有一个壁后空隙这个空隙会被同步注浆填满浆液早期和硬化后的刚度差异非常大。在几何模型里我会建三层盾壳单元厚度取实际盾壳厚度简化为壳单元材料用弹性钢主要承受围岩压力和传递推进力注浆圈层厚度0.2到0.3米分成“未硬化”和“硬化”两个阶段通过单元组在不同分析步替换材料属性管片层厚度0.3到0.5米用实体单元材料为钢筋混凝土等效弹性。三层结构要分别独立建Part再通过装配定义位置关系。管片环和环之间如果要做精细分析还需要定义环间接头但在工程简化计算中我会把管片环缝的刚度损失系数折进材料模量里。三层结构在几何上的互相嵌套位置很容易产生初始交叠装配后一定用“切分”或者“调整位置”确保表面贴合宁可留微小缝隙也不要交叠否则接触和激活都会出问题。3. 参数、边界和地应力决定算不算得动的三道关3.1 材料参数别照抄书本先搞清本构隧道开挖分析里围岩用弹塑性本构最普遍Abaqus里常用摩尔库仑或者德鲁克普拉格。摩尔库仑参数直观有粘聚力c和内摩擦角φ但它在三维应力状态下有时收敛不顺畅德鲁克普拉格参数c、φ换算后更平滑我倾向于在三维盾构模型里用DP。围岩模量和强度参数的选择直接决定开挖面是否稳定。以Ⅳ级围岩为例我的常用取值弹性模量1.0到1.5GPa泊松比0.32密度2000到2200kg/m³粘聚力100到200kPa内摩擦角22到28度。如果做的是软土盾构隧道则改用修正剑桥模型或小应变硬化土模型参数就要做三轴试验标定不是查表能解决的。衬砌材料在Abaqus里可以用线弹性混凝土模型模拟弹性模量约30GPa泊松比0.2重度25kN/m³。管片和喷射混凝土的等效方法差别很大盾构管片是预制拼装的接缝多整体刚度打折连拱隧道的中墙和初衬通常是现浇的可以按完整混凝土考虑。注浆圈未硬化时模量只有20到50MPa硬化后可以达到200到500MPa这个变化要在分析步里用*Field或者材料场变量控制。3.2 地应力平衡百分之八十的报错都出在这我接触过的隧道模型不收敛和初始位移异常大概率都栽在地应力平衡上。所谓地应力平衡就是让模型在开挖前已经处于初始地表应力状态下并且初始位移接近零。Abaqus里最干净的做法是建立完整土体模型施加重力在第一个分析步用Geostatic或者通用静力步计算初始应力然后把应力结果以Initial Conditions, TypeStress, Geostatic的形式导入重新进行计算。但你如果直接按上述流程多半会发现导入的应力场和单元网格不完全匹配。我更常用的替代方案是“两步法”第一步只施加重力和边界条件计算得到土体自重应力场第二步将第一步得到的应力场定义为初始应力再进行开挖。注意一个细节用Geostatic分析步时屈服面不能有初始屈服点否则地应力平衡后会带着塑性应变和位移进入开挖阶段。因此第一步最好先用弹性模型计算应力场再在后续开挖步改成弹塑性模型这样可以避免很多“初始塑性应变”的麻烦。泊松比引起的侧压力系数也要算清楚通常K0S/(1-S)如果围岩还有构造应力直接在初始应力里加一个侧压力系数增量。3.3 边界条件把模型扔回“地层”里隧道开挖模型的边界范围我一直遵循“上下左右至少取3到5倍洞径”的原则。底部约束三个方向侧边约束法向位移顶部自由。如果你建的是半对称模型对称面上要加对称约束但双隧道开挖如果土层不均匀或者施工不同步对称假设就要慎重。三维盾构模型纵向前后两端也要处理。盾构机的切口和盾尾都在模型内部模型纵向长度至少要覆盖“盾构机全长已拼装10环管片前方20米围岩”否则边界附近的人工约束会影响开挖面的应力状态。我一个常用的模型纵向长度是80米盾构机从第20米推进到第60米前后各留20米缓冲区。远场边界还有一个小技巧把侧边界改用弹簧约束通过子空间类无限元吸收波。不过在纯静力隧道开挖中单精度工程、法向约束足够无限元更多是对动力分析。别为了炫技把边界条件搞得过于复杂先保证正常收敛出结果。4. 用Model Change把开挖工序“step by step”叠出来4.1 为什么要用生死单元隧道开挖的本质是不断“移除”洞内土体、“添加”支护结构。Abaqus里对应的功能就是Model Change, Remove和Model Change, Add。每次开挖前把将要挖掉的一批单元从计算中移除它们的应力就释放到剩余网格里紧接着把衬砌或盾壳单元激活让它开始承受后续的荷载重分布。这个操作看似简单但Set的定义和时序经常把新手坑住。我会在装配模块里提前创建若干单元集合命名规则用“开挖区1”“开挖区2”“衬砌1”“衬砌2”确保一个分析步里只remove一个开挖区只add一个衬砌区。关键的一点是remove和add不要放在同一个分析步里做最好用两个分析步先remove土体等土体应力调整一个增量步后再add衬砌。虽然理论上一句话也能跑但同一步内同时移除和添加会让接触和应力状态变得非常不稳定。4.2 双盾构掘进的模拟顺序双盾构三维模型里我通常把掘进过程切成若干个“推进步”。每个推进步长度等于一环管片宽度典型流程如下当前分析步里remove掉盾构机前方下一环范围内的土体单元模拟刀盘开挖激活盾壳单元向前推进一环盾壳覆盖住新的开挖面在盾壳尾部移除盾壳单元同时激活已拼接的一环管片模拟管片脱出盾尾在管片外激活注浆圈单元并附加注浆压力载荷。实际Inp层级的体现大致是*Step, namedrivestep1, nlgeomON *Static ... *Model Change, Remove soil_excav1 *Model Change, Add shield_front1, lining_ring1, grout_ring1 *End Step这里要特别注意“盾壳推进”的实现方式盾壳单元不应该全部重新定义而是采用“跟着盾构机头部走”的激活逻辑。也就是前部新增一段盾壳尾部同步移除一段盾壳让盾壳在网格里始终存在默认长度只是位置随分析步变化。这套做法我已经跑通了计算量也完全可控。注浆圈的材料要设置随时间变化的力学行为。同一环注浆圈在早期为流动浆体对管片提供均布压力随着浆液硬化逐渐承担长期围岩荷载。我通过给注浆圈定义场变量在后续分析步里不断更新其弹性模量模拟养护硬化过程。4.3 小净距隧道的先后开挖顺序小净距双洞同步开挖在Abaqus里可以建但实际施工很少允许两洞掌子面完全齐头并进因为爆破和变形会互相扰动。仿真里我一般对比三种方案两洞同时开挖、左右洞错距开挖、两洞分别全断面开挖。错距的量通常取1到2倍洞径。你可以把这些差异通过分析步顺序体现出来。比如左侧洞先开挖到某一环右侧洞才开始开挖右侧洞开挖时左边洞已经打好衬砌刚度上去了。这个方法在二维里同样有效——先在左侧洞remove掉开挖区并add衬砌等到应力稳定后再开挖右侧洞。结果往往会发现中间岩柱的塑性区跟开挖错距的关系非常敏感。错距太小左右洞的应力释放叠加在岩柱中间塑性区连成一条“纵向破裂带”错距太大先挖的洞室在两侧卸载下产生过大变形。具体最优错距要根据围岩级别做参数扫描通常小净距隧道规范里建议错距不小于1.5倍洞径仿真正好可以验证这一条。4.4 连拱隧道的中导洞和分部开挖连拱隧道的开挖步骤比双洞复杂但用Model Change依然是老一套逻辑。典型工艺是“中导洞先行—中墙浇筑—左右洞开挖”。建模顺序如下第一步remove中导洞土体激活中导洞初期支护第二步在中导洞内add中隔墙混凝土模拟中墙现浇第三步remove左主洞土体激活左洞初期支护第四步remove右主洞土体激活右洞初期支护根据施工图决定是否需要二次衬砌按需要激活二衬。这里面最不容易想到的是中导洞支护和左右洞开挖的先后关系。中墙混凝土浇筑后需要拆除导洞临时支护并把应力转换给中墙所以在建模时要分两批“remove”第一批是把导洞内的核心土体remove第二批是把临时支护单元remove。如果不remove临时支护它对后续左右洞开挖的约束作用会让中墙受力偏小。双洞之间的二衬施作时机也要考虑。实际工程中左右洞往往不等衬砌完全达到强度就继续掘进所以我在分析步里通过混凝土强度增长曲线把二衬刚度从早龄期低模量逐步提高到目标模量。这在分析步里很多但这个方法比“一激活就算满强度”要真实得多。4.5 分析步与输出设置为了避免开挖过程中应力突变导致不收敛我用Standard里的*Static通用静力分析步并打开几何非线性。开挖工况如果预计有较大塑性区会开启自动稳定Automatic Stabilization功能阻尼系数调低仅用于辅助收敛。但自动稳定是一把双刃剑阻尼太大会让位移失真所以我一般在第一分析步关闭稳定确认收敛困难以后再逐步加。输出设置上我习惯场输出固结位移U、应力S、塑性应变PEEQ在关键点定义历史输出包括拱顶沉降、地表沉降、拱脚位移、中墙顶部竖向应力。地表沉降的横向测点布置和三维模型的纵向测点布置在建模初期就做成Set这样历史输出直接引用Set编号不用后处理再找节点。分析步不要贪多。每个开挖步都用一个分析步最多也就几十步。我把增量步初始值设成0.01最大增量步设为0.1最小设在1e-5。实际跑起来大部分工况都能在20到50个增量步内完成一个分析步。如果某个开挖步连续出现“Too many attempts”先别忙着减小增量步回到网格和接触设置里找问题。5. 常见问题与排查技巧实录5.1 不收敛先别急着调增量步不收敛是隧道开挖模型最常遇到的事。我一开始也习惯先猛砍增量步大小结果事倍功仟。后来学乖了先看monitor里前几个增量步的残差模式和PEEQ云图再判断问题根源。常见原因是开挖面一次性被remove太多单元应力释放过猛。解法是把一个大开挖步拆成几段每次只挖一小部分中间让模型稳定一个增量步。另一个常见原因是单元畸变尤其在小净距岩柱或者注浆圈这种薄层里。我会先检查单元受压后的最小尺寸如果出现负Jacobi说明单元的过度压缩了这时候不是调增量步而是重新划分该区域网格让单元更接近六面体。还有一种隐蔽的原因是接触对的主从面没选好。盾壳、盾尾、注浆层、管片之间的接触如果从面刚度小于主面就会导致穿透收敛很困难。我会把较硬的盾壳设为主面较软的注浆层设为从面单纯摩擦接触时摩擦系数按0.2到0.4设置。5.2 衬砌一激活就拉裂的奇怪现象很多模型看起来正常但衬砌单元一激活就立刻出现大范围拉裂这通常不是材料强度不够而是“该处理的应力释放没做”。实际问题在于开挖步里移除土体单元后如果直接在同一分析步激活衬砌衬砌相当于在开挖瞬间就承担了全部卸载荷载变形被强行限制自然拉裂。我的处理办法土体移除后先保留围岩自由变形若干个增量步让应力释放得差不多再激活衬砌。如果应力释放率很高还可以先加一个“应力释放系数”用等效面力来模拟支护延迟效应。这个操作在二维和三维里都可行只需在开挖面边界施加一个渐减的面力载荷模拟从开挖到支护完成这段时间的荷载转移。5.3 双洞交互影响下中间岩柱的塑性区异常中间岩柱塑性区连续贯通有时候并不是计算错误而是小净距隧道的真实失稳机制。但如果位移结果大到离谱就要检查两点一是岩柱区域的网格是否够密二是初始应力和边界条件是否让模型过于“软”。我给中间岩柱加密网格后还会把岩柱单元单独建立Set在后处理里专门看PEEQ和最大剪应变。如果塑性区已经贯通且模型变形趋势一边倒说明模拟出的施工顺序已经导致局部失稳这不是bug而是方案本身需要改错距或加固。仿真反而是负责任的“预警”。有时候岩柱区域也会因为采用关联流动法则产生不合理的体积膨胀导致位移偏大。可以切换成非关联流动法则并将剪胀角设置成低于内摩擦角默认0到5度即可。5.4 计算时间太长的实际妥协方案三维双盾构逐环掘进模型如果开挖步设置了六七十个计算时间确实很长。我自己试过一台配置和建模方式中等的机器一个模型跑出来要十几个小时而且只算了少量输出。这提醒我做这类分析要在精度和成本之间找平衡。按照我的经验先从二维模型入手把所有参数、本构、开挖顺序都调通再上三维。三维模型里如果对称性好就可以只建一半并用纵向分段来压缩计算规模也可以把每两环管片合并成一个开挖步减少分析步数量。只要纵向位移场的变化趋势正确这种简化是可接受的。必要的时候用*Model Change, Remove配合单元“静力凝聚”策略把距离隧道较远的围岩网格放大把计算资源集中到开挖影响范围内。最后再分享一个我常用的自检方法每次跑完一个开挖步后先不用等整体结果直接查看当前增量步内监测点的位移历史曲线。如果曲线呈连续光滑增减说明模型状态正常如果曲线出现锯齿状跳变大概率是接触或者单元生死顺序错了宁可在这里停下来也不要让错误延续到下一步。做隧道开挖仿真最怕的就是把Abaqus的每一个按钮都点明白了却不知道每个操作在力学上意味着什么。我踩过的这些坑基本都集中在工序时序、地应力平衡和网格局部质量上。你按照上面的思路搭模型把每一步的力学逻辑理顺后面就能少走很多弯路。
返回列表