GMRES在matlab中的描述

2022-04-05 03:12:32 字數 1690 閱讀 7860

參考文獻:matlab函式庫查詢辭典 徐東豔 孟曉剛編著

[函式描述]

x=gmres(a,b)

檢視求解線性方程組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).

Matlab 在Matlab中如何畫圓

rectangle函式功能 建立二維矩形物件。1.1 rectangle position x,y,w,h 其中以x,y為起始座標開始,畫出長為w,寬為h的矩形。1.2 rectangle curvature a,b 指定矩陣邊的曲率,可以使它從矩形到橢圓不同變化,水平曲率x為矩形寬度的分數,是沿著...

LibSVM 在matlab中的使用

搞了一天,看了很多資料,終於搞好了matlab中呼叫大牛寫好的svm庫,將結果告訴大家避免以後走彎路。1.參考 詳解 2.操作流程 請注意 詳細操作流程請參考上面的 詳解 這裡只說大框架和詳解裡沒有提到的問題。a.設定path file set path add with subfolders 加入...

LibSVM 在matlab中的使用

搞了一天,看了很多資料,終於搞好了matlab中呼叫大牛寫好的svm庫,將結果告訴大家避免以後走彎路。1.參考 詳解 2.操作流程 請注意 詳細操作流程請參考上面的 詳解 這裡只說大框架和詳解裡沒有提到的問題。a.設定path file set path add with subfolders 加入...