在我的quest中快速解決對稱實矩陣的特徵向量問題(我只需要前N個特徵值和向量,其中「first」指最大(實數)值)我試圖在Windows上運行ARPack ++。我使用MSVS 2010進行開發。在Windows上使用Visual Studio中的ARPACK ++
我目前在鏈接地獄。我也不是99年的C++專業人士,他早餐吃點零食。
首先,ARPACK ++是一個只有標題的庫,這很好!它依賴於ARPACK,並且ARPACK再次依賴於BLAS和LAPACK。幸運的是,對於Windows用戶,BLAS,LAPACK和ARPACK,以及ARPACK ++的.lib和.dll文件are available已被patched支持,因此它可以與現代編譯器一起工作(並且包含一些錯誤修復)。
看起來,ARPACK ++引入了所需的依賴關係到庫。這是因爲,在我來說,我需要使用
ARluSymStdEig<ARFLOAT> prob(nev, matrix, which, ncv, tol,
maxit, resid, AutoShift);
類/ CTOR,它的名稱中「呂氏春秋」,我確實也得到沒有的符號。 我嘗試的下一件事是從當時(2000ish)抓取SuperLU庫,這是SuperLU 2.0。這個可以直接使用MSVS2010進行編譯(與ARPACK比較,例如必須使用MinGW/MSys進行編譯,除非您支付英特爾的FORTRAN編譯器)。我包括我創建的靜態superlu2.lib,但似乎SuperLU本身具有的只是宣告但尚未實施的方法,特別是
void cusolve(int, int, complex*, complex*);
void clsolve(int, int, complex*, complex*);
void cmatvec(int, int, int, complex*, complex*, complex*);
在cgstrs.c。現在我被困住了,不知道如何繼續:/看起來SuperLU再次擁有依賴關係,但他們沒有被提及。