Skip to main content

SEAWAT变密度流模拟

info

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

算例工程下载地址

1 算例简介 2 操作步骤 2.1 新建项目 2.2 创建MODFLOW模型 2.3 创建MT3DMS模型 2.4 SEAWAT模拟 3 小结

算例简介

本算例创建地下水MODFLOW水流模型,创建MT3DMS溶质运移模型并设置浓度和温度两个组分。基于两个模型的模拟结果,创建SEAWAT变密度流模型,耦合运行MODFLOW和MT3DMS程序,模拟了陆地含水层中的温淡水驱离冷海水并最终形成稳定咸淡水界面的过程。

操作步骤

新建项目

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

创建MODFLOW模型

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

  1. 点击创建数据体->MODFLOW->创建MODFLOW2005模型,创建流场模拟(MODFLOW2005)图层。将模型网格划分设置为(100,1,50),即XYZ方向的网格数分别为100、1和50。模型X边界分别设置为(0,1000)Y边界分别设置为(0,1)Z边界分别设置为(-500,0)。其他属性值如下图所示,点击应用完成设置。

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

    单击前视视角:Y轴向里

  2. 点击创建数据体->几何体->线,生成线1图层,将其重命名为井边界-淡水注入图层。在该图层属性面板数据子面板中,勾选拖拽手柄选项,按住键盘上的Ctrl+P,点击视图窗口中左上角网格,再点击左下角网格,线段两端会自动磁吸至网格最左列。

  3. 图层面板中选择井边界-淡水注入图层,点击通用工具箱->属性->计算器,生成计算器1图层,将其重命名为注水量-计算器1图层。在该图层属性面板数据子面板中,将结果数列名称设置为efwell,并将其数值设为0.35。井边界抽水率为正值,则该井为注水井。点击应用完成设置。

  4. 选择流场模拟(MODFLOW2005)图层,点击数值模拟-> MODFLOW2005->MF2005线赋值,选择注水量-计算器1图层为属性图层,点击确认生成MF2005线赋值1图层,将其改名为010井边界- MF2005线赋值图层。

    010井边界-线赋值图层属性面板中选择属性类别井边界层号1-50井抽水率选择为efwell数列,点击应用完成设置。

    将渲染子面板中的色彩设置为ef井边界,视图窗口如下图所示:最左侧一列网格设置为井边界。如结果与示图不符,在步骤2中修改线段顶点,直至井边界只在第一列为止。此时设置了注水井的注水率。

  5. 重复步骤2-4,创建线2图层,并将其重命名为定水头-海水边界图层。该线段位于网格最右列。使用通用工具箱->属性->计算器工具,生成计算器2图层,重命名为iBound-计算器2图层。并在该图层的属性面板数据子面板中,生成一列名为“定水头”的散点数据(结果数列名称),其数值为常量-1

    选择010井边界-线赋值图层,点击数值模拟-> MODFLOW2005->MF2005线赋值,选择iBound-计算器2图层为属性图层,点击确认生成线赋值2图层,将其改名为020定水头- MF2005线赋值图层。在该图层属性面板中选择属性类别有效网格层号1-50iBound选择为定水头数列,点击应用完成设置。

  6. 点击界面上方的按钮,打开并导入算例文件夹中的应力期.csv文件,点击应用生成应力期.csv图层。

  7. 选择020定水头-线赋值图层,点击数值模拟-> MODFLOW2005->MF2005应力期,选择应力期.csv图层为应力期图层,点击确认生成030 MF2005应力期1图层。在030 MF2005应力期1图层属性面板中分别为应力期长度当期步数稳定流选择相应数列,点击应用完成设置。

  8. 选中030应力期1图层,点击数值模拟-> MODFLOW2005->解释运行,生成解释运行1图层,将该图层重命名为解释运行MODFLOW图层。在属性面板中,点击按钮选择模型文件生成的位置,将模型名保存为model。选择解算器GMG时间单位长度单位英尺,保存应力期1,点击应用,系统将自动编译并运行MODFLOW模型,

  9. 点击界面上方的按钮,选择上一步中用户指定名称的MODFLOW文件夹中的efModFlow2005.nam文件。图层面板中生成efModFlow2005.nam图层,在该图层对应的属性对话框中点击应用,导入MODFLOW文件。其中hed文件为水头文件,lmt6文件为MODFLOW生成的链接文件,其中记载了边界信息、参数信息、以及逐网格的水力梯度信息。

    在渲染子面板选择渲染模式矢量流线,着色数列选择为ef水头,系统将自动使用ModFlow计算所得的逐网格径流量绘制动态流线。流线的长度、持续时间等参数可以在渲染子面板的矢量流线处进行设定。水流模型的流线如下图所示:

创建MT3DMS模型

基于MODFLOW模型的运行结果,创建MT3DMS模型,运行溶质运移模型。

  1. 选中efModFlow2005.nam图层,点击数值模拟->MT3DMS->创建MT3DMS模型,生成创建MT3DMS模型1图层,在属性面板按照下图中的参数进行设置,点击应用完成设置。创建的MT3DMS模型有2个组分,第1组分(盐度)的初始浓度为35。

  2. 点击创建数据体->几何体->线,生成线3图层,将其重命名为初始温度图层(SEAWAT模型中将温度作为浓度进行模拟)。在该图层属性面板数据子面板中,勾选拖拽手柄选项,按住键盘上的Ctrl+P,点击视图窗口中左上角网格,再点击右上角网格,线段两端会自动磁吸至网格最顶端。

  3. 重复2.2步骤3-4,使用通用工具箱->属性->计算器工具,生成计算器3图层,重命名为初始温度-计算器3图层。并在该图层的属性面板数据子面板中,生成一列名为初始温度的散点数据(结果数列名称),其数值为常量5

    选择创建MT3DMS模型1图层,点击数值模拟-> MT3DMS->MT3D线赋值,选择初始温度-计算器3图层为属性图层,点击确认生成MT3D线赋值3图层,将其改名为100初始温度-MT3D线赋值图层。在该图层属性面板中选择属性类别初始浓度层号1-50初始浓度选择为初始温度数列,溶质组分编号设为2,点击应用完成设置。此时将第2组分(温度)的初始值设为5℃。

    将渲染子面板中的色彩设置为ef初始浓度,视图窗口如下图所示:所有网格颜色一致,如某列网格与其他列有差异,在步骤2中修改线段顶点,直至网格颜色一致为止。

  4. 图层面板中选择注水量-计算器1图层,点击通用工具箱->属性->计算器,生成计算器4图层,将其重命名为淡水注入浓度-计算器4图层。在该图层属性面板数据子面板中,将结果数列名称设置为ef入流浓度,并将其数值设为0。注入淡水的盐度为0,点击应用完成设置。

    重复上述步骤,生成计算器5图层,将其重命名为淡水注入温度-计算器5图层。设置名称为入流温度的结果数列,将其数值设为25,即注入淡水的温度为25。点击应用完成设置。

  5. 选择100初始浓度-线赋值图层,点击数值模拟-> MT3DMS->MT3D线赋值,选择淡水注入浓度-计算器4图层为属性图层,点击确认生成MT3D线赋值4图层,将其改名为110淡水注入浓度-MT3D线赋值图层。在该图层属性面板中选择属性类别源汇浓度层号1-50源汇浓度选择为ef入流浓度数列,源汇类型选择井边界溶质组分编号设为1,点击应用完成设置。此时在MT3DMS中将注入淡水的盐度设为0。

    重复同样操作,将110淡水注入浓度-MT3D线赋值图层设为模型工程图层,淡水注入温度-计算器5图层设为属性图层,生成115淡水注入温度-MT3D线赋值图层。在该图层的属性面板中,按照上图设置属性,将MT3DMS中的注入淡水温度(组分2)设为25。

  6. 图层面板中选择iBound-计算器2图层,点击通用工具箱->属性->计算器,生成计算器6图层,将其重命名为海水定浓度-计算器6图层。在该图层属性面板数据子面板中,将结果数列名称设置为定浓度,并将其数值设为35。海水盐度为35,点击应用完成设置。

    重复上述步骤,生成计算器7图层,将其重命名为海水定温度-计算器7图层。设置名称为定温度的结果数列,将其数值设为5,即海水的温度为5。点击应用完成设置

  7. 选择115淡水注入温度-线赋值图层,点击数值模拟-> MT3DMS->MT3D线赋值,选择海水定浓度-计算器6图层为属性图层,点击确认生成MT3D线赋值5图层,将其改名为120海水定浓度-MT3D线赋值图层。在该图层属性面板中选择属性类别源汇浓度层号1-50源汇浓度选择为定浓度数列,源汇类型选择定水头边界溶质组分编号设为1,点击应用完成设置。

    重复同样操作,将120海水定浓度-线赋值图层设为模型工程图层,海水定温度-计算器7图层设为属性图层,生成130海水定温度-线赋值图层。在该图层的属性面板中,按照上图设置属性,点击应用完成设置。

    在该图层的信息面板中,可以看到已设置完成的2个组分的初始浓度、源汇浓度1(定水头)和源汇浓度2(井边界)信息。

  8. 选中130海水定温度-线赋值图层,点击数值模拟-> MT3DMS->解释运行,生成解释运行2图层,将其重命名为解释运行MT3DMS图层。在该图层的属性面板中,设置总模拟时间20000输出步数40GCG收敛标准设为0.1。点击应用,系统将自动编译并运行MT3DMS模型。在model.modflow文件夹所在位置生成同名的model.mt3dms文件夹。

  9. 点击界面上方的按钮,选择上一步中生成的model.mt3dms文件夹中的MT3D.CNF文件。图层面板中生成MT3D.CNF图层,在该图层对应的属性对话框中点击应用,导入MT3D文件。

    在渲染子面板中,将色彩设置为ef浓度_MT3D001,在动画工具条中,将时间设为5000,MT3DMS模型第5000天的盐度分布如下图所示。操作动画工具查看20000天内淡水/海水界面的变化。

    将色彩设置为ef浓度_MT3D002, MT3DMS模型第5000天的温度分布如下图所示。操作动画工具查看20000天内淡水/海水温度界面的变化。

SEAWAT模拟

基于MODFLOW和MT3DMS结果,进行SEAWAT模拟。

  1. 图层面板中选择130海水定温度-线赋值图层,点击数值模拟->SEAWAT->创建SEAWAT模型,点击应用生成创建SEAWAT1图层。

  2. 图层面板中选择创建SEAWAT1图层,点击数值模拟->SEAWAT-> SEAWAT解释运行,生成解释运行SEAWAT1图层。在该图层属性面板的数据子面板中,根据下图内容,分别为2个组分设置相应属性参数。点击应用,系统将自动编译并运行SEAWAT模型。在model.modflow文件夹所在位置生成同名的model.seawat文件夹。

  3. 击界面上方的按钮,选择上一步中生成的model.seawat文件夹中的MT3D.CNF文件。图层面板中生成MT3D.CNF图层,在该图层对应的属性对话框中点击应用,导入MT3D文件。

    在渲染子面板中,将渲染方式设为曲面,色彩设置为ef浓度_MT3D001,在动画工具条中,将时间设为5000,SEAWAT模型第5000天的盐度分布如下图所示。操作动画工具查看20000天内淡水/海水界面的变化,当时间为20000天时,得到相对稳定的淡水/海水界面。

    将色彩设置为ef浓度_MT3D002, MT3DMS模型第5000天的温度分布如下图所示。操作动画工具查看20000天内淡水/海水温度界面的变化。

小结

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

  • 如何创建并运行地下水MODFLOW水流模型;
  • 如何使用线段为MODFLOW模型赋值;
  • 如何设置应力期和模型单位;
  • 如何定义MT3DMS模型中的浓度边界;
  • 如何创建并运行MT3DMS水流模型;
  • 如何创建并运行SEAWAT水流模型.