3.5.2网线的添加(行或列)
添加单个网线:
1) 选择Edit Columns或Edit Rows。
2) 选择Add。
3) 把鼠标移到想去的位置(在定位立方体上核对坐标)。
4) 在该位置单击鼠标左键添加一根网线或单击鼠标右键精确加入一根网线(见下图)。
5) 重复步骤1)到4)可添加更多的网线或选择Close结束。
要增加多条网线:
1) 选择Edit Columns或Edit Rows。
2) 把光标移到模拟区的大致位置。
3) 单击鼠标右键。
4) 输入最小和最大坐标以及网格细化的行、列间距。
5) 重复步骤1)到4)可添加更多的网线或选择Close结束。
要细化网格:
1) 选择Edit Columns或Edit Rows。
2) 输入细化因子。
3) 在细化范围的起始网线上单击鼠标左键。
4) 在细化范围的结束网线上单击鼠标左键。
5) 重复步骤1)到4)来细化更多的网格或选择Close结束。
在添加网线时,新生成的单元具有的原单元的属性。因此,增加新单元时参数分布保持不变。
3.5.3网线的删除
在某些情况下,你可能使用较小的均匀间距来建立初始有限差分网格。然后你可能要删除远离研究区的行和列,以提高模拟效率。留下的单元取两个原始单元中较大单元的属性,或如果它们的大小一致,留下的单元取行号小的单元的值。
要删除网线:
1) 选择Edit Columns或Edit Rows。
2) 选择Delete。
3) 把光标直接移到要删除线的上方,单击鼠标左键。
4) 选择Close停止删除。
要粗化网线:
1) 选择Edit Columns或Edit Rows。
2) 键入粗化因子。
3) 在粗化范围的起始网线上单击鼠标左键。
4) 在粗化范围的结束网线上单击鼠标左键。
5) 重复步骤1)到4)可粗化更多的网格或选择Close结束。
3.5.4网格间距的平滑
注意:水头场的精度随网格精度的增加而增加。
一个较细的网格通常可以得出更精确的解,特别是在那些水力梯度变化非常快得地方。然而在所需的计算时间和精度之间应选择一个折中方案。为了得到一个最好的结果,网格间距应该逐渐变化。在邻近得单元之间,网格间距不应增加50%以上。同时也必须注意高宽比;一个网格单元在一个方向的长度不能比另一方向大10倍以上。
网格平滑技术用来提高数值解的收敛性以减少所需的网线数。在没有进行网格平滑时,网格间距如果变化太大会导致数值解不收敛。我们建议你在增加模拟层之前应对网格间距进行平滑。修改一个大网格所需CPU时间与层数成正比,对于一个多层网格可能要花一小时或更长时间。
要平滑网格线,从边上工具条中选择X smoothing或Y smoothing,将出现如下窗口:
不均匀的网格间距具有三种典型模式:尖峰点、阶梯和离散折线。对不均匀的网格间距推荐使用两步过程来平滑:
1) 对仅包含网格间距的一个主要变化的小范围进行强平滑(平滑因子等于或大于1);
2) 对包含第一步平滑过的小范围的整个区域或大范围进行柔平滑(平滑因子小于1)。
该方法保留了均匀网格间距的区域,而为平滑前间距变化较大的区域提供了平滑的过渡。如果仅进行了强平滑,不管需不需要所有的网格间距都将改变。
在对话框中有以下选项:
Fix Grid Elements 使某个网线或网格间距不能移动(见网格线的固定)。
Smoothing Factor 定义平滑强度。参数越大,网格间距变化越大
From 定义要平滑网格间距的左边界。选择该按钮,然后在要改变边界的图形上单击鼠标左键。或者在From框中用键盘输入数据。
To 定义要平滑网格间距的右边界。选择该按钮,然后在要改变边界的图形上单击鼠标左键。或者在From框中用键盘输入数据。
Apply 如果直接在From和 To框中输入变化值,用它来更新平滑间距的变化。
Repeat Times 指定选择Go后的重复平滑次数。
Go 以当前的设置开始平滑过程。
Undo 取消最后一次平滑动作,包括重复动作。
Reset 恢复第一次选中Go以前的原始网格。
在对话框中,网格间距仅交互地在屏幕上发生变化。而选择OK后网格间距将永久地保持这种变化并且是不可逆的,除非你在退出网格菜单时没有保存所有网格的修改。
3.5.5网格线的固定
在网格的某些区域,在平滑过程中并不能对网格间距进行调整。例如,沿着河流边界的设置的网格的间距反映了河的宽度,不应该加以改变。另外,MODFLOW v.1.10中的MOC技术在模拟污染物运移时要求运移区内的网格间距均匀。为达到这一点,可将指定网格范围内的网格间距固定下来。通过固定网格范围,可以防止网格间距在平滑处理过程中被调整。
要固定网格线,选择Fix Grid Elements。此时将显示如下的菜单选项:
Fix single 固定代表网格区间边界的网线位置。用鼠标左键来选择网线。
Release single 释放一条固定网线使之不再表示网格区间的边界。用鼠标左键释放网线。
Fix interval 在两条固定的网线间选择一个网格范围,其间的网格间距在平滑处理过程中将不会发生变化。用鼠标左键选择网格范围。可选择一个以上的网格范围。
release interval 释放一个固定的网格区间。鼠标左键选择要释放的网格区间。
MODFLOW利用模拟地下水通过预先定义的垂直层位的流动来阐释三维地下水流动。这些层在垂向上进行了离散处理并且为它们设置了最能表征三维系统的水力学参数。Visual MODFLOW能计算多达59个有限差分层。这是最大的层数,在大多数情况下为了处理这么多层需要大量的RAM。然而,这些对你的问题还不够的话,请与我们联系。
要编辑层,选择View Column或View Row。现在把你的鼠标移到模拟区(即网格上)。你将看到一个移动的红色条带。该红色条带表示了剖面的位置。使任何一列变成高亮度显示后单击鼠标左键。图形将从平面显示切换到剖面显示。
要加入一层:
1) 选择Edit Layer。
2) 选择Add。
3) 把鼠标移到绘图区。
4) 单击鼠标左键使当前层在光标处分开,或单击鼠标右键精确地增加一层(如下图所示)。
5) 重复步骤1)到4)增加更多层或选择Close结束
要细化模型的层位:
1) 选择Edit Layer。
2) 输入细化因子。
3) 在细化范围的起始网线上单击鼠标左键。
4) 在细化范围的结束网线上单击鼠标左键。
5) 重复步骤1)到4)细化更多的层间距或选择Close结束
在第一个选项中输入的最小层厚表示:如果细化网格时层厚比规定的最小厚度要小的话,其底下一层向下移动以容纳新的层位。
要粗化模型的层位:
1) 选择Edit Layer。
2) 输入粗化因子。
3) 在粗化范围的起始网线上单击鼠标左键。
4) 在粗化范围的结束网线上单击鼠标左键。
5) 重复步骤1)到4)粗化更多的层间距或选择Close结束
删除一层时,剩下的层将具有两个原层位中较厚的层的属性。在具有可变层厚模型中,就用两个原始层在鼠标单击的行/列处的厚度来确定哪个是较厚的层。
要删除一层:
1) 选择Edit Layer。
2) 选择Delete。
3) 把鼠标移到绘图区,使目标层变亮并单击目标层。
4) 选择Close结束。
3.5.6表面的输入
使用具有不变标高的层位的数值模型通常并不能反映真实的水文地质条件。Visual MODFLOW 允许你输入数据来内插求得每层的顶底板标高。在Visual MODFLOW 的网格窗口的左侧菜单栏中单击Import Surface就会出现表面输入( Import Surface)窗口。
可以用外部网格剖分程序来给Visual MODFLOW 提供层标高数据。Visual MODFLOW 能读取Golden Software公司的SURFER程序的网格数据文件(*.GRD)。要使用别的等值线绘制程序的层面标高数据,你必须从这些程序中把层面标高数据输入到一个以空格作为分隔符(即数字之间用空格而不是逗号分隔开)的包括点的X、Y、Z坐标的ASCII(文本)文件中去。
现在Visual MODFLOW 允许你交互地用位图或.DXF文件为背景建立一个新的模型。模型创建以后,你的局部(模型)坐标可能不再与位图或.DXF所基于的UTM坐标相对应。Visual MODFLOW 保留了这些变换的步骤,你可以使用单元监测工具查看局部(模型)坐标或世界(图形,UTM)坐标。
所有数据和表面的输入都假定你使用的是世界(即图形或UTM)坐标。这对用于输入层面标高的SURFER程序的.GRD文件和ASCII文件都适用。
表面输入窗口如下所示:
输入层面标高所需的数据如下:
l 输入选项:按你在表面输入窗口内的选择,输入的文件可以是带空格分隔符的ASCII文件或Surfer程序的.GRD文件。输入的文件采用世界坐标作为参考系。ASCII文件必须有DOS文件扩展名“.ASC” 。Surfer文件必须有DOS文件扩展名“.GRD”。单元标高是用距离平方倒数技术从’.ASC’ 和’.GRD’文件中通过插值求得的。ASCII文件可以包含已知层面标高的位置或用其它网格剖分程序形成的层面标高。
l 表面选项:数据文件可以作为地表(第一层的顶板)标高的数据文件(选择Import ground surface)或层位的底板标高的数据文件(选择Import bottom elevation)。在对层面标高进行插值时,注意相邻层位的底板有可能会发生相交的情况。在Visual MODFLOW 中,这种情况会遵循层顶为主的思想来调节。例如,如果在输入下一层层面时出现了与上一层层面相交的情况,下一层的层面就会被裁剪到与上一层层面保持一个由最小层厚决定的距离为止。输入一组底板标高数据时,必须在层位的输入框中指明是哪一个层位。用输入层面选项可以覆盖掉已有的层位标高资料。在输入层面菜单中不能加入新层;它们必须在网格窗口中用Add Layer来加入。
l 最小层厚:最小层厚是层面输入时两个层面之间的最小距离。当相邻两层层面相交时,这个最小层厚优先于插值所得的层面标高。如果一个层必须通过作一些改变来满足最小层厚时,应以上层为主(即尽量通过改变下层而不是上层来达到)。
l 最近点的数目:Visual MODFLOW 在输入一个文件之后,将通过距离平方倒数法从输入的数据中对单元底板标高进行插值。最近采样点数(Number of Nearest Sample Points)表示用于单元顶面或底面标高插值的输入数据的点数。这会改变层面平滑程度和插值所得的层面在多大程度上体现了输入文件。
插值方程如下:
其中:Zcell为所求单元底板(或第一层顶板)标高。
Zi为采样点标高。
di为采样点到单元中点的距离,如果di=0,则Zcell =Zi
3.5.7边界几何形状的定义
如果要用Visual MODFLOW来定义一个不规则的几何边界,你可以通过将矩形网格内的有限差分单元定义为无效的方法来实现。无效的单元中不会进行地下水流动的模拟,因此,由这些单元的轮廓线代表的边界是一个“无流”边界。另外,模型区域的外边界也是一个“无流”边界。
要定义无效单元:
1) 从边部菜单栏中选择Inactive Cells,并从弹出菜单中选择Mark Poly. Inactive或Mark Single。用这些选项你可分别定义一个内部为无效单元组成的多边形,或单个无效单元。
2) 如果你选择Mark Poly. Inactive,把光标移到你想要使之无效的多边形的一个顶角,单击鼠标左键并把鼠标移到多边形的另一顶角。要闭合这个多边形,单击鼠标右键。无效区将变暗。
3) 如果你选择Mark Single,你可以按下鼠标左键不放,画出无效区。鼠标右键使单元有效。
注意:使无效单元变有效单元的步骤类似于步骤1)到3)。
3.5.8无效和有效单元的复制
选择Inactive Cells,再选择弹出菜单中的Copy Single和Copy Polygon可以把无效/有效单元分布复制到模型的其它层中去。
要把无效单元复制到其它层:
1) 从边部菜单栏中选择Inactive Cells,接着选择弹出菜单中的Copy Single或者Copy Polygon。选择要复制的单个单元或围绕无效单元画一个多边形,这取决于你的选择。被选中的单元将变为黑色;
2) 从单元复制窗口中选择你想要复制的目标层;
3) 选择OK继续。
3.6 抽水/注水井
在井位的下拉菜单中你可以选择图形化地增加、删除或编辑:
· 抽水/注水井
· 观测井
当你在输入窗口中选择Well选项时,出现如下附加的有关井的选项:
Add Well 添加井位,输入抽水时间安排和滤水段。
Delete Well 用单击井位的方式删除一眼井
Edit Well 用单击井位的方式编辑井的抽水量,滤水段的位置和网格坐标。
Graph 显示所选井抽水过程图。
Move Well 把现有的井移到一个新的位置
Copy Well 将现有的井复制到别的位置
抽水和注水井的数量仅受计算机内存的限制。
如果一口井在你能观测到的一列中,你看到该井及相应的滤水段。
当加入或编辑井时会出现一个井的编辑(Well Edit)窗口,我们可以增加或修改井名、井的坐标和滤水段位置。Visual MODFLOW将这些X,Y坐标和滤水段间距独立于模型网格保存。因此,在修改网格时原有井的位置不会受到影响。用于瞬变流模拟的抽水时间安排也可在此输入。如果抽水时间安排是存储在数据库或电子数据表中,那么包含这些信息的ASCII文件就可以通过右上角的Import按钮输入。在该窗口的下面是将该井作为观测井和使该井无效的选项。
注意:
注水井的注水速率为正,抽水井的抽水速率为负。
MODFLOW把单元中的井看作在单元的中央,而不管Visual MODFLOW中输入的坐标如何。如果可能,要求井附近的行列间距尽可能小以便能得到足够的小尺度上的精度。
MODFLOW 认为井的滤水段穿过了它所位于的层位的整个层厚,而不管Visual MODFLOW 中所设置的滤水段长度如何。滤水段长度用于解释穿过相邻层的滤水情况。如果可能,层厚应尽可能小,以解释小的滤水段长度。
在稳定流模拟中用抽水时间安排中的第一个抽水速率作为整个模拟期间的抽水速率。
所有应力期中都应给出抽水速率。在瞬变流模拟中,如果在下一个应力期没有输入抽水速率,抽水井将被关闭。
正如目前的公式所表述的,MODFLOW 的井程序包不适用于对一个以上层开放的井。然而,在Visual MODFLOW 中,这种类型的井代表的是一组单层井,每口井只对多层井所打穿的层中的某一层开放,且每口井在每个应力期有一个独立给定的Q。多层井的抽水量以每层中滤水段的长度按比例分给各层,即:
其中,Qi表示在某个应力期内从第i层进入某井的水量,QT为在该应力期井的抽水量,Li为第i层中滤水段长度,Kx为第i层中x方向的水力传导系数, 为所有为该井穿透的层位的滤水段长度与各层在x方向的水力传导系数乘积之和。
这种用一组单层井代表多层井的方法不能考虑到不同层位之间的相互联系。
如果一个井单元在模拟过程中变干了,该单元变为无效。这意味着不能再从该单元抽水了,但是,MODFLOW 在模拟过程中不修改属于这口井的其它单元的抽水速率。因此,如果一个井单元在模拟过程中变干了,在那个位置井的抽水速率将会自动降低。
要增加一个抽水或注水井:
1) 从边部菜单栏中选择Add Well并把光标移到预定的位置,按下鼠标左键。
2) 在所出现的井编辑窗口中输入井名,如果需要的话,修改X,Y的坐标。
3) 单击窗口中间的Add Screen。现在,在井内单击你想要安置滤水段处,并拉出一个红色的涵盖所需滤水段间距的矩形再次单击。
4) 在抽水时间安排窗口中,在Stop下面的方框中单击鼠标并输入抽水时间和抽水速率。
5) 单击OK退出。
要输入抽水井:
1) 从主菜单中单击File。
2) 从下拉菜单中选择Import。
3) 出现一对话框,提示你输入一个文件名,并给你显示当前的设置比如时间段长和抽水速率。在下一版本中你也可以输入和交换其它单位体系中的抽水信息。
抽水信息的文件格式见Pumpwell.txt,它包括有几口稳定抽水速率的井,以及包括一例瞬变抽水井的Pumptran.txt。文件在输入到Visual MODFLOW 必须去掉首行。
Name X Y Scrn# ScrnTop ScrnBot Stop Pump
其中:Name为井名
X为X坐标
Y为Y坐标
Scrn#为滤水段ID号
ScrnTop为每一滤水段ID的滤水段顶部标高
ScrnBot为每一滤水段ID的滤水段底部标高
Stop为应力期停止时间(非零)
Pump为抽水速率(抽水为正,注水为负)
注意:文件必须是以空格为分隔符且不能包含页眉行。
警告:当所给坐标超出你的模拟区时Visual MODFLOW 可能出现一些不可预测的操作。
要输入一个抽水时间表:
1) 在井编辑窗口对话框中单击Import按钮。
2) 输入的文件中数据之间必须以空格为分隔符,并以类似如下的格式输入输入框中:
Start Stop Pump
其中:Start为开始时间
Stop为结束时间
Pump为抽水速率
要编辑抽水或注水井:
1) 从边部菜单中选择Edit Well;
2) 把光标直接移到要编辑井的上部,并单击鼠标左键。
3) 在“Well Edit Windows”中修改并选择OK结束编辑。
3.6.1具有多个滤水段的井
在井编辑窗口中可以加入多个滤水段或对其进行编辑。可在窗口中央用箭头键滚动滤水段号或用鼠标直接单击滤水段来选择滤水段。然后可以在这两个文本框中手工增加或编辑滤水段,但是要使用这些变化必须单击其下部的大按钮。该按钮中的文本随着在它前面所进行的操作而改变。因此必须单击它来影响这些变化。例如,用滚动箭头(或用鼠标单击)选择了一个滤水段后,就可以单击Clear Screen来清除该滤水段。但是,在你清除之前,必须单击已变为“Clear This Well Internal Now”的大按钮。
3.6.2观测井
单击Use as Obs可以将抽水井用于水头观测井。这意味着对于该结点的每一个时间步水头对时间的数据都可以保存下来,该点就可以作为一个流动问题的校验点,如校验一节所述。
在把抽水井设置为观测井后,应输入井的半径,以便计算一个井效应的校正因子。井的校正水头可用稳定流的Theim公式计算:
承压水
潜水
其中:hw为井的估计水头值,hi,j为单元水头值,QWT为抽水速率,T为该层导水系数,K为水力传导系数,rw井半径,re为从井到水头为hi,j 的单元之间的径向距离。
如果假定一小段时间后在井附近含水层释放的储存水可以忽略的话,该公式也可用于瞬变流的模拟(Anderson和 Woessner, 1992)。
该公式假定向井中运动的水流是放射状对称,这意味着流动是二维的,井的滤水段打通整个模型,水力传导系数的分布是各向同性的。尽管这些假设在三维模拟中不一定严格成立,但对大多数的问题它们的确代表了一种合理的近似(M.McDonald, 1996)。
Visual MODFLOW 用以下公式实现上述Theim公式:
式中各项为垂直列上的有压单元和无压单元之和。当hi>ztop时单元为有压单元,当hi£ztop时单元为无压单元。
3.6.3使井无效和井位的删除
使一口井无效但又不从模型删除它,单击Deactivate Well并激活它。这样在以后就不需重新定义它就可使之再次有效。
要删除一口抽水或注水井:
1) 从边部菜单栏中选择Delete Well。
2) 把光标直接移到要删除的井上并单击鼠标左键。
3.6.4井的移动
在Visual MODFLOW 中你可以将一口井以及它的所有相关设置移动到一个新的位置。当要把抽水/注水井放到一个最佳位置时这是个特别有用的方法。
要移动一口抽水/注水井:
1) 从边部菜单栏中选择Move Well。
2) 把光标直接移到要移动井上并单击鼠标左键(该井将消失)。
3) 把光标直接移到新的井位并单击鼠标左键。
3.6.5井的复制
在Visual MODFLOW 中你可以将一口井以及它的所有相关设置复制到另外一个位置。当你有一个详细的抽水时间安排或滤水段布置时这是个特别有用的方法。
要复制一口抽水/注水井:
1) 选择Copy Well。
2) 把光标直接移到要复制的井上并单击鼠标左键(该井将消失)。
3) 把光标直接移到新的井位并单击鼠标左键。
4) 要复制更多的井请重复步骤1)到3)。重复复制同一口井,可以简单地在合适的位置单击鼠标左键即可。
3.7流动模拟的观测井
MODFLOW 的Waterloo Hydrogeologic版包含了几项使模型校正更为有效的增强功能。该校正程序包把在特定观测井位置的每一个时间步的计算水头保存在一个.HVT(水头对时间)文件中。你可以比较模拟水头和实测水头,生成校正统计资料,生成观测点的水文图而不需每个时间步都保存整个的MODFLOW 解。
校正程序需要观测井信息。从顶部菜单栏中选择Wells然后选择Observation Wells输入观测井。输入的观测井数量可达400个,并且Visual MODFLOW 将保存这些点上每一时间步的水头值和降深值。
选择了Observation Wells将出现如下的边上菜单选项:
Add Obs. 加入一个观测井。
Delete Obs. 删除一个观测井。
Edit Obs. 编辑与所选观测井相应的观测数据。
Move Obs. 在保留原有观测数据的情况下把观测井移到模拟区的另一处。
Import Obs. 输入观测井数据。这将允许你以一个文本文件的形式输入观测井数据。
在剖面视图中,如果观测井包含于指定的行或列中,它就会显示出来。井上的红线表示观测点的位置。观测井在平面视图上的位置用一个绿色标志表示。如果观测井没有数据输入,在屏幕上就会用“+”显示,否则会用“Å”显示。
要增加一个观测井:
1) 从校验窗口的边部菜单栏中选择Add Obs.。
2) 把光标移到你想要加入观测井的单元并单击鼠标左键。就会出现一个如上图所示的观测井输入窗口。
3) 键入观测井名,如果需要的话你还可以细化井的坐标。
4) 从输入窗口中选择Set Obs. Point,并在井中观测点标高处单击鼠标来设置观测点在井中的位置。在此处将出现一根红线。另外,你也可以直接输入观测点标高。
5) 在窗口右边也可以给观测井输入观测水头。输入许多观测水头和相应的时间(参考下面的输入向导)。对于稳定模拟,使用第一个观测水头。
要从一个文件中输入观测水头标高:
1) 创建一个以空格为分隔符的文本文件,格式如下,每一行只输一组时间和观测水头数据。
Time Obs
其中:Time为观测时间
Obs为观测水头
2) 从编辑观测点对话框中选择Import。然后你可以选择带有观测水头信息的文件。该文件的扩展名必须为.TXT或.ASC
要从一个文件中输入观测数据:
1) 用如下格式创建一个以空格为分隔符的文本文件,格式如下:
Name1 X1 Y1 Z1 T1 H1
Name2 X2 Y2 Z2 T2 H2
Namen Xn Yn Zn Tn Hn
其中:Namen为观测井名(不超过20个字符,字符间不能有空格)
Xn为观测井的X坐标
Yn 为观测井的Y坐标
Zn 为观测点的标高
Tn 为观测时间
Hn为观测水头
2) 一行只输一组时间和观测水头数据。如果同一个观测井有许多观测值,必须重复输入观测井名和坐标。
3) 从边部菜单栏中选择Import Obs.。然后你可以选择带有观测水头信息的文件。该文件的扩展名必须为.TXT或.ASC。
3.8属性
在Visual MODFLOW 的属性模块中可输入和编辑水文地质学属性,包括:
· 水力传导系数
· 单位给水度
· 单位储水系数
· 空隙度
Visual MODFLOW 管理着水文地质属性,因此具有相同属性值的区域一起被分为一组或一区。比如,一个模型根据水力传导系数的不同可分为四个区。在屏幕上察看时每个区都会有不同的颜色。在默认的情况下,整个模型(所有行、列和层)中的每一个单元都会被赋予1号属性的值(白色)。通过一个简单的数据界面,我们可以对属性值进行编辑。
从输入菜单栏中选择Properties。从下拉菜单中选择Conductivity或Storage。边部菜单栏将具有如下选项:
Assign Single 给单个单元设置水力传导系数/储水系数
Assign Polygon 给一个不规则区中的单元设置水力传导系数/储水系数
Assign Windows 给一个矩形区内的单元设置水力传导系数/储水系数
Edit Single 编辑单个单元的水力传导系数/储水系数
Edit Property 编辑一个属性区中所有单元的水力传导系数/储水系数
Copy Layer 把一个或所有的属性区从当前层复制到模型的其它层
Database 查看或编辑属性数据库
Copy Distribution (仅用于Storage)把水力传导系数区复制到与水力传导系数区一致的储水系数区。
要设置属性:
1) 从输入窗口菜单中选择Properties,选择你想输入的属性(水力传导系数或储水系数)。
2) 如果你还没有输入过某种属性,程序将提示你输入该属性的缺省值。这个缺省值将设置为1号属性(以白色显示)。
3) 从边部菜单栏的Assign Single、Assign Polygon或Assign Windows中选择一个选项。
4) 把光标移到你想设置属性的网格单元上。
5) 单击鼠标左键。如果你在3)步骤中选择的是Assign Single,就会出现属性设置对话框。你可以按下鼠标左键在模拟区中挑选或“画”出你想要设置属性的单元。你也可以用鼠标右键取消你所选择的单元。如果你使用多边形来选择单元,可单击鼠标右键来闭合多边形。如果你用一个窗口选择单元,单击鼠标选择窗口的另一个角。
6) 你可以用属性设置对话框输入你要设置的属性编号。如果你要设置一个新的属性,选择New,并且你必须输入属性的值。你也可以用对话框中的上下箭头键滚动寻找数据库中已有的属性。
要编辑某个单元的属性:
1) 从边上的菜单中选择Edit Single,然后修改属性号。这在只修改几个单元时很有用,不必通过前面所提到的属性设置过程。
要编辑属性值:
1) 从边上的菜单上选择Edit Property或Database。会出现一个对话框,让你修改以前所设置的任何属性的值。
Visual MODFLOW允许用户从当前层向任意层复制部分或全部的属性分布。
要向另一层复制属性分布:
1) 从边部菜单栏选择Copy Layer。将出现一弹出菜单。选择Copy All Properties来复制全部属性分布,或选择Copy Only Property#_把某个属性复制到其它层。为了选择正确的待复制属性,把光标移到属性号输入框中键入所需要的属性号。
2) 选择属性复制的目标层。
3) 选择OK完成复制过程。
3.8.1水力传导系数
你可以在Property下的Conductivity选项中一个单元一个单元地输入或编辑模型的水平或垂向水力传导系数值。这允许你输入多个Kx:Ky和Kx:Kz的比值来反映模拟区的地质条件。下面是一个水力传导系数数据库的例子。
注意:在Run窗口的BCF菜单选项下,Visual MODFLOW允许你一层一层地输入Kx:Ky比值常数。给每层输入一个比值常数后,你将无法删除原始的Ky值。这一特性对于检验MODFLOW结果对Kx:Ky比值的敏感性是有用的。
3.8.2储水系数
Visual MODFLOW的Storage选项中需要输入三个参数。它们是:
Ss-单位储水系数。饱和含水层的储水系数的定义为单位体积的含水层在水头下降一个单位时所释放出来的水的体积。Visual MODFLOW用单位储水系数来确定MODFLOW的原生储水系数(sf1)。原生储水系数由Visual MODFLOW计算出来,它等于单位储水系数乘以层厚。单位储水系数的数值引入和原生储水系数在USGS的MODFLOW用户手册的第五章中有所说明。
Sy-给水度。潜水含水层的单位储水系数被称为给水度。给水度定义为在水位下降一个单位时,潜水含水层每单位表面积所给出的水的体积。对于砂质或砾石含水层,给水度通常就等于空隙度。
Eff. Por-有效空隙度。MODPATH用有效空隙度项来确定地下水的平均线速度,这个速度用于与时间无关的俘获带和流线时间标志计算。MODFLOW的模拟并不使用这一项。
Tot. Por-总空隙度。总空隙度在MT3D中被用于确定化学反应系数,在采用质点追踪方案来求解时用来计算地下水的平均线速度。MT3D可能会使用一种不同的空隙度,因为MT3D考虑了附加的运移和反应过程,比如弥散,而MODPATH就没有必要。总空隙度这一项在MODFLOW中没有使用。
正如输入水力传导系数一样,在第一次进入Storage时,会有一个弹出菜单让你输入整个模型的储水系数属性的缺省值。然后就可以在储水系数菜单下设置非均匀的属性分布。下面是一个储水系数属性数据库的例子。
正如定义水力传导系数区一样,Visual MODFLOW 允许用户定义具有相同属性分布的储水系数区。
分配储水系数区的方法和分配水力传导系数区一样:
1) 选择Propreties,然后从顶部菜单栏中选择Storage;
2) 从边部菜单栏中选择Copy Distribution;
3) 程序将自动为每个已有的水力传导系数区创立一个储水系数属性区。所有新建的储水系数属性区的储水系数值自动设置为缺省值。
4) 选择Database并根据需要修改储水系数值。
3.9边界
边界条件模块为MODFLOW 模型的各种边界条件的编辑提供了便利。在Visual MODFLOW 中允许出现以下几种边界条件:
l 等水头单元;
l 河流;
l 排水沟;
l 一般水头单元;
l 补给;
l 蒸发。
要输入边界条件,从顶部菜单栏中选择Boundaries。将会有一个下拉菜单,其中列出了所有可能的边界条件(如上)。在你想要定义的边界条件选项上单击鼠标左键。从边部菜单栏选择定义边界条件的方法,用鼠标来定义边界。从边部菜单栏中选择各自的复制按钮可以把边界条件复制到其它单元或其它层。
一般来说,除了标准的视图选项外每一个边界窗口还有如下的边部菜单选项:
Assign Single 单击鼠标左键来给单个单元指定边界条件。与属性输入一样,可以按下鼠标左键并移动鼠标来给许多单个单元指定边界条件。按下鼠标右键撤消所选择的单元。你可以为所选边界条件输入所需的合适信息。
Assign Line 用鼠标左键选择线的起始点和中间的点。用鼠标右键设置线的终点。你可以为所选边界条件输入所需的合适信息。在线的始点和终点你可以输入不同的边界条件值。两个端点之间的值由程序通过插值求得并赋值。
Assign Poly 用鼠标左键选择多边形的角点,用鼠标右键闭合它。然后你可以指定多边形内的边界条件值。
Assign Windows 选择窗口的一个角,然后把光标移到窗口的对角并按下鼠标左键。你可以指定窗口内的边界条件值。
Edit Single 单击鼠标左键来编辑单个单元的边界条件参数。
Erase Single 单击鼠标左键来删除单个单元的边界条件参数。
Erase Poly 删除多边形内的单元的边界条件。用鼠标左键选择多边形的角,并用鼠标右键闭合多边形。
Copy Layer 在输入对话框中选择目标层。用不同边界条件的号码来有选择地复制边界条件。所有的有效边界条件都可以被复制,那些有编号定义的子区也可被复制。
Copy Single 选择一个有效边界单元并单击它。然后把光标指向目标单元并再次单击鼠标左键。
3.9.1最小边界规定
对于一个稳定流模拟,在一个模型中至少要有一个水头边界。否则模型将是不确定的。该水头边界对整个计算起着一个参考水头的作用。该水头边界可以是一个定水头边界、河流、排水沟或一般水头边界。对于一个瞬变流模拟,要得到一个确定的解有初始水头值就够了。
3.9.2设置到合适层位上
有几种边界条件提供了一个选项,可以将该边界赋与适当的层位。这在设置窗口的左上角复选框说明。当该选项被选中(þ)时,如果设置的水头低于单元的底板,边界将自动设置到该单元底下的单元中去。这可能会让某些单元“神秘地”消失,跑到下面的层位中去。这种功能可以让你去数字化穿过几个层位的边界特征。
3.9.3定水头边界
在早期的USGS MODFLOW中,定水头边界在进行瞬变流模拟时是不能改变的。然而,Visual MODFLOW包括了由Leake和Prudic(1988)研制的经过扩展的随时间变化的定水头程序包,该附录见MODFLOW程序包手册。
一般来说,瞬变边界条件在一个应力期内保持不变,在应力期之间发生突变。然而,随时间变化的定水头是不同的;每个时间步的“定水头”是由每个应力期首尾两端的“定水头”通过线性插值而得到的。实际上,定水头从来都是不定的,除非应力期始末的水头值相同。想要了解MODFLOW是如何来处理随时间变化的定水头,请参阅参考手册。
要定义定水头结点:
1) 在输入窗口的顶部菜单栏中选择Boundary。在其下拉菜单中选择Constant Head;再从边部菜单栏的Assign Single、Assign Line、Assign Poly和Assign Windows中选择其中一项。
2) 把光标移到你想要定义定水头边界的网格结点。
3) 单击鼠标左键。如果你选择的是Assign Line,数值化的是一条线,单击鼠标右键结束。如果你选择的是Assign Poly,数值化的是多边形的外部边界,单击鼠标右键结束。如果你选择的是Assign Windows,选择窗口区的一个角,然后把光标移到对角并单击鼠标左键。
4) 此时会出现一个弹出窗口,提示你输入数据,包括水头值及水头有效的起止时间。对于一个稳定流模拟,用的是只第一时段的定水头值。
Assign Line的定水头边界参数输入窗口如下。
要输入一个定水头边界时间表:
1) 在定水头设置对话框中单击Import按钮。
2) 输入的文件中数据必须以空格为分隔符,格式如下:
对于Assign Single 、Assign Poly和Assign Windows:
Start Stop Const
对于Assign Line:
Start Stop SP EP Const
其中:Start为开始时间
Stop为结束时间
SP为起始点
EP为结束点
Const为定水头值
3.9.4河流
MODFLOW的河流程序包允许你把地表水边界条件引入到地下水流模拟中。江河、溪流和湖泊与地下水系统之间的补给或排泄关系取决于地表水体和地下水之间的水力梯度。河流程序包允许你模拟被一层低渗透性材料与地下水系统分开的地表水体。
河流程序完整详细的假设,限制和执行信息见USGS MODFLOW手册第六章。
河流程序要求河流边界所包括的每一个单元都要输入如下信息:
河水位标高:河水位标高是地表水体水面的标高。该标高可随时间改变。
河底标高:河底标高为溪、河或湖底标高。
传导系数: 传导系数是一个数字参数,它代表地表水体和地下水体之间阻止水流的能力。传导系数由经过某单元的河段长度(L)、该单元中的河宽(W)、河床厚度(M)以及河床物质的水力传导系数(K)计算得到。河床的传导系数C为:
要定义河流边界条件:
1) 在输入窗口的顶部菜单栏中选择Boundary。从下拉菜单中选择River;再从其边部菜单栏的Assign Single、Assign Line、Assign Poly和Assign Windows中选择其中的一个选项。
2) 把光标移到你想要定义河流边界的网格结点上。
3) 单击鼠标左键。如果你选择的是Assign Line,单击鼠标右键结束。如果你选择的是Assign Poly,单击鼠标右键闭合多边形。如果你选择的是Assign Windows,选择窗口区的一个角,然后把光标移到对角并再次单击鼠标左键。
4) 此时出现一个弹出窗口提示你输入数据,包括河水位标高、河床标高及河床的传导系数。你也必须输入边界条件的起止时间。
输入一个河流边界时间表:
1) 在指定河流边界对话框中单击输入按钮。
2) 输入的文件中数据必须以空格键隔开,格式如下。
对于Assign Single、Assign Poly和Assign Windows:
Start Stop RE RB Cond
对于Assign Line:
Start Stop SPRE EPRE SPRB EPRB SPCond EPCond
其中:Start为开始时间
Stop为结束时间
RE为河水位标高
RB为河床标高
SPRE为开始点的河水位标高
EPRE为结束点的河水位标高
SPRB为开始点的河床标高
EPRB为结束点的河床标高
Cond为传导系数值
SPCond为开始时传导系数值
EPCond为结束时传导系数值
对于稳定流模拟,使用的是第一个时段的值。
具有相同属性编号的单元组可以一起复制到其它层。
对于一个多层模型,如果选择了Assign to Appropriate Layer框,河流边界条件将使用于与河床标高相对应的层。这将允许你把一条穿过模型的几层的河流数值化。
Assign Line的河流边界参数设置窗口如下所示。
当一个河流边界条件被设置到一个多边形或窗口中时,实质上那是模拟一个没有任何蒸发的湖或湿地。正如所有河流边界条件一样,它假设地表水体的水位不受地下水流动系统的影响。