文件名称:matlab与方程组求解
文件大小:34KB
文件格式:DOCX
更新时间:2014-11-18 14:34:51
matlab 方程组
函数 bicg 格式 x = bicg(A,b) %求线性方程组AX=b的解X。A必须为n阶方阵,b为n元列向量。A可以是由afun定义并返回A*X的函数。如果收敛,将显示结果信息;如果收敛失败,将给出警告信息并显示相对残差norm(b-A*x)/norm(b)和计算终止的迭代次数。 bicg(A,b,tol) %指定误差tol,默认值是1e-6。 bicg(A,b,tol,maxit) %maxit指定最大迭代次数 bicg(A,b,tol,maxit,M) %M为用于对称正定矩阵的预处理因子 bicg(A,b,tol,maxit,M1,M2) %M=M1×M2 bicg(A,b,tol,maxit,M1,M2,x0) %x0为初始估计值,默认值为0。 [x,flag] = bicg(A,b,…) %flag的取值为:0表示在指定迭代次数之内按要求精度收敛;1表示在指定迭代次数内不收敛;2表示M为坏条件的预处理因子;3表示两次连续迭代完全相同;4表示标量参数太小或太大。 [x,flag,relres] = bicg(A,b,…) % relres表示相对误差norm(b-A*x)/norm(b) [x,flag,relres,iter] = bicg(A,b,…) %iter表示计算x的迭代次数 [x,flag,relres,iter,resvec] = bicg(A,b,…) %resvec表示每次迭代的残差:norm(b-A*x0)