欢迎来到天天文库
浏览记录
ID:33849306
大小:118.50 KB
页数:6页
时间:2019-03-01
《计算方法jacobi迭代法与高斯seidel迭代法实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
实验名称:实验3jacobi迭代法与Gauss-seidel迭代法实验题目:给定线性方程组Ax=b如下实验目的:掌握用jacobi迭代法与Gauss-seidel迭代法求解线性方程组的基本步骤。基础理论:jacobi迭代法基本思路是方程组Ax=b等价于x=Bx+f,然后通过迭代算出方程组的解;Gauss-seidel迭代法主要是通过对A的分解,构造迭代公式,进而迭代算出方程组的解。实验环境:操作系统:WindowsXP;实验平台:matlab实验过程:方法一:jacobi迭代法程序:n=4;A=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8];b=[6,25,-11,15];x0=[0,0,0,0];x0=zeros(n,1);x=x0;epsilon=input(' 精度=');N=input(' 最大迭代次数N=');fprintf(' %d:',0);fori=1:nfprintf('%f',x0(i));end %以下是迭代过程fork=1:N%这是第k步迭代,迭代前的向量在x0[]中,迭代后的在x[]中normal=0;fori=1:nx(i)=b(i);forj=1:nifj~=ix(i)=x(i)-A(i,j)*x0(j);endendx(i)=x(i)/A(i,i);temp=abs(x(i)-x0(i));%求范数与迭代在同一个循环中iftemp>normalnormal=temp;%这里用的是无穷范数endend%第i步迭代结束fprintf(' %d:',k);fori=1:nx0(i)=x(i);%为下一次迭代准备初值fprintf('%f',x(i));%输出迭代过程 endifnormalnormalnormal=temp;%这里用的是无穷范数endend%第i步迭代结束fprintf(' %d:',k);fori=1:nfprintf('%f',x(i));%输出迭代过程endifnormal
此文档下载收益归作者所有
举报原因
联系方式
详细说明
内容无法转码请点击此处