svd奇异值分解_NCL专辑 | 奇异值分解(SVD)
奇異值分解SVD(Singular?Value?Decomposition)是一種矩陣分解方法,在氣象領(lǐng)域中常用來分析兩個氣象場場之間的關(guān)系。
NCL的函數(shù)庫中與SVD相關(guān)的函數(shù)包括svd_lapack,svdcov,svdcov_sv,svdstd,svdstd_sv。
svd_lapack:用于計算一般矩形矩陣的奇異值分解。具體寫法為:
s = svd_lapack (a, "S" , "S", 0, u, v)這里,a是一個(/nca,nra/)矩陣,兩個“S”為固定寫法,0表示輸出v時不轉(zhuǎn)置(1則表示轉(zhuǎn)置v),u和v分別為左、右奇異向量,u的長度和屬性都和a相同,而v的長度為(/nca,nca/),屬性也與a相同。
svdcov:對兩個場進(jìn)行奇異值分解,并返回與這兩個場相關(guān)的左右同構(gòu)和異構(gòu)數(shù)組。具體寫法為:
svd_rv = svdcov(s,z,nsvd,homlft,hetlft,homrgt,hetrgt)
這里,s為(/ncols,ntime/)的氣象場,z為(/ncolz,ntime/),?二者都為float或者double。nsvd為計算的svd模態(tài)數(shù)。homlft,hetlft,homrgt,hetrgt分別為左同構(gòu)場、左異構(gòu)場、右同構(gòu)場合右異構(gòu)場。它們的屬性如下:
??homlft:(/nsvd,ncols/),typeof(s)??hetlft:(/nsvd,ncols/),typeof(s)??homrgt:((/nsvd,ncolz/),typeof(s)??hetrgt:((/nsvd,ncolz/),typeof(s)
時間系數(shù)為:
ak = onedtond(svd_rv@ak,(/nsvd,ntime/))bk = onedtond(svd_rv@bk,(/nsvd,ntime/))
??ak!0?=?"sv"
??ak!1?=?"time"
??bk!0?=?"sv"
??bk!1?=?"time"
svdcov_sv:該命令與svdcov的區(qū)別在于,它只返回兩個輸入數(shù)據(jù)集相關(guān)聯(lián)的左右奇異向量。
svdstd、svdstd_sv:它們與svdcov、svdcov_sv的區(qū)別在于,它們首先對輸入的數(shù)組進(jìn)行了標(biāo)準(zhǔn)化處理,然后再進(jìn)行SVD計算,而svdcov、svdcov_sv不會對輸入的數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理。
數(shù)據(jù)處理·機(jī)器學(xué)習(xí)·可視化
行業(yè)資訊·學(xué)習(xí)資料
長按關(guān)注不迷路
總結(jié)
以上是生活随笔為你收集整理的svd奇异值分解_NCL专辑 | 奇异值分解(SVD)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python3 字典 copy()方法
- 下一篇: 无人驾驶技术(1)