MM5调试详细步骤记录

今天,我开始进行MM5的调试学习,虽然现在整个Models-3还没有装好,原因是版本的问题,所以我准备换Linux系统了,现在先来进行已经可以做的MM5调试。--具体内容要看MM5用户手册。

------------------------------------------偶是调试之TERRAIN的分割线------------------------------------------

TERRAIN是MM5模式系统中的第一个程序,每个完整的模拟都始于此程序。此程序把按经纬度规则分布的地形高度和植被组成水平插值(或分析)到所选择的中尺度区域内。
--------------------------------------------------
TERRAIN主要执行两个任务:
a.建立中尺度区域:粗细网格(除了移动嵌套外);
b.为所有的中尺度区域产生地形文件,这些文件首先被REGRID使用,而后被MM5和NESTDOWN使用。该程序也计算几个模式系统需要的常值场:纬度和经度,地图比例因子,以及科氏参数。
--------------------------------------------------
*若系统中无NCAR图形包,则必须修改Makefile文件,设置NCARGRAPHICS=NONCARG,并删除LOCAL_LIBRARIES行上的链接库。(试验结果是,不删除比较好,删除后运行中会有错误)
*下载地形资料,网址:http://ccar.ust.hk/~mesouser/ftp.ucar.edr/mesouser/MM5V3/TERRAIN_DATA/(我比较震惊的是,下载下来的未解压资料还不到150M,可是解压后足足有8G,可怜我的小本本一共才20+G),将所需地形、地表资料解压后拷入~/mm5v3.7/TERRAIN/Data文件夹中。
--------------------------------------------------
1.修改Makefile文件的两个参数;
2.# make terrain.deck--建立脚本文件terrain.deck(在其中设置参数)
   a.将选定的模式中心点的纬度和经度赋值给变量“PHIC”和“XLONC”;
   b.将模式范围东西向的总格点数、南北向的总格点数和网格距(km)分别赋值给变量"NESTJX"、“NESTIX”和“DIS”;
   c.选好地形分辨率参数。
2.# ./terrain.deck--生成文件:
   make.terrain.out(编绎信息的记录文件,检查该文件,看编绎是否成功);
   terrain.exe; 
   terrain.namelist;
   TERRAIN_DOMAIN1; TERRAIN_DOMAIN2(这两个是我设置的两重嵌套从而生成的两层地形文件);
   make2.print.out(我不清楚这个是什么东西,不过运行后有这个东西生成);
   terrain.print.out(这个是执行terrain.exe后得到的)
3.当在terrain.print.out中最后的一行看到“==NORMAL TERMINATION OF TERRAIN PROGRAM==”时,意味着TERRAIN程序执行成功。
*如果模式预报范围的中心点位置、格点数和格距不变的话,作预报时不必再次运行TERRAIN。

------------------------------------------偶是调试之REGRID的分割线------------------------------------------

REGRID的目的是读取气压层上的气象分析资料,并把分析数据从原有的格点和地图投影上插值到由MM5的预处理程序TERRAIN定义的格点和地图投影上。
       REGRID处理等压面和地面分析资料,并在这些层上进行两维插值。
       REGRID是MM5系统流程图中的第二步。它需要来自TERRAIN程序的输出作为其输入,并为RAWINS, LITTLE_R(这两项我好像是用不到),或INTERPF准备输入文件。这些文件通常作为客观分析的第一猜值场(RAWINS或LITTLE_R),或作为分析场被直接插值到MM5的模式层上为MM5提供初始条件和边界条件(INTERPF)。
--------------------------------------------------
此套程序包含两个任务:
a.数据输入(比如读入原始的气象分析数据)由pregrid程序集处理;
b.插值到MM5的格点上--由regridder程序集处理。
--------------------------------------------------
将所需NCEP资料或T213预报场资料下载后放入~/mm5v3.7/REGRID文件夹中,文件名如:grib2002011500。它将这些资料内插到MM5模式网格点上,形成模式第一猜值场。
--------------------------------------------------
1.# make--产生可执行程序;
2.在Pregrid目录中有一个名为"pregrid.csh"的脚本程序,在此设置参数,包括处理日期等;
   # chmod u+x pregrid.csh--确保此脚本可执行;
   # ./pregrid.csh--生成“中间文件”;
3.在regridder中,修改文件“namelist.input”的参数。
   a.将模式起报时间的年、月、日、时(世界时)赋值给变量“START_YEAR”、“START_MONTH”、“START_DAY”和“START_HOUR”;
   b.将模式终止时间的年、月、日、时(世界时)赋值给变量“END_YEAR”、“END_MONTH”、“END_DAY”和“END_HOUR”;
   c.修改“中间文件”所在文件夹的信道号。
4.# ./regridder--创建文件:REGRID_DOMAIN1
*只算第一层,仅用地形资料
*regridder完全通过namelist文件来运行。

------------------------------------------偶是调试之INTERPF的分割线------------------------------------------

INTERPF程序处理分析场和中尺度模式之间的数据转换。它包括垂直插值,诊断分析并重新指定数据的格式。INTERPF获取REGRID,RAWINS或LITTLE_R的输出数据作为其输入来产生模式的初始和侧边界条件以及下边界条件。
--------------------------------------------------
1.# make--创建可执行文件;
2.编辑namelist.input文件,在此文件中设置初始值(包括模式起报时间和终止时间),并在其中指定REGRID_DOMAIN1的路径;
3.# ./interpf--生成文件:
   BDYOUT_DOMAIN1,LOWBDY_DOMAIN1,MMINPUT_DOMAIN1;
  *BDYOUT_DOMAIN1:包含三维场的侧边界,通常是4行(列);
   LOWBDY_DOMAIN1:包含表面温度场的日平均或随时间改变的表面温度场(地面层上的空气温度和海平面的温度),也可以选择海冰或雪盖场。下边界条件;
   MMINPUT_DOMAIN1:包含与时间有关的三维和二维场,比如风、温度、温度和气压。气象数据。
4.成功结束,有“STOP 99999”语句。

------------------------------------------偶是调试之MM5的分割线------------------------------------------

这是MM5模式的数值天气预报部分(主程序),采用包含水汽变量的非静力平衡的方程组,还有一系列的积云参数化、边界层参数化等物理过程。
--------------------------------------------------
MM5的目的:
a.MM5是模式系统的数值天气预报部分;
b.MM5能够用于理论和实时研究,这些应用包括对季风,飓风以及龙卷风所作的预报模拟和四维数据同化;
c.在更小的中贝塔和中伽马尺度上(2-200km),MM5能够被用于研究中尺度的对流系统,锋面,海陆风,山谷环流以及城市的热岛效应。

--------------------------------------------------
编译并运行MM5系统需要2步操作:
a.选择编译选项并编译代码;
b.修改运行时(run-time)选项并执行该程序。
--------------------------------------------------
*将上述生成文件拷入mm5v3.7/MM5/Run目录中。
1.编译MM5:
a.编辑“configure.user.linux”文件(注意要与TERRAIN链接库中关于DOMAIN设置的最大区域网格点数一致,初学者设成一个DOMAIN)。再用命令“cp configure.user.linux configure.user”(即将linux下的文件保留即可)。
b.# make
*用户通过编辑“configure.user”文件选择适用于其系统的编译选项。用户需要关注以下两个方面:
 1)找到适用于你的机器的编译选项部分,把对RUNTIME_SYSTEM变量和编译选项的注释去掉;
 2)在configure.user文件的第5、6部分设置模式选项,用来为编译建立区域大小,4DDA和物理选项;
2.运行MM5:
a.# make mm5.deck--建立“mm5.deck”的脚本程序,要获取所需的deck,必须正确设置RUNTIME_SYSTEM;
b.编辑mm5.deck,设置合适的namelist值; 
   预报总时间长度“TIMAX”和“XENNES”;
   积分时间步长“TISTEP”;
   结果输出时间间隔“TAPFRQ”;
   模式范围东西向的总格点数“NESTJI”;
   南北向的总格点数“NESTIX”。
c.# ./mm5.deck>&log.txt&--后台执行(可关掉终端)。显示:top;退出显示:q;停止:kill 行号(PID)。
3.打开“mm5.print.out”文件可查看模式运行情况。
--------------------------------------------------
*基本运行:至少需要设置这些namelist变量:TIMAX, TISTEP, TAPFRQ, NESTIX, NESTJX, NESTI, NESTJ;
 重启运行:除了上述变量外,设置IFREST=.TRUE.和IXTIMR=重启时间(可以在前次运行末找到)。
 单向运行:同基本运行。
--------------------------------------------------
MM5的输入:
1)用于基本运行的由INTERPF产生的文件:
      a.模式初始条件文件:MMINPUT_DOMAINx;
      b.用于粗网格区域的侧边界和低层边界文件:BDYOUT_DOMAIN1,LOWBDY_DOMAIN1;
      c.如果使用了IOVERW=2选项,则需要由TERRAIN程序产生的嵌套地形高度文件:TERRAIN_DOMAIN2,3……
2)如果是重启运行,文件来自于MM5程序:
     来自于前次运行的模式保存文件:把SAVE_DOMAINx改为RESTART_DOMAINx。
3)如果使用地面分析数据来运行4DDA,则文件来自于RAWINS:
     FDDA的地面分析:SFCFDDA_DOMAINx
4)如果运行测站同化,则文件由用户提供:
      FDDA 4D测站文件:MM5OBS_DOMAINx;
5)mmlif:含有用户指定选项的mamelist文件;
6)LANDUSE.TBL:用户可修改的陆地类型特征(ASCII)文件;
7)RRTM_DATA:RRTM辐射方案文件;
8)BUCKET.TBL:用户可以修改bucket土壤模式中所使用的常数。
*注意工作站的mm5.deck要求上述的所有文件都在Run目录下。
--------------------------------------------------
MM5的输出:
在MM5的积分过程中,一些文件将被产生。它们是:
a.如果IFTAPE=1,则产生历史记录文件(MMOUT_DOMAINx),输出频率是由TAPFRQ变量设定的;
b.如果IFSAVE=.TRUE.,则产生重启文件(SAVE_DOMAINx),输出频率由SAVFRQ变量设定的。

[完结]

------------------------------------------偶是调试之末的分割线------------------------------------------

时间: 2024-10-27 12:07:49

MM5调试详细步骤记录的相关文章

ios真机调试详细步骤

•真机调试的主要步骤 1.登录开发者主页 2.生成cer证书:cer是一个跟电脑相关联的证书文件,让电脑具备真机调试的功能 3.添加App ID:调试哪些app? 4.注册真机设备:哪台设备需要做真机调试? 5.生成MobileProvision文件:结合2.3.4生成一个手机规定文件 6.导入cer.MobileProvision文件 ● •最终会得到2个文件 ØCer文件:让电脑具备真机调试的功能 ØMobileProvision文件:哪台设备.哪些app.哪台电脑需要做真机调试? 真机调试

Oracle建立DBLINK的详细步骤记录

测试条件:假设某公司总部在北京,新疆有其下属的一个分公司.在本次测试中,新疆的计算机为本地计算机,即本要的IP地址为:192.168.1.100 北京的总部有一个集中的数据库,其SID是SIDBJ,用户名:userbj,密码:bj123,北京的IP地址是:192.168.1.101.在本地(新疆)的分公司也有一个数据库,其SID是SIDXJ,用户:userxj,密码:xj123,新疆的IP地址是:192.168.1.100.要将本地新疆的SIDXJ数据库中访问到北京的数据库SIDBJ中的数据.也

iOS 真机调试(史上最详细步骤解析,hmt精心打造)

/*************************************************************1********************************************************************/ /*************************************************************2******************************************************

VS2012/13本地发布网站详细步骤(可带数据库)

VS发布网站详细步骤 要在本地(自己的额电脑上)发布网站,首先你必须要搭建一个IIS服务器(具体搭建方法可参考我的上一篇博客).下面是具体步骤: 1.打开你的VS2012网站项目,右键点击项目>菜单中 重新生成一下网站项目:再次点击右键>发布 2.弹出网站发布设置面板,点击<新建..>,创建新的发布配置文件(配置文件可以随便写自己命名): 3.点击下一步:在发布方法中选"文件系统",这样我们可以发布到自己指定的本机文件上. 4.选择网站要发布的物理地址(可以使C

Android代码混淆及项目发布步骤记录

本来整理了一份Android项目混淆与发布的文档,突然想到何不写篇博客,分享一下呢,如是便有了本文. 一.清理代码中的调试信息,如Log.System.out 二.在清单文件中修改版本为当前版本,如果需要更新数据库,则需要在配置类或配置文件中修改程序数据库版本. 三.在清单文件中将项目的debugable设置为false 四.创建签名证书keystore文件 五.在项目中的project.properites文件中添加语句proguard.config=proguard-project.txt来

TortoiseSVN使用详细步骤

1 安装及下载client 端 2 什么是SVN(Subversion)? 3 为甚么要用SVN? 4 怎么样在Windows下面建立SVN Repository? 5 建立一个Working目录 6 新增档案及目录到Repository中 7 更新档案及目录 8 更新至特定版本 9 复制档案及目录 10 制作Tag或是Release 11 快速参考 11.1 取得(Checkout)Repository 11.2 更新(Update)档案或目录 11.3 新增(Add)档案或目录 11.4 提

使用Nginx和Logstash以及kafka来实现网站日志采集的详细步骤和过程

使用Nginx和Logstash以及kafka来实现网站日志采集的详细步骤和过程 环境介绍: linux虚拟机3台,主机名分别为hadoop01.hadoop02和hadoop03; 在这3台虚拟机上分别部署了3个Zookeeper,这里Zookeeper的具体安装步骤不做介绍; 在这3台虚拟机上分别部署了3个kafka,这里kafka的具体安装步骤也不做介绍; 我们在hadoop02这台机器上安装一个Logstash,其安装过程非常简单,解压既可使用; ====================

【OpenHW12参赛手记】ZedBoard-自定义IP核实现+PS成功调用【详细步骤+流程介绍+源码】 转载

文章来源 图片无法复制,请看原文 http://www.eefocus.com/jefby1990/blog/13-03/291975_490bc.html [OpenHW12参赛手记]ZedBoard-自定义IP核实现+PS成功调用[详细步骤+流程介绍+源码] 2013-03-07 17:56:30 分享: (图片请点击查看原图) 软件环境:WIN7_64 + ISE 14.4 (system_edition) 硬件:Zedboard.USB-Cable线 搭建图: 经过前几天的学习,查看数据

JDBC连接sql server数据库的详细步骤和代码

JDBC连接sql server数据库的详细步骤和代码 JDBC连接sql server数据库的步骤如下: [java] view plaincopyprint? 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的静态方法forName(String  className)实现. 成功加载后,会将Driver类的实例注册到DriverManager类中. 2.提供JDBC连接的URL •连接URL定