登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 jazzyl 于 2020-3-7 20:42 编辑
问题1)这三个参数都各自管的是什么? 问题2)在一个有排放数据的WRF/Chem模拟中,这三个参数在WRF/Chem处理排放中被读取的顺序是什么,分别起到了什么作用?其背后的运行逻辑是什么?
请大神们和坛友指导。涉及代码的讨论也可以。下面是我目前对这两个问题的一些理解。
问题1)这三个参数都各自管的是什么? chem_opt设置了WRF/Chem模式的化学机制。
emiss_opt设置the correct emission input option (比如emiss_opt=3 for NEI emissions, or emiss_opt=5 for RETRO/EDGAR) for the anthropogenic emissions,还有其他的数字,比如6表示GOCART simple emissions,7表示MOZART emissions. 官方tutorial说The choice of emiss_opt depends upon the emissions data arrays that are going to beread in. 使用合适的emiss_opt将能保证所有的排放化学组分被读取。
emiss_inpt_opt设置的是emission speciation的类型,0表示no emissions data read,1表示emissions are speciation for RADM2/SORGAM. Recommended when using the NEI-05 or EDGAR/RETRO emissions speciated for RADM2 chemical mechanism, 还有其他数字表示不同化学机制下的emissionspeciation的类型。
但是如果已经设置了chem_opt(化学机制)和emiss_opt(排放数据的类型),那其实就已经决定了emission speciation,还要emiss_inpt_opt这个参数干嘛呢?
问题2)在一个有排放数据的WRF/Chem模拟中,这三个参数在WRF/Chem处理排放中被读取的顺序是什么,分别起到了什么作用?其背后的运行逻辑是什么?
第一步,首先使用convert_emiss.exe生成排放数据文件时程序中根据emiss_opt的设置以不同方式读取binary emission dataset,然后输出wrfchemi数据文件。这一步骤可以在chem/convert_emiss.F代码中发现:- if(config_flags%emiss_opt == ecptec)
- …
- grid%emis_ant(ips:ipe,kps,jps:jpe,p_e_pm_25)=dumc1(ips:ipe,jps:jpe)
- …
- end if
复制代码 第二步,wrf.exe在运行过程中调用share/mediation_integrate.F中的med_read_wrf_chem_emissions函数读取wrfchemi数据文件。- CALL construct_filename1 (inpname, 'wrfchemi_00z' , grid%id , 2 )
- WRITE(message,*)'mediation_integrate: med_read_wrf_chem_emissions: Open file ',TRIM(inpname)
- …
- CALL open_r_dataset ( grid%auxinput5_oid, TRIM(inpname) , grid , config_flags, & "DATASET=AUXINPUT5", ierr )
复制代码
第三步,wrf.exe在运行过程中调用chem/module_emissions_anthropogenics.F中subroutine add_anthropogenics 函数开始根据chem_opt的不同对不同化学成分加上emission中各个变量进行计算。
- if( config_flags%chem_opt == MOZCART_KPP ) then
- chem(i,k,j,p_p10) = chem(i,k,j,p_p10) + conv_rho_aer*emis_ant(i,k,j,p_e_pm_10)
- chem(i,k,j,p_p25) = chem(i,k,j,p_p25) + conv_rho_aer*emis_ant(i,k,j,p_e_pm_25)
- end if
复制代码 我感觉这三个步骤还很不完善,中间有很多缺失的地方,而且我也没有在代码中找到emiss_inpt_opt这个参数。欢迎各位加入讨论!
|