1. 数据下载(ERA5)

参考:批量下载ERA5数据(Python+IDM)

新技能 get!

main idea 是从Climate Data Store https://cds.climate.copernicus.eu/cdsapp#!/home 获取url后通过IDM批量下载

import cdsapi
import calendar
from subprocess import calldef idmDownloader(task_url, folder_path, file_name):"""IDM下载器:param task_url: 下载任务地址:param folder_path: 存放文件夹:param file_name: 文件名:return:"""# IDM安装目录idm_engine = "C:\\Program Files (x86)\\Internet Download Manager\\IDMan.exe"# 将任务添加至队列call([idm_engine, '/d', task_url, '/p', folder_path, '/f', file_name, '/a'])# 开始任务队列call([idm_engine, '/s'])if __name__ == '__main__':c = cdsapi.Client()  # 创建用户# 数据信息字典dic = {'product_type': 'reanalysis',  # 产品类型'format': 'grib',  # 数据格式'variable':  ['geopotential','relative_humidity','specific_humidity','temperature','u_component_of_wind','v_component_of_wind'],  # 变量名称'pressure_level': ['1','2','3','5','7','10','20','30','50', '70', '100','125', '150', '175','200', '225', '250','300', '350', '400','450', '500', '550','600', '650', '700','750', '775', '800','825', '850', '875','900', '925', '950','975', '1000',],'year': '2018',  # 年,设为空'month': '05',  # 月,设为空'day': [  '01', '02','03','04','05','06','07',],  # 日,设为空'time': [  # 小时'00:00', '06:00', '12:00','18:00'],'area': [90, -180, 45, 180],}# 通过循环批量下载1979年到2020年所有月份数据'''for y in range(1979, 2021):  # 遍历年for m in range(1, 13):  # 遍历月day_num = calendar.monthrange(y, m)[1]  # 根据年月,获取当月日数        # 将年、月、日更新至字典中dic['year'] = str(y)dic['month'] = str(m).zfill(2)dic['day'] = [str(d).zfill(2) for d in range(1, day_num + 1)]
'''
r = c.retrieve('reanalysis-era5-pressure-levels', dic, )  # 文件
url = r.location  # 获取文件下载地址
path = 'E:\\ERA5\\'  # 存放文件夹
filename = 'pressure'+str(2018) + str(5).zfill(2) + '.grib'  # 文件名
idmDownloader(url, path, filename)  # 添加进IDM中下载

以上是三维数据的下载,单层数据的下载同理:

import cdsapi
import calendar
from subprocess import callif __name__ == '__main__':c = cdsapi.Client()  # 创建用户# 数据信息字典dic = {'product_type': 'reanalysis',  # 产品类型'format': 'grib',  # 数据格式'variable':  ['10m_u_component_of_wind', '10m_v_component_of_wind', '2m_temperature','mean_sea_level_pressure', 'sea_surface_temperature', 'skin_temperature','snow_albedo', 'snow_depth', 'snowfall','soil_temperature_level_1', 'soil_type', 'surface_pressure','total_precipitation','soil_temperature_level_2','soil_temperature_level_3','soil_temperature_level_4','volumetric_soil_water_layer_1','volumetric_soil_water_layer_2','volumetric_soil_water_layer_3', 'volumetric_soil_water_layer_4',],'year': '2018',  # 年,设为空'month': '05',  # 月,设为空'day': [  '01', '02','03','04','05','06','07',],  # 日,设为空'time': [  # 小时'00:00', '06:00', '12:00','18:00'],'area': [90, -180, 45, 180],}# 通过循环批量下载1979年到2020年所有月份数据'''for y in range(1979, 2021):  # 遍历年for m in range(1, 13):  # 遍历月day_num = calendar.monthrange(y, m)[1]  # 根据年月,获取当月日数# 将年、月、日更新至字典中dic['year'] = str(y)dic['month'] = str(m).zfill(2)dic['day'] = [str(d).zfill(2) for d in range(1, day_num + 1)]
'''
r = c.retrieve('reanalysis-era5-single-levels', dic, )  # 文件
url = r.location  # 获取文件下载地址
path = 'E:\\ERA5\\'  # 存放文件夹
filename = 'single'+str(2018) + str(5).zfill(2) + '.grib'  # 文件名
idmDownloader(url, path, filename)  # 添加进IDM中下载

2. WPS 前处理

2.1 修改namelist.wps

&sharewrf_core = 'ARW',max_dom =1,start_date = '2018-05-01_12:00:00','2019-09-04_12:00:00',  # 模拟开始&结束日期end_date   = '2018-05-07_00:00:00','2019-09-04_12:00:00',interval_seconds = 21600   # 模拟间隔
/&geogridparent_id         =   1,parent_grid_ratio =   1,i_parent_start    =   1,j_parent_start    =   1,e_we              =  150,e_sn              =  150,geog_data_res = '10m',dx = 45000,dy = 45000,map_proj = 'polar',ref_lat   =  90.00,ref_lon   =  0.0,truelat1  =  60.0,truelat2  =  60.0,stand_lon =  0.0,geog_data_path = '/public/home/zyh/WRF/Build_WRF/WPS_GEOG/'
/&ungribout_format = 'WPS',prefix = 'FILE',
/&metgridfg_name = 'FILE'
/
~

geogrid

修改完后在WPS文件夹下执行geogrid.exe

./geogrid.exe

执行成功后会产生geo_em.d01.nc文件

ls -lah geo_em.d01.nc

ungrib

首先创建链接

ln -sf ungrib/Variable_Tables/Vtable.ECMWF  Vtable

随后连接数据

./link_grib.csh ../ERA5/*.grib

成功后出现GRIBFILE.AAA, GRIBFILE.AAB 等文件
之后运行ungrib

./ungrib.exe

成功后出现FILE:2018-05-06_00等文件

metgrid

直接运行metgrid.exe

./metgrid.exe

成功后出现met_em.d01.xxxx-xx-xx_xx:xx:xx.nc 格式的文件

小曾WRF自学日记(3)渐入佳境 ——WRF实例-数据下载与WPS前处理相关推荐

  1. 小曾WRF自学日记(4)渐入佳境 ——WRF实例-运行WRF

    WRF的运行 进入WRF/run文件夹,修改namelist.input 首先在WPS文件夹下,使用命令ncdump -h met_em.d01.2018-05-04_12:00:00.nc 查看最后 ...

  2. python gmm em算法 2维数据_python自学日记18——数据结构与算法(2)

    这两天找了很多关于Python讲解数据结构和算法的书和视频,最终确定下来<python数据结构与算法分析>以及北京大学线上课程"数据结构与算法python版",先看了课 ...

  3. 【学习WRF笔记2】安装WRF

    系列文章目录 [学习WRF笔记1]Linux环境搭建 [学习WRF笔记2]安装WRF 文章目录 系列文章目录 前言 一.系统环境测试 二. 依赖库安装 0)文件夹结构和用途 1)zlib 2)hdf5 ...

  4. 前端自学日记-day5

    前端自学日记 day5 内容总结:学习了代码快速编写方法和一些小工具,CSS复合选择器,CSS元素显示模式,CSS背景. 1.学习进度更新 2.具体内容 2.1 Emmet简介 作用:使用缩写tab输 ...

  5. 视频文件 wrf格式,可以通过WRF格式视频转换器_wrf转成wmv 转换成 wmv格式,可以在电脑或手机上观看,且声音也能转换过来。之前wrf用耳机貌似播放不出来,之后是可以播放出来的。

    视频文件 wrf格式,可以通过WRF格式视频转换器_wrf转成wmv 转换成 wmv格式,可以在电脑或手机上观看,且声音也能转换过来.之前wrf用耳机貌似播放不出来,之后是可以播放出来的. wmv可以 ...

  6. wrf模式学习记录--使用ERA5数据驱动WRF模式三层嵌套:数据下载以及模式处理

    下载ERA5数据 从官网上下载ERA5主要分为三步: 官网注册账号,获取CDS API key. 安装python相关的库. 复制粘贴代码,下载数据. 注册账户获取密钥 点击网址:ERA5注册网址,右 ...

  7. Python自学日记28——如何选择学习资料

    Python自学日记28--如何选择学习资料 这两天把数据结构和算法当做定期学习任务转向web开发阶段学习,前天开始学习Django,发现资料过时,很多Django代码在新版本里总是报错,刚开始还坚持 ...

  8. 前端自学日记-day3

    前端自学日记 day3 内容总结:学习了表格标签,列表标签,表单标签. 1.学习进度更新 2.具体内容 常用标签 2.1 表格标签 2.1.1 作用 表格标签是用来在页面中展示数据的. 2.1.2 标 ...

  9. python考研参考书目_Python自学日记28——如何选择学习资料

    这两天把数据结构和算法当做定期学习任务转向web开发阶段学习,前天开始学习Django,发现资料过时,很多Django代码在新版本里总是报错,刚开始还坚持了一段时间,把最初的步骤都通过查别人的调整代码 ...

最新文章

  1. oracle表没有数据判断,Oracle中判断有表DROP无表CREATE的存储过程
  2. 这个网盘搜索好像还不错
  3. 利用Python对销售额进行预测
  4. 服务器物理内存总是九十几,服务器物理内存使用率90以上
  5. 安装php no permision,php安装过程中的No package ‘xxx’ found问题
  6. 【报告分享】中国城市人工智能发展指数报告.pdf(附下载链接)
  7. Kotlin基础知识
  8. db2如何锁定一张表_如何通过一张表,提高20%的工作效率?
  9. 网络工程师计算机职称考试,软考网络工程师中级职称评定条件
  10. pywifi 模块的安装
  11. 回忆--上海滩奋斗的日子
  12. java操作文件之文件重命名
  13. Vue开发后台管理系统
  14. 公比为无理数的等比数列的近似表示
  15. 开源者的自我修养|为 ShardingSphere 贡献了千万行代码的程序员,后来当了 CEO...
  16. UML ~ Unified Modeling Language ~ 统一建模语言。+ 软件设计原则。
  17. Pulmonary--Detection8
  18. python turtle画房子详细解释_如何用python画一个小房子
  19. 酒店点菜管理系统课程设计
  20. 兵临城下丨Webshell管理工具流量检测研究

热门文章

  1. 处理文件上传后返回json数据在IE出现文件下载问题(框架是spring boot)
  2. 想要成为黄金分析师要具备哪些知识?
  3. 【指纹识别】基于模板匹配算法指纹识别匹配门禁系统matlab源码
  4. Pr:导出设置之多路复用器与常规
  5. WebSphere启动时遇到javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
  6. 微型计算机存容量基本单位,在微型计算机中,存储容量的基本单位是什么?
  7. iReport —— A4打印,只占纸张的一半,如何解决
  8. 2021:不要在一件事上纠缠太久!
  9. 瀑布流网站数据如何采集解决思路方法
  10. word 编辑过程中变为只读_WPS?教程 | WPS?云办公如何多人协同编辑