文件 | CI | 覆蓋範圍 | DOI | 下載 |
---|---|---|---|---|
如果您在工作中使用Krylov.jl ,請使用CITATION.cff
中給出的元資料來引用它。
@article{montoison-orban-2023, author = {Montoison, Alexis and Orban, Dominique}, title = {{ Krylov.jl : A Julia basket of hand-picked Krylov methods}}, journal = {Journal of Open Source Software}, volume = {8}, number = {89}, pages = {5187}, year = {2023}, doi = {10.21105/joss.05187} }
該套件提供了某些最有用的 Krylov 方法的實現,可解決各種問題:
正方形或矩形滿秩系統
軸=b
當b位於A的範圍空間內時應求解。這種情況發生時
A是平方且非奇異,
A很高且具有完整的列排名,且b位於A的範圍內。
線性最小平方法問題
最小化 ‖ b - Ax ‖
當b不在A的範圍內(不一致系統)時,無論A的形狀和秩如何,都應該求解。這種情況主要發生在
A是平方且是奇異的,
A又高又瘦。
欠定係統較不常見,但也有發生。
如果有無限多個這樣的x (因為A是列秩不足的),則確定一個具有最小範數的 x
最小化 ‖ x ‖ 且滿足x ∈ argmin ‖ b - Ax ‖。
線性最小範數問題
最小化 ‖ x ‖ 且滿足Ax = b
當A是列秩不足但b在A的範圍內(一致系統)時應該解決,無論A的形狀如何。這種情況主要發生在
A是平方且是奇異的,
A又短又寬。
超定係統較不常見,但也有發生。
伴隨系統
Ax = b且Aᴴy = c
其中A可以有任意形狀。
鞍點和埃爾米特準定係統
[ M A ] [ x ] = [ b ]
[ Aᴴ -N ] [ y ] [ c ]
其中A可以有任意形狀。
廣義鞍點和非埃爾米特分區系統
[ M A ] [ x ] = [ b ]
[ BN ] [ y ] [ c ]
其中A可以有任何形狀,而B具有Aᴴ的形狀。 A 、 B 、 b和c必須全部非零。
Krylov 解算器特別適用於必須求解此類問題但無法進行因式分解的情況,原因如下:
A不明確可用,
如果 A 被具體化,它會很密集或會消耗過多的內存,
因素會消耗過多的記憶體。
在以下任一情況下,建議使用迭代方法:
問題夠大,分解不可行或會很慢,
在問題具有不利譜結構的情況下,已知有效的預處理器,
此運算符可以有效地表示為稀疏矩陣,
此運算符速度很快,即,與將其具體化為矩陣相比,可以以更好的複雜性來應用。某些快速算子將具體化為稠密矩陣。
Krylov.jl中的所有求解器都有就地版本,與GPU相容並可在任何浮點資料類型下運作。
Krylov 可以透過 Julia 套件管理器安裝和測試:
茱莉亞>] pkg> 加入克雷洛夫 pkg> 測試克雷洛夫
如果您認為發現了錯誤,請隨時提出問題。重點建議和請求也可以作為問題打開。在打開拉取請求之前,請就該主題提出問題或討論。
如果您想提出不適合錯誤回報的問題,請隨時在此處開始討論。該論壇用於有關此存儲庫和 JuliaSmoothOptimizers 組織的一般討論,因此歡迎對我們的任何軟體包提出疑問。