1、1MIKE 11 HD、SO、AD 、Ecolab 完全实例教程通过建立东江水动力、水质模型,熟悉 MIKE 11 基本功能和应用技巧。练习中将要建立的模型为 DHI 咨询项目实例(世界银行贷款项目),练习所使用的数据完全为该项目真实数据。让我们从最原始数据开始!1 MIKE 11 HD MIKE 11 水动力模型MIKE 11 HD 建模需要以下各类数据或信息 流域描述 河网形状,可以是 GIS 数值地图或流域纸图; 最好能包含水工建筑物和水文测站的位置 河道和滩区地形 河床断面,间距视研究目标有所不同,但原则上应能反映沿程断面的变化 滩区地形资料(有时有滩区的水位蓄水量关系曲线也行),如果
2、要模拟滩区行洪的话 模型边界处水文测量数据 边界最好设在有实测水文测量数据处,如果实在不可能那么就不得不必须估算边界条件了! 用水文测量数据进行率定验证用水文测量数据率定验证的数据越多,模型就越可靠,但工作量也会越大。 水工建筑物设计参数及调度运行规则 所有水工建筑物都有其调度运行规则,问题是 1) 能否收集到有关资料?2) 实际是否按照此规则运行了?建筑物处的实测水位或流量资料可以反映实际运行情况。MIKE 11 将上述信息分别存放在以下文件内: 河网文件 (.nwk11) 断面数据 (.xns11) 边界条件 (.bnd11)2 模型参数文件 (.hd11) (时间序列文件) (.dfs0
3、) 下面开始逐个建立这些文件。1.1 河网文件河网文件或许是 MIKE 11 所有文件中最复杂、又是最重要的一个文件了。收集到的原始数据为 ArcView 河网文件(river.shp):包含了河道位置、河道长度等信息。建立河网文件步骤:第一步:从 ArcView 河网文件提取河网背 景图用 ArcView 打开 river.shp 文件 缩放图形区域至完整包含所有将要模拟的河道 记下此区域左下角和右上角的 UTM 坐标,比如分别为(38448327.54,2517015.05)和(38545141.72,2590115.16) 输出为 bmp 格式图(File Export.)注:如果是纸图
4、,同样可以将其扫描后生成 bmp 文件。用尺在地图上丈量左下角和右上角的坐标,可以设左下角坐标为(0,0)。如果模拟范围不是很大(比如整个长江流域),那么这种对地图的平面假设所产生的误差可以忽略不计。生成的 bmp 图应大致同如下图 1:3图 1第二步:确定所要模拟的各河段名及长度一般水利部门有河段长度信息,从数值地图、AutoCAD 图、甚至纸质地图上也能量出各河段长度。东江模型各河段名、位置及长度见图 2 和表 14表 1河名 长度,米 河名 长度,米Beihai 12468 Ma 3747Chifen 9225 Ou 10400Dafen 2650 Qiandong 2640Dao 12
5、110 Qianxi 3810Dongguan 24930 She 6745Dongjiang 43611 Shizijiao 10325Dongjiangnan 9950 Shu 3017Dongjiangupper 53290 Taiyangdong 3115Dongnangu 7169 Taiyangxi 4160Dongnanhou 18257 Wu 2926Dongnanhou1 1296 Xiancunchong 6036Gu 915 Xibian 3290Heng 4830 Zengjiang 33031Henghai 2550 Zhongtang 13843Hongguo 18
6、074 Zhongtang1 824Huang 82455ZengjiangDongjiangDongjiang upperDongjiangnanDongnanguHuangSheDongnanhouShizijiaoXiancunchongMaGuHengHongguoOuDaoXibianQianxiQiandongTaiyangxiTaiyangdongDongguanShuWuDongnanhou1HongguoChifenBeihaiDafenZhongtang1HuangHenghai图 2Zhongtang17图 29第三步:建立东江模型的河网文件1) 引入河网背景图打开 MI
7、KE ZERO ,File New MIKE 11 River Network(见图 3) OK,弹出一个新窗口(图 4 ) 输入河网模型区域的范围(左下角和右上角坐标) 输入刚才记下的背景图左下角和右上角坐标(38448327.54,2517015.05)和(38545141.72,2590115.16) OK, 出现河网文件视图(模拟区域暂时空白) 河网文件菜单 Layers Add/Remove. 点击添加项目键 点击浏览按钮, 引入刚才生成的 bmp 背景图 回到河网文件视图,Layers Properties. 将图像坐标 Image Coordinates 修改为正确值(38448
8、327.54 ,2517015.05)和(38545141.72,2590115.16)。至此背景图引入工作完成,河网视图应与图 5 大致相同。10图 3图 411图 52) 输入各河段信息使用河网文件编辑器内的工具条定义各河段12例如:要在背景图上绘制各河段时按 ,在河段的起始点开始鼠标左击背景图上相应位置,在河段结束点鼠标左键双击,完成该河段的绘制。可以放大背景图以准确绘制河段走向。准确的河段走向有助于确定各河段连接关系、确定该河段上水工建筑物或水文测站的里程,所以是很重要的工作。请参见“帮助”或按 F1 查看其它工具按钮的功能。以下是定义河段信息的步骤。注意:MIKE 11 目前暂时还不
9、能使用恢复键,所以在操作过程中请随时保存,一旦操作失误,您只能删除重做或不保存退出,重新进入河网文件编辑器!a) 在背景图上绘制某条河段b)打开河网文件编辑器的表格视窗(View Tabular View. )c) 在左侧列表区展开 Network,选 Branch。在右侧的河段信息内容中可以发现刚才所绘制河段的信息,MIKE 11 已自动为该河段命名,并确定了其长度。将该河段名改为实际名称。注意避免使用中文河段名称!河段长度一般不会与实际长度一致,将在以下 d) 步骤中修改。d) 在左侧列表区选 Points。在右侧的河段点信息内容中可以发现刚才在绘制河段过程中每次点击点的坐标位置(MIKE
10、 11 已自动测出!),您会发现河段名已经是实际名称。注意:这些点并不是模型的计算点,与计算没有任何关系!里程类型 Chainage Tpye 列上,我们将该河段的起始点从 System Defined 改为 User Defined,将接下来一列里相应行的里程数Chainage 改为 0(程序缺省值为 0);将该河段的结束点从 System Defined 改为 User Defined,将接下来一列里相应行的里程数 Chainage 改为实际的河段长度。这样我们已经将程序测出的河段长度改成了实际长度。注意:任何河段的起始里程可以是任何数值,正、零或负数,整数或小数。选值的原则是与当地水利部
11、门采用的桩号值一致,这样将来若要与他们讨论问题时会比较方便,否则就取 0。必须要满足的是:河段长度 结束点里程数 起始点里历程数e) 重复以上步骤 a) 至 d),完成所有河段信息的输入。f) 在河网文件编辑器的图像视窗内用工具按钮连接各河段。注意:有多条河段相连时必须所有河段同时连向某条河段。但连接方向(谁连向谁)对计算结果没有任何影响。g)在河网文件编辑器的表格视窗内 NetworkBranch,在右侧的河段信息总览表第二列是地形标识 TopoID 信息。这是河网文件编辑器将来从断面文件编辑器内读取与该河段相对应的断面数据信息、参与模型计算的唯一信息通讯通道,一定要与断面文件编辑器内相应的
12、 TopoID 一致。13TopoID 可以是数值,也可以是文字符,一般用断面测量年份,如Topo2002,这样便于提醒自己目前模型采用的断面数据来自哪年实测数据,或用 Artifical,表明该断面数据并不是真实数据。参见有关断面文件编辑器内容。h)在河网文件编辑器的图像视窗内 SettingsNetwork.或 Font.你可以对图像的外观做随意修改,选择自己想显示的信息。至此河网基本信息输入完毕。练习:以东江模型的河网为例,熟悉河网编辑器的操作及编辑和显示功能。- 改变里程值,观察 MIKE 11 如何自动重算各点里程。- 改变显示的颜色和符号。- 关闭河网编辑器(不要保存)。创建一个新
13、的河网文件并输入背景图。完成的东江模型河网应与图 6 基本一致,图 61.2 断面文件编辑器收集到的原始数据为文本格式的所有河道各断面 x, z 数据,断面的位置为AutoCAD 文件。为节省时间,已转换成符合 MIKE 11 输入要求格式的文本 文件。所要求的格式见本文件附录一 MIKE 11 断面输入格式说明,用14FORTRAN、 BASIC、EXCEL VBA 等自编小程序,很容易将原始数据格式转换成符合 MIKE 11 输入要求格式的文本 文件。开始以下步骤时假定已有转换好的文本文件东江模型断面.txt。第一步:打开断面文件编辑器MIKE 11 New Cross Sections
14、(见图 7)15图 7第二步:在断面文件编辑器中引入断面数据File Import Import Raw Data & Recompute,找到东江模型断面.txt 文件保存路径 OK, 引入成功后在断面文件编辑器视窗左侧出现断面列表,右侧图像视窗显示一个或多个断面形状。第三步:在图像视窗内查看各个断面形状,从直观上判断断面数据是否合理。第四步:保存文件,断面文件生成完毕。单个断面的插入、修改等操作法方法学习结合练习进行;断面文件编辑器中一些参数设定方法详见培训 PPT。练习:熟悉断面文件编辑器的显示和编辑功能。- 尝试修改、复制和插入新的断面- 从图像修改断面数据- 观察处理后数据表格 -
15、输出断面数据至一文本文件。关闭断面文件(不要保存),创建一个新的断面文件,输入断面文本文件。1.3 边界文件编辑器和时间序列编辑器所有外部边界条件和内部边界条件都在边界文件编辑器里设置。所谓外部边界就是模型中那些不与其它河段相连的河段端点(即自由端点)物质流出此处即16意味着流出模型区域,流入也必然是从模型外部流入,这些地方必须给定某种水文条件(如流量、水位值),否则模型无法计算。所谓内部边界是指从模型内部河段某点或某段河长流入或流出模拟河段的地方,典型的例子包括降雨径流的入流、工厂排污、灌溉取水,内部边界条件应根据实际情况设定,是否设定这些边界条件设不设通常不会影响模型的运行,但会影响到模拟
16、结果的可靠性。MIKE 11 用于边界条件的数据需要转换成时间序列文件(带后缀 dfs0)方能被引用。东江工程收集到的外部边界的原始资料包括上游边界博罗和麒麟站、下游大盛、麻涌、泗盛围、漳澎的水位流量,保存在水文要素.xls 文件内。第一步:将 EXCEL 文件转换成 dfs0 格式的时间序列文件,以下游边界水位时间序列文件为例:a) 打开水文要素.xls 文件,观察数据内容:所有下游边界的水位流量数据时间长度都为 2001 年 2 月 7 日 14:00 至 2 月 16 日 10:00,时间间隔为 1小时。上游博罗和麒麟站水位流量为日均值,时间范围也是 7 日至 16 日。所有站的数据都是
17、等时间等间隔的。并且由数据可见,上游边界处的水位已基本不受下游潮汐的影响了。b) MIKE 11 New MIKE Zero Time Series Blank Timeseries OK,您会看到弹出如图 8 所示的 dfs0 文件窗口。17图 818 时间轴类型 Axis Type 选等时间间隔; 开始时间输入 2001 年 2 月 7 日 14:00:00;时间步长输入 1 小时;时间步 长数输入 213;在 Item Information 区内 Name 栏输入大盛水位(可以用中文名称!),类型选 Water Level,单位为米(缺省值)按 Append 三次,新添三行,同样分别填
18、入麻涌、泗盛围、漳澎的有关信息,按右上角 OK 按钮在出现的时间序列文件视窗内检查最后一列的时间是否为 2001 年 2 月 16 日10:00:00。如果不是,在左侧的图像视窗内鼠标右击,选属性 properties., 回到刚才窗口进行修改。如果是,在打开的 Excel 文件内选择这些站的水位数据,复制(或 Ctrl-C)后回到时间序列文件视窗,在右侧的表格视窗内选相应的列,按粘贴(或 Ctrl-V),如果 EXCEL 内各站的排列顺序与 dfs0 的一样,可以一次性同时复制和粘贴所有这些站的数据。保存文件,完成 dfs0 时间序列文件制作。记住文件制作过程中要 随时保存!重复以上步骤,完
19、成所有边界文件的制作,对于有同样时间轴的数据,即使是不同数据类型(如水位、流量、浓度)也可以放在同一个时间序列文件内。c) 所有 dfs0 文件完成后,在边界文件编辑器里输入边界条件:MIKE 11 New MIKE 11 Boundary Condition, OK, 出现边界文件窗口,如图 9。19图 9以输入 DongjiangUpper 河段的 上游博罗站的流量边界条件为例: 在边界描述 Boundary Description 栏选 Open;边界类型 Boundary Type 栏选Inflow;河段名为 DongjiangUpper;填入正确的里程数。 视窗中间区的边界计算内容暂
20、时只选 Include HD Calculation 在接下来的水文边界信息区内 TS 类型选 TS File,按 找到存放刚才生成的时间序列文件的路径,并选择正确的项目(在 dfs0 文件中可能有许多项目,如刚才生成的一个 dfs0 文件内有四个水位项)。右侧的 是用于打开对应的20时间序列文件,而最后一栏的 TS Info 是提醒你刚才选中了 dfs0 文件中的哪一项。 光标返回到最上面区域,按 TAB 键,添加所有其它边界条件。总共有 6 个外部边界条件。现在我们建立两个内部边界条件:1) 在 DongjiangUpper 的上游 30035 里程(各人根据自己的河网定义可能有所差异,博
21、罗以下约 23km)处,东深取水口,取水量为 70m3/s。2) 在 DongjiangUpper 的上游博罗以下 1km 处,某工厂排污,排水量为0.36m3/s。光标返回到最上面区域,按 TAB 键两次,再添加两个边界条件。1)添加取水口边界 在边界描述 Boundary Description 栏选 Point Source;边界类型 Boundary Type栏选 Inflow;河段名为 DongjiangUpper;填入正确的里程数。 视窗中间区的边界计算内容暂时只选 Include HD Calculation 在相应的水文边界信息区内 TS 类型选 Constant,数值输入-7
22、0(取水!)2)添加工厂排污边界 在边界描述 Boundary Description 栏选 Point Source;边界类型 Boundary Type栏选 Inflow;河段名为 DongjiangUpper;填入正确的里程数。 视窗中间区的边界计算内容暂时只选 Include HD Calculation 在相应的水文边界信息区内 TS 类型选 Constant,数值输入 0.36完成边界条件输入,保存文件。注意文件生成过程中随时保存文件。练习:使用时间序列编辑器- 在图像窗口修改数据,注意在表格视窗内数据的变化。 - 改变时间序列编辑器的显示属性。- 用工具栏中的“calculato
23、r”功能改变时间序列数据。- 在 Excel 和时间序列编辑器之间进行数据交换。1.4 HD 参数文件编辑器参数文件主要是定义模拟的初始条件和河床糙率。里面尽管有许多菜单但,大部分内容不必去接触触动。第一步:设定初始条件MIKE 11 New HD Parameters OK, 弹出参数文件窗口,如图 10。2122图 10进入初始条件 Initial 菜单,添加初始水位和流量。初始条件设定的一个很重要目的是让模型平稳启动,所以原则上初始水位和流量的设定应尽可能与模拟开始时刻的河网水动力条件一致。实践中,初始流量往往可以给个接近于 0 的值,而初始水位的设定必须不能高于或低于河床,否则可能导致
24、模型不能顺利起算。23山区性河道往往坡降很大,初始水位有时很难设定,往往须用其它方法解决这一问题,详见有关模拟文件编辑器内容。对于东江模型,在察看个河段的河床地形后,我们可以简单设置:全域值:水位0 米;流量 1m3/s;局部值:河段 DongjiangUpper 上游初始水位4 米;其下游初始水位0 米。第二步:设定河床造率糙率进入河床造率糙率 Bed Resist 菜单,设定河床造率糙率。河床造率糙率是率定参数,应根据对模拟河道的认识及模型计算结果确定。通常可以从 n=0.03 开始率定。各个河段设定不同造率糙率值的方法详见培训 PPT 文件。1.5 模拟文件编辑器我们基本几乎已经完成了所
25、有基本的模型设置,可以开始计算了!模拟文件编辑器的作用是集成刚才所生成的所有文件的信息,让它们成为一个整体;同时定义模拟时间步长、结果输出文件名等。第一步:打开模拟文件编辑器MIKE 11 New MIKE 11 Simulation OK, 弹出模拟文件窗口,如图11。24图 11第二步:选择模型类型。暂时选择 HD 模块。第三二步:进入输入 Input 菜单高亮框表示对于 HD 模拟需要这些文件。按 按钮引入刚才生成的所有文件:河网文件、断面文件、边界文件、HD 参数文件。可以随时点击 编辑这些文件。如果我们从这里打开刚才做好的河网文件,可以发现许多刚才被禁用的功能键都已经被激活,可以使用
26、了。这是因为通过模拟文件编辑器已经把所有文件链接起来,可以通过河网文件访问其它文件了,如断面文件、边界文件和参数文件。第四三步:进入模拟 simulation 菜单我们选择固定时间步长5 分钟;模拟开始时刻为 2001 年 2 月 7 日 14:00:00;结束时刻 2001 年 2 月 16 日 10:00:00。时间步长的确定经常要通过反复试算调整,与河床地形与边界条件密切相关,并且原则上要满足克朗数不大于 10。对于如山区河流等初始条件不易合理设定的情形,缩小时间步长是一个行之有效的方法。对于模拟时段内短时间有大量流量进出、而其它时期比较平稳的情形,选择可变时间步长比较合适,可大大缩短计
27、算耗时。接下来我们选择初始条件设定 Initial Conditions。还记得我们曾经在 HD 参数文件里也设定过初始条件?如果现在我们在这里选择参数文件 Parameter File,那么刚才的设置就会起作用;如果现在我们选择稳态 Steady State,那么 MIKE 11就会“忘记”参数文件内有关初始条件的设定,而根据边界点上给出的水位流量数据(从边界文件中调用),利用稳态假设计算各计算节点上的初始水位流量;如果我们选择 Steady + Parameter 稳态参数,那么在参数文件中做过特别设定的河段节点上模型用这些设定值作为初始条件,其它点用稳态假定计算,25如同选择了稳态方法;
28、如果选择了热启动 Hotstart,那意味着要用以前的模拟结果作为当前模拟的初始条件。还是用山区河流为例,其初始条件可能比较难设,但模型一旦运行一段时间后就很可能会比较稳定,即可以增加时间步长。用热启动就能解决这一矛盾:先用非常小的时间步长计算(如 0.1 秒),当计算稳定后(如计算一天)停止计算;重新计算模型,用大时间步长(如 5 分钟),用热启动模式,将刚才模拟结束时刻的计算结果作为当前模拟的初始条件。对于东江模型,初始条件不很敏感,我们选择稳态或参数文件都可以。第五四步:定义输出结果文件名和保存频率。假定计算时间步长为 5 分钟,但我们步不需要这么密的计算值,或许半小时一个结果已经足够,
29、那么我们可以定义保存频率为 6,即计算 6 个时间步保存一次结果。这样可以减小结果文件大小。第六五步:准备计算进入 Start 菜单,准备开始计算。如果验证状态 Validation Status 框内都是绿灯,那么您就可以按 Start 键开始计算了;如果有红灯,那么在下面的验证信息Validation Message 框内就会出现相应的出错信息,提醒您进行修改。这只是初步检查,只能检出一些明显的模型设置错误。第七六步:模型运行如果出现如图 12 的运行进度框,那么恭喜您!模型设置成功,正在运行!有时会出现警告信息 Warning Message,这是 MIKE 11 认为模型设置可能存在一
30、些小问题,但这些问题还不至于影响到模型的运行,因此提醒您去检查一下。若您认为没有问题就可以要求 MIKE 11 继续运行下去。26图 122 MIKE ViewMIKE View 用于演示和提取包括 MIKE 11 在内的一些 DHI 软件计算结果。对于协助率定和报告制作非常有用。2.1 装载结果文件开始 程序DHI 软件MIKE 11MIKE View 打开 MIKE View。在 MIKE View 窗口内 File Open,文件类型选 MIKE 11 结果文件类型(*.res11)),出现如图 13 对话框,点击 OK 后进入 MIKE View 主窗口。27图 132.2 平面动态演
31、示(以流量为例)在平面视图上点击鼠标右键 Option. 弹出对话框,如图 14 Draw Branches As 选最后一列 Water Level 所在列 在该列的下拉菜单中选 Discharge 进入 Symbols and Fonts 菜单 设置河段线条粗细及是否绘制流向箭头 点击 OK 退出 在主窗口上方工具条内按播放键开始动态演示。显示流量大小的各种颜色通过调节调色板实现(可以在主窗口上方工具条内按调色板工具显示调色板):在调色板内点击鼠标右键 选择各个菜单调节分级、色彩,还可以保存供将来调用。图 142.3 剖面动态演示在主菜单上方工具条内按 按钮,当光标回到平面视图内,接近河段
32、时,光标变形,表示已检测到河段,可以对之选择剖面显示。沿着你想显示的各河段前进,途中如果你选错了河段,按退格键 BACKSPACE 返回一次操作,按退出键ESC 放弃所有选择。当想结束选择时按住 Ctrl 键点击鼠标左键,在回答有关提示后显示剖面的水位或流量,并可对之进行动态演示。282.4 模拟与实测结果的比较 最常用的率定手段I) 绘制计算结果图。如果知道哪些河段节点有实测水文资料,可以用于率定,那么有两种方法绘制这些点的结果:a) 知道测站在地图上位置,但不清楚具体里程数。这时您可以按工具条内的按钮,弹出数据类型选择 Data Type Selection 对话框,选择您想比较的数据类型
33、(水位或流量) 点击 OK,当光标回到平面视图内后,靠近该河段节点时,光标变形,表示已检测到该节点,左击鼠标,就会出现该节点的计算结果曲线图。b) 知道节点里程数,但不清楚地图上的位置。这时您可以按工具条内的 按钮,弹出数据类型选择 Data Type Selection 对话框,选择您想比较的数据类型(水位或流量) 点击 List,弹出数据列表框后选择想显示的节点,按 Draw Graph,就会出现该节点的计算结果曲线图。II) 引入实测数据曲线在生成的计算曲线图内点击鼠标右键,在弹出的菜单中选择 External TS.,在弹出的外部时间序列对话框中按 LOAD DFS0,选择要引入的实测
34、数据(必须是dfs0 格式),然后选择所要比较的项目(记住一个 dfs0 文件里可能有许多项目)2.5 模拟与模拟结果的比较 率定或灵敏度分析手段率定过程中还有一种比较也很常见,就是当前计算结果与以前计算结果的比较,看参数值或边界条件变化对模拟结果的影响。MIKE View 中的方法很简单。主窗口 FileAdd.,引入你想与当前计算结果进行比较的其它结果文件;按工具条内的 按钮,弹出数据类型选择 Data Type Selection 对话框后,在选择您想比较的数据类型之前,选择你需要进行比较的结果文件。2.5 6 保存 MIKE View 设定您可能已经在 MIKE View 窗口内打开了
35、许多图平面的、剖面的,以及许多率定比较曲线一般总是有不少实测资料用于率定的。每次新的计算结果出来后又要重新制作这些图,而其实图的数量和种类跟原先的一模一样。这时您可以把这些布局保存下来,下次打开 MIKE View 后就可以直接调用这个布局了。方法是:在主平面视图内点击鼠标右键,选 Save Complete layout.,保存后下次打开 MIKE View 时,File Load Complete Layout .,就可以调出原先保存的布局了。292.6 7 结果数值提取按工具条内的 按钮,弹出数据类型选择 Data Type Selection 对话框,选择您想比较的数据类型(水位或流量
36、) 点击 List,弹出数据列表框后选择想显示的所有节点,按 Show Values,就会出现这些节点的整个模拟时段计算结果时间序列值。选择所有列按 Ctrl+C打开 Excel按 Ctrl+V,计算结果就粘贴到Excel 文件中了。3 MIKE HD 与 NAM 的耦合假定现在我们已经有 NAM 模型的计算结果了。耦合方法是第一步:在模拟文件中进入输入 Input 菜单,在最后一行按 引入 NAM 计算结果文件。第二步:打开河网文件的表格视窗, ViewTabular View. Runoff/groundwater links Rainfall-runoff links,如图 15。在子流域定义Catchment definitions 内填入流入该河段的子流域名称及相应的分部面积,其右侧填入子流域名称、其实里程数和结束里程数;在光标移入下面的总览表内,按 TAB 键添加行,定义新的径流流入河道信息;依此类推,完成所有的定义。东江模型中降雨径流进入河网的信息见降雨径流进入河网信息表.xls。至此已将 MIKE HD 与 NAM 耦合。30图 15