实例1MODFLOW操作说明new.docx
- 文档编号:10404024
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:43
- 大小:999.02KB
实例1MODFLOW操作说明new.docx
《实例1MODFLOW操作说明new.docx》由会员分享,可在线阅读,更多相关《实例1MODFLOW操作说明new.docx(43页珍藏版)》请在冰豆网上搜索。
实例1MODFLOW操作说明new
VisualMODFLOW4.2实例操作手册
引言
MODFLOW是英文名称ModularThree-dimensionalFiniteDifferenceGroundwaterflowmodel(三维有限差分地下水流模型)的简称。
由美国地质调查局(UniteStateGeologicalSurvey)于80年代开发出的一套专门用于孔隙介质中地下水流动相关问题数值模拟的软件。
自问世以来,MODFLOW已经在全世界范围内,在科研、生产、环境保护、城乡发展规划、水资源利用等许多行业和部门得到了广泛的应用,是供水文地质工作者使用的一套功能强大的实用计算机软件。
同时,MODFLOW软件的源代码可以在美国内政部网站上免费下载,供水文地质工作者参考和修改,以提高数值模拟的仿真性。
VisualMODLFOW软件中不仅包括MODLFOW模块,还有SEAWAT、MT3D、MODPATH等模块。
为了让广大水文地质工作者能快速入门并精通该数值模拟软件,作者参考相关文献分别针对上述的模块自拟几个实例,并给出相应的操作步骤,供大家练习参考。
实例1地下水流-污染物迁移规律数值模拟实例
本实例是MODFLOW自带的实例之一,主要让水文地质工作者练习地下水与污染物迁移规律的数值模拟的全过程,主要包括流场模拟(MODFLOW)、迹线数值模拟(MODPATH)、水均衡计算(ZoneBughet)与污染迁移规律模拟(MT3D)。
1、实例模型背景介绍及概念模型
在Waterloo城外有一个机场,机场附近加油站的有不断的向含水层渗漏,为了预测与评价污染物的迁移规律,这里采用MODFLOW软件中的水流模型与MT3D模块建立地下水流场与污染物迁移规律的数值模拟模型。
经过实地勘察,水平向研究区的范围如图1,在垂向上,将研究区分为三层:
上下各有一层砂砾含水层,中间有一粘土和粉砂弱透水层将它们分开,其中,第一层是潜水含水层,第二层是弱透水层,第三层是承压含水层,如图2。
含水层东西边界与基岩相接,是隔水层。
含水层北部边界是定水头边界,第一层和第二层水头值为19m,第三层水头值为18m。
南部含水层是定水头边界,水头值是16.5m。
相关的场地地物有一个飞机加油场、一个生活供水井场和一块弱透水层不连续区(含水层天窗)。
如图1所示。
图1研究区域平面示意图
图2研究区域剖面示意图
生活供水井场有两眼井。
东井抽水量稳定在550m3/d,西井为400m3/d。
在过去十年中,在加油场中不断地有飞机燃料的泄漏,其自然下渗已在上层含水层中产生了一个污染羽。
本教程首先将向你显示如何一步步地为这个场地建立一个地下水流动模型,然后介绍污染物迁移模拟。
在讨论时,我们将该场地在平面上的视图指定为上北下南左西右东。
如图2所示,地下水在一个由上部潜水含水层、中间弱透水层和下部承压含水层所组成的三层系统中自北向南(平面图上是从上到下)流动。
上下含水层的水力传导系数为2e-4m/s,弱透水层的水力传导系数为1e-10m/s。
降水资料:
月份
1
2
3
4
5
6
7
8
9
10
11
12
降水补给
10
20
30
40
100
100
100
100
50
40
30
10
2、VM软件模拟该问题所需要的资料以及资料整理格式
2.1数值模拟资料
☐空间展布相关资料
⏹地表高程、分层数据
⏹边界位置
☐含水层参数:
渗透系数,弹性释水系数(重力给水度),孔隙度等
☐源汇项:
⏹大气降水入渗系数(分区、数值)
⏹蒸发排泄系数
⏹地表水体(河流、湖泊、水库等)水位、底面高程、底面岩性特征(厚度、渗透系数等)
⏹渠系灌溉入渗系数
⏹人工开采(点状、面状):
开采井位置、井结构、开采量动态
☐边界条件:
边界类型、水头或流量
☐初始条件:
统测水位
☐水位动态观测资料:
观测孔位置、结构、水位时间变化
2.2资料整理格式
采用VisualMODFLOW软件模拟地下水流以及污染物迁移规律问题时,首先要通过分析现有的勘察资料,建立概念模型,其次将对应的资料按照MODFLOW要求的格式整理,最后,按照先后顺序将资料输入软件,运行即可。
下面分别介绍数值模拟资料的输入格式。
2.1.1空间展布资料的输入格式
2.1.1.1平面地图
为了将实际的研究输入计算机,导入的底图需要与实际数据匹配。
如果是矢量图(AutoCAD、ARCGIS或者MAPGIS图)可以直接导入,若使BMP格式的图,需要给定图中任意两个点的坐标,在导底图后将坐标如何计算机将底图校正。
2.1.1.2分层数据
MODFLOW软件可以直接对建立好的网格赋分层数据,对于理想模型这种方式比较方便。
由于实际问题的每一层的厚度随着位置的变化而变化,常采用“数据导入”与“空间插值”的方式给每一个网格赋值,其中数据的排列格式为
X
Y
Elevation
*
*
*
*
*
*
*
*
*
(*代表实际数据)
2.1.2含水层参数
含水层参数包括渗透系数、弹性释水系数(重力给水度),孔隙度等。
在MODFLOW中有两种方式可以给含水层赋值:
第一种是直接赋值,若有参数分区时,首先导入参数分区图,然后再赋值;第二种方式可以导入数据,导入数据格式与分层数据格式类似。
2.1.3源汇项
在地下水领域中,源汇项有很多,包括井、河流、沟渠、降雨、蒸发等,数据格式同分层数据。
2.1.4边界条件
边界条件有流量边界与水头边界,在MODFLOW中,需要采用井来刻画流量边界。
2.1.5初始条件
数据格式同分层数据。
2.1.6水位动态观测资料
数据格式同分层数据。
3、VM软件模拟地下水流场:
FlowField
3.1新建工程项目
1.新建一个项目文件,输入项目名字
图3.1
2.下一步,设置项目信息。
图3.2
3.下一步,水流类型、初始参数的设置
图3.3
3.下一步,导入底图,初始网格剖分
图3.4
4.下一步,模型坐标系的设置(将左图中蓝色的坐标系扩大,直到覆盖整个研究区如右图,见图3.5)
图3.5
5.下一步,点击ok,完成了项目文件的建立,同时进入了“模型输入(Input)”模块。
图3.6模型输入模块界面
3.2模块I:
模型输入
3.2.1网格设置
3.2.1.1网格查看
当你首次进入输入模块时,VisualMODFLOW会直接进入网格(Grid)输入窗口。
屏幕左边的最上面的六个按钮(ViewColumn、ViewRow、ViewLayer、Goto、Next和Previous),这几个按钮可以让你从不同的角度查看现有的网格模型:
查看横剖面上点击ViewRow,查看纵剖面点击ViewColumn,查看平面点击ViewLayer,Goto、Next和Previous主要是用于选择层号。
当VisualMODFLOW将模型的显示方式从平面变为剖面视图时,若网格的厚度与网格长度相比太小,层与层的界面不易区分时,你必须对剖面图进行垂向放大。
在窗口底部选择:
单击F8-VerticalExaggeration
就会出现一个垂向放大窗口,供你输入垂向放大系数。
Type:
40
单击OK
3.2.1.2网格编辑
下图是网格编辑块,可以通过“无效网格设置”来刻画平面上边界的不规则性;网格编辑模块主要是用来调整网格的数量,包括行数、列数与层数;网格的伸缩主要是用来调整网格的大小。
这里建立的网格还没有赋实际高程,因此,可以通过ImportElevation、AssignElevation或Contouring来赋值。
对于本实例主要用来练习“网格细化”功能与“网格插值”功能。
图3.7网格边界模块
(1)网格细化
为了提高模拟的精度,有时需要在某些地方将网格细化,比如井、河流、含水层天窗等。
本节介绍了对感兴趣的地段如供水井周围地区、含水层天窗区与加油场之间地段进行模型网格细化的步骤。
由于单元的大小代表了井的尺寸,因而用更细的网格来模拟井的影响将会更接近实际情况。
另外,如果在井周围出现了水位下降,用小的网格剖分可使水面更平滑。
单击EditColumns,然后将鼠标移至网格的任一处。
注意在模型网格上有一个高亮度的竖线会随鼠标移动。
这条竖线可以用来在模拟区的任何位置加上一列。
在本练习中,我们通过按鼠标右键引出一个添加垂直网线(AddVerticalLine)窗口,以指定的间隔增加网格线。
单击Everyspacedgridlinesfrom:
单击其后的输入框,输入以下数值:
from:
500
to:
1600
atintervalsof:
25
单击OK接受这些值
单击Close离开
(2)网格顶面与地面赋值
在VisualMODFLOW中,你可以从Surfer的*.grd文件或以空格分隔的x、y、z的ASCII文件中输入变化的层位标高。
本例中,我们将输入一个ASCII格式的x、y、z文件来生成一个有坡度的地表及层位,同时后者的厚度也是变化的。
单击ImportElevation
此时将出现如下窗口:
图3.7
在layersurface中选择地表高程Groundsurface,在option中选择importdata,在interpolationsetting中的interpolation中选择插值方法inversedistance,然后在interpolationsetting中的datasource中单击打开,
图3.8
选择“地表高程.txt”,出现如下窗口
图3.9
将X-coordinate后面的n/a改成对应Column号,这里改成1,类似地,Y-coordinate后面的n/a改成对应Column号,这里改成2,Elevation后面的n/a改成对应Column号,这里改成3。
单击Next,然后点击finish,出现如下窗口,选择world与meters。
图3.10
单击OK,点击apply(不要点击ok),完成地表高程的赋值和插值,然后出现
图3.11
上面窗口的右侧便是给Groundsurface插值后的高程平面图,点击右上角的“3-DPreview”,然后调节窗口下Rotate的按钮,显示不同角度的三维图,
调整显示图的属性
图3.12
点击右上角的“ArrayPreview”,显示每个节点处的高程,当有部分点不合理时,可以在此对话框中直接修改。
类似地,导入第一层底板、第二层底板和第三层底板的高程。
现在要导入第一层底板的高程:
在layersurface中选择BottomofLayer1
在options中选择Importdata
在datasource中将“第一含水层地板高程.txt”的路径载入。
设置最小厚度MinimumLayerThickness0.75
单击Apply接受其它的默认参数值
第一层的底板就会显现出来。
下一步要输入第二层底板高程,从左侧菜单上选择:
在layersurface中选择BottomofLayer2
在options中选择Importdata
在datasource中将“第二含水层地板高程.txt”的路径载入。
设置最小厚度MinimumLayerThickness0.75
单击Apply接受其它的默认参数值
第二层的底板就会显现出来,它也具有一个变化的表面。
接着输入第三层底板高程。
从左侧菜单上选择:
在layersurface中选择BottomofLayer3
在options中选择Importdata
在datasource中将“第三含水层地板高程.txt”的路径载入。
设置最小厚度MinimumLayerThickness0.75
单击OK接受其它的默认参数值
第三层的底板就会显现出来,它具有一个变化的表面。
你可以通过看网格模型的某一个剖面,此时,网格的表面是高低起伏的,如图3.13。
图3.13
(4)在Input输入界面上还有其它相关按钮:
图3.14
3.2.2井流设置(Wells)
完成了网格设置之后,就可以将井的数据导入模型中。
井模型包括开采井与注水井设置、水头观测井设置、浓度观测井设置,由于本实例在开始没有选择溶质运移模块,因此,这里是灰色的不能选择。
图3.15
3.2.2.1输入抽水井资料
点击窗口上面菜单栏中的“Wells”PumpingWells,系统将要求你保存你的数据点击Yes。
开采井的设置选项如下图3.16。
图3.16
这里采用练习“AddWell”功能。
单击AddWell,把光标移到西边那眼井上,单击鼠标左键。
就会出现一个井位编辑窗口,你可在此输入井位资料。
图3.16
在标有WellName的输入框中单击鼠标输入:
PumpingWell1
单击
,把光标移到窗口左边的井孔中,在高程为5米处单击一下鼠标,然后把鼠标移到高程为0.3米处再单击一次,就会在井中高程大约为5~0.3米处加入滤水管(Screen),另外,你也可以在方框中直接输入数值来精确确定滤水段的位置。
下面我们要输入井位抽水的时间安排,在标有Stop的列下的方框内单击鼠标左键,并输入以下信息:
Stop[day]:
360
Rate[m3/d]:
-400
单击OK
注意,如果是注水井这里流量应该是正的。
如果某些所需的数据没有输入的话,VisualMODFLOW会提醒你马上完成。
下一步是设置第二眼抽水井的参数,我们要使用从一眼井向另一眼井复制属性的快捷方法来完成。
单击CopyWell
把光标移到西边的那眼井上,单击鼠标,然后把光标移到东边井位上,再次单击一次,就把井复制完成。
下一步我们要编辑复制过来的井的资料。
单击EditWell
单击井位标记,选择新的那眼井。
就会出现一个井位编辑窗口。
在标有WellName的输入框中单击鼠标:
Type:
SupplyWell2
在标有Rate[m3/d]的方框中单击鼠标:
Type:
-550
单击OK接受这些井参数
3.2.2.1输入观测井资料
点击窗口上面菜单栏中的“Wells”HeadObservationWells,系统将要求你保存你的数据点击Yes。
观测井的设置选项如下图3.16。
图3.17
点击AddObs.,会出现如下窗口,
图3.16
输入井名P1,选则Worldcoordinate,并输入X=1477.99822,Y=623.464101,将观测点得高程输入6,同时将观点的水头时间序列输入,
Time
Head
4
16
10
15
50
15.6
100
30
150
15.8
200
15.5
250
15.4
300
15.6
350
15.5
点击OK即可。
3.2.3含水层参数设置(Properties)
当输入完井资料后,我们继续输入含水层参数。
含水层参数选项如下
图3.17
3.2.3.1第一含水层
(1)Conductivity
单击Properties---Conductivity,系统将要求你保存你的数据点击Yes。
图3.18
可以使用Assign--Single、Assign--Polygon或Assign--Windows来输入具有不同的水力传导系数的区域或层位。
第一含水层,用给定的格式输入如下
HydraulicConductivityinx(m/sec)Kx:
2e-4
(X方向水力传导系数Kx)
HydraulicConductivityiny(m/sec)Ky:
2e-4(输入Kx后自动出现)
(Y方向水力传导系数Ky)
HydraulicConductivityinz(m/sec)Kz:
2e-4
(Z方向水力传导系数Kz)
通过查看左边的小立方体确定是在第一层,否则通过Next和Previous使目前的层号码是第一层,点击Assign--Windows,将整个平面选定后出现如下对话框
图3.19
如果直接点击OK,在该区域的参数为默认参数,由于现在含水层的参数与默认参数不同,因此,点击New,然后将前面的参数输入到对应的窗口中,如下图
图3.19
然后点击OK,则第一层的渗透系数便赋好了。
(2)Storage
单击Properties——Storage,系统将要求你保存你的数据点击Yes。
可以使用Assign——Single、Assign——Polygon或Assign——Windows来输入具有不同的水力传导系数的区域或层位。
第一含水层,用给定的格式输入如下值。
SpecificStorage(Ss):
1e-4
(单位储水系数)
SpecificYield(Sy):
0.1
(单位给水度)
Effectiveporosity(Eff.Por):
0.15
(有效孔隙度)
TotalPorosity(Tot.Por):
0.15
(总孔隙度)
与渗透系数的赋值方式是一样的,将上述参数赋值到第一层中,如下图
图3.20
3.2.3.2第二含水层(弱透水层)
单击Goto——Next进入第二层。
AssignWindows让你可以在一个矩形窗口内设置一个不同的水力传导系数。
现在,让我们给第二层弱透水层输入一个较小的水力传导系数。
(1)Conductivity
在左边窗口中选择,将Storage转化为Conductivity。
如下图
图3.20
单击Assign—>Windows
把鼠标移到网格的西北角,在单元中间单击。
然后把鼠标移到东南角,点击单元中部。
这就形成了一个覆盖整个层面的窗口。
出现一个属性设置(AssignProperty)对话框。
单击New(整个网格将变成蓝色)
把鼠标移到Kx(m/s)框中单击并输入如下值:
Kx(m/s)1e-8
Ky(m/s)自动设置为1e-8
Kz(m/s)1e-9
(2)Storage
同理将第二层的,用给定的格式输入如下值。
SpecificStorage(Ss):
1e-4
SpecificYield(Sy):
0.1
Effectiveporosity(Eff.Por):
0.15
TotalPorosity(TotalPorosity):
0.15
3.2.3.3第三含水层
现在把第一层的水力传导系数与储水系数等复制到第三层。
Goto——>Previous,回到第一层,在左边的小窗口中选择Conductivity,然后,在左边菜单上选择:
单击CopyLayer
出现一个复制窗口,在窗口中:
单击Selectall/highlightedzones(复制所有的值)
单击Layer3(它就会以高亮度显示)
单击OK把第一层的K值复制到第三层
如下图
图3.21
类似地,可以将Storge参数从第一层拷贝到第三层。
3.2.3.4天窗设置
在特殊的沉积环境下,或者各种地质构造的原因,会导致地层的缺失或者不连续。
在这个特例中,含水层天窗区在底图上就已有体然而,在许多情况下现是没有这种资料的,必需依靠某些参数比如层厚来确定这个不连续的地段。
假设这里层厚小于0.5处的位置是一个岩性天窗,且天窗的岩性的岩性与第一层岩性相同。
要显示第二层的厚度可在下部菜单条上选择F9-Overlay按钮。
这时就会出现一个图层控制(OverlayControl)窗口(如下图),
图3.22
其中有一个表列,上面包含以字母顺序排列的所有在设置模型输入参数可能出现的图层。
向下浏览表列直到找厚度图层(LayerThicknessOverlay),然后双击它,在它的左边就会出现一个“
”,表示它现在是一个活动图层,这行的最后面“…”是用来设置等厚图等值线的。
为了显示的更加清楚,同时将Overlay中其他选项都关闭,然后选择ContourLabels。
单击OK将显示层厚的等值线图
这里假设厚度小于1m的地方时个天窗。
现在将等值线收缩到1m的最小厚度的地段放大,若没有显示0.8m的等值线时,可以在F9-Overlay中,点击LayerThicknessOverlay后面的“…”来设置。
单击F5-ZoomIn
将鼠标移动到含水层天窗地段的左上部,单击左键。
在该区上拉出一个框,再单击一次。
屏幕上就会出现含水层天窗地段放大后的图形。
单击AssignSingle(对单个单元进行设置)
将会出现一个属性设置框,其缺省值是最后输入的K值(Zone#2)。
按下New键下的向下箭头。
Zone#1就会是K的当前值。
将鼠标移到由1m等值线所圈定的表示含水层天窗的地段,按下鼠标,绕着该区拖动直到区内单元格成为白色显示。
如果你已对区外的单元重新作了设置,那么,松开左键,按下右键就可以将单元恢复为它们原先的值的颜色。
完成单元格的“描画”后,现在你要将第一层的岩心赋值到这里,那么就Zone#中选择2,单击ok即可。
3.2.4设置模型边界条件:
降雨补给,河流,边界条件
3.2.4.1降雨补给
要设置补给条件,你必须是在处于模型顶层的平面视图情况下。
检查一下左下角的立方体导航器,看看你目前所处的层位,如果不在第1层,就用Next,Previous或Goto进入到第1层。
我们首先要设置的边界条件是含水层的补给通量。
单击Boundaries
单击Recharge
如果你是正在建立新模型,此处会出现一个缺省补给(DefaultRecharge)窗口,提示你输入补给量的初始值,VisualMODFLOW自动地将这个补给量值赋给模型的整个顶层,下面将下标的数据输入软件中。
月份
1
2
3
4
5
6
7
8
9
10
11
12
降水补给
10
20
30
40
100
100
100
100
50
40
30
10
在框中输入:
StopTime[days]:
30
Recharge[mm/yr]:
10
选中第一行,右击选择insertrow,在框中输入:
StopTime[days]:
60
Recharge[mm/yr]:
20
以此类推,将所有数据都输入软件中,如下图
图3.23
单击OK接受赋值
单击F5-Zoom-In
将光标移到加油场的左上角,单击鼠标左键。
沿加油场拉出一个框,然后再点一次闭合放大窗口。
现在我们要给加油场设置一个较高的补给值:
单击AssignWindow
将光标移到加油场的某个角上。
单击鼠标左键,沿加油场拖出一个窗口,然后再单击鼠标左键。
就会出现AssignRecharge窗口。
单击New
设置了补给条件的窗口将变为Property#2属性的蓝色,给Property#2输入以下值:
StopTime[days]:
360
Recharge[mm/yr]:
250
单击OK接受赋值
单击F6-Zoom-O
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实例 MODFLOW 操作 说明 new