缘起

做毕业论文的时候要改机制代码,并且要耦合到WRF-Chem模式里面使它生效,所以就需要搞清楚WRF-Chem的结构,以便调用和输出。

虽然可以通过长时间的看WRF-Chem源代码、debug尝试以及IDE帮忙,但有一份calling tree还是很好的,给师弟师妹们讲起来也方便很多。

因此,考虑尝试用程序结构自动分析工具Doxygen对它进行分析,用Graphviz生成出来。

Doxygen简介

Doxygen是一种程序结构自动分析的工具,也是一个程序文档自动生成的工具,它的官网,具体的使用方法可以在上面找到。

由于Doxygen支持Fortran,因此,直接拿来分析WRF-Chem就很简单了,配置好输出的目录及分析的项目,设置好调用Graphviz的路径,就可以直接运行输出了。

它可以生成html版的网页说明,也可以生成LaTeX文件及pdf文档。

WRF-Chem Calling Tree

物理机制-微物理过程调用: physicscall1

物理机制-辐射过程调用: physicscall2

物理机制-积云过程调用: physicscall3

物理机制-陆面及边界层过程调用: physicscall4

化学机制-化学过程调用: chemcall

后记

其实真的要改机制时还是要进去一点一点的看code的,这些图也就帮助下新手理解… (说白了其实没啥用,然而做无用之事不是我辈博士生打发生命的最佳方式吗2333)