freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

lu分解法、列主元高斯法、jacobi迭代法、gauss-seidel法的原理及matlab程序(完整版)

2025-05-04 20:19上一頁面

下一頁面
  

【正文】 第二題( LU分解法)數(shù)據(jù) A=[4824012。LU(A,b)L= 0 0 0 0 0 0 0 = 0 0 0 0 0 0 第頁 南昌航空大學(xué)數(shù)學(xué)與信息科學(xué)學(xué)院實驗報告 x[1]=[2]=[3]=[4]= 第三題 Jacobi迭代法的數(shù)據(jù) A=[10120。Jacobi(A,b,)x[1]=[2]=[3]=[4]=2397 第三題用 Gauss_Seidel 迭代的數(shù)據(jù) A=[10120。Gauss_Seidel(A,b,)x[1]=[2]=[3]=7x[4]= 四、實驗中存在的問題及解決方案 存在的問題 ( 1)第一題中在 matlab 中輸入 Gauss(A,b)(數(shù)據(jù)省略)得到m=4n=4???UndefinedfunctionorvariableAb.Errorin==Gaussat8[ap,p]=max(abs(Ab(k:n,k)))。需要對這些方法的原理都要掌握才能寫出程序,由于理論知識的欠缺,我花了很大一部分時間在看懂實驗的原理上,看懂了實驗原理之后就開始根據(jù)原理編寫程序 ,程序中還是出現(xiàn)了很多的低級錯誤導(dǎo)致調(diào)試很久才能運行。nb=n+1。endendx=zeros(n,1)。3113。x=us(u,y)。fori=0:n2s=0。4。x0=x+2*e。6。6。 編寫程序是一個繁雜的過程,需要不斷調(diào)試,并且善于發(fā)現(xiàn)程序中的細(xì)小問題,才能夠正常運行處程序。]。21100。u=triu(a,1)。N=100。2441212。fork=1:i1s=s+A(i,k)*y(k)。3。x[%d]=%f\n39。ifip~=iAb([iip],:)=Ab([ipi],:)。然后換行使之變到主元位子上,在進(jìn)行消元計算。 第頁 南昌航空大學(xué)數(shù)學(xué)與信息科學(xué)學(xué)院實驗報告 解決方案 ( 1)針對第一題中由于程序的第二行漏了一個分號導(dǎo)致輸出了 m和 n的值,第 8 行中將 Ab 改為 A問題就解決了。b=[11。b=[11。b=[4。b=[4。 %記錄循環(huán)次數(shù) x=inv(DL)*U*x+inv(DL)*b。D=diag(diag(A))。k=0。x[%d]=%f\n39。 L(k+1:n,k)=(A(k+1:n,k)L(k+1:n,1:k1)*U(1:k1,k))/U(k,k)。,k,x(k))。b(k+1:n)=b(k+1:n)m*b(k)。 ifpk t=A(k,:)。即高斯列主元消去法。 通過這次試驗使我深刻的體會到理論知識的重要性,沒有理論知識的支撐是寫不出程序來的。沒有得到想要的結(jié)果。0813。0813。24241212。2111。k=0。x[%d]=%f\n39。 %求矩陣 LU=Dtriu(A)。 第 頁 南昌航空大學(xué)數(shù)學(xué)與信息科學(xué)學(xué)院實驗報告 x(n)=y(n)/U(n,n)。U(1,1:n)=A(1,1:n)。 fork=n1:1:1 x(k)=(b(k)A(k,k+1:n)*x(k+1:n))/A(k,k)。b(p)=t。n=length(b)。 具 體 過 程 如下 : (k)對于 k 1,2, ,n 1,若 akk 0,依次計算 南昌航空大學(xué)數(shù)學(xué)與信息科學(xué)學(xué)院實驗報告 (k)(k)mik aik/akk(k 1)(k)(k)aij aij mikakj bi(k 1) bi(k) mikbk(k),i,j k 1, ,n然后將其回代得到: (n)(n) xn bn/ann n (k)(k)(k)x (b ax)/a,k n 1,n2, ,1 kkjjkk kj k 1 (k)但是高斯消去法在消元的過程中有可能會出現(xiàn) akk 0的情況,這時消元就無法進(jìn)行了, (k)即使主元數(shù) akk 0,但是很小時,其做除數(shù),也會導(dǎo)致其他元素數(shù)量級的嚴(yán)重增長和舍入誤差的擴(kuò)散。因此,為了減少誤差,每次消元選取系數(shù)矩陣的某列中絕對值最大的元素作為主元素。fork=1:n1 [pt,p]=max(abs(A(k:n,k)))。 end m=A(k+1:n,k)/A(k,k)。 end fork=1:n fprintf(39。 %開始進(jìn)行 LU分解 L(2:n,1)=A(2:n,1)/U(1,1)。fork=n1:1:1 x(k)=(y(k)U(k,k+1:n)*x(k+1:n))/U(k,k)。 %求矩陣 Utemp=1。,k,x(k))。whileabs(max(x)temp)eps temp=max(abs(x))。3113。06202。21100。21100。 ( 2)第二題中在 matlab中輸入 y=LU(A,b)得到 y= 。寫程序時還會犯很多低級的錯誤,以后一定要加強(qiáng)理論知識的學(xué)習(xí),減少編程時低級錯誤的產(chǎn)生。 ( LU 分解)的原理 先將矩陣 A直接分解為 A LU則求解方程組的問題就等價于求解兩個三角形方程組。A(k,:)=A(p,:)。A(k+1:n,k)=zeros(nk,1)。 分解法的程序 functionLU(A,b) %A 為系數(shù)矩陣, b為右端項矩陣 [m,n]=size(A)。 endL %輸出 L 矩陣 U %輸出 U 矩陣 y=zeros(n,1)。,k,x(k))。whileabs(max(x)temp)eps temp=max(abs(x))。 %求矩陣 DL=Dtril(A)。 %Gauss_Seidel 的迭代公式 end fork=1:n fprintf(39。1。4。11。11。 ( 2)由于程序后面出現(xiàn)了矩陣 y故輸出的事矩陣 y 的值,但是我們要的事 x 的值,故只需要 將 y 改成 x,或者直接把 y去掉就解決了問題。設(shè) A(k)x b(k),確定第 k列主元所在位置 ik,在交換 ik 行和 k行后,在進(jìn)行消元。end 第頁稱 BG 為 GaussSeidel迭代法的迭代矩陣。,x(k))。4]。endy(i)=(b(i)s)/A(i,i)。06202。e=1e4。whilenorm(x0x,inf)eamp。13111]。gau(A,b,x)結(jié)果為 x= 四、實驗中存在的問題及解決方案 命令需多次修改,如 Gauss 迭代中, m 文件中因 end 的不匹配使得程序無法運行處結(jié)果,則需細(xì)心調(diào)試,去除多余的 end,才能使程序正常運行。Jacobi迭代與 GaussSeidel 有一個共同特點:新的近似解是已知近似解的線性函數(shù),并且新的近似解只與已知近
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1