grads插值_利用grads描述文件中的pdef做插值的实用方法,转模式的同学看过来~~...
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 东风急流 于 2016-1-28 10:54 编辑
在数值模拟结束后,常会用模拟结果与实况做对比,有时候两张图比较相似,难以直观的体现出区别。这时候可以通过模拟结果与实况做差值的方法画图分析,这样可以更加具体的分析出模拟的差异(哪里大哪里小),但是fnl资料和模式输出结果在投影方式、范围上均存在一定差异,需要插值到同一分辨率网格上才能进行差值分析,现在提供一种仅仅利用grads中pdef的简单方法给大家参考下,不完善的地方还请大家帮着改进。
1、首先要理解描述文件中pdef的含义
这是我们模式结束后利用ARWpost生成的kz3.ctl中一段:
pdef 300 300 lcc 34.500 100.500 150.500 150.500 60.00000 30.00000 100.50000 18000.000 18000.000
xdef 1080 linear 56.71197 0.08108108
ydef 646 linear 7.71816 0.08108108
因为wrf中投影通常是lambert,而grads需要的是等经纬网格的数据,所以要进行投影转换,pedf告诉的原始数据的排列方式,各项含义如下
300 300 :300×300格点
lcc: Lambert投影
34.5,100.5 :模式的参考点位置;
150.500 150.500 :该点对应的网格点坐标为x方向第150.5个格点,y方向第150.5个格点;
30 60: Lambert投影中的标准纬度,
110.5:标准经度;
180000 网格距 18KM
而xdef 1080 linear 56.71197 0.08108108
ydef 646 linear 7.71816 0.08108108
则告诉我们要插值到的等经纬网格的信息,
现在比如我们要将模拟数据在10~55N,60~140E范围内与1度*1度的fnl资料做差值,在可以将上两段改为:
ydef 46 linear 10 1
xdef 81 linear 60 1
2、提取数据,将数据插值到需要的格点上
利用fwrite来提取模拟结果中的某个变量,脚本很简单,假设提取500hp高度场
'reinit'
'open E:\sk\fnl4\kz3.ctl'
'set gxout fwrite'
'set fwrite E:\sk\fnl4\wrfHGT500.dat'
'set z 11'
'set t 5'
'define a=(PH+PHB)/9.8'
'd a'
'disable fwrite'
;
这里要注意的是,我们写的数据是81*46个,非300*300个,这也是这个方法的核心,否则后面的ctl会写错!
3、写新数据的ctl文件
wrfHGT500.ctl:
dset E:\sk\fnl4\wrfHGT500.dat
title my data
undef -999000000
ydef 46 linear 10 1
xdef 81 linear 60 1
zdef 1 levels 500
tdef 1 linear 00Z08aug2015 6hr
vars 1
HGT500 1 99
endvars
4、最后是同fnl资料做差值
从fnl资料中提取出相同范围的500hp高度场方法同上,不赘述,但注意两个ctl文件要高度保持一致,否则还会出错
其描述文件为:
sk500HGT.ctl
dset e:/sk/fnl4/skHGT500.dat
undef 9.999E+20
title e:/sk/fnl4/fnl_20150809_00_00.grib2
ydef 46 linear 10 1
xdef 81 linear 60 1
tdef 1 linear 00Z08aug2015 6hr
zdef 1 levels 500
vars 1
HGT500 1 99
ENDVARS
插值脚本主要语句为:
'open e:/sk/fnl4/sk500HGT.ctl ’
'opene:/sk/fnl4/wrf500HGT.ctl’
'set gxout shaded’
'd HGT500.2-HGT500'
'cbarn'
贴一个我画的图,优点丑,哈哈~~
500.png (25.22 KB, 下载次数: 0)
2016-1-27 16:26 上传
根据兰溪大神的提示,确实是我的方法太繁琐啦,抱歉给大家一些误导,简单方法总结如下:1、修改模式结果的描述文件kz3.ctl,写成同fnl资料相同的分辨率
xdef 1080 linear 56.71197 0.08108108
ydef 646 linear 7.71816 0.08108108
现在比如我们要将模拟数据在10~55N,60~140E范围内与1度*1度的fnl资料做差值,在可以将上两段改为:
ydef 46 linear 10 1
xdef 81 linear 60 1
2、第二步是跳过提取数据步骤,直接画图,在grads中选定做差值的变量
脚本如下:
'open e:\sk\fnl4\kz3.ctl'
'open e:\sk\fnl4\fnl_20150809_00_00.ctl'
'c'
'set map 1 1 4'
'set mpdset cnworld'
'set lat 10 55'
'set lon 60 140'
'set t 5'
'set z 13'
'set xlint 10'
'set ylint 10'
'set xlopts 1 8 0.2'
'set ylopts 1 8 0.2'
'set cterp on'
'set csmooth on'
'set grads off'
'set grid off'
'set gxout shaded'
'd (PH+PHB)/9.8-HGTprs.2'
'cbarn'
'printim E:\sk\fnl4\500.png white'
;
grads插值_利用grads描述文件中的pdef做插值的实用方法,转模式的同学看过来~~...相关推荐
- python把汉字变成拼音英文_利用python将表格中的汉字转化为拼音
GB18030的字符集标准 http://zbgb5.com/2/StandardDetail479488.htm 缺少包时用pip install 进行安装,例如: pip install xlsx ...
- 服务器安装信任描述文件,OS X Server:在使用 TLS、TTLS 或 PEAP 时如何在“配置描述文件”中配置 RADIUS 服务器信任...
在 OS X 中,可使用配置描述文件来配置客户端,使其加入受 802.1x 保护的网络.如果配置描述文件没有针对 EAP 类型正确配置用于建立安全隧道(TLS.TTLS.PEAP)的 RADIUS 服 ...
- 从TS文件中提取DVB Subtitle字幕的有效方法
从TS文件中提取DVB Subtitle字幕的有效方法 深圳市同洲电子股份有限公司韦斌 (本文发表于<卫星电视与宽带多媒体>2013年16期) 摘要:DVB Subtitling标准 ...
- python读取数据文件、并把里面的数据变成x的二维坐标_python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法...
python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法 1. test.txt文件,数据以逗号分割,第一个数据为x坐标,第二个为y坐标,数据如下:1.1,2 2.1,2 3.1 ...
- Myeclipse开发环境下文件中出现的提示错误与解决方法:The import javax.servlet cannot be resolved?
Myeclipse开发环境下文件中出现的提示错误与解决方法:The import javax.servlet cannot be resolved? 参考文章: (1)Myeclipse开发环境下文件 ...
- 用户名不在sudoers文件中此事将被报告的解决方法
用户名不在sudoers文件中此事将被报告的解决方法 参考文章: (1)用户名不在sudoers文件中此事将被报告的解决方法 (2)https://www.cnblogs.com/yongfengni ...
- 怎么将file转换为html,怎么将PDF文件转换为HTML?分享四种实用方法!
原标题:怎么将PDF文件转换为HTML?分享四种实用方法! 在我们日常学习和日常工作中,如果想要将PDF文件转换为HTML文件要怎么办呢?随着需求的增加,我们需要会的技能也要增加了.不止要将PDF文件 ...
- 微信小程序合成海报_利用微信小程序中Canvas API来合成海报生成组件封装
每个小程序成型后,一般都会选择生成带菊花码的海报分享出去来吸引更多的流量.下面来介绍下其他的一种实现方式吧 原理:主要利用微信小程序强大的Canvas API来合成,生成后可用wx.canvasToT ...
- python 物理学中的应用_利用python求解物理学中的双弹簧质能系统详解
前言 本文主要给大家介绍了关于利用python求解物理学中双弹簧质能系统的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 物理的模型如下: 在这个系统里有两个物体,它们的质 ...
- python 表格格式输出_利用python对excel中一列的时间数据更改格式操作
问题场景:需要将下列的交期一列的数据格式更改成2019/05/10 存货编码 尺寸 数量 交期 0 K10Y0190000X B140 200 2019-05-10 00:00:00 1 K10Y01 ...
最新文章
- 关于使用REST API
- django 灵活的后台查询
- 浏览器 刷新页面后回到顶部_JavaScript仿知乎回到顶部功能
- html页面滚动导致阴影出现,三种处理滚动穿透问题方案的对比
- 面试宝典-常见面试问题回答技巧
- 【第一组】第十六次冲刺例会纪要
- 《黑客帝国 THE MATRIX》——当你生活在代码的虚拟世界中
- c++获取系统时间实例2
- 被领导嘉奖了,该不该请同事吃饭?
- 联想小新增加固态硬盘后安装不了系统_固态硬盘装双系统不成功,装第二个系统时提示 windows没法完成安装,安装将在重启计算机后继续。...
- 解决docker报错:listing workers for Build: failed to list workers: Unavailable: connection error: desc =
- python工程师必备工具
- tomcat监控脚本(监控进程,测试接口,告警动作为发送邮件)
- 如何包装你的实验结果
- 第一次作业(个人作业):阅读教材,提五个问题
- 力扣(leetcode)[118. 杨辉三角] 简单
- 理解数字信号处理的三把钥匙
- 马斯克究竟从特斯拉赚了多少钱?道翰天琼认知智能机器人平台API接口大脑为您揭秘-1。
- 2014年12月31日这一天,我想说明天会更好!
- dockerfile编写之恋爱初体验~~~