〔本站工具发布〕汉袍加身,内核如故——从 AERSCREEN 到 AERSCREEN-ZH

阅读时间: 4 分钟文章字数: 984 字

AERSCREEN-ZH 功能简介 v1.2.26

一、定位

EPA AERSCREEN 筛选模型的中文图形前端,单源筛选:输入源、污染物、建筑、地形、气象,输出最大浓度、标率 Pmax、D10%、评价等级与评价范围。

二、计算内核(实际调用,位于 kernel\)
  1. AERSCREEN.EXE:筛选主模型
  2. AERMOD.EXE:AERSCREEN 依赖的扩散内核
  3. MAKEMET.EXE:生成 .sfc / .pfl 气象文件
  4. AERMAP.EXE:复杂地形下计算源与受体高程
  5. BPIPPRM.EXE:建筑下洗参数
三、输入能力
  • 源类型:点源、水平点源、带帽点源、矩形面源、多边形面源、体源
  • 源参数:经纬度、海拔、烟囱高度 / 内径 / 出口速度 / 烟温(K 或 ℃)、面源长宽与正北夹角、体源边长与 σy / σz、多边形顶点、年排放小时数、排放工况
  • 污染物:内置 SO₂、NO₂、PM₁₀、PM₂.₅、CO、TSP,逐项勾选;速率单位支持 g/s、kg/h、g/(s·m²)、kg/(h·m²)、kg/h(总量)
  • 自定义污染物:名称 + 速率,名称自动规范(NH3→NH₃、SO2→SO₂)
  • 标准限值:内置可修改,自定义统一设置;无 1 小时限值时按 HJ 2.2-2018 5.3.2.1 折算(8h×2、日均×3、年均×6)
  • 建筑下洗:按源独立设置(下拉直接选源,随源增减同步;新源继承上一次参数),含是否考虑、高度、长边、短边、方位角
  • 气象:AERSCREEN 内置典型气象参数(最高/最低环境温度、最小风速、风速计高度、区域湿度),配合地表参数类型(1–8 为 AERMET 内置表)或自定义反照率 / Bowen 比 / 粗糙度
  • 地形:GLO-30 / GLO-90 DEM(默认GLO-90 DEM) 下载与选择,自动生成 AERMAP 输入
  • 其他参数:城市/农村、人口、NO₂ 化学选项、熏烟选项等

四、计算与界面输出

  • 按「源 × 污染物」拆分任务,多任务并行
  • 界面显示 Pmax、D10%、评价等级建议、浓度–距离曲线
  • 运行日志记录每步耗时与参数口径(城市/农村、地表参数、是否下洗等)
  • 结果来自解析 AERSCREEN.OUT 原版文本
五、文件输出

(1)inp\

全部任务输入,命名 项目名称_源_污染物_时间戳.inp

(2)out\

全部任务结果,命名 项目名称_源_污染物_时间戳.out

六、平台与打包
七、应用界面

八、边界说明
  • 单源筛选:每个任务只含一个源、一项污染物,可多任务并行,结果并列展示、不做叠加
  • 不生成网格浓度场与年均浓度场,不做长期平均预测
  • AERSCREEN / AERMOD 计算不做任何修改;仅 AERMAP 有 DEM 边界取值与 CALCHC 剪枝修正,不改变扩散算法与结论口径

〔备注〕在测试过程中发现:“考虑地形”选项在特定情形下会报错,导致程序回退至简单地形继续运算。经排查,发现其根源为:
受体恰好落在 NAD 基准转换间隙;
受体恰好落在像素覆盖间隙。

相关报道:AERSCREEN-ZH 开发札记:DEM 瓦片与模型设定的矛盾与调和

v1.1.0 版已针对该问题进行修补:

  1. 修改 AERSCREEN 两处源码,重新编译,允许通过 AERMAP 的 FILLGAPS 选项对落在 NAD 基准转换间隙的受体用最近节点高程进行填充。
  2. 修改 AERMAP 两处源码,重新编译,消除受体落在像素覆盖间隙的报错。

这两个修补均仅作用于 DEM 瓦片之间的缝隙,对瓦片内部绝大多数的正常受体(占 99% 以上)完全无影响。它们的本质是”修复计算失败“,不是”改变计算方法“。从修复前的复杂地形案例直接失败、回退简单地形,到修复后成功反映复杂地形影响,这是巨大的提升。

《〔本站工具发布〕汉袍加身,内核如故——从 AERSCREEN 到 AERSCREEN-ZH》有11条评论

  1. 作者你好,感谢发布工具,学习了一下。发现个问题:1、您说每源可单独选择是否考虑建筑下洗,我测试了一下(同源复制一下,然后选中不同的污染源,转到建筑下洗界面,分别设置为N、Y),但结果是每个源依然是统一的N或Y,运行结果也相同,并不会单独考虑。2、当存在多个源时,生成的输入文件INP中,stack data依旧只有1行,显示的的第一个污染源的第一项污染物的排放速率参数;但运行的时候,确实是多个污染源多项污染物并行出的结果。我有些疑惑,这样是正确的吗?

    回复
      • 太好了,期待中~~您回复的很快,谢谢您的重视和技术分享。我有些疑问,继续向您请教一下:1、界面实现了污染源的增加、复制、删除等,是否可以2个点源合并为一个的选项或功能?如,两个排气筒的合并,这个有计算规则的哦;2、最终的预测结果图,是单个污染源出的“浓度–距离”的曲线图,是否有“叠加多个源/所有源”的选择?【这个的必要性需要斟酌,在判断评价等级时,好像用的单个源的最大地面浓度占标率?这个疑问是不是有用?从客观上说,多个源叠加的结果,是否更精确呢】;3、如果建筑物下洗,是可以单独选择的,那么其他的选项,如地形,是否也需要单独设置呢?

        回复
        • 您提到的1,可能说的是等效排气筒,在大气预测里面没有这个概念,按单源筛选/进一步预测即可。您提到的2,不属于AERSCREEN的业务范围,需要的话应该采用进一步预测模型进行预测。您提到的3,应该也可以实现,原理和建筑物下洗一样,但是可能不太必要,筛选模型不需要这么复杂。

          回复
  2. 您好,我又重新测试了。之前说的两个问题得到了解决,但是我发现了新的小问题:1,当我打开界面的时候,如果是单独“复制源”,软件新建了一个“源1_副本”,但是建筑物下洗的选项里,下拉菜单并不会新增污染源“源1_副本”的Y/N的改动支持;但是,当我“添加源”后,污染源列表出现3个源,那么建筑物下洗界面就会变为正常的3个分别设置,而且,删除新增源后,依旧正常。使用者“复制”是为了少修改参数,与“添加”的区别并不明显。2、软件新增了INP输入文件夹,能够储存输入文件,而且保留了生成时间,这个设计特别好。但是,对于“test”项目来说,每次新生成的INP文件,是重新生成,依旧保留了上一次生成的文件,但是,运行aerscreen的时候,使用者依旧是运行的最新的INP信息,那么,保留旧的信息,意义不大。

    回复
  3. 您好,我刚才又继续测试,仍旧存在点问题:1、无论是否选择建筑物下洗,输入文件虽然变化了,但是跑出的数据和结论是完全相同的,这是不太对的;2、参照这个网页http://www.eiacloud.cn:9015/aerscreen在气象条件第三部,大气稳定度、环境温度两项参数里,双方设置不同,我想咨询下其中的内核;3、前述网页,最大预测距离25km,与您开发的界面“地形”参数中的25000,应该是相同的吧?4、我输入相同的参数【当然,环境温度这个问题,可能未保持一致哈,一个输入最低/最高,一个输入“环境温度K”】,两个平台计算的结果不同。而且差距很大。

    回复
  4. 啊,输出结果里,能否输出 不同污染源在不同距离的预测浓度、占标率的汇总表?例如,每一行是一个距离50、100、150、200…..25000m,有几列分别记录“源1”“源2”“源3”…在此距离的预测浓度、占标率。其实,如果有关注点的话,这个点的距离及预测浓度也是可以读出来的。我还没来得及细看模型运行后的输出文件【是不是前结果覆盖后结果,导致了数据和结论完全相同的?】。

    回复

发表评论