爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 2971|回复: 23

cost733超简单安装运行

[复制链接]

新浪微博达人勋

发表于 2024-1-2 20:50:43 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 SunJiaming 于 2024-3-31 14:01 编辑

最近无意间发现有人将cost733class 1.4上传到了anaconda,可以仿照conda安装NCL的方式,安装并运行cost733class原网址:Cost733Class :: Anaconda.org
我的系统是Ubuntu 22.04 LTS

(1) 创建环境,命名为cost733,这步不用管python版本

  1. conda create -n cost733
复制代码

(2) 创建好环境后,启动环境cost733并运行如下代码安装cost733
  1. conda activate cost733
  2. conda install -c conda-forge cost733class
复制代码

如果这步出现问题,最好换一下conda的源,不要用镜像源。
(3) 等待安装完成后,我们拿hgt.1999.nc做个测试,空间分辨率2.5度,时间分辨率6小时,算法使用PCT(T-mode PCA)
  1. cost733class -dat pth:/home/sunjm/data/ncep_r2/daily/hgt.1999.nc var:hgt sle:500 slo:80:130:2.5 sla:10:60:2.5 -met PCT -ncl 4 -cla  output-PCT.txt  
复制代码
pth换成自己的文件地址,sle代表高度层,slo代表经度范围,sla代表纬度范围,2.5表示文件分辨率,-met表示算法名称(PCT),-ncl表示分型数量,-cla表示输出文件名称,自己起个名字就行,如果不指定输出位置,就会在根目录输出(我的是/home/sunjm/)
(4) output-PCT.txt中长这样,前4列为年月日小时,最后一列代表每个时次对应的天气类型

(5) 再计算一下ECV (explain cluster variance)
  1. cost733class -dat pth:/home/sunjm/data/ncep_r2/daily/hgt.1999.nc  -clain pth:/home/sunjm/output-PCT.txt dtc:4 ddt:6h -met ECV -idx clain-ECV
复制代码
或者:
  1. cost733class -dat pth:/home/sunjm/data/ncep_r2/daily/hgt.1999.nc var:hgt sle:500 slo:80:130:2.5 sla:10:60:2.5 -clain pth:/home/sunjm/output-PCT.txt dtc:4 ddt:6h -met ECV -idx clain-ECV
复制代码

-dat是原始数据的位置,-clain是输出结果的位置,dtc代表文件的日期数据有4列,这个必须要加;ddt代表时间分辨率6小时,-met代表计算ECV
(6) ECV最后会在屏幕输出,我的结果是0.0556

                               
登录/注册后可看大图


2024-03-31 更新
在计算PCT时,最好用var声明下变量名,不然cost733有可能识别不出来参与运算的变量而报错,并且对netcdf文件还有个要求,那就是nc文件的纬度(lat)只能从高纬度排序至低纬度(即从90°~-90°),但是在计算时sla的范围要求从小到大填写(如例子中10:60,而不能是60:10,否则也会报错)



output-PCT结果

output-PCT结果

ECV结果

ECV结果

评分

参与人数 1金钱 +20 贡献 +2 收起 理由
付亚男 + 20 + 2 不错

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2024-1-9 11:09:23 | 显示全部楼层
点赞
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2024-2-18 09:47:06 | 显示全部楼层
太棒了!感谢楼主分享!
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-3-7 12:31:11 | 显示全部楼层
你好,博主大大,这个分型数量是根据什么弄出来的哇
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2024-3-7 14:53:22 | 显示全部楼层
南极的七色鹿 发表于 2024-3-7 12:31
你好,博主大大,这个分型数量是根据什么弄出来的哇

Ning, G., Yim, S.H.L., Wang, S. et al. Synergistic effects of synoptic weather patterns and topography on air quality: a case of the Sichuan Basin of China. Clim Dyn 53, 6729–6744 (2019). https://doi.org/10.1007/s00382-019-04954-3
可以参考下这篇论文,简单来说,每一种分型数都对应一个ECV,取前后两个ECV的差值最大时,对应的分形数就是最佳的分型
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-3-7 16:35:30 | 显示全部楼层
SunJiaming 发表于 2024-3-7 14:53
Ning, G., Yim, S.H.L., Wang, S. et al. Synergistic effects of synoptic weather patterns and topogr ...

好嘞博主大大!超级感谢诶
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2024-3-7 22:01:09 | 显示全部楼层
南极的七色鹿 发表于 2024-3-7 16:35
好嘞博主大大!超级感谢诶

客气客气~一起学习!
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-3-7 23:43:52 | 显示全部楼层
SunJiaming 发表于 2024-3-7 22:01
客气客气~一起学习!

博主大大你好~可以麻烦再问您一个问题吗?就是如果我对某个省份进行天气分型,那么用PCT方法进行命令操作时,经纬度的范围是不是要比该省的实际经纬度更大点哇?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2024-3-8 10:16:49 | 显示全部楼层
南极的七色鹿 发表于 2024-3-7 23:43
博主大大你好~可以麻烦再问您一个问题吗?就是如果我对某个省份进行天气分型,那么用PCT方法进行命令操作 ...

最好能大一些,因为范围太小的话数据点太少,可能会报错,并且分型出来的结果可能太相似,没法分析
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2024-3-8 15:26:00 | 显示全部楼层
SunJiaming 发表于 2024-3-8 10:16
最好能大一些,因为范围太小的话数据点太少,可能会报错,并且分型出来的结果可能太相似,没法分析

好嘞~太感谢博主大大啦
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表