2017-08-07 324 views
0

我嘗試使用一些示例(here)使用ARPACK,但我甚至無法弄清楚如何輸入我的矩陣。從這個question看來,Python和Matlab中的實現似乎是避免ARPACK複雜性的唯一解決方案。是否有一些(基於Fortran的)方法來做到這一點,也避免計算所有的特徵值/特徵向量?如何計算Fortran中的第一個特徵值和特徵向量

+0

*看起來*爲什麼看起來像?你真正的問題是什麼?你是否能夠使用ARPACK?什麼是問題?如何正確輸入矩陣?當它不起作用時你是如何做到的?問題是如何展示的?錯誤訊息?錯誤的結果?你的代碼是怎麼樣的? –

+0

問題在於標題。我發現ARPACK對於我的問題來說太複雜了,我想知道在Fortran中是否有更簡單的方法。 – Garini

+0

您是否知道圖書館推薦問題無題?相反,你應該描述這個問題,並且*「到目前爲止已經做了什麼來解決它」*。 –

回答

1

我寫了一個包裝,它只需要設置矩陣A和特徵值的數量(例如,如果只需要第一個特徵值,則nev = 1)。該代碼是從具體的應用程序,可以找到here改編。 我的模塊狀的版本只需要設置矩陣A,則多項功能,則數量特徵值其中哪些應採取(「LM」 - 震級最大的」

該代碼可以作爲一個要點here

NB:。ARPACK是從LAPACK不同,因爲它雖然這對於大稀疏矩陣優化通常爲密集矩陣優化

ARPACK包被設計用以計算幾個特徵值和對應的大型稀疏的或結構化矩陣 特徵向量,使用 隱式重啓動Arnoldi方法(IRAM),或者在 對稱矩陣,蘭克澤斯 的相應變體的情況下算法。它被許多流行的數值計算環境 如SciPy,Mathematica,GNU Octave和MATLAB所使用,以提供這種功能。 (來源:維基百科)

相關問題