資源描述:
《計算方法jacobi迭代法與高斯seidel迭代法實(shí)驗(yàn).doc》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、實(shí)驗(yàn)名稱:實(shí)驗(yàn)3jacobi迭代法與Gauss-seidel迭代法實(shí)驗(yàn)題目:給定線性方程組Ax=b如下實(shí)驗(yàn)?zāi)康模赫莆沼胘acobi迭代法與Gauss-seidel迭代法求解線性方程組的基本步驟?;A(chǔ)理論:jacobi迭代法基本思路是方程組Ax=b等價于x=Bx+f,然后通過迭代算出方程組的解;Gauss-seidel迭代法主要是通過對A的分解,構(gòu)造迭代公式,進(jìn)而迭代算出方程組的解。實(shí)驗(yàn)環(huán)境:操作系統(tǒng):WindowsXP;實(shí)驗(yàn)平臺:matlab實(shí)驗(yàn)過程:方法一:jacobi迭代法程序:n=4;A=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8];b=[6,2
2、5,-11,15];x0=[0,0,0,0];x0=zeros(n,1);x=x0;epsilon=input('精度=');N=input('最大迭代次數(shù)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));%求范數(shù)與迭
3、代在同一個循環(huán)中iftemp>normalnormal=temp;%這里用的是無窮范數(shù)endend%第i步迭代結(jié)束fprintf('%d:',k);fori=1:nx0(i)=x(i);%為下一次迭代準(zhǔn)備初值fprintf('%f',x(i));%輸出迭代過程endifnormal4、8];b=[6,25,-11,15];x=[0,0,0,0];epsilon=input('精度=');N=input('最大迭代次數(shù)N=');fprintf('%d:',0);fori=1:nfprintf('%f',x(i));end%以下是迭代過程fork=1:N%這是第k步迭代,迭代前的向量在x0[]中,迭代后的在x[]中normal=0;fori=1:nt=x(i);x(i)=b(i);forj=1:nifj~=ix(i)=x(i)-A(i,j)*x(j);endendx(i)=x(i)/A(i,i);temp=abs(x(i)-t);%求范數(shù)與迭代在同一個循環(huán)中if
5、temp>normalnormal=temp;%這里用的是無窮范數(shù)endend%第i步迭代結(jié)束fprintf('%d:',k);fori=1:nfprintf('%f',x(i));%輸出迭代過程endifnormal