ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

LS-DYNA岩石爆破模拟建模分析:从材料参数到网格策略的完整实践指南

LS-DYNA岩石爆破模拟建模分析:从材料参数到网格策略的完整实践指南 1. 项目概述为什么选择LS-DYNA做岩石爆破模拟爆破模拟这事听起来挺玄乎其实本质就是用有限元方法在计算机里“炸”一次石头看它会怎么碎、怎么飞。我第一次接触LS-DYNA做岩石爆破模拟是给一个露天矿的边坡稳定性项目做前期评估当时甲方要求在不进行现场试验的前提下预测不同装药量对岩体的损伤范围说实话压力挺大。但LS-DYNA这套软件确实是为这类高速瞬态动力学问题而生的尤其擅长处理大变形、材料破坏、冲击波传播这类问题算得上是爆破仿真领域的事实标准很多高校、科研院所和工程单位都在用。这个项目标题里包含了三个关键词计算机模拟、建模分析、岩石爆破模拟。严格来说这不是一个“拿来即用”的软件操作教程而是一整套从工程问题出发到数值模型建立、参数选择、求解控制、结果解读的完整技术路线。适合的人群很明确正在做岩石力学、地下工程、采矿爆破方向的在校研究生以及想用数值仿真辅助设计却没有太多头绪的现场工程师。我在这篇文章里会把整个思路掰开揉碎讲清楚每一步为什么这么做有哪些坑哪些参数属于“一票否决”级别哪些细节决定你的结果能不能让审稿人或者总工信服。需要提前说明的是我在实际项目中使用的LS-DYNA版本是R11左右不同版本的关键字格式略有差异但整体流程和建模思路基本通用你手头如果是R7、R9或者新出的R13、R14核心方法不会变。另外这篇文章不是软件操作手册的搬运工而是把这些年我踩过的坑、花过的时间、总结出来的经验原原本本分享出来你按照这个思路往下走至少能少走两个月的弯路。2. 整体设计思路从工程问题到数值模型的层层拆解做爆破模拟最忌讳的事情就是一上来就打开前处理软件开始画网格。爆破问题的本质是炸药爆轰瞬间释放巨大能量在岩体内形成强冲击波随后应力波传播、反射、叠加最终导致岩石损伤破碎。这个过程跨越了微秒到毫秒的时间尺度涵盖了气体产物膨胀、裂纹萌生扩展、块体抛掷等复杂物理过程。所以建模之前先想清楚三件事你要回答什么问题、采用什么方法、模拟到什么精度。2.1 先明确爆破模拟的核心需求我接触过不少同行做爆破模拟的目的大致分三类。第一类是研究型需求比如写论文想搞清楚某种装药结构下的裂纹扩展机理或者对比不同孔距、排距对破碎效果的影响这种需求对模型的精细度和物理过程还原度要求比较高往往需要三维模型配合细网格甚至会用到SPH光滑粒子流体动力学方法模拟近区的岩石剧烈变形。第二类是工程评估需求比如矿山设计阶段要确定爆破振动对周边建构筑物的影响范围或者评估爆破对边坡稳定性的扰动程度这种需求更关注远区的应力波传播和振动速度峰值近区的碎块抛掷细节反而没那么重要这个时候可以把爆炸荷载简化成等效压力曲线或者压力时程重点做岩体的动力响应分析。第三类是安全性校核需求比如城市基坑爆破、隧道掘进爆破要保证对周边管线和道路不造成破坏这种需求通常关心临界药量和安全距离对数值模型的精度要求同样很高但往往需要联合结构动力学、流体力学甚至多物理场耦合的方法。这个项目标题既然强调了“岩石爆破模拟建模分析”我建议按第一类和第二类的混合需求来准备方案既要保留近区岩石损伤的刻画能力也要确保远区应力波传播的合理性。2.2 LS-DYNA在爆破模拟中的核心方法和工具LS-DYNA处理爆破问题的常用方法有三种ALEArbitrary Lagrangian-Eulerian、SPH光滑粒子流体动力学和S-ALEStructured ALE。ALE方法是我个人最推荐新手入门的方法思路很直白空气和炸药这类容易发生大变形的材料用流动的网格来描述岩石这类基本不发生大变形的材料用拉格朗日网格来描述两种网格之间通过耦合算法传递力和位移。这种方法的好处是理论成熟、资料丰富、后处理功能完善而且对计算机性能的要求不算极端一台配置还行的工作站就能跑起来。SPH方法则是无网格方法用一系列粒子代替网格单元非常适合模拟爆破近区的岩石碎裂和飞散过程不会出现网格畸变导致计算终止的问题。但SPH的缺点是边界条件处理比较麻烦粒子自由面会产生非物理的应力振荡而且粒子数越多、接触搜索越耗时工程规模的应用成本比较高。至于S-ALE方法可以理解成对ALE方法的改良网格形状更规则计算稳定性更好尤其适合处理包含大位移流固耦合的爆炸问题不过它的前处理设置相对复杂对新手不太友好。实际选型的时候如果你的问题更关注“岩石损伤范围”和“振动传播”用流固耦合ALE网格就够了如果你的问题要研究“碎块飞散轨迹”和“抛掷堆积”建议近区用SPH粒子、远区用拉格朗日网格做混合建模如果是超大尺度工程问题我建议改用等效荷载法把爆源简化成一个压力时程曲线施加在炮孔壁上这样计算效率会提升几个量级。2.3 为什么“建模分析”比单纯仿真更重要很多初学者容易忽略一件事LS-DYNA求解器本身不会告诉你结果对不对它只是按照你给定的模型、参数和算法忠实地解出一组方程组。真正值钱的是建模分析的过程是你在前处理阶段对问题的抽象和简化。比如岩石本构模型有几十种弹塑性的、损伤的、高压状态方程的你选哪一种直接决定了计算结果的可信度。又比如炸药爆轰产物是应该用JWL状态方程来做完整爆轰模拟还是简化为一个峰值压力加载这取决于你的问题是“找规律”还是“绝对预测”。再比如单元尺寸怎么定、人工阻尼怎么设、时间步长怎么控制这些都会显著影响结果。所以这篇文章的主体思路是先把爆轰物理背景讲透再讲材料模型和参数标定然后落实到一个具体的建模流程中最后把求解和后处理中容易翻车的细节拿出来单独说。这一整套逻辑就是“建模分析”四个字的真实含义。3. 核心建模要点材料模型、参数标定与网格策略岩石爆破模拟的参数体系非常庞杂涉及炸药、岩石、空气三种材料各自又包含密度、强度参数、状态方程参数等多个维度。很多人在这一步就迷失了要么参数来自某篇年代久远的论文要么是别人模型的复制最后算出来的结果要么不收敛要么物理上完全不对劲。3.1 单位制的统一是一切的前提在LS-DYNA里因为没有强制单位制概念所以建模时必须自己约定一套自洽的单位系统。爆破问题我推荐采用cm-g-μs单位制也就是长度单位用厘米、质量单位用克、时间单位用微秒这样导出的压力单位是兆帕因为1 g/(cm·μs²) 1×10⁵ Pa 0.1 MPa再换算成标准值需要自己核对。这套单位制的优势在于岩石和炸药的典型参数数值区间比较友好网格尺寸和计算时间步长也容易控制。需要特别提醒的是重力加速度在cm-g-μs单位制下是9.8×10⁻⁴ cm/μs²很小的一个数如果设置了重力荷载且数值填错一个量级整个应力场的本底值都乱了后面根本没法分析。我的习惯是在Excel里先列一张单位换算表把密度、弹性模量、强度、压力、时间、速度几个核心量全部换算好再填入关键字文件避免边建模边换算出错。3.2 岩石材料模型怎么选RHT和HJC怎么取舍岩石本构模型的选择基本决定了你模拟的“物理可信度”。目前在爆破模拟领域用得最多的有两类HJC模型Holmquist-Johnson-Cook和RHT模型Riedel-Hiermaier-Thoma两者都是为冲击和爆炸加载条件下的混凝土、岩石类材料开发的。HJC模型长于描述材料在大高压、高应变率、大变形条件下的强度演化包含压力相关强度、损伤累积和残余强度比较适合处理爆炸冲击波作用下的破碎问题。但它对应变软化和拉伸破坏的描述略显粗糙很多工程案例中会发现拉裂范围偏小因为HJC对拉伸损伤不敏感。RHT模型则是从混凝土动态破坏研究中发展起来的一套更接近物理机制的本构引入了弹性极限面、失效面、残余强度面的概念能更好地描述脆性材料从弹性到损伤再到碎裂的渐进过程同时对应变率效应、拉伸截断、损伤软化都做了专门处理。在我看来对于岩石爆破这类以拉裂破坏为主导的问题RHT模型的适用性明显优于HJC。当然无论选哪个模型都别直接照搬论文里的参数。不同岩石的密度、孔隙率、含水量对参数影响极大必须根据你的岩样实验数据重新标定。工程上如果实验数据不足至少要有单轴抗压强度、抗拉强度、弹性模量、泊松比这些基础力学指标来反推模型参数。3.3 炸药爆轰的JWL状态方程参数炸药建模在LS-DYNA中通常用高能炸药材料模型MAT_HIGH_EXPLOSIVE_BURN配合JWL状态方程。JWL方程描述的是爆轰产物压力和比容之间的关系包含两个指数衰减项和一个压力项形式比较复杂但工程上理解起来并不难它就是在描述炸药爆炸后的气体产物在膨胀过程中压力是如何快速衰减的。关键的参数包括爆速D、爆压P_CJ、初始密度ρ₀以及JWL方程中的A、B、R1、R2、ω。这些参数通常情况下不需要你自己去推导可以直接从炸药手册或LS-DYNA的关键字手册案例中找到常见炸药的推荐值比如乳化炸药、铵油炸药、TNT都有成熟参数。但有一点必须注意如果用的是模型简化法等效压力加载就不需要JWL方程只需要按经验公式计算爆腔壁面的峰值压力和作用时间再把它直接施加到炮孔壁上。我个人做爆破模拟时除非研究课题特别关注炸药与岩石的耦合作用细节否则更倾向于使用等效荷载方法来处理工程问题因为完整爆轰模拟的计算成本实在太高动辄几十个小时而等效荷载方法在结果趋势上并不会差太多而且更容易收敛。这个取舍在2.2节已经提过后面第4节还会专门对比。3.4 网格划分策略尺寸、拓扑和流固耦合界面在爆破模拟中网格尺寸直接决定两个东西计算成本和应力波分辨率。应力波在岩石中的传播速度大约是每秒几千米量级一个周期内需要至少8到10个单元才能保证波形不畸变所以如果关心的是主频在100到200赫兹范围内的爆破振动信号那么最大网格尺寸大约在0.1到0.25米这个级别如果想精细刻画炮孔附近的粉碎区和破裂区那近区的单元尺寸必须细化到厘米级甚至毫米级。很多新人在这一步容易走极端恨不得全局都画细网格结果一个模型几百万单元算几天几夜都算不完。更理智的做法是分区过渡在炮孔近区用密网格比如1到2厘米在远区逐渐过渡到疏网格比如20到50厘米中间用渐变网格连接。这种做法的理论基础是惠更斯原理和波的衰减特性——只有近区的冲击波压力梯度大需要高分辨率捕捉远区的波阵面已经相对平滑不需要过多单元。网格拓扑上六面体网格的精度和收敛性优于四面体但复杂地质体边界往往只能画出四面体。我的经验是炸药和空气域尽量用六面体岩石域中关键研究区域用六面体非关键区域用四面体也是可以接受的。流固耦合界面上需要保证空气网格和炸药网格之间共节点或采用Coupling约束严防网格穿透和初始穿透警告。4. 实操过程从前处理到求解的完整解析现在进入实操环节。我会把整个建模过程按流程拆开从几何建模开始经过网格划分、关键字设置、求解控制到最后运行求解器每一步都附上我在实际项目里验证过的操作建议。4.1 几何建模与模型尺寸设定根据爆破问题的对称性可以大幅简化模型尺寸。比如单孔柱状装药问题如果岩体条件在爆炸加载方向上具有对称性可以建1/2模型甚至1/4模型并在对称面上施加法向约束这样计算量直接下降到原来的1/2或1/4。轴对称问题则可以选择二维模型把岩石看作一个平面应变问题进一步压缩成本。模型尺寸的设定必须考虑边界效应。如果模型太小应力波会快速到达边界产生虚假反射严重污染目标区域的应力场。解决这个问题的标准做法是在模型边界设置无反射边界条件*BOUNDARY_NON_REFLECTING把透射边界吸收掉。但即便如此模型还是应该足够大保证在关注时间段内应力波不会传播到边界一般要求目标区域到边界的距离大于应力波在关注时长内传播距离的1.5倍。拿一个典型的单孔爆破模型举例孔径10厘米药径7厘米装药长度1米岩石区域可以建成长宽高各5米的正方体炮孔位于中心。这样在1000微秒以内的模拟时间段内应力波大概传播3到4米还碰不到边界边界反射影响很小。4.2 网格划分操作我通常使用HyperMesh或LS-PrePost完成网格划分两个工具各有优劣。HyperMesh网格控制能力强适合复杂几何LS-PrePost完全免费操作门槛低而且可以直接以关键字形式导出网格数据对于爆破模型这种长方体或圆柱体占主导的模型足够用了。网格划分的具体操作不是这篇文章的重点但有几个原则值得重复强调炸药和空气域要画得匀称因为流固耦合算法对网格质量非常敏感如果网格拉伸过大容易产生压力振荡甚至计算终止岩石近区网格尺寸要与炸药网格尺寸保持合理比例一般不超过3比1否则耦合界面上的节点搜索会出现问题。网格划分完成后需要及时检查单元质量重点关注Jacobian、翘曲率、最大内角等指标。对于爆炸力学问题一个Jacobian为负的单元就可能让计算在数千步后崩溃而这种问题往往隐藏得很深排查起来极其耗时。4.3 关键字设置材料、状态方程、接触与边界条件网格准备好了接下来就是往LS-DYNA关键字文件里填写模型信息。我推荐直接用文本编辑器打开.k文件进行修改因为爆破模型的关键字数量不多通常几十个卡片但每张卡片的内容都对计算稳定性有决定性影响。一个最基本的流固耦合爆破模拟需要的核心关键字包括如下这些*KEYWORD文件头包含模型标题和终止控制参数*NODE、*ELEMENT_SOLID节点和单元定义*PART零件定义每个PART关联一个材料和一套算法*MAT_HIGH_EXPLOSIVE_BURN炸药材料需要填密度、爆速、爆压*EOS_JWL炸药状态方程参数*MAT_NULL空气材料密度、动力粘度*EOS_LINEAR_POLYNOMIAL空气状态方程通常用线性多项式MAT_RHT或MAT_JOHNSON_HOLMQUIST_CONCRETE岩石本构*INITIAL_DETONATION爆轰起爆点定义*CONSTRAINED_LAGRANGE_IN_SOLID流固耦合约束卡片负责空气网格和岩石网格之间的相互作用*BOUNDARY_NON_REFLECTING无反射边界*CONTROL_TIMESTEP时间步控制*DATABASE_BINARY_D3PLOT等输出控制参数填写过程中最容易被忽略的坑是关键字默认值。比如空气的初始内能参数、线性多项式状态方程的系数很多新手以为填个密度就完事了结果算出来压力场全是噪声。空气模型需要给一个很小的初始内能比如2.5×10⁻⁶左右的单位制相关值才会在爆轰冲击下产生正常的压力波。另一个高频错误是起爆点的坐标设置错误。明明炸药装填在炮孔底部起爆点却被设成了炮孔口坐标爆轰波方向反了近区破碎形态完全不对。每次建模后要检查模型中部件坐标系和实际工程的对应关系不要想当然。4.4 流固耦合空气-炸药-岩石的相互作用流固耦合设置是整个爆破模拟最关键也最容易出错的环节。基本原理是炸药和空气作为流体域用ALE网格描述岩石作为固体域用拉格朗日网格描述两者通过耦合算法交换动量。常用的耦合方式包括CONSTRAINED_LAGRANGE_IN_SOLID中的罚函数法和ALE_MULTI-MATERIAL_GROUP定义多物质组。实际操作中需要在不同的PART之间建立耦合关系。一个典型设置是把炸药和空气放在同一个ALE多物质组里允许它们在同一个网格中混合流动岩石单独定义为一个拉格朗日部件然后在*CONSTRAINED_LAGRANGE_IN_SOLID中指定流体物质组编号和拉格朗日部件编号并设置罚函数刚度、耦合类型、泄漏控制等参数。有个经验值得分享流固耦合的罚函数刚度参数不能一味调大。刚度大了确实能减少穿透和泄漏但会让时间步长急剧缩小计算速度迅速恶化。实际项目中我会先采用默认参数跑一个小模型观察耦合界面的穿透量如果穿透量大于一个单元尺寸再逐步提高刚度如果出现震荡不回稳则减小刚度。4.5 求解控制时间步长和终止时间爆破问题的时间尺度非常小爆轰波通过炸药装药长度的时间通常在几十到几百微秒应力波在岩体中传播几百厘米的时间也在数百微秒量级。因此计算终止时间一般设置为1000到5000微秒视模型尺寸和关注的问题而定。LS-DYNA采用显式时间积分时间步长由最小单元尺寸和材料波速决定。在爆破模拟中空气的声速较大加上最小单元尺寸很小时间步长往往会被限制在纳秒量级这就是为什么爆破模拟计算成本巨大的根本原因。为了提升效率可以使用质量缩放mass scaling技术人为增加密度以增大时间步长但质量的增加会带来惯性效应如果增加太多应力波传播特性就失真了。我的做法是质量缩放比例控制在5%以内也就是添加的质量不超过原模型总质量的5%在这个范围内对结果的影响可以接受。超过这个值比如加了20%到30%的质量得到的振动峰值和损伤范围就会明显偏离试验数据。4.6 求解运行与监控启动求解器后不能真的放手不管。LS-DYNA求解过程中会定期输出message和status文件里面记录了时间步长、当前计算时间、能量平衡、单元状态等关键信息。我的习惯是每隔几分钟就瞄一眼这些输出看看有没有异常警告比如负体积、单元畸形、能量非物理增长等等一旦发现苗头立刻停止计算回去检查模型而不是傻等几天后发现结果彻底无法使用。另外通过LS-PrePost可以实时查看d3plot输出文件观察应力和损伤场的演变过程。这种可视化诊断非常有价值比如撒点看压力波是否规则扩张如果发现压力波出现奇怪的局部集中或空洞十有八九是网格或者材料参数出了问题。5. 跑完求解器之后后处理与结果验证求解计算只是工程分析的一半后处理和结果解读才是决定你工作质量的关键。LS-DYNA的后处理工具LS-PrePost功能强大可以直接读取d3plot结果文件绘制应力云图、损伤云图、速度矢量图还能在任意位置布置测点输出位移、速度、加速度时程曲线。5.1 损伤范围怎么定量分析岩石爆破模拟中最关心的结果之一是爆破损伤范围。RHT或HJC模型都会输出损伤变量数值从0到10表示无损伤1表示完全破坏。在LS-PrePost里面可以画出损伤变量的等值面再统计不同损伤阈值对应的岩石体积从而定量评估爆破影响范围。一个实用做法是设定损伤阈值D0.1到0.2作为损伤边界然后在后处理中提取炸药边界到该损伤边界的最远距离作为“爆破损伤深度”。这个指标可以和现场声波测试或钻孔电视的实测结果做对比用于标定模型参数。值得注意的是不同损伤阈值对应的结果差异很大D0.1和D0.5画出来的损伤区域可能相差一倍的体积。所以在论文或工程报告里一定要明确说明损伤阈值的选取标准否则结果对比毫无意义。5.2 振动速度的监测与分析爆破振动的评价指标通常是质点峰值振动速度PPVPeak Particle Velocity。在模型中可以在目标位置比如边坡坡脚、临近建筑物基础布置历史变量监测点提取速度时程曲线然后取最大峰值作为PPV对比规范允许阈值评估爆破方案的安全性。模型监测点提取的PPV和现场实测数据有天然差异原因在于数值模型通常没有考虑岩体中的节理裂隙对波能量的衰减作用所以数值预测值往往比实测值偏高这在工程上偏于安全。如果数值结果超标不多可以用一个衰减系数折减后做最终评价。5.3 模型验证怎么知道算得对不对爆破模拟最常见的一个病是结果看起来漂亮但细看毫无物理意义。比如应力波速度明显快于理论波速说明材料的弹性模量或者密度填错了比如损伤区形态完全对称但实际情况不对称说明模型少考虑了地质结构面再比如总能量曲线随时间剧烈增长说明数值耗散可能出了问题。我的经验是每次仿真完成后第一件事情不是翻云图而是做三个基础验证一看能量平衡保证模型的总能量曲线基本平稳二看波速提取监测点的首个波峰到达时间反推应力波速度是否在合理范围内三做参数敏感性分析小幅调整几个关键参数重新计算看结果趋势是否符合物理规律。只有这三关都过关模型才值得进一步分析。5.4 结果的可视化展示与工程表达岩石爆破模拟的成果最终要呈现给导师、评审专家或者工程决策者可视化质量直接影响说服力。我建议至少输出三类图件一是不同时刻的损伤云图序列展示损伤演化过程二是关键测点的速度、加速度时程曲线标注峰值三是不同方案之间的对比图比如不同装药量下的损伤范围对比。这些图在LS-PrePost中都可以直接截图或者用d3plot数据导出到Tecplot和Paraview中精细化处理。动画输出也很重要可以展示应力波在岩体中的传播与反射、损伤从炮孔壁向外扩展的全过程。这段动画无论是写论文、做汇报还是给甲方讲方案都是极有力的展示材料。6. 避坑指南爆破模拟中常见的十个问题这部分内容我不敢说百分之百涵盖所有问题但下面这十条每一条都是我在实际项目中遇到过并且处理过的按典型程度从高到低排列供你排查时按图索骥。6.1 负体积问题这是显式动力学模拟中最常见的致命错误之一爆破模型尤其多。负体积通常出现在ALE空气域和岩石拉格朗日网格的高压区域原因是单元在大变形下翻转体积计算变成了负值。解决办法有四个方向细化网格降低单元畸变程度改用多物质ALE算法提高流动适应性调整时间步长控制参数把高度变形区域改用SPH粒子建模。如果负体积集中出现在某一小区域也可以在建模阶段就将该区域网格做特殊加密处理。6.2 沙漏模式失控沙漏是单点积分单元特有的零能变形模式表现为单元交替膨胀压缩但不产生应变能。爆破模拟中如果总沙漏能超过内能的10%结果就不可信。控制沙漏的方法包括增加沙漏控制刚度系数HQ stiffness、改用全积分单元、细化网格、避免局部大变形区域使用过于细长的单元。我通常先在*CONTROL_HOURGLASS中设置IHQ4或6再观察沙漏能占比必要时再提高系数但系数过高会引入人为刚度得不偿失。6.3 质量缩放过度前面提过质量缩放是一把双刃剑不加算得慢加多了算得假。实际项目中我建议先不启用质量缩放跑一版记录最小时间步长和总计算时间然后评估是否值得引入质量缩放。如果计算时间在可接受范围内就尽量不加如果实在需要加速必须控制质量增加比例并做结果对比验证。6.4 材料参数不匹配导致压力波速度异常有一次项目计算完后发现应力波从炮孔到监测点的时间只有理论值的一半排查半天才发现岩石材料的弹性模量是混凝土的标准值并不适用于现场砂岩。这种问题只有做波速验证才能发现所以前文反复强调的“结果验证”步骤不是走过场是保命用的。6.5 忽略边界反射污染无反射边界条件设置不当会导致应力波在边界反射并叠加到目标区域使结果出现多余的损伤区。检查的方法是在后处理中观察压力云图如果看到标准的球形波阵面在靠近边界时出现异常“回弹”说明边界条件失效。修正的办法是检查*BOUNDARY_NON_REFLECTING是否覆盖了所有外表面以及膨胀波和剪切波的吸收参数是否设置正确。6.6 网格尺寸敏感性问题爆破模拟结果对网格尺寸的敏感程度远超你的想象。同一炮孔、同一参数用5厘米网格和10厘米网格算出来的损伤范围可能相差30%以上。为避免这个问题至少在同一研究中保持网格策略一致最好做一次网格收敛性分析对比两到三套不同尺寸网格的结果确定计算结果已趋于稳定再进入批量参数研究。6.7 忽略重力与初始应力场很多爆破模拟直接忽略重力和地应力这在浅表爆破问题中问题不大但在深部岩体爆破中初始应力场对应力波的传播和裂纹扩展路径影响极大忽略它会得到完全错误的结果。如果需要考虑建议在LS-DYNA中先做动力松弛dynamic relaxation或静力分析获得初始应力场后再进行爆破加载。6.8 炸药填充密度与装药结构错误乳化炸药、铵油炸药的密度差异会导致爆速和爆压的显著变化进而影响爆破效果。建模时填写的炸药参数必须与现场实际使用的炸药一致不要用TNT的参数替代乳化炸药参数。另外径向不耦合装药药卷直径小于炮孔直径时炸药和岩石之间有一段空气间隙这个间隙在模型中一定要体现因为它会显著削峰降低炮孔壁上的初始压力。6.9 收敛性判断只看位移不看能量爆破模拟的目的是评估破坏效应但很多新手只看位移云图不看全局能量演化。其实总能量曲线的平稳性比位移云图更重要如果总能量随时间明显上升说明系统正在不断获得虚假能量模型可能在非物理地放大动力响应。标准的做法是监控总能量、动能、内能、沙漏能、滑移能的时程曲线保证总能量基本守恒。6.10 忽视单位制混乱造成的系数错误这个问题看起来低级但实际发生率极高尤其是合作项目中不同伙伴提供的参数单位不一致时。一条经验每次获得新参数后先做一次单位换算并在文件里批注标明单位再填入模型如果发现结果误差一个数量级优先检查单位制换算。7. 实际项目经验一个单孔爆破模型的完整案例讲了这么多理论和方法我用一个实际做过的案例把整个流程串一遍。这是某个采石场边坡开挖项目的前期数值试验用LS-DYNA做单孔爆破对岩体的损伤评估甲方要求给出不同装药高度下的爆破裂隙圈半径建议值。7.1 工程背景与模型参数选取模型采用对称结构建立1/2对称模型岩石区域为5米×5米×5米正方体。岩石为中风化花岗岩根据室内试验密度2650千克/立方米弹性模量35吉帕泊松比0.22单轴抗压强度85兆帕抗拉强度5.5兆帕。炸药采用现场使用的二号岩石乳化炸药密度1100千克/立方米爆速4200米每秒爆压按公式P_CJ≈ρD²/4计算得到约4.85吉帕。在前处理过程中我将炸药、空气和岩石三种材料分别建立PART单位制选用cm-g-μs。换算之后岩石密度2.65克/立方厘米弹性模量0.35兆牛/平方厘米即35吉帕对应0.35×10⁶兆帕注意换算成相应单位制数值。炸药密度1.1克/立方厘米爆速0.42厘米/微秒爆压4.85×10⁻²兆牛/平方厘米。空气密度1.29×10⁻³克/立方厘米初压0.1兆帕。7.2 建模步骤和计算过程建模分步如下几何建模阶段用LS-PrePost建立1/2圆柱形炮孔并切割出炸药区、堵塞区和空气区网格划分阶段近区网格尺寸0.02米2厘米远区逐步扩展到0.2米20厘米最终模型单元数约120万关键字设置阶段依次填写材料、状态方程、流固耦合、边界条件和求解控制卡片。计算过程中我启用了质量缩放最终添加质量占总质量的3.8%计算时间大约18个小时使用的是一台16核的工作站。中间遇到过两次负体积警告主要集中在炸药近区的空气网格通过把近区空气网格重新加密并调整单元形状来解决。跑完以后用LS-PrePost输出损伤变量云图可以看到炮孔周围形成一个环状的破碎区和一个外围的裂隙区形态与现场爆破试验的高转速相机拍摄结果基本一致。7.3 结果分析与方案优化建议提取损伤云图后统计药径7厘米、装药长度1米的条件下岩石完全损伤区半径约0.25米裂隙区半径约0.9米。进一步设计了三组不同装药长度的对比方案分别计算损伤范围后发现装药长度从1米增加到1.5米裂隙区半径扩大了约15%并不呈现线性关系。这个非线性增长规律对于优化装药结构设计很有价值按照线性外推来估计损伤范围的传统做法存在较大偏差。将数值获得的裂隙区半径与现场爆破后的地震波CT探测结果做了初步对比误差大约在20%以内对于爆炸冲击这种高离散性问题的数值预测来说这个精度已经满足工程参考需求。后续如果要做更精细的标定需要结合爆破漏斗试验的数据来反演修正RHT模型中的关键参数。8. 一些实用经验和建议写完主体内容我再补充几点在长期使用LS-DYNA做爆破模拟过程中积累的个人体会。这些内容不是教程里能学到的更多是实战中反复摔打出来的直觉和习惯。第一建模一开始就要规划好后处理需要什么数据。比如需要在哪些位置提取振动时程曲线就应该在建模阶段布置好历史变量监测点否则计算完了再想补数据只能重跑一遍白白浪费几十个小时的机时。第二做批量方案对比研究时尽量保持材料参数和网格策略完全一致只改变单一变量比如装药量、孔距、起爆方式这样才能得到具有可比性的结论。很多新手做参数研究时每个模型都顺手调整了网格导致结果差异完全无法归因。第三不要迷信通用参数。网上有很多别人整理好的材料参数库下载下来直接用虽然省事但材料的力学响应高度依赖于初始条件和环境通用参数往往只能得到“看起来合理”的结果。如果做工程决策必须要在现场取样做基础力学试验即使不能做全套SHPB动态试验至少要做静态力学测试用静态参数结合经验公式推导动态参数。第四学会“先小后大”的策略。正式计算之前先用一个粗网格版本快速跑通整个流程确认边界条件、流固耦合、输出设置都没问题再导入密网格做正式计算。否则直接在密网格上反复试错光是找建模错误就要浪费大量时间。第五重视同行交流。LS-DYNA爆破模拟的参数调优和问题排查很多时候靠个人摸索非常费劲但找有经验的人聊半小时可能就解决了好几天都没头绪的问题。9. 这个项目往后还能怎么扩展如果计算机模拟爆破过程你已经能顺畅地建模和计算下一步可以往更深的方向走。一个是结合多孔爆破的延时起爆模拟研究不同毫秒延时间隔对破碎效果和振动叠加的影响这类问题在工程实践中很常见比如数码电子雷管的逐孔起爆设计另一个是考虑岩体中的节理裂隙对爆破效果的影响这时需要引入离散裂隙网络模型或者用离散元方法如3DEC、UDEC与有限元做耦合分析还有一种是做爆破与结构响应的联合分析把LS-DYNA算出来的振动时程作为另一个结构模型的输入评估爆破振动对建筑物的影响这类联合分析在工程安全评价中需求量很大。坦白说岩石爆破模拟虽然看起来只是一个有限元软件的应用场景但它牵扯到的东西相当庞杂爆轰物理、冲击波理论、岩石动力学、计算力学、数值方法、高性能计算哪一个环节不懂都可能在某个步骤上绕不过去。而正是这种复杂性让这个方向保持了很高的技术门槛和长久的研究热度。如果你打算深入做下去我建议在掌握软件操作的基础上把更多精力放在理解物理过程和数值原理上这样无论软件版本怎么升级、方法怎么进步你都能站得住脚跟。
返回列表