爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: 介石以中正

[求助] 求矢量(风场)EOF和SVD程序

[复制链接]

新浪微博达人勋

发表于 2018-7-16 13:35:07 | 显示全部楼层
兰溪之水 发表于 2012-3-28 20:10
将两分量写成一个场做完再分开就OK了~

ncl里面两分量写成一个场,可不可以理解为用array_append_record函数合并成一个数组,然后进行EOF展开?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-16 13:50:31 | 显示全部楼层
当当要探索世界 发表于 2018-7-15 20:39
兰溪你好,我想问问对于风场EOF和SVD,将uv写成一个标量场进行分解之后,得到的特征向量依旧按原来写入一 ...

当当你好,我最近也在学习矢量风场的EOF,请问你用的是NCL把uv写成一个标量场吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-16 14:08:49 | 显示全部楼层
兰溪之水 发表于 2012-3-21 15:10
发现用原来的那个程序,然后把u和v写成一个场就可以做了~

兰溪你好,ncl里面u和v写成一个场是需要用到array_append_record这个函数吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-16 14:49:52 | 显示全部楼层
Dannyqiu 发表于 2018-7-16 13:50
当当你好,我最近也在学习矢量风场的EOF,请问你用的是NCL把uv写成一个标量场吗?

木有,我用的是matlab
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-18 14:59:04 | 显示全部楼层
矢量,好高深!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-12-12 21:19:20 | 显示全部楼层
兰溪之水 发表于 2012-3-28 20:10
将两分量写成一个场做完再分开就OK了~

请问是怎么写到一个场里呢?写成一个场每一维度会变化吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-10-10 17:02:47 | 显示全部楼层
兰溪之水 发表于 2012-3-28 20:10
将两分量写成一个场做完再分开就OK了~

那和两个分量分开做 最后再画矢量场一样把
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2020-8-12 13:39:03 | 显示全部楼层
他这个所谓分开,其实就和明明是空间网格,却把各列折叠到第一列一样(可以理解为减少维度),不管你空间格点怎么排列,不影响EOF,那很显然,你一个10*20*30的u和一个10*20*30的v,就全都去掉行放进列里面,矩阵变成10*20*2*30,也就是说先写u后写v。
其实改变被EOF的行长度和列长度都对计算结果有影响,不过你要记住,不同的结果并不是包含了不同的物理意义,这只是一种规定,比如求出的模态个数是列长度个,其实你任意缩减列长度都行,只是换了一种计算方式,类似调参。但是要注意,10列的月平均数据是对10月长度数据求模态,5月当然就不一样了。
我对EOF的原理不是很懂,但我觉得,EOF是求一个时间上的关系,和空间有关,但空间上只影响计算方式。EOF为什么要先做距平?因为EOF里面有求协方差,协方差用于“衡量两组起伏的协同变化”,这个“起伏”,就是距平,英文名Anomaly也就是异常,异常只是对正常数据的偏移,只有数学意义,没有物理意义。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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