Skip to main content

地下水源地开采瞬时流场模拟

info

本页面中的短视频为简短操作介绍,获取完整EnviFusion教学课程,请访问 腾讯课堂

1 算例简介 2 操作步骤 2.1 新建项目 2.2 创建MODFLOW模型 2.3 定义应力期 2.4 定义渗透系数 2.5 定义河流边界 2.6 定义补给边界 2.7 定义抽水井边界 2.8 解释运行MODFLOW 2.9 模拟结果可视化 3 小结

算例简介

地下水源地研究区包含两个含水层,分别为潜水层和承压水层。区域的补给来源于降水入渗,水流方向为自西向东,流入东部的河流。预期在地下水源地区域西部承压水层设置两口抽水井开采地下水。设置非稳定流模型,模拟地下水开采对该区域流场的影响。研究区所覆盖的模拟区域面积为 7500 ft×5000 ft。网格被划分为 10行和 15 列。设置两个1天时长的应力期,分别为稳定流和非稳定流模拟。降水补给和河流边界条件模拟期间不发生变化;抽水井仅在第2应力期进行抽水。

操作步骤

新建项目

  1. 打开Envifusion软件,若软件界面仍有其他项目,点击菜单栏按钮关闭当前项目文件。

创建MODFLOW模型

首先,创建用于运行MODFLOW2005模拟的网格。

  1. 点击计算->创建数据体->数据端口->ModFlow2005模型,创建创建ModFlow2005模型1图层。将模型网格划分设置为(15,10,2)。模型X边界分别设置为(0,7500)Y边界分别设置为(0,5000)Z边界分别设置为(-50,150)。勾选垂向渗透系数和非稳定流选项,默认水平垂向渗透系数分别为100.1默认给水度和贮水系数设为0.15和1e-5,点击应用完成设置。

    用户应自行确认模型单位的一致性,单位会在后续操作中进行设置。本算例长度单位为ft,时间单位为。此时系统将产生初始MODFLOW模拟图层。

    点击属性面板右上角的显示/隐藏高级属性,打开高级属性。在创建ModFlow2005模型1图层属性面板渲染子面板中,将渲染方式设为曲面网络,将坐标变换属性中的Z缩放设为10,视图窗口如下所示:

  2. 本模型第一层底部高程为50,因为上一步中Z方向设置两层,高程为-50至150,第一层底部高程自动取平均值为50,不需要再进行修改。如第一层底部高程为其他数值,则可导入包含第一层底部高程的散点csv文件,将该高程属性通过计算->数值模拟-> MODFLOW2005->网格高程操作,赋值网格高程。具体csv文件导入过程,可参看2.4定义渗透系数部分。

定义应力期

本模型设置两个应力期,各1天,分别为稳定流和非稳定流。导入包含应力期信息的csv文件,为模型设置应力期。

  1. 在外部准备包含应力期信息的csv文件。数据如下图所示,包含所有应力期的长度、步数和稳定流参数(1表示稳定流模拟,0表示非稳定流模拟)。根据模型情况,第1个应力期为稳定流;第2个应力期为非稳定流,模拟时长1天,时间步数为10。将该文件命名为应力期.csv

  2. 点击开始菜单栏中的导入数据选项,或点击界面上方的按钮,打开算例文件夹中的应力期.csv文件,在该图层属性面板中点击应用完成设置,生成应力期.csv图层。

  3. 选择创建ModFlow2005模型1图层,点击计算->数值模拟-> MODFLOW2005->应力期,将应力期.csv图层为应力期图层,点击确认生成应力期1图层,将其重命名为010 应力期1图层。

    010 应力期1图层属性面板数据子面板中,分别选取应力期长度、步数和稳定流相应数据列,点击应用完成设置。可在界面左下角信息面板的属性数据中,查看应力期的设置结果。

定义渗透系数

导入包含渗透系数属性的csv文件,为模型设置水平渗透系数。在模型创建时设置了第一层水平渗透和垂向渗透系数,因此只需要设置第二层(承压含水层)的水平渗透系数。

  1. 由于本模型中渗透系数、补给率等参数均为一层网格一个数值,可在外部准备csv数据作为参数库。数据如下图所示,包含位于模拟区域内某一点的XY坐标,第二层水平渗透系数、垂向补给率和第一层底部高程等。将该文件命名为参数.csv

  2. 点击开始菜单栏中的导入数据选项,或点击界面上方的按钮,打开算例文件夹中的参数.csv文件,在该图层属性面板中点击应用完成设置,生成参数.csv图层。

  3. 选择参数.csv图层,点击计算->通用工具箱->散点->表格->散点,生成表格->散点1图层,在该图层属性面板数据子面板中,为XY坐标选择相应的属性,开启2D散点保留坐标选项,点击应用完成设置。

  4. 选择010 应力期1图层,点击计算->数值模拟-> MODFLOW2005->ModFlow层赋值,将表格->散点1图层为属性图层,点击确认生成ModFLow层赋值1图层,将其重命名为020水平K2-ModFLow层赋值1图层。

    在该图层属性面板数据子面板中,将属性类别设为水平渗透系数层号设为2水平渗透系数选择下层渗透系数列;在渲染子面板中,将渲染方式设为曲面网络色彩设为ef水平渗透系数,点击应用完成设置。两层网格水平渗透系数设置完成。

定义河流边界

使用网格赋值的方法为模型第二层最右列定义河流边界。

  1. 对象浏览器管道面板中只保留020水平K2-ModFLow层赋值1图层的显示,点击右视视角工具,使视角变为右视。

  2. 点击视图上方矩形选择网格工具,在视图窗口点击鼠标拖动生成包含第二层所有网格的矩形,完成后可旋转视图查看是否选中第二层最右列网格。如选择区域有误,可点击选择网格工具条最右方的清除选择按钮,清除错误选择,重新选择网格。

  3. 选择020水平K2-ModFLow层赋值1图层,点击计算->数值模拟-> MODFLOW2005->ModFlow网格赋值,生成ModFlow网格赋值1图层,将其重命名为030河流- ModFlow网格赋值1图层。

    在该图层属性面板数据子面板中,将属性类别设为河流边界,将河流水头设为50传导系数设为10000河底高程设为-5层号设为2应力期号设为1-2;在渲染子面板中将渲染方式设为曲面网络,点击应用完成设置,即将第二层右列网格设为河流边界。

定义补给边界

使用层赋值方法为模型第一层网格定义补给边界。

  1. 选择030河流- ModFlow网格赋值1图层,点击计算->数值模拟-> MODFLOW2005->ModFlow层赋值,将表格->散点1图层为属性图层,点击确认生成ModFLow层赋值1图层,将其重命名为040补给-ModFLow层赋值1图层。

    在该图层属性面板数据子面板中,将属性类别设为垂向入渗边界层号设为1垂向入渗率选择垂向入渗数列;在渲染子面板中,将渲染方式设为曲面网络色彩设为ef垂向入渗边界,点击应用完成垂向入渗(降水补给)的设置。

定义抽水井边界

导入包含不同应力期抽水率的csv文件,使用两个应力期的抽水率作为分量构建新向量,使用点赋值方法和新向量设置变化的抽水井边界。

  1. 在Excel中编辑抽水井信息,数据如下图所示。包含抽水井的XY坐标,两个应力期的抽水率等数据,将该文件命名为well.csv

  2. 点击开始菜单栏中的导入数据选项,或点击界面上方的按钮,打开算例文件夹中的well.csv文件,在该图层属性面板中点击应用完成设置,生成well.csv图层。

  3. 选择well.csv图层,点击计算->通用工具箱->散点->表格->散点,生成表格->散点2图层,在该图层属性面板数据子面板中,为XY坐标选择相应的属性,开启2D散点保留坐标选项,点击应用完成设置。

  4. 使用两个应力期的抽水率构建新向量。选择表格->散点2图层,点击计算->通用工具箱->向量->构造散点向量,生成构造散点向量1图层。在该图层属性面板数据子面板中,将结果数列名称设为ef抽水率,在散点属性中勾选p1p2属性,点击应用完成向量构建。

  5. 选择040补给-ModFLow层赋值1图层,点击计算->数值模拟-> MODFLOW2005->ModFlow点赋值,将构造散点向量1图层为属性图层,点击确认生成ModFLow点赋值1图层,将其重命名为050抽水井-ModFLow点赋值1图层。

    在该图层属性面板数据子面板中,将属性类别设为井边界层号设为2井抽水率选择ef抽水率数列;在渲染子面板中,将渲染方式设为曲面网络色彩设为ef井边界,点击应用完成设置。承压水层的两口抽水井设置完成,两口井第1个应力期不抽水,第2个应力期抽水。

解释运行MODFLOW

解释运行创建好的水流模型。

  1. 选中050抽水井-ModFLow点赋值1图层,点击计算->数值模拟-> MODFLOW2005->ModFlow解释运行,生成ModFlow解释运行1图层。

    在属性面板中,点击按钮选择模型文件生成的位置,将模型名保存为run2。选择解算器PCG时间单位长度单位英尺,保存应力期1-2。勾选保存所有时间步、允许再湿润自定义收敛条件选项,并设置残差收敛标准1,点击应用,系统将自动编译并运行MODFLOW模型,运行完成后会弹出调试窗口,显示MODFLOW水流模型引擎正常结束

  2. 点击开始菜单栏中的导入数据选项,或点击界面上方的按钮,选择上一步中用户指定名称的MODFLOW文件夹中的efModFlow2005.nam文件。在对象浏览器管道面板中生成efModFlow2005.nam图层,其中hed文件为水头文件,lmt6文件为MODFLOW生成的链接文件,其中记载了边界信息、参数信息、以及逐网格的水力梯度信息。

    在该图层属性面板渲染子面板中,将渲染方式改为曲面网络,将色彩设为ef水头,点击下方的选择预设调色板按钮,选择适宜的调色板,本算例中选择RainbowRich调色板;坐标变换属性下的Z方向缩放设为10,点击应用导入MODFLOW模型水位结果。

    3. 为查看不同模型参数设置后的模型结果,可参考步骤1-2在重点参数设置完成后进行解释运行,并导入模型结果进行查看。如在040补给设置完成后可进行解释运行,查看未设置050抽水井前模型的流场。

模拟结果可视化

使用矢量流线、等水位面等方式查看地下水开采对地下水流场的预期影响结果。

  1. efModFlow2005.nam图层属性面板渲染子面板中,将渲染方式设为矢量流线,根据需要在矢量流线属性下,修改时间步长流线数量等参数;点击切换时间工具条中的时间,查看地下水水预期开采前后区域流场的变化。

  2. 可提取承压层网格,使用水位值对潜水面进行标量扭曲。在对象浏览器管道面板中选择efModFlow2005.nam图层,点击计算->通用工具箱 ->网格->结构网格->提取子网格,生成提取子网格1图层。在该图层属性面板数据子面板中,将子网格Z坐标设为1-2,即提取模型第二层网格,点击应用完成设置。

  3. 点击计算->通用工具箱 ->网格->网格中心->散点,生成网格中心->散点1图层。点击应用完成设置,在第一层网格中心位置生成散点。

  4. 点击计算->通用工具箱 ->散点->散点->曲面(三角化),生成散点->曲面1图层。点击应用完成设置,使用散点构成潜水面。

  5. 对象浏览器管道面板中选择散点->曲面1图层,点击计算->通用工具箱 ->空间拓扑->标量扭曲,生成标量扭曲1图层。在该图层属性面板数据子面板中,将标量数列设为ef水头缩放因子设为1;在渲染子面板中将渲染方式设为曲面色彩设为ef水头,点击应用完成设置。

    点击色彩下方的显示/隐藏颜色图例选项,为视图添加颜色图例,点击图例右侧编辑按钮编辑图例,如在编辑颜色图例属性对话框中,打开高级属性设置,取消标签属性下的添加阈值标签选项,点击应用完成设置。

  6. 对象浏览器管道面板中选择标量扭曲1图层,点击计算->通用工具箱 ->标注->时间->标注,生成时间->标注1图层。在该图层属性面板数据子面板中,将小数位设为0前缀和后缀分别设为第和天,点击应用为视图添加时间标注。

  7. 对象浏览器管道面板中将创建ModFlow2005模型1图层设为可见,将其渲染方式设为外框。与标量扭曲1图层和时间->标注1图层在视图窗口如下图所示:

  8. 动画面板中,将模式设为按帧数播放,将帧数设为200,点击动画工具栏播放动画,查看承压水位面的变化。

小结

完成本指南中的算例后,可以学到以下内容:

  • 如何创建并运行地下水MODFLOW非稳定流模型;
  • 如何设置模型应力期;
  • 如何设置多应力期的边界条件;
  • 如何设置MODFLOW解算器参数;
  • 如何对MODFLOW模拟结果进行可视化。