这周仔细看了CMAQ手册 CMAQv4.7.1 Operational Guidance Document 的1-5章,弄清了各子程序的compilation options, execution options, 输入还有输出。CMAQ给用户极大的灵活性,同时也带来了配置安装的极大的复杂性,每个子程序在编译和执行时都有很多的选项,目前我了解的更多的是 technical options,而 scientific options则无法理解。
本打算这周把WRF和CMAQ连起来跑一个case,但没有实现。一来团队人员不小心误删了wrf生成的文件,另外在ARWPost上又花了一点时间;二来自己这周也没什么工作热情。
顺利的话,下周串上WRF, CMAQ, SMOKE
2/17/2012
2/12/2012
WRF和CMAQ安装配置
这周主要完成了WRF和CMAQ的安装。
记不清这是第几次安装WRF了。之前一直在自己的笔记本上装,环境是Ubuntu 32位和Intel Compiler。但笔记本上的Ubuntu经常崩溃,经常不能开机,所以就更换了机器。现在在台式机上,搭的CentOS 5 32位。原来也用的Intel 编译器,但后来跑WRF的metgrid.exe时,总是出现这么一个错误:
forrtl: severe (173): A pointer passed to DEALLOCATE points to an array that cannot be deallocated
随即程序就停止了。
尝试了好久,才发现网上也有人曾遇到这个问题,说是Intel编译器的问题,换成PGI就可以了。我尝试了一下,还真是。看来不同的编译器,对程序的影响还是很大的。
于是这周的工作就是安装CentOS, PGI, MPICH2, NetCDF, I/OAPI, WRF, WPS, ARWPOST, CMAQ, SMOKE。
CMAQ的安装略微复杂,要装好多库和子程序,如M3BLD, STENEX, PARIO, CVS, JPROC, BCON, ICON, CCTM, MCIP。安装过程在官方的文档中都给出了详细的说明,无非就是更改一下安装脚本中变量的路径、编译器的路径等信息。
SMOKE为CMAQ提供了污染源的情况,目前还不知道具体有哪些参数。
下周的工作目标是把WRF和CMAQ整合起来,运行一个case。
记不清这是第几次安装WRF了。之前一直在自己的笔记本上装,环境是Ubuntu 32位和Intel Compiler。但笔记本上的Ubuntu经常崩溃,经常不能开机,所以就更换了机器。现在在台式机上,搭的CentOS 5 32位。原来也用的Intel 编译器,但后来跑WRF的metgrid.exe时,总是出现这么一个错误:
forrtl: severe (173): A pointer passed to DEALLOCATE points to an array that cannot be deallocated
随即程序就停止了。
尝试了好久,才发现网上也有人曾遇到这个问题,说是Intel编译器的问题,换成PGI就可以了。我尝试了一下,还真是。看来不同的编译器,对程序的影响还是很大的。
于是这周的工作就是安装CentOS, PGI, MPICH2, NetCDF, I/OAPI, WRF, WPS, ARWPOST, CMAQ, SMOKE。
CMAQ的安装略微复杂,要装好多库和子程序,如M3BLD, STENEX, PARIO, CVS, JPROC, BCON, ICON, CCTM, MCIP。安装过程在官方的文档中都给出了详细的说明,无非就是更改一下安装脚本中变量的路径、编译器的路径等信息。
WRF是新一代模拟气象条件的中尺度模型。CMAQ以WRF的输出为驱动,模拟污染物的传播和扩散。CMAQ综合考虑了气象条件、化学变化、污染源情况、物理过程,通过将有限空间划分成格网(不规则的?),以质量守恒为原则,用欧拉模型,计算网格间污染物的传播和网格内污染物的化学变化。CMAQ作为第三代空气质量模型,其最大的特点在于可同时考虑多种污染物,以及多尺度的无缝结合,所谓“ One atmosphere"。
I/O API的作用是读入和输出数据,以及程序内部数据的传输。数据以netCDF形式存储。如果要做数据转换的话,这部分应该着重研究。
M3BLD的作用是将源代码编译成二进制可执行文件,因此要第一个编译。
JPROC的作用是计算在无云情况下,光分解的速率。因为很多化学物质是在光照情况下才发生的,所以入射光的能量对污染物的传播和扩散有重要影响。它通过查找一个静态表 CSQY 来确定这个值,具体原理不太清楚。
ICON为模型提供初始条件,BCON为模型提供边界条件,前者是 temporal boundary condition, 后者是 spatial lateral boundary condition。
MCIP读入大气模型( WRF )的输出结果,根据CMAQ的grid配置做适当内插和外延,为SMOKE和CMAQ提供气象条件。
CCTM是核心的CMAQ程序,将 JPROC, ICON, BCON, MCIP生成的文件整合,计算污染物的扩散情况。
CMAQ还有一些可选的库,如PROCAN用于跟踪某种污染物的传播情况,所谓过程分析 (Process analysis);CHEMMECH可供高级用户建立自己的化学变化过程。
SMOKE为CMAQ提供了污染源的情况,目前还不知道具体有哪些参数。
下周的工作目标是把WRF和CMAQ整合起来,运行一个case。
2/04/2012
重新开始
虽然这周什么也没干,但作为写博客的开始,还是记录一点。从这周开始,每周写工作总结,不定期写学习笔记。
这周从周二开始工作。笔记本装的Ubuntu还是打开不了图形界面,放弃了。打算重装系统,但怎么都装不上Fedora和CentOS。结果放台式机上一装就成了,没想到忙活了半天竟然是硬件问题。这下好了,一不做二不休,把台式机给重装了,以后也不受管理员管辖了。
以后台式机正式成为工作机器,所有之前的工作要重新开始。重新安装WRF和CMAQ。同时,对CentOS这个系统不熟悉,还要再学习一阵子。
这周从周二开始工作。笔记本装的Ubuntu还是打开不了图形界面,放弃了。打算重装系统,但怎么都装不上Fedora和CentOS。结果放台式机上一装就成了,没想到忙活了半天竟然是硬件问题。这下好了,一不做二不休,把台式机给重装了,以后也不受管理员管辖了。
以后台式机正式成为工作机器,所有之前的工作要重新开始。重新安装WRF和CMAQ。同时,对CentOS这个系统不熟悉,还要再学习一阵子。
1/02/2012
漫长的圣诞游 · 凤凰
一个单反一个背包,我就这样在外面游荡了9天10夜。不知以后还能不能像现在这样,有点小闲,有点小钱,有人作伴,肆意游玩。只是玩得时间实在有点久,久得让人感觉不真实。
23号晚8点50,坐上从深圳到长沙的火车。早上6点45到了这座著名的娱乐城市。湖南给我的印象一直不好,是那种又脏又乱的感觉;但长沙却完全不是这样,街道很干净,城市布局也很清楚。整个城市被湘江隔成两半,主城区在湘江东部,由几条纵横的大道连接;西部主要有岳麓山景区。到了之后简单吃了个早饭(车站边上的肉包子很好吃!让我想起了小时候的包子,皮薄肉厚!),直奔岳麓山。我从东门上的山(最好是南门,景点集中),一路上全是铺好的柏油马路,没什么美景可言,直到爱晚亭和岳麓书院,才将我震撼了。从未见过一个亭子能这般美丽,在火红的枫叶和初升的朝阳的映衬下,再僵硬的心灵都会被感化,再匆忙的脚步也禁不住会放慢,难怪杜牧当年也禁不住感叹“停车坐爱枫林晚,霜叶红于二月花”。
岳麓书院建于宋朝,至今逾千年历史。书院依山而建,有淙淙细水,有翠竹茂林,蜿蜒的长廊让人想像古时书生白衣飘飘的神采,林间的石桌让人仿佛听到他们抑扬顿挫地朗读四书五经。总之,岳麓书院真得让我闻到了文化的气息,一种沉淀,一种我在任何一座高校都未尝感受到的神圣。
接下来的3天在凤凰度过。相对其他景点,凤凰的交通算是不太发达的,从长沙到凤凰需要5个半小时,最后一段从吉首到凤凰的路没有高速,十分颠簸。但即使这样也不能阻挡这个小镇被迅速侵蚀的命运,沈从文笔下的那个古朴的湘西老镇已经一去不复返了。每当看到一些穿着苗族服饰的老太向直钩钩地向路人要钱时,我都很心痛。而漫街的酒吧似乎怎么也无法和当地的文化融合到一起。总得来说,这个小镇已经被拙劣地包装过,让人感觉畸形。
凤凰的中心是虹桥,桥面连接的两条街和桥底的一条街就是几乎整个凤凰可逛的地方了。漫街都是酒吧、工艺品店,还有其他一些富有创意的小玩意儿。对第一次逛这些店的我来说,还蛮有新意的。但后来到了阳朔,发现有同样这些“创意”,不禁让我对它们大打折扣。这些无非还是一些商品,飘着满世界都是的商业气息。
不过凤凰相对于阳朔让人惊喜的是,有许多可爱美丽的义工。他们大多是大学生,利用假期来这里呆上十几天或几十天,做些闲散的零工做旅游的资费。他们做的工作往往也很有诗意,比如在颇具苗族特色的纺织店里操着纺具,或者和着悠扬的音乐敲着当地特有的鼓,或者卖着手绘的明信片。他们也不急着招揽生意,就那样静静地坐在那里,身边躺着昏睡的金毛,伴着精心装饰的、别具特色的门店,这本身就是一幅绝美的画面。
凤凰也有许多小吃,像腊肉、血粑鸭、酸汤鱼、苗家社饭,还有特产姜糖、猕猴桃干,都一一尝过,但并没有太多惊喜。
回到长沙的那晚,尝了下当地有名的小吃店“火宫殿”,倒是让人惊喜。每盘菜都是小小的一碟,三五块钱不等,物美价廉,吃了好多,像牛肉馓子、湖南臭豆腐、娣妹团子,很地道,很美味。
三天的时间,第一天在凤凰古城中闲逛,晚上去了家静静的酒吧;第二天去了奇梁洞,第一次见了溶洞;第三天又简单地逛了下古城。就这样淡淡地渡过了凤凰的三天。
23号晚8点50,坐上从深圳到长沙的火车。早上6点45到了这座著名的娱乐城市。湖南给我的印象一直不好,是那种又脏又乱的感觉;但长沙却完全不是这样,街道很干净,城市布局也很清楚。整个城市被湘江隔成两半,主城区在湘江东部,由几条纵横的大道连接;西部主要有岳麓山景区。到了之后简单吃了个早饭(车站边上的肉包子很好吃!让我想起了小时候的包子,皮薄肉厚!),直奔岳麓山。我从东门上的山(最好是南门,景点集中),一路上全是铺好的柏油马路,没什么美景可言,直到爱晚亭和岳麓书院,才将我震撼了。从未见过一个亭子能这般美丽,在火红的枫叶和初升的朝阳的映衬下,再僵硬的心灵都会被感化,再匆忙的脚步也禁不住会放慢,难怪杜牧当年也禁不住感叹“停车坐爱枫林晚,霜叶红于二月花”。
岳麓书院建于宋朝,至今逾千年历史。书院依山而建,有淙淙细水,有翠竹茂林,蜿蜒的长廊让人想像古时书生白衣飘飘的神采,林间的石桌让人仿佛听到他们抑扬顿挫地朗读四书五经。总之,岳麓书院真得让我闻到了文化的气息,一种沉淀,一种我在任何一座高校都未尝感受到的神圣。
接下来的3天在凤凰度过。相对其他景点,凤凰的交通算是不太发达的,从长沙到凤凰需要5个半小时,最后一段从吉首到凤凰的路没有高速,十分颠簸。但即使这样也不能阻挡这个小镇被迅速侵蚀的命运,沈从文笔下的那个古朴的湘西老镇已经一去不复返了。每当看到一些穿着苗族服饰的老太向直钩钩地向路人要钱时,我都很心痛。而漫街的酒吧似乎怎么也无法和当地的文化融合到一起。总得来说,这个小镇已经被拙劣地包装过,让人感觉畸形。
凤凰的中心是虹桥,桥面连接的两条街和桥底的一条街就是几乎整个凤凰可逛的地方了。漫街都是酒吧、工艺品店,还有其他一些富有创意的小玩意儿。对第一次逛这些店的我来说,还蛮有新意的。但后来到了阳朔,发现有同样这些“创意”,不禁让我对它们大打折扣。这些无非还是一些商品,飘着满世界都是的商业气息。
不过凤凰相对于阳朔让人惊喜的是,有许多可爱美丽的义工。他们大多是大学生,利用假期来这里呆上十几天或几十天,做些闲散的零工做旅游的资费。他们做的工作往往也很有诗意,比如在颇具苗族特色的纺织店里操着纺具,或者和着悠扬的音乐敲着当地特有的鼓,或者卖着手绘的明信片。他们也不急着招揽生意,就那样静静地坐在那里,身边躺着昏睡的金毛,伴着精心装饰的、别具特色的门店,这本身就是一幅绝美的画面。
凤凰也有许多小吃,像腊肉、血粑鸭、酸汤鱼、苗家社饭,还有特产姜糖、猕猴桃干,都一一尝过,但并没有太多惊喜。
回到长沙的那晚,尝了下当地有名的小吃店“火宫殿”,倒是让人惊喜。每盘菜都是小小的一碟,三五块钱不等,物美价廉,吃了好多,像牛肉馓子、湖南臭豆腐、娣妹团子,很地道,很美味。
三天的时间,第一天在凤凰古城中闲逛,晚上去了家静静的酒吧;第二天去了奇梁洞,第一次见了溶洞;第三天又简单地逛了下古城。就这样淡淡地渡过了凤凰的三天。
12/11/2011
新的开始
2011年12月10日,这天标志着又一个里程碑,纪念一下。
来香港三个半月了,一个学期就这样过去了,似乎什么都没有干。开始的时候做了点可视化工作,然后换了方向,做环境污染。但又得从大气模式开始,于是去学WRF,学GrADS,装NETCDF,看空气污染物扩散的文章。但基本都一知半解,毕竟那个领域太专了,整几个热能量、风应力什么的术语就把我搞晕了。前几段时间还有些进展,毕竟搭完了WRF框架,跑了几次模式。但后来就没继续了,一来不知道怎么继续; 二来要准备出国; 三来要考托福。是的,该死的托福。
我真不知道为什么有人能够每天如一日地准备大半年托福。我一拖再拖,剩最后十天左右才正式开始准备,但即使这样,中间有几天还是几度想要放弃。不知道为什么,每当准备托福,甚至一想到还要口语、还要写作、还要听力的时候,我就很恐慌,不愿意去触碰它。现在想来,可能只是自己太弱,被它吓到了吧。
终于还是挺了过来,不过还是没像太傻里那些人这么疯狂,我只是经常地听听力,听TPO,而阅读和写作基本没怎么练。我至今不明白加试、机经是什么。不过昨天做完自我感觉很不错,尤其是口语,我觉得自己条理应该挺清楚了,拿个合适的分数应该不成问题。
就因为这个托福,像一座重山一直压着我,让我无暇顾及其他(其实主要不是没时间,而是精力)。真正的学术耽搁了很久。算是一种代价吧,为了出国。如果这次成绩可以,那也算是种回报;可是万一仍不理想呢?那么之前的时间就相当于挥霍了。现实就是这么残酷,很多时候只是0和1,而没有中值。
下面更要抓紧弄研究了。一年的时间很短,再不出成果就什么都没了。我计划从可视化着手,从礼拜三起花一周的时间看看相关文献。关键字:wrf, cmaq, visulalization, air pollution.
来香港三个半月了,一个学期就这样过去了,似乎什么都没有干。开始的时候做了点可视化工作,然后换了方向,做环境污染。但又得从大气模式开始,于是去学WRF,学GrADS,装NETCDF,看空气污染物扩散的文章。但基本都一知半解,毕竟那个领域太专了,整几个热能量、风应力什么的术语就把我搞晕了。前几段时间还有些进展,毕竟搭完了WRF框架,跑了几次模式。但后来就没继续了,一来不知道怎么继续; 二来要准备出国; 三来要考托福。是的,该死的托福。
我真不知道为什么有人能够每天如一日地准备大半年托福。我一拖再拖,剩最后十天左右才正式开始准备,但即使这样,中间有几天还是几度想要放弃。不知道为什么,每当准备托福,甚至一想到还要口语、还要写作、还要听力的时候,我就很恐慌,不愿意去触碰它。现在想来,可能只是自己太弱,被它吓到了吧。
终于还是挺了过来,不过还是没像太傻里那些人这么疯狂,我只是经常地听听力,听TPO,而阅读和写作基本没怎么练。我至今不明白加试、机经是什么。不过昨天做完自我感觉很不错,尤其是口语,我觉得自己条理应该挺清楚了,拿个合适的分数应该不成问题。
就因为这个托福,像一座重山一直压着我,让我无暇顾及其他(其实主要不是没时间,而是精力)。真正的学术耽搁了很久。算是一种代价吧,为了出国。如果这次成绩可以,那也算是种回报;可是万一仍不理想呢?那么之前的时间就相当于挥霍了。现实就是这么残酷,很多时候只是0和1,而没有中值。
下面更要抓紧弄研究了。一年的时间很短,再不出成果就什么都没了。我计划从可视化着手,从礼拜三起花一周的时间看看相关文献。关键字:wrf, cmaq, visulalization, air pollution.
11/17/2011
一个月的乱忙
从10月20号换了一个新方向,但现在已经一个月了。这个月真是忙的可以,主要是压力真的很大。
在忙什么?项目,TOEFL,出国申请,还有感情。
项目进展得不是很快,前期还可以,后面就不给力了,到现在没弄清WRF的各个参数,虽然能跑这个模式了,但跑得糊里糊涂。照理应该系统地看一下说明文档,只是没有时间,等过了这段时间,一定把它啃下来。
TOEFL,一听这个我就头大,满肚子的不自信。不知为什么,一接触他我就感觉压力倍增,可能是以前的印象太坏,甚至都留下了阴影。到现在也没怎么开始准备,只稍微练了下口语,这次口语成绩非常重要。
出国申请可能是最费时间的了。这么多学校、这么多老师,我上哪找和我相近的老师?最后只找了3个老师。试试看吧。
在忙什么?项目,TOEFL,出国申请,还有感情。
项目进展得不是很快,前期还可以,后面就不给力了,到现在没弄清WRF的各个参数,虽然能跑这个模式了,但跑得糊里糊涂。照理应该系统地看一下说明文档,只是没有时间,等过了这段时间,一定把它啃下来。
TOEFL,一听这个我就头大,满肚子的不自信。不知为什么,一接触他我就感觉压力倍增,可能是以前的印象太坏,甚至都留下了阴影。到现在也没怎么开始准备,只稍微练了下口语,这次口语成绩非常重要。
出国申请可能是最费时间的了。这么多学校、这么多老师,我上哪找和我相近的老师?最后只找了3个老师。试试看吧。
11/05/2011
WRF Introduction and Compilation
Recently (2011/10/20) I've started a new research project about air pollution simulation. In the research we are going to use atmospheric models as input and air pollutants dispersion models as the simulation tool. As a GISer, I have no idea about these models. So these three weeks is not a long time to get familiar with these concepts and configure and run the models.
WRF (Weather Research and Forecasting Model) is "mesoscale numerical weather prediction model designed to provide a common framework for both operational numerical weather prediction and atmospheric research". Although WRF is designed to solve mesoscale, or regional problems, it can also be used for smaller scales like local scales by means of nesting.
WRF consists of three components:
1. WRF itself
2. WPS, pre-processing system, to get in static data like terrain and gridded data
3. ARWPost, post-processing system, for data format transforming
This is the WRF system structure:
Compilation:
My environment: Ubuntu 11.10, 32bit
Fortran compiler: gFortran
To install WRF, you have to install NetCDF library first, which is a common shared library for scientific data access and sharing.
Note: NetCDF 3.6.3 is required (ARWPost does not agree with NetCDF 4)
1. Download and install NetCDF, set environment variable NETCDF
2. Download WRF, configure and compile, according to specific cases.
3. Download WPS, configure and compile
4. Download ARWPost. ARWPost is used to transform WRF output (wrfout_d*_*) to files (.dat and .tcl) that GrADS can read. And it has stopped to update, instead, NCL is used to directly read WRF output and visualize data, which is also more professional and accurate than GrADS. However, as more people nearby use GrADS, I choose it as well.
Everything is done.
Trouble shoot:
During the compilation, various errors and problems may rise up, mostly because of a lack of related libraries or environment variables. It is advised to redirect the compilation log to a log file:
./compile your_case >& compile.logThen search the log file for such key words as "error" "ignored" "no such file" "missing" "not found" "can't find", etc. You are not to complete the compilation until you can run wrf.exe and ideal.exe or real.exe in the run/ dir.
Below is some problems and solutions I came across when compiling:
1. Unknown command m4. Install m4: sudo apt-get install m4
2. Wrong with libcgool-ppl0. Install libcgool-ppl0: sudo apt-get install libcgool-ppl0
3. When compiling module_cu_g3.o, input seed invalid. Edit module_cu_g3.F90,revise dimension (8) to dimension (12). (It is strange, beyond my understanding)
2. Wrong with libcgool-ppl0. Install libcgool-ppl0: sudo apt-get install libcgool-ppl0
3. When compiling module_cu_g3.o, input seed invalid. Edit module_cu_g3.F90,revise dimension (8) to dimension (12). (It is strange, beyond my understanding)
Subscribe to:
Posts (Atom)