复现瓦斯抽采钻孔间距优化的二维数值模拟研究模型
复现论文《瓦斯抽采钻孔间距优化三维数值模拟量化研究》模型 模型为二维 不是论文的三维图钻孔间距优化的数学建模手记最近在复现某篇瓦斯抽采钻孔优化的论文时发现原论文的三维模型对计算资源要求太高。为了快速验证核心结论我决定将模型简化到二维平面用Python实现了一个轻量化的数值模拟方案。这里记录几个关键实现细节。问题拆解二维模型怎么玩原论文的瓦斯流动遵循达西定律三维模型中需要考虑煤层各向异性渗透率。切换到二维平面后假设煤层在垂直方向均匀分布将三维钻孔简化为二维平面上的圆形区域相当于三维钻孔的横截面。控制方程简化为def darcy_equation(p, K, mu): return - (K / mu) * np.gradient(p)这里的K是渗透率张量二维对角矩阵mu是瓦斯动力粘度p是压力场。为了偷懒直接用NumPy的梯度函数计算压力梯度——虽然精度不如有限元但对定性分析够用了。几何建模画个圈圈搞事情钻孔在二维平面上表现为圆形边界条件。用极坐标系设定初始压力场钻孔位置设为零压力抽采负压外围边界为煤层原始压力。这里有个坑——极坐标虽然方便但实际计算时得转回笛卡尔网格否则各向异性渗透率没法处理。# 生成极坐标网格 r np.linspace(0, 10, 100) # 半径范围0-10米 theta np.linspace(0, 2*np.pi, 100) R, Theta np.meshgrid(r, theta) # 转笛卡尔坐标 X R * np.cos(Theta) Y R * np.sin(Theta)为了让代码能跑在普通笔记本上网格密度只设了100×100。实际项目中建议用FEniCS这类有限元库但这里用显式差分NumPy硬算更直观。渗流场的动态演变模拟的核心是压力场随时间的变化。采用显式欧拉法迭代虽然稳定性差但代码好写。关键循环部分for t in range(1000): # 计算当前压力梯度 grad_px, grad_py np.gradient(p_current) # 达西速度场 vx - (K_xx / mu) * grad_px vy - (K_yy / mu) * grad_py # 质量守恒方程的时间推进 div_v np.gradient(vx, axis1)[1] np.gradient(vy, axis0)[0] p_next p_current dt * (div_v) # 这里隐藏了一个密度项被简化掉了 # 边界条件重置 p_next[钻孔_mask] 0.0 # 钻孔位置保持负压 p_current p_next.copy()这段代码有个隐藏的假设忽略瓦斯压缩性。原论文中考虑了气体状态方程但二维简化版为了省事直接线性处理。如果需要更精确得把密度变化项补上。间距优化的暴力美学如何确定最佳钻孔间距论文里用重叠率指标这里改用更直接的“压力洼地覆盖法”计算每个位置被相邻钻孔压力场影响的概率。跑完模拟后用Voronoi图划分钻孔势力范围from scipy.spatial import Voronoi # 假设钻孔坐标保存在wells数组中 vor Voronoi(wells) # 计算每个Voronoi区域的面积 area_threshold np.pi * (有效抽采半径)**2 overlap_flag vor.cell_areas area_threshold如果某个Voronoi单元面积超过单孔理论抽采范围说明该区域存在抽采盲区——这时候就得缩小钻孔间距或者调整布局。效果验证与翻车现场第一次跑出来的压力场分布像抽象画图1左检查发现是各向异性渗透率的坐标轴没对齐。修正后图1右压力等值线终于呈现出预期的椭圆扩散形态——这说明各向异性参数确实在起作用。复现论文《瓦斯抽采钻孔间距优化三维数值模拟量化研究》模型 模型为二维 不是论文的三维图!压力场对比图翻车vs修正后避坑指南渗透率张量的方向角需要和网格的x-y轴对齐否则得做坐标变换。如果偷懒没做就会出现莫名其妙的压力畸变。结论与扯淡二维模型虽然损失了部分真实度但用来验证钻孔间距对抽采效率的影响规律已经足够。代码总行数不到200行但涉及到的数值计算技巧比想象中多。下次如果再搞可能试试用PyTorch的自动微分来替代手动算梯度——毕竟能偷懒的地方绝不硬肝。完整代码已丢在Github假装有链接欢迎拍砖。最后吐槽一句瓦斯抽采的模拟参数标定真是玄学现场数据和模拟结果能对上30%就算成功……全文完无参考文献问就是民科
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2449715.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!