模拟需要输入的文件
- INX:待模拟的模型
- FOX:驱动模型的Full Forcing气象数据
- Simx:模拟配置文件
INX文件(模型)
在最新版中推出了Monde模型编辑生成组件,允许从矢量数据直接生成模型,接下来我就用这个组件。
简约的流程如下:
1 分析
分析上图,我将其分为以下几大块
2 数据库设置(数据库知识见)
这一步是项目的基础(如何创建项目请见创建项目),我的项目叫做Building_Facade,设置如下,使用Project Database。
在Database Manager中设置项目所需材料的各个属性(因为我用的是有一些实测的数据,所以可以创建属于自己的数据库),需要设置的有:Soils,Materials,Walls,Plants,Profiles。下面依次介绍如何设置:
数据来源
建筑:中华人民共和国《民用热工建筑规范》
植被:部分自测
路面:部分自测
土壤:默认数据库
水体:默认数据库
数据ID
数据ID是最重要的属性,也是识别数据的标识(在后续矢量化的时候有用)
3 矢量化
影像
建立真实环境的模型需要研究区的实际影像,而且影像对分辨率有一定要求,因为是微环境模拟嘛,所以我认为google影像(如何下载google影像)、无人机影像、高分辨率的卫星影像是都可以的,这边我使用的是无人机航拍的影像,如下图所示区域。
创建Shp图层
(这篇博客是关于ENVI-met的,关于ArcGIS的操作不会涉及,请自行查阅相关资料)
在ArcGIS中创建Shp图层,并根据栅格影像矢量化。我创建的shp图层有:建筑、乔木12_9,乔木9_7,灌木,草坪,水体,土壤,表面(水体、土壤和表面可以并到一个文件中,但是我为了方便矢量化,就分开了)。下面忽略矢量化的过程,主要看一下各个shp文件的字段设置:
除建筑外,其余数据我均设置identification为数据标识。建筑添加Height和Bottom字段识别其高度以及底部高度。(有一个错误,灌木的id是“MYDBST")
4 Monde创建模型
打开Monde,右上角选择项目,MyWorld——World Setup——Find Location设置区域
Layers——Add GIS Layer——Import from SHP file,依次导入所有的shp图层,定义UTM ZONE(写到这想写一篇关于GIS中坐标系的博客)
结果如下:
将GIS图层导出为建模图层:在GIS图层上右键——Export to Modelling layer
表面、土壤、水体选择Surfaces,草坪选择Simple Vegeteaion,其余植被选择3D vegetaion
建筑需要设置更多属性,这四个是必须的
全部导出后,画一个SubAreas(这个是需要生成模型的区域)
生成模型,保存为inx文件
这里导出的时候需要注意,因为大部分人研究的是行人高度的气温(1.5m或者1.8m)。而dz(也就是垂直高度的分辨率)决定了输出数据的高度,例如垂直分辨率为3m,输出数据具体高度则为1.5(k=0,k是什么意思可以查看该系列博客的第五篇博客,模拟后的可视化)、4.5(k=1)…。ENVI-met给了一个额外选择,见上图的dz of the lowest gridbox is split into 5 subcells。什么意思呢,就是最底层的一层网格将其分为5个子层。例如dz=3,选中这个选项,那么输出数据垂直方向则变为0.3(k=0)、0.9(k=1)、1.5(k=2)、2.1(k=3)、2.7(k=4)、4.5(k=5)、7.5(k=6)…。所以说,如果想要特定高度输出数据,需要注意这个问题。
结果
这一步因为使用了自己的数据,所以需要花费比较多的时间