導航:首頁 > 源碼編譯 > res的演算法

res的演算法

發布時間:2023-11-14 23:52:46

❶ 求簡要介紹一下gmres演算法。謝謝。

視圖求解線性方程組A*x=b的解x。nXn的稀疏矩陣A必須是方程且應是大型稀疏矩陣。列向量b的長度必須為n。參數A可以是一個函數afun以使得afun(x)返回A*x,對於這一語法格式,gmres並不重新啟動,迭代的最大次數為min(n,10)。
如果gmres收斂,則顯示這一結果的信息。如果gmres在最大迭代步後沒有收斂或者由於某種原因而停止,則列印警告信息,顯示相對殘差范數norm(b-A*x)/norm(b)並且顯示該方法停止或者失效時的迭代步數。

Gmres(A,b,restart)
在每一次重新開始內部迭代時才重新開始方法。外部迭代的最大數目為min(n/restart,10),總迭代的最大步數為restart*min(n/restart,10).如果restart為n或者[],則gmres並不重新開始,則總迭代的最大數目為min(n,10)
Gmres(A,b,restart,tol)
指定方法的誤差。如果tol為[],則函數gmres將使用默認值1e-6.
Gmres(A,b,restart,tol,maxit)
指定外部迭代的最大次數,也就是說,迭代的總次數不超過restart*matrix。如果參數maxit為[],則矩陣gmres使用默認值min(n/restart,10);如果參數restart為n或者[],則總迭代的最大次數為maxit(而非restart*matxit)。
Gmres(A,b,restart,tol,maxit,M)和 Gmres(A,b,restart,tol,maxit,M1,M2)
使用預處理矩陣M或者M=M1*M2有效地求解方程組inv(M)*A*x=inv(M)*b.如果M為[],則函數gmres不適應預處理矩陣,M可以是一個函數,它返回M\x
Gmres(A,b,restart,tol,maxit,M1,M2,x0)
指定初始的猜測值。如果x0為[],則函數gmres將使用默認值,一個全為零的向量。
Gmres(afun,b,restart,tol,maxit,m1fun,m2fun,x0,p1,p2,…)
將參數傳遞到函數afun(x,p1,p2,…),m1fun(x,p1,p2,…)和m2fun(x,p1,p2,…)中。
[x,flag]=gmres(A,b,…)
返回一個收斂標志符:

Flag=0

函數gmres在maxit外部迭代步數之內收斂到期望的誤差

Flag=1

函數gmres迭代maxit次但沒有收斂

Flag=2

預處理矩陣M為病態條件陣

Flag=3

函數gmres停滯(兩個連續迭代步的結果相同)

當flag的值不為0時,返回的解x是在所有迭代過程中得到的具有最小范數殘差的結果。如果指定輸出flag,則不顯示任何消息。
[x,flag,relres]=gmres(A,b,…)
返回相當殘差范數norm(b-A*x)/norm(b),如果flag的值為0,則relres<=tol,
[x,flag,relres,iter]=gmres(A,b,…)
返回計算x時外部和內部迭代次數,其中0<=iter(1)<=maxit且0<=iter(2)<=restart.
[x,flag,relres,iter,resvec]=gmres(A,b,…)
返回每一個內部迭代時的殘差范數向量,包含norm(b-A*x0).

閱讀全文

與res的演算法相關的資料

熱點內容
資料庫查詢系統源碼 瀏覽:617
php5314 瀏覽:358
完美國際安裝到哪個文件夾 瀏覽:668
什麼app可以掃一掃做題 瀏覽:539
程序員編碼論壇 瀏覽:923
淘點是什麼app 瀏覽:659
中國高等植物pdf 瀏覽:453
51單片機時間 瀏覽:182
後台如何獲取伺服器ip 瀏覽:267
單片機流水燈程序c語言 瀏覽:234
程序員第二職業掙錢 瀏覽:239
運行里怎麼輸入伺服器路徑 瀏覽:840
pythonstepwise 瀏覽:509
劉一男詞彙速記指南pdf 瀏覽:64
php認證級別 瀏覽:368
方舟編譯啥時候推送 瀏覽:1011
php手機驗證碼生成 瀏覽:675
哲學思維pdf 瀏覽:14
凌達壓縮機有限公司招聘 瀏覽:534
weblogic命令部署 瀏覽:38