登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 kermit 于 2025-5-13 11:03 编辑
Piggy_Packages是由Kermit Chen制作并维护的气象软件工具包,包含了气象工作者常用的各种气象数据分析、处理、预报、同化程序。该工具包无需复杂的配置过程,解压缩就可以直接使用。Piggy_Packages 无疑是气象家园上最受欢迎的工具包,从2021年12月发布第一个版本至今,已有超过4800人次下载。
Piggy_Packages 目前支持 Windows 10 (22H2)和 Windows 11。请注意,随着Windows 10支持周期的结束,对于 Windows 10 的支持将很快被移除。
Windows 11 已经内置了Windows Terminal,您无需额外安装。
Piggy_Packages 包含以下气象工作者常用软件(不断更新中): 1. NCL (NCAR Command Language): 强大的数据处理、分析和科学可视化语言,广泛应用于气象和气候研究。 2. CDO (Climate Data Operators): 用于处理和分析气候与数值天气预报(NWP)模型数据的命令行工具集。 3. NCO (NetCDF Operators): 一套用于对 netCDF 文件进行常用操作(如拼接、平均、提取子集等)的命令行工具。 4. WRF (Weather Research and Forecasting Model) 及其组件: WRF-Real: 中尺度天气预报模式和大气模拟系统。 WRFDA: WRF同化系统。 WRF-Chem: WRF化学模式。 WRF-Hydro: WRF水文模式。 WRFPLUS: WRF的切线性模式 (TLM) 和伴随模式 (ADM)。 WRF-Fire: WRF火灾模式。 WPS: WRF前处理系统。 5. Ncview: 一个简单易用的 NetCDF 文件可视化工具,可以快速查看数据内容。 6. Panoply: 由 NASA GISS 开发的跨平台应用程序,能够绘制 netCDF、HDF、GRIB 等格式的地理格点数据及其他数据集的图像。 7. MET (Model Evaluation Tools): 由NCAR开发的一套用于检验数值天气预报结果的工具。 8. UPP (Unified Post Processor): 用于处理 WRF 等模式输出,生成标准格式的气象产品。 9. RTTOV (Radiative Transfer for TOVS): 快速辐射传输模式,用于模拟卫星传感器在红外和微波波段的观测。 10. ESMF (Earth System Modeling Framework): 高性能计算环境下的地球系统建模软件框架,用于构建和耦合气候、天气、海洋等模型。一个经典的用途是将数据从一种模式网格准确地插值到另一种模式网格。 11. GDAL (Geospatial Data Abstraction Library): 处理栅格和矢量地理空间数据的强大开源库,支持多种数据格式的转换和处理。 12. wgrib / wgrib2: 用于处理、解码和操作 GRIB格式气象数据的实用工具。 13. ecCodes: 提供了解码和编码 GRIB 和 BUFR 格式气象数据的应用程序接口和工具。
下载地址:【没有气象家园账号的同学,可以加入Piggy气象科学交流QQ群852983715获取下载地址喔】
下载完成后,请使用最新版本的 WinRAR、WinZIP、7-Zip等主流压缩软件解压缩,使用旧版本或者小众解压软件解压可能会解压失败导致程序无法启动。
Piggy_Packages 简要教程【详细教程请参考下载地址中的PDF版本】
首先下载并解压缩 Piggy_Packages 然后右键管理员身份运行Piggy-Bash.sh 或者 Piggy-Zsh.sh
Piggy-Bash.sh 提供一种简约经典的交互方式;而Piggy-Zsh.sh 提供一种现代炫酷的交互方式。
首次启动时会进行环境部署,需要几分钟时间。
(一) NCL的运行和使用 ~~~~~~公告栏~~~~~~ Microsoft Defender 更新之后可能影响部分NCL绘图程序正常运行,这可能是Microsoft Defender自身的问题,如果出现此问题,请将ncl.exe 添加到Microsoft Defender进程白名单。 输入: 这是一个NCL自带的示例程序,可用来测试NCL是否能够正常工作。
一直点击X11图窗,或者按空格键切换至下一张图,直至图片显示完毕。 这个程序会在当前目录创建一个名为gsun01n.ncl 的NCL文件,让我们尝试修改这个文件。
*要使用资源管理器打开当前目录,可以输入: open 首先使用文本编辑器打开gsun01n.ncl 输入: 或者:
该命令会首先搜索VS Code,如果VS Code已安装,并且添加到PATH,则会调用VS Code打开该脚本,否则,将会调用记事本打开。
如果你想使用其它编辑器打开,可以直接输入: 这将会调用系统默认打开方式打开。
我们将第11行: - wks = gsn_open_wks("x11","gsun01n")
复制代码修改为: - wks = gsn_open_wks("pdf","gsun01n")
复制代码保存,然后运行: 这次,将会将NCL绘图输出为PDF文档。 输入以下命令以打开输出文件: 你还可以把NCL绘图输出为PNG图像。 - wks = gsn_open_wks("png","gsun01n")
复制代码如想要运行更多示例,可以查看这篇帖子:
现在,请点此阅读 NCL 帮助文档,学习更多用法。
(二) CDO、NCO、ecCodes、NCVIEW、Panoply的使用 CDO是软件是一个包含大量标准处理气候和预报模式数据的算子的集合。你可以访问其官网了解更多信息。 我们通过几个示例简要介绍: 首先下载示例文件 piggy_ex1.nc,该文件包含了 2020 年 12 月整月逐小时某个区域内 1000hPa 等压面上 U 风、V 风、垂直风速、温度 4 个变量,我们用CDO来处理这个文件:
下载并解压缩测试数据 piggy_ex.rar - wget http://www.nui.st/piggy_ex.rar
- unrar x piggy_ex.rar
复制代码
1) 查看变量信息 可以看到其包含t、u、v、w这 4 个变量。
2) 将文件中的 U 风、V 风两个变量保存在out1.nc 中 - cdo -f nc selvar,u,v piggy_ex1.nc out1.nc
复制代码3) 计算每 10 个时刻的滑动平均,保存在 out2.nc 中 - cdo runmean,10 piggy_ex1.nc out2.nc
复制代码4) 计算每个变量的区域平均值,保存在 out3.nc 中 - cdo fldmean piggy_ex1.nc out3.nc
复制代码5) 计算每个变量的区域平均值,保存在 out4.nc 中 - cdo timmean piggy_ex1.nc out4.nc
复制代码
NCO 是另一款强大的 NetCDF 数据处理软件,功能与CDO类似。
1) 提取 piggy_ex1.nc 中的温度变量,并保存在 nco.nc 中 - ncks -v t piggy_ex1.nc nco.nc
复制代码2) 将 piggy_ex1.nc 中的温度变量重命名为 tt,并保存到 nco2.nc 中 - ncrename -v t,tt piggy_ex1.nc nco2.nc
复制代码
NCVIEW是一个简单方便的 nc 文件可视化工具。 用NCVIEW打开piggy_ex1.nc 也可以使用另一款nc 文件可视化工具Panoply 打开
(三) MET和UPP Piggy_Packages包含了MODEL EVALUATION TOOLS (MET)和UNIFIED POST PROCESSOR (UPP),用于模式评估和前处理,这两个工具包在此不展开介绍。
(四) 运行你自己的代码 1) 运行NCL代码 新建一个NCL脚本 输入 保存并关闭。 运行脚本: 2) 运行Shell代码 新建一个Shell脚本 输入 运行脚本: 3) 运行Perl代码 新建一个Perl脚本 输入 运行脚本: 4) 运行C代码 新建一个C语言文件 输入 - #include<stdio.h>
- int main(){
- printf("HelloWorld\n");
- }
复制代码编译和运行: - gcc hello.c -o hello_c.exe && ./hello_c.exe
复制代码5) 运行C++代码 新建一个C++语言文件 输入 - #include<iostream>
- int main(){
- std::cout<<"HelloWorld\n";
- }
复制代码
编译和运行: - g++ hello.cpp -o hello_c++.exe && ./hello_c++.exe
复制代码6) 运行Fortran代码 新建一个Fortran语言文件 输入 - Program Hello
- Print *, "HelloWorld"
- End Program
复制代码编译和运行: - gfortran hello.f90 -o hello_fort.exe && ./hello_fort.exe
复制代码
(五) 数值模式WRF (WPS、WRFDA、WRFPLUS、WRF-Chem、WRF-Hydro) 的运行
(六) 技术支持 ~欢迎加入Piggy气象科学交流QQ群852983715学习交流~ |