抽水试验做完了,手里一堆水位降深数据,却发现不知道怎么处理成可用的水文地质参数——这事在工程勘察、矿山防治水、地热资源评价里太常见了。很多人卡在痛点不是现场试验做不规范,而是内业数据处理阶段:要么不懂怎么布观测孔导致数据反演不出可靠结果,要么只会把数据丢进Excel里手动画半对数图,碰上非稳定流就傻眼。这篇文章我直接把Aquifer Test的完整操作流程拆开讲,顺便把主井和观测孔的布置逻辑说明白,从数据检查到参数反演,再到边界效应识别,一次讲透。
我是做水文地质勘查出身,这些年经手过不少抽水试验项目,从source井布置到数据解译都踩过坑。市面上讲Aquifer Test操作的文章不少,但大多止步于“点哪里导入数据”,真正讲清楚为什么这么布孔、怎么判断拟合曲线靠不靠谱、数据哪些能用哪些该扔的内容很少。这篇我不打算写说明书式的流水账,而是站在实际干活的角度,把底层逻辑、操作步骤、现场经验串起来讲。
1. 抽水试验数据处理的整体思路
1.1 先搞清楚试验目的是什么
抽水试验的本质,是通过人工抽水在含水层中制造一个水头扰动,然后记录这个扰动随时间、随距离的传播规律,再反推含水层的渗透系数K、导水系数T、贮水系数S、给水度Sy等参数。说白了,这就是一个“给含水层做体检”的过程——我们向它施加一个已知的应力(抽水),测量它的反应(水位降深),反解它的“体质指标”(水文地质参数)。
所以在处理数据之前,第一步不是打开软件,而是先想清楚这次试验要解决什么问题。不同目的对应着不同的试验设计和分析方法:
- 求渗透系数K和影响半径R:多用稳定流抽水试验,使用Dupuit-Thiem公式。
- 求贮水系数S和导水系数T:必须做非稳定流抽水试验,使用Theis公式或Cooper-Jacob直线法。
- 判断含水层边界类型(河流补给边界、隔水边界):需要多观测孔配合长时间非稳定流抽水,分析降深-时间曲线的后期形态。
- 评价井的出水能力:重点看单位涌水量q = Q/s的稳定性。
很多新手拿到数据就急着套公式,结果参数计算出来偏差一个数量级还不知道问题出在哪。根源就是没先确认试验类型,把非稳定流的数据硬套稳定流公式,或者把观测孔不足的承压含水层数据当成越流含水层来反演。
1.2 数据预处理比参数计算更影响结果
我在实际项目中最大的体会是:参数计算只是最后一步数学操作,前期数据清洗和校正才是决定结果可靠性的关键。Aquifer Test再智能,也架不住你喂给它垃圾数据。
数据预处理的核心就三件事:
第一,静止水位校正。抽水开始前的初始水位,必须取稳定段水位——也就是说,水位计放下去以后要等到水位不再有明显漂移再开始记录。有些地区受潮汐效应或邻近井开采影响,静止水位本身就在波动,这时候要先做基线校正,把天然波动滤掉以后才能当初始水位用。否则你计算的降深s = 初始水位 - 实测水位,本身就把天然波动当作抽水响应算进去了。
第二,降深时间序列对齐。自动水位计记录的时间戳和抽水流量记录的时间戳要对齐。我见过有人用水位计自带记录,但流量是人工每隔5分钟记一次,最后做时间-降深曲线发现前段数据错位,拟合出来的K值差了好几倍。正确的做法是以开始抽水时刻为t=0,把水位计记录转换为相对时间,并按流量启动时刻统一归零。
第三,剔除异常波动点。水位恢复阶段如果水位计被提拉、或者抽水泵间歇启动造成水位瞬时波动,这些点直接标记删除,不要带入拟合。判断异常点的原则很简单:降深随时间应当是单调变化的(至少趋势上),突然跳变、来回震荡的点,除非能确认是含水层响应,否则一律视为干扰。
1.3 建立“流量-水位”双序列台账
很多人只记了水位数据,但流量数据记得一塌糊涂——要知道Aquifer Test在非稳定流分析中,需要你把完整的抽水流量历史告诉它。尤其是对变流量抽水试验,流量从大到小分了三个落程,每个落程的流量值是多少、什么时候切换的,都要在台账里精确记录。
一个我常用的台账格式是这样的:
| 时间 | 累计抽水时长(min) | 水位埋深(m) | 降深(m) | 流量(m³/h) | 备注 |
|---|---|---|---|---|---|
| 10:00 | 0 | 12.35 | 0 | 36.2 | 开泵 |
| 10:01 | 1 | 12.48 | 0.13 | 36.5 | |
| 10:05 | 5 | 12.91 | 0.56 | 36.0 | |
| ... | ... | ... | ... | ... | ... |
注意流量变化的时间点一定要标注。Aquifer Test支持变流量计算,它会把流量历史分段积分处理,如果流量记录不准确,后续参数反演的基础就不成立。
2. 主井与观测孔的布置技巧
2.1 观测孔布设的核心逻辑
观测孔不是随便打的。它的作用有两个:一是配合主孔数据做非稳定流解析解拟合,获得更可靠的S值;二是帮助判断含水层的各向异性和边界条件。为什么单个主井数据不够?因为主井降深受井损、井周紊流、洗井效果等因素影响,它反映的是“近井地带”的状态,而观测孔远离主井,能代表含水层大部分区域的平均响应。这就是为什么许多规范都要求抽水试验设观测孔,尤其是求S值时必须有观测孔数据。
布孔讲究两个原则:
原则一:沿主流方向布孔。观测孔应尽量布置在与地下水流向平行的方向上——说得更准确点,是沿着抽水影响椭圆的短轴方向(即垂直于等降深线)。这样水位降深在观测孔间的差异最大,对参数的敏感性最高。如果布在水流上游和下游,因天然水力坡度的存在会引入误差;实际中更常见的做法是把观测孔布置在以主井为中心的两条垂直线上,一条平行天然流向,一条垂直天然流向,然后根据水位响应判断含水层的各向异性。
原则二:距离按对数比例布置。观测孔到主井的距离不应该是等间距的,而应该按等比数列增加。为什么?因为抽水产生的降深在空间上的传播大致遵循距离的对数关系(Theis公式中降深与距离的关系接近lg(1/r²)),越靠近主井降深变化越快,越远变化越慢。如果把观测孔等距布置,往往是三个孔挤在降深梯度变化快的近区,远区却没有任何控制点,拟合出来的S值代表不了含水层的整体储水特性。
2.2 观测孔距离与降深关系的定量判断
具体距离取多少?我给一个从实践中总结的参考方案:
- 第一观测孔:距离主井约5~10倍井半径。如果主井孔径0.2m,那第一观测孔在1~2m位置。考虑到施工误差,实际中常用3~5m。
- 第二观测孔:距离取第一观测孔的3~5倍,即10~25m。
- 第三观测孔:再扩大3~5倍,即30~100m。
- 极限距离:以影响半径的0.1~0.3倍为上限,太远超出边界了反而测不到有效降深。
这个经验关系背后是Theis公式中的距离-降深关系。在t时刻,降深分布近似满足:
s(r) = (Q/4πT) * W(u),其中u = r²S/(4Tt)
当r增大10倍时,u增大100倍,但W(u)的变化远没有100倍那么大,大致是数倍到十几倍的关系。所以观测孔距离按对数分布,能保证各孔的降深具有可比性和区分度。
另一个实用的验证方法是:做完试验后,把不同观测孔的稳定降深或者同一时刻的降深值点在半对数纸上,横轴是lg(r),纵轴是s。如果数据点呈线性分布,说明含水层是均质各向同性的,布孔方案没有大问题。如果曲线明显弯折,就要警惕存在各向异性、边界补给或者隔水断层的影响。
2.3 观测孔深度与结构设计
观测孔不是打得越深越好,关键要看它是否揭露了你想要测的含水层。这里有一个很容易犯的错误:把观测孔打穿了弱透水层,导致越流补给在观测孔内形成混合水头,测出来的降深比真实含水层降深偏小很多。
通常观测孔要满足两个条件:
- 滤水管长度应覆盖整个含水层的有效出水段。如果含水层厚度比较大,至少滤水管底端要伸进含水层中部以下,不能让含水层底部的水从孔底绕流进入孔内形成湍流混合。
- 对于多层含水层结构,每层都应单独设观测孔(分层观测),或者在孔内做止水段隔离,否则水位数据代表的是多个含水层水头的加权平均值,这种数据拿去做单层解析解拟合必然产生系统性偏差。
我做基坑降水勘察项目时,碰到过地层是二元结构的情况——上部粉砂层、下部砾石层,两个含水层的水位差能差个三五米。如果观测孔不做分层止水,实测水位就会落在两个水头之间,拟合出来的渗透系数会把两层混成一个等效值,在后续降水设计时就会出现涌水量预测严重偏大或偏小的风险。
3. Aquifer Test 软件操作流程详解
3.1 软件能做什么,为什么不用Excel
Aquifer Test(现在常用4.x版本)是Waterloo Hydrogeologic开发的水文地质参数自动解译工具,它集成了常用的解析解模型:Theis、Cooper-Jacob、Hantush-Jacob、Neuman(潜水延迟排水)、Moench等,还支持变流量、多观测孔联合反演。它最核心的能力不是“算”参数,而是把时间-降深数据点绘制成样板曲线,通过调整参数让实测曲线与理论曲线达到最佳匹配,这个过程叫曲线拟合(curve matching)。
这个思路跟Excel手动画图最大的区别在于:Excel只能画一个半对数直线段,然后自己量斜率手算T和S;Aquifer Test可以做完整的双对数图拟合,尤其适合非稳定流初期的数据弯曲段——这个弯曲段在Excel里基本没法用,但在You and Theis曲线上它携带了大量含水层储水信息。
3.2 从创建工程到录入数据的完整流程
以Aquifer Test 4.5版本界面为例,完整操作是这样走的:
第一步:新建工程。打开软件后选择File → New Project,填写工程名称、位置信息。这个步骤看似简单但别忽略:后续的所有参数反演都会引用工程默认的坐标系和单位制,如果单位制选错,后面所有数据都会跟着错。
第二步:定义井结构。在Project Navigator里选择“Wells”,右键新建井,输入井的编号。然后填写关键参数:井半径(注意是有效半径,不是钻头直径)、滤水管位置、含水层厚度、初始水位埋深。这些数据后面会参与到u = r²S/(4Tt)的计算中,尤其是井半径r,取值误差对S值影响很敏感。
第三步:定义抽水试验。选择Pumping Test,设定试验类型(定流量或变流量)、抽水开始时间、含水层类型(承压/无压/越流)。这里有个细节:承压含水层和潜水含水层的分析模型不同,软件初始默认承压,如果你选错了类型,后期拟合曲线怎么调都调不好。
第四步:录入降深数据。在数据表里按时间-降深格式录入数据,主井和每个观测孔各有独立的数据表。手动录入适合小批量数据,如果用的是自动水位计(如Solinst Levelogger、In-Situ等),软件支持直接导入水位计导出的csv文件,注意导入时把时间格式设置好,否则软件会把日期串当成数值计算导致数据错乱。录入后左边图表窗口会自动生成时间-降深散点图,检查一下点的趋势是否平滑、有没有明显跳点,有异常点直接在表格里暂时禁用(Disable)那几行数据。
3.3 曲线拟合与参数反演操作要点
数据录入之后,就进入最核心的一步——选模型、做拟合。
模型选择:
- 承压含水层、完整井、非稳定流:首选Theis曲线。
- 承压含水层、抽水后期数据、忽略井储效应:Cooper-Jacob直线法。
- 弱透水层越流补给明显:选用Hantush-Jacob越流模型。
- 潜水含水层、抽水早期和中期数据有延迟排水特征:用Neuman模型。
- 水位恢复段数据:用Theis恢复公式(Recovery)。
拟合操作:
以Theis模型为例,软件会在图形窗口同时显示实测降深散点图和理论样板曲线。你需要先在Match Options里选择自动拟合(Auto Match),软件会通过最小二乘算法自动寻找最佳匹配参数;但自动拟合的初值很影响结果,建议先根据实测数据估算一个初始渗透系数,比如用Cooper-Jacob直线法先粗算一个K值,填入初始参数,再让软件自动微调。
拟合是否合格,看两点:
- 实测点是否均匀分布在样板曲线两侧,而不是系统性的偏向某一侧。
- 残差图(Residual Plot)是否随机散布,如果残差呈现明显趋势,比如前期都偏高后期都偏低,说明模型类型选错了或者数据段包含边界影响。
反演得到的参数会显示在输出结果窗口,包括T、K、S等。记得把软件自动拟合得到的参数和用直线法手算的结果互相验证一下,偏差在10%以内说明拟合质量可靠;偏差超过30%,先回去检查数据,不要贸然用拟合值。
3.4 报告输出与成果整理
参数反演完不等于工作结束,还要把过程记录做成报告。Aquifer Test支持生成HTML和PDF报告,报告内容包括试验基础信息、水位降深数据表、分析曲线截图、拟合参数汇总。我建议报告里额外手动添加以下内容:
- 区域地质水文条件简述,说明地层岩性和含水层类型,这也是模型选型的依据。
- 抽水试验现场记录,包括泵型、流量计型号、水位计型号和精度。
- 参数反演合理性分析,把反演的K值、T值与附近以往勘察资料对比,如果相差一个数量级以上要重点说明原因。
报告是给别人看的,也是给未来做数值模型的人用的,信息越完整越便于后续设计复用。
4. 常见问题与数据排查技巧实录
4.1 经典问题速查表
多年实战下来,抽水试验数据处理和Aquifer Test操作中,新手最容易碰到的问题我整理成了一个表格,方便你对照排查:
| 现象 | 可能原因 | 排查方法 |
|---|---|---|
| 双对数曲线整体向右偏离样板曲线 | 含水层厚度取值偏大 | 检查含水层厚度是否包含了弱透水层,仅取有效含水层厚度 |
| 曲线在抽水初期上凸严重 | 井储效应(井筒储水)影响 | 选用包含井储效应的模型,或丢弃前几十秒数据 |
| 曲线后期急剧上扬 | 存在隔水边界 | 改用考虑直线边界的镜像井模型 |
| 曲线后期变平 | 存在定水头补给边界或越流补给 | 改用Hantush-Jacob模型或定水头边界模型 |
| 观测孔降深大于主井降深 | 主井井损严重,或观测孔数据录入错误 | 检查观测孔是否打成承压水与潜水混合观测,或池体距离设置错误 |
| 水位恢复段拟合失败 | 恢复数据包含大量波动 | 剔除水位恢复初期受井储影响的段,只取恢复稳定后的数据 |
| 参数反演为负值或异常大 | 模型选型错误 | 换用更简单的Cooper-Jacob直线法先手算,判断量级再选模型 |
4.2 气压效应与昼夜水位波动
处理长期抽水试验数据时,容易被忽略的干扰源是气压效应。大气压变化会引起承压含水层水位的微小波动,气压每变化1毫巴,水位可能变化几毫米到几厘米。这个量级在低降深试验中不能忽视,比如你抽水产生的最大降深只有1.5m,气压波动引起的误差可能达到5%,足以让S值产生可感知的偏差。
处理办法有两种:一种是在现场同时放置气压计,记录气压变化序列,用回归系数把气压引起的感应水位从实测数据中滤除;另一种是选在气压稳定时段做短时试验,或者用差分水位计自动补偿。Aquifer Test本身没有气压校正模块,所以必须在预处理阶段就把这些干扰去掉。
4.3 井损问题与“假稳定”识别
抽水试验中主井附近的井损(井壁摩阻、滤水管阻力、紊流)会造成附加降深。这个附加降深不属于含水层的真实响应,但它叠加在主井降深数据里面。如果只用主井数据反演参数,得到的K值会比真实值偏小——我见过最多偏小50%的情况。
识别井损有两个方法:
- 做三降深(三个流量阶梯)稳定流试验,把单位涌水量q列出来。如果q随流量增大而明显变小,说明井损大。
- 在双对数曲线上,如果主井数据在抽水初期明显高于观测孔数据,且偏差随流量增加而增大,这就是井损典型特征。
处理井损的办法:优先用观测孔数据做参数反演,主井数据仅提供参考。条件允许的话,用第二个降深的稳定数据计算K值,因为q与s的关系中三降深可以分离出井损常数C和含水层损失B。
4.4 水位恢复阶段的利用
很多项目只重视抽水阶段的数据,把恢复阶段当垃圾丢了。其实恢复阶段的数据比抽水阶段更干净——因为抽水阶段有水泵扰动、流量波动,而恢复阶段没有抽水干扰,数据更平稳。恢复阶段的Theis恢复公式是:
s' = (Q/4πT) * lg(t/t')
其中t是自抽水开始的时间,t'是自停泵开始的时间。在Aquifer Test里直接用Recovery分析模块,把恢复数据导进去就能求T值,这个T值和抽水阶段反演出来的T值可以互相验证。如果两者差太多,说明抽水阶段流量记录可能不准,或者井损确实显著。
5. 实操中我用过的Aquifer Test进阶技巧
最后分享几条不太会写在软件用户手册里的经验。
第一,先手算后拟合。Aquifer Test的自动拟合功能好用,但它本质是最小二乘优化,对初值敏感。我每到一个新项目,拿到数据后先用Cooper-Jacob直线法在Excel里手算一遍K和T,大概知道参数量级,再把这个量级填进Aquifer Test的初始参数。这样自动拟合通常几步就收敛,不至于卡在局部极小值给出一个看起来合理实际却完全偏离的参数组合。
第二,多观测孔联合反演时注意观测孔权重。Aquifer Test允许同时选中多个观测孔的数据进行联合反演。距离主井近的观测孔降深大、信噪比高,距离远的降深小、容易受干扰。软件默认对所有观测孔一视同仁,但实际操作中我会给远处观测孔更高的权重——因为近孔数据受井损和含水层扰动影响相对大,远孔数据更能反映含水层整体特性。Aquifer Test里可以在数据系列属性中调整每个观测孔的权重因子。
第三,数据和曲线截图都保存双份。每次拟合结束后,把软件的工程文件(.aqt格式)另存一份,再把报告导出为PDF存一份。aqt文件包含了原始数据和拟合设置,以后如果甲方提出疑问或者换算法复核,可以直接打开重新调参数,不用再费劲重新录入。
抽水试验数据处理这行做得久了,最大的感受是:一个可靠的水文地质参数,40%靠现场试验规范性,30%靠观测孔布设合理性,剩下的30%才轮到软件操作和公式计算。Aquifer Test把最后那30%的门槛降得很低,但前面两项功课偷了懒,再好的软件也救不回来。从布孔开始就要想清楚后面怎么解译数据,内业和外业从来就是一体的。