线性方程组求解的数值方法.ppt

上传人:zhu****ei 文档编号:3510350 上传时间:2019-12-16 格式:PPT 页数:42 大小:1,023.50KB
返回 下载 相关 举报
线性方程组求解的数值方法.ppt_第1页
第1页 / 共42页
线性方程组求解的数值方法.ppt_第2页
第2页 / 共42页
线性方程组求解的数值方法.ppt_第3页
第3页 / 共42页
点击查看更多>>
资源描述
第三章线性方程组求解的数值方法,3.1Gauss消去法与矩阵的LU分解,3.2Cholesky分解,3.3向量范数与矩阵范数,3.4古典迭代法的构造,3.5迭代法的分析,3.6超松弛迭代(SOR)及分块迭代方法,3.7线性方程组的条件,3.8稀疏矩阵的计算,线性方程组求解的数值方法,3.1Gauss消去法与矩阵的LU分解,基本思想:用逐次消去未知数的方法把原方程组化为三角形方程组再求解。消元:用初等变换将原方程组的系数矩阵化为三角形矩阵(简称三角阵)再求解的方法。回代:解出三角形方程组的最后一个方程,将求得的值逐步往前一个方程代入的方法。,消元,为什么选主元,避免方法:高斯主元消元法,functionX=uptrbk(A,b)%A是一个n阶矩阵。%b是一个n维向量。%X是线性方程组AX=b的解。NN=size(A);X=zeros(1,N+1);Aug=Ab;forp=1:N-1Y,j=max(abs(Aug(p:N,p);C=Aug(p,:);Aug(p,:)=Aug(j+p-1,:);Aug(j+p-1,:)=C;,高斯主元消去法的MATLAB实现,ifAug(p,p)=0A是奇异阵,方程无惟一解breakendfork=p+1:Nm=Aug(k,p)/Aug(p,p);Aug(k,p:N+1)=Aug(k,p:N+1)-m*Aug(p,p:N+1);endend%这里用到程序8-1中定义的函数backsub来进行回代。X=backsub(Aug(1:N,1:N),Aug(1:N,N+1);,A=0.00123;-13.7124.623;-21.0725.643;b=123;uptrbk(A,b),比较计算结果:主元消元法-0.4904-0.05100.3675用x=Ab-0.4904-0.05100.3675一般消元法-0.4-0.099800.4,functionX=backsub(A,b)%A是一个n阶上三角非奇异阵。%b是一个n维向量。%X是线性方程组AX=b的解。n=length(b);X=zeros(n,1);X(n)=b(n)/A(n,n);fork=n-1:-1:1X(k)=(b(k)-A(k,k+1:n)*X(k+1:n)/A(k,k);End,用回代法求解上三角线性方程组AX=B,其中A为非奇异。,矩阵的LU分解,functionX=lufact(A,b)%A为n阶矩阵。%b是n维向量。%X是所求的AX=b的解。N,N=size(A);X=zeros(N,1);Y=zeros(N,1);C=zeros(1,N);R=1:N;forp=1:N-1max1,j=max(abs(A(p:N,p);C=A(p,:);A(p,:)=A(j+p-1,:);A(j+p-1,:)=C;d=R(p);R(p)=R(j+p-1);R(j+p-1)=d;ifA(p,p)=0A是奇异阵,方程组无惟一解,breakendfork=p+1:Nmult=A(k,p)/A(p,p);A(k,p)=mult;A(k,p+1:N)=A(k,p+1:N)-mult*A(p,p+1:N);endendY(1)=b(R(1);fork=2:NY(k)=b(R(k)-A(k,1:k-1)*Y(1:k-1);endX(N)=Y(N)/A(N,N);fork=N-1:-1:1X(k)=(Y(k)-A(k,k+1:N)*X(k+1:N)/A(k,k);end,3.2Cholesky分解(平方根法),3.3向量范数与矩阵范数,向量的收敛,矩阵范数,常用的矩阵范数,矩阵的收敛,谱半径,3.4三种迭代法,雅可比迭代法的Matlab程序,functionX=jacobi(A,b,P,delta,max1)%A是n维非奇异阵。%b是n维向量。%P是初值。%delta是误差界。%max1是给定的迭代最高次数。%X为所求的方程组AX=b的近似解。N=length(b);fork=1:max1forj=1:NX(j)=(b(j)-A(j,1:j-1,j+1:N)*P(1:j-1,j+1:N)/A(j,j);enderr=abs(norm(X-P);P=X;if(errdelta)breakendendX=X;k,err;,functionX=gseid(A,b,P,delta,max1)%A是n维非奇异阵。%b是n维向量。%P是初值。%delta是误差界。%max1是给定的迭代最高次数。%X为所求的方程组AX=b的近似解。N=length(b);fork=1:max1forj=1:Nifj=1X(1)=(b(1)-A(1,2:N)*P(2:N)/A(1,1);elseifj=NX(N)=(b(N)-A(N,1:N-1)*(X(1:N-1)/A(N,N);elseX(j)=(b(j)-A(j,1:j-1)*X(1:j-1)-A(j,j+1:N)*P(j+1:N)/A(j,j);endenderr=abs(norm(X-P);P=X;if(errdelta)breakendendX=X;err,k,塞德尔迭代法的迭代程序:,3.5迭代法的收敛性,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!