以下部分概述了完成简化运输模型所需的步骤。
与地下水流动模型类似,污染物迁移模型需要特性(包括初始浓度)、边界条件(汇/源)和观测结果(以便根据观测到的现场条件校准迁移模型)。与这些模型构件相关联的步骤将在本教程的本节和后续部分中进行描述。
在这个例子中,将要模拟的主要传输过程是平流(使用流动模型的结果定义)、分散和单个溶解物种的吸附(JP-4,一种用作喷气燃料的化合物)。
Sorption吸附
为了本例的目的,将使用(可逆)线性平衡吸附模型模拟吸附过程,该模型具有整个模型域的单一参数区。
如果在定义建模目标步骤中启用了运输,则可以为运输模拟选择建模目标,其中包括延迟和反应模型的选择。如果选择了传输引擎,则必须定义以下一个或多个属性。
初始浓度
在许多情况下,现场的历史条件是未知的,污染源已被清除或修复。在这种情况下,地下水污染仍然存在,必须从现有条件出发,及时向前进行大规模运输模拟,以预测潜在的下游影响。“初始浓度”特性定义了模拟期开始时每个化学物质的现有条件。
必须为您在定义建模目标中定义的每个化学物种定义初始浓度;默认值为0。此外,如果您选择了双域或多域模型,则必须为每个不动域中的每个物种定义初始浓度。
Retardation Models
Visual MODFLOW Flex支持用于溶质传输的各种延迟和吸附模型。
Retardation延迟
阻滞是一种减缓溶质迁移的传输过程。
where:
V_{R(i)} is the retarded flow velocity of species i [L/T]
V is the average linear groundwater flow velocity [L/T]
R(i) is the retardation coefficient of species i [-]
There are four sorption models for calculating the retardation, as described below:
其中:
V_{R(i)}是物质i的延迟流速[L/T]
V为平均线性地下水流速[L/T]
R(i)是物种i的阻滞系数[-]
有四个吸附模型用于计算延迟,如下所述:
Linear Sorption:线性吸附:
在线性吸附中,假设吸附的浓度与相邻孔隙空间中的溶解浓度成正比:
式中:bar{C_i}是物种i的吸附浓度[M/M]→[-]
C_i是物种i的溶解浓度[M/L3]
K_{d(i)}是物种i的分布系数[L3/M]
线性吸附的阻滞系数计算如下:
式中:R_i为物种i的阻滞系数[-]
ρ_b是土壤的干容重[M/L3]
φ_e为土壤的有效孔隙度[L3/L3][-]
K_{d(i)}是物种i的分布系数[L3/M]
当线性吸附模型包含在运输模拟中时,Visual MODFLOW Flex需要以下参数:
Species Parameters
·Kd是分配系数的物种参数[1/(M/L3)]
Model Parameters
·RHOB是多孔介质的体积密度[M/L3]。
模型参数包括与地质单元相关的命运和运输建模相关的材料特性,这些地质单元独立于要建模的组成物种。作为每次模拟的一部分所需的具体模型参数由延迟模型和反应模型定义。
General Model Parameters:
IRCTOP
IRCTOP 是一个整数标志,用于指示反应变量的输入方式:
- **按单元(IRCTOP=2)[默认]** - 所有反应变量作为 3D 数组按单元格逐个指定。
- **按层(IRCTOP=0)** - 所有反应变量作为 1D 数组指定,数组中的每个值对应一个单独的层。此选项主要用于保持与 MT3D 以前版本的兼容性。
在 MODFLOW-6 模拟中,IRCTOP 不适用。
IGETSC
IGETSC 是一个整数标志,用于指示在模拟非平衡吸附(ISOTHM = 4)或双域质量传输(ISOTHM = 5 或 6)时,是否应读取所有物质在非平衡吸附或非移动相中的初始浓度。该标志通过回答以下问题来设置:是否应该读取吸附或非移动相中的浓度?
- 否 - 那么 IGETSC = 0,不读取吸附或非移动相的初始浓度。默认情况下,吸附相被假定与溶解相处于平衡状态(ISOTHM = 4),且非移动域被假定为零浓度(ISOTHM = 5 或 6)。
- 是 - 那么 IGETSC = 1,将读取所有物质的吸附相或非移动液相的初始浓度(如适用)。
IGETSC 不适用于 MODFLOW-6 模拟;在移动域(以及适用的非移动域)中,总是读取溶解溶质的初始浓度,并且仅支持非动力学/平衡吸附模型。
Retardation Model - Model Parameters
Bulk Density (RHOB)
土壤容重是指土壤的干质量除以土壤的体积,用于计算迟滞因子。对于任何新建模型,默认的土壤容重值为1700 kg/m³。如果在当前的传输变体中未选择吸附方法,则仿真不需要容重值,左侧工具栏中的所有选项将被禁用。对于大多数传输引擎(MT3D-MS、RT3D、SEAWAT 和 SURFACT),每个模型单元的移动域和非移动域指定一个单一的容重值。然而,对于 MODFLOW-6,干容重可以分别为模型单元中的移动域(RHOB)和每个非移动域(RhoIm1、RhoIm2、RhoIm3)定义(如适用)。非移动域的干容重用于计算各相应非移动域中吸附成分的衰减质量平衡项。有关更多信息,请参阅 Langevin 等人(2022)编写的 MODFLOW-6 地下水传输模型技术文档。
**SpatiallyVariable** 的意思可以理解为在空间中存在着变化或可变性的特征、属性或情况。
请注意,根据您可能处理的地点/项目的复杂性,您的模型可能需要多个区域,这些区域对于模型中的每个溶解物种具有不同的吸附和反应特性(如分布系数、衰变系数和产率系数)。
在Visual MODFLOW Flex中,传输模型的属性和过程是使用与分配流模型属性相同类型的图形工具分配的。
对于本教程,您不需要修改在传输模型设置过程中定义的分配系数值,但您可以按如下方式检查吸附参数值。
•从工作流树中,单击[定义属性]返回此步骤。
•在工具箱下,从第一个菜单中选择[Species Parameter Conc001]。
•点击[区域]按钮并将其更改为[Kd]。
默认分配系数(Kd=1.0E-7 L/mg)是在运输数字引擎的设置过程中指定的。如果不是这样(例如,如果您在创建项目时没有输入此值),请立即使用[Edit]按钮输入此值。
•在工具箱中选择“物种参数Conc001”和“Kd”后,单击[编辑]按钮。
•这将打开“编辑属性”窗口。
•在“Kd”列下,在第一行输入1E-07,然后单击F2将该值传播到该列的其余部分。
可以修改每个区域的Kd值,以适应整个模型域中的不均匀土壤特性和反应。但是,对于本例,您将保持简单,并对模型的每一层使用统一的分布系数。
Dispersion Coefficients弥散系数
下一步是定义模型的色散特性。Visual MODFLOW Flex会自动为每个弥散度变量指定一组默认值。下表总结了默认值。
Longitudinal Dispersivity | 10 |
Horizontal to Longitudinal Ratio | 0.1 |
Vertical to Longitudinal Ratio | 0.01 |
Molecular Diffusion Coefficient | 0.0 |
可以使用工具箱中的[assign]选项按钮为纵向分散度指定替代值。但是,在本例中,您将对整个模型域使用均匀的色散值。为了修改水平或垂直分散率和/或分子扩散值,需要加载“层选项”:
•右键单击模型浏览器中输入/属性/传输下的“分散”
•选择“色散参数”。将出现以下窗口:
这些参数可以在“每层”的基础上进行修改。对于本例,您将不需要修改默认值。
•单击[取消]关闭此窗口
•现在是保存项目的好时机。从主菜单中单击[文件]>[保存项目]。
•单击 [] (下一步)继续
· ALH is the longitudinal dispersivity in the horizontal direction. If flow is strictly horizontal, then this is the longitudinal dispersivity that will be used. If flow is not strictly horizontal or strictly vertical, then the longitudinal dispersivity (α_L ) is a function of both ALH and ALV.
·ALH是在水平方向上的纵向分散性。如果流动是严格水平的,那么这就是将要使用的纵向分散性。如果流动不是严格水平或严格垂直的,那么纵向分散性(α_L)是ALH和ALV的函数。
· ALV is the longitudinal dispersivity in vertical direction. If flow is strictly vertical, then this is the longitudinal dispsersivity value that will be used. If flow is not strictly horizontal or strictly vertical, then the longitudinal dispersivity ( α_L) is a function of both ALH and ALV.
·ALV是在垂直方向上的纵向分散性。如果流动是严格垂直的,那么这就是将要使用的纵向分散性值。如果流动不是严格水平或严格垂直的,那么纵向分散性(α_L)是ALH和ALV的函数。
·ATH1是在水平方向上的横向分散性。这是第二椭球轴的横向色散值。如果流量严格水平并指向X方向,则该值控制Y方向的扩散。如果表示机械色散(通过指定任何色散值),则需要该阵列。
·ATH1是在水平方向上的横向分散性。这是第二椭球轴的横向色散值。如果流量严格水平并指向X方向,则该值控制Y方向的扩散。如果表示机械色散(通过指定任何色散值),则需要该阵列。
· ATH2 is the transverse dispersivity in the horizontal direction. This is the transverse dispersivity value for the third ellipsoid axis. If flow is strictly horizontal and directed in the X direction, then this value controls spreading in the Z direction. If this value is not specified and mechanical dispersion is represented, then this array is set equal to ATH1.
·ATH2是在水平方向上的横向分散性。这是第三个椭球轴的横向色散值。如果流严格水平并指向X方向,则该值控制Z方向的扩散。如果未指定该值并且表示机械色散,则将该数组设置为等于ATH1。
· ATV is the transverse dispersivity when flow is in vertical direction. If flow is strictly vertical and directed in the Z direction, then this value controls spreading in the X and Y directions. If this value is not specified and mechanical dispersion is represented, then this array is set equal to ATH2.
·ATV是在垂直方向上流动时的横向分散性。如果流严格垂直并指向Z方向,则该值控制X和Y方向的扩散。如果未指定该值并且表示机械色散,则将该数组设置为等于ATH2。
Define Transport Boundaries (Sinks/Sources)定义运输边界(汇点/来源)
在本节中,您将定义污染源的位置和浓度。污染源将在换料区域指定为补给浓度,作为渗透沉淀的污染源。
Assign Species Concentrations for the Recharge Boundary为补给边界指定物种浓度
当您定义流量模型时,您创建了一个单独的补给区,覆盖了换料区域。现在,您将在这个补给通量中添加一个定义的物种浓度:
•确保您正在查看“定义边界条件”工作流步骤。
•检查以确保您正在查看图层1。
•从工具箱下的可用边界条件列表中选择“重新充电”。
您会记得,为流量模型创建了两个补给区:覆盖整个模型顶部的100 mm/yr的背景补给区和换料区上方的一个小区域,其补给率较高,为250 mm/yr。JP-4源区将仅分配给这个较小的补给区。
•如果还不可见,则必须使充电区域可见。在模型资源管理器中,找到“Recharge”节点,位于“Inputs”>“Boundary Conditions”下,如下所示。
•点击树中“充电”旁边的框
•充电电池现在应该出现在电网的图层视图中
•在“工具箱”部分下,单击[数据库]按钮,将出现以下窗口。
当先前创建补给区时,化学物质(Conc001)的值未定义,用-1表示。您将针对较小的充值区域对此进行修改。
•定位分区2(表中的第二行)
•输入5000作为Conc001(替换-1值)。
•单击[确定]关闭数据库窗口
•现在是保存项目的好时机。从主菜单中单击[文件]>[保存项目]。•[]
•单击[] (下一步)继续
•选择[定义观察结果]
Define Concentration Observations定义浓度观测
运行运输模拟之前的最后一步是将三个观测井添加到模型中,以监测换料区域梯度下选定位置的喷气燃料浓度。在换料操作开始后不久,第一个观察井(OW1)立即安装在换料区域的斜坡下方。两年后,当在第一个井(OW1)处观察到JP-4浓度升高时,安装了另外两个观察井(OW2和OW3)。
您将从Excel文件中导入浓度观测值。
•从主菜单栏中单击[文件]>[导入数据]
•确保选择“井”作为数据类型
•[…]选择源文件。
•浏览到您的公用“我的文档”文件夹,然后浏览到“Visual MODFLOW Flex\Tutorials\Airport\suppfiles\Centration_Obstations.xlsx”文件。
•[打开]
•[下一步>>]
将出现一个预览窗口,显示源数据。
•[下一步>>]
•VMOD Flex为您提供了各种导入井数据的选项。
•选择单选按钮[井口具有以下数据]单选按钮
•然后选择[观测点]
•然后选择[观察浓度]
•单击[下一步>>]进入坐标系步骤
•单击[下一步>>]接受默认坐标系,然后继续执行数据映射步骤。
•在此屏幕中,您需要将电子表格中的字段映射到Dells Import实用程序中所需的字段。为了节省时间,您可以使用VMOD Flex所需的确切文件名来准备Excel文件,然后不需要映射。对于本练习,源Excel文件具有预定义的地图名称。花点时间查看油井进口所需的字段:
o井口:井ID、X/Y坐标、高程和井底
o观测点:记录仪Id、记录仪Z、浓度观测日期、观测浓度
•单击[下一步>>],将显示数据导入预览:
•[Finish]
“Concentration_Vobservations”现在将作为新的数据对象出现在数据树中,如下所示。
现在,您需要添加这些原始观测井作为数值模型的观测点。
•确保您处于数值建模工作流程中的“定义观测”步骤。
•确保在树中选择了“Concentration_Vobservations”数据对象
•接下来,确保从“工具箱”部分下的第一个下拉菜单中选择“油井观察”。
•从工具箱中单击[分配]>[使用数据对象]。单击[ [] ]按钮以添加井观测对象。
•将出现一个窗口,允许您从可用的井组中进行选择,或创建新的井组:
•选择“创建新井组”并保留默认名称。
•确保您选择了如下所示的选项。
•单击[确定]。
观测井(“浓度观测”)将添加到NumericGrid1_r1/Run/Inputs/Observations下的显示器和数值模型树中。
•找到“浓度观测”,然后在模型浏览器中单击该数据对象旁边的框
.
•您现在应该在模型域中看到几个橙色点,这些点表示进行头部测量的位置(如果没有,则可能需要将查看器更改为第1层)。
•Now is a good time to save the project. Click [File]>[Save Project] from the main menu.
•Click [] (Next Step) to proceed.
•Select [Single Run], and click [] (Next Step) to proceed
•At the 'Single Run' step, be sure to include MT3DMS in the engine run; place a check box beside this engine in the list.
•Click [] (Next Step) to proceed.
MT3DMS Translation Settings
This section will guide you through the selection of the advection method, solver settings, and output times that you will use to obtain the solution and results for the contaminant transport model.
Solution Method解决方法
•展开翻译设置下的“MT3DMS”项目,然后选择[解决方案方法]。将出现“解决方案方法”设置窗口。
对于此模型运行,您将使用隐式GCG解算器的上游有限差分求解方法。上游有限差分法在相对较短的时间内为污染物传输模型提供了稳定的解决方案。GCG求解器使用隐式方法求解有限差分方程,并且通常比显式求解方法快得多。
•点击“平差法”选项中的按钮,然后选择[上游有限差分(UFD)]
•单击“使用隐式GCG解算器”选项中的按钮,然后选择[是]。
•隐式GCG解算器设置窗口将显示在平移设置窗口的下半部分,如下图所示:
尽管上游有限差分法和隐式GCG解算器通常在计算上是高效的,但教程模拟跟踪了20年内的污染物传输。为了加快建模过程,您将使用非线性时间步长。在窗口底部的字段中键入以下信息。
•最大运输步长=200,如上图所示
•乘数=1.1
Output Control Settings输出控制设置
接下来,您将定义您希望看到污染物传输建模结果的输出时间。
•在翻译设置的“MT3DMS”部分下,选择[输出控制]。翻译设置将更新,如下所示。
•输入7305作为“模拟时间长度”
•输入5000表示“最大运输步数”
•剩余的默认值可以保持原样,如下图所示:
Output Times输出次数
•For this tutorial you will define specified times at which you would like to see the transport simulation results.
•The bottom half of the [Output Control] frame can be used to specify output times
•Click the [] [Add Row] button; repeat this 7 more times.
•Enter the following output times in the grid.
MT3D Output times
1 |
730 |
1460 |
2190 |
2920 |
3650 |
5475 |
7305 |
•Now is a good time to save the project. Click [File]>[Save Project] from the main menu.
•You are now ready to translate the inputs into the MT3DMS packages.
•Click [] to create the MODFLOW-2005 and MT3DMS packages. (this should take a few seconds)
•Click [] (Next Step) to proceed.
Run MODFLOW-2005 and MT3DMS
在本教程的这一步中,您将运行流和传输模型:
•单击[] 按钮运行MODFLOW-2005和MT3DMS。
•MODFLOW模型运行应在几秒钟内完成;MT3DMS运行也应该在一分钟内完成。
•完成后,您应该会在引擎进度窗口底部看到消息“*****运行成功。*****”。
•此外,您将看到“输出”下的几个项目将被添加到模型树中:“浓度”被添加到“输出/运输”下的模型输出树中。
•现在是保存项目的好时机。从主菜单中单击[文件]>[保存项目]。
•单击 [] (下一步)继续。
•单击[查看地图]。
View Maps (Concentrations)查看地图(浓度)
•默认情况下,“贴图”视图中将显示“头”。为了查看“浓度”,您需要从模型资源管理器中关闭“头”,然后打开“浓度”。
•在模型树上找到“输出”节点。
•删除“头部”旁边的复选框
•在“浓度”旁边添加复选框
•在查看器工具栏中,单击[]按钮激活“单元格”渲染选项,然后单击[
]按钮关闭网格:
•将绘制第一次运输输出时间的浓度结果(在这种情况下,第一次运输输入时间为1天)。请注意,因为浓度色标在任何时间步长中都会自动缩放到最大值,所以第一个时间步长的结果将显示为全蓝色。我们将很快看到,我们可以更改色阶以满足我们的需求。如果您在查看器周围移动鼠标,您应该会在右下角看到计算出的浓度变化:
•为了查看其他输出时间的浓度结果,您需要提前输出时间。单击“层视图”上方工具栏上的时间步长按钮,如下所示。或者,可以展开输出时间列表,并直接导航到所需的输出时间。
•然后,显示器将更新为所选输出时间的浓度等值线图
•打开最后一个输出时间,第7305天,模型第一层的浓度应类似下图:
让我们将浓度结果重新缩放到对数刻度,并应用不同的颜色图。
•右键单击模型资源管理器的浓度(Conc001)输出,然后选择设置。。。
•在“设置”菜单中,选择“样式”>“颜色”以打开颜色菜单:
••选择从渐变指定颜色()按钮,然后选择岩浆
•选择反转颜色按钮(()),使高颜色变为黑色,低颜色变为白色
•在表格中,第一行(最高)键入1000,最后一行(最低)键入0.001。选中“对数刻度”旁边的框:
•选择“确定”。层1中的最后一个时间步长输出现在应该如下所示(请注意,为了更好的可见性,网格已被禁用):
•此外,第1层1.000天的输出如下所示:
View Charts (Concentrations)查看图表(浓度)
在本教程的这一部分中,您将学习如何将观测到的浓度数据与模型计算的浓度值进行比较。
•从工作流程树中选择[查看图表]项目。
•单击[打开仪表板]继续。
•单击“图表选择器”[[]按钮。
•然后,在“图表选择器”下,选中“时间序列”并取消选中“CalcVsObs”
•单击[关闭]
•选择表格第一行中“物种”字段的下拉按钮,然后单击[[]从“属性表”中选择一个过滤器。请注意,您可能希望通过单击并向右拖动表和图表之间的分隔线来展开表。
•取消选中除“Conc001”以外的所有复选框,然后单击[确定]。
现在,您应该可以看到模型前面定义的三个浓度观测井中每一个的穿透曲线(见下图)。
该时间序列图显示了使用彩色线数据序列的计算结果,而观测数据仅显示为数据点符号。
•现在是保存项目的好时机。从主菜单中单击[文件]>[保存项目]。
*****机场数值模型与运输教程到此结束*****