国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

雅可比迭代和高斯—賽德?tīng)柕?/h1>

這篇具有很好參考價(jià)值的文章主要介紹了雅可比迭代和高斯—賽德?tīng)柕āOM麑?duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、雅可比迭代法

? ? ? ?對(duì)于線性方程組AX=b,我們首先將系數(shù)矩陣A分解為對(duì)角矩陣D、下三角矩陣L和上三角矩陣U:

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

1.1雅可比迭代法的matlab代碼

? 在這里,我們求解下面的帶狀方程(以下程序均是以求解該帶狀方程為例):

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

.............

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣?

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣?

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

function X0=jacobi(A,b,X0,delta,max1)
%輸入  -A代表線性方程組AX=b的系數(shù)矩陣
%      -b代表線性方程組AX=b右側(cè)的數(shù)值
%      -X0代表線性方程組AX=b進(jìn)行高斯-賽德?tīng)柕ㄇ蠼獾牡踔?%      -delta代表余項(xiàng)AX(k)-B的范數(shù)允許誤差
%      -max1代表迭代的次數(shù)
%輸出  -X0代表通過(guò)雅可比迭代法求解線性方程組AX=b的解
[N,N]=size(A);
L=-tril(A,-1);
U=-triu(A,1);
D=A+L+U;
B=inv(D)*(L+U)
f=inv(D)*b;
for k=1:max1
    X0=B*X0+f;
    err=abs(norm(A(:,:)*X0(:)-b(:),2))
    if err<delta
        break
    end
end   

?1.2雅可比迭代法的python代碼

import numpy as np

def jacobi(A,b,X0,max1):
    '''A代表線性方程組AX=b的系數(shù)矩陣
           b代表線性方程組AX=b右邊的部分
           X0代表高斯—賽德?tīng)柕某跏贾?           max1代表迭代的次數(shù)'''
    n = np.shape(A)[0]
    L = -np.tril(A, -1)
    U = -np.triu(A, 1)
    D = A + L + U
    B = np.dot(np.linalg.inv(D),L+U)
    f = np.dot(np.linalg.inv(D),b)
    for i in range(max1):
        X0 = np.dot(B, X0) + f
    return X0

n=50
#線性方程組AX=b右邊的部分
b=np.zeros((n,1))
for i in range(n):
    b[i]=5
#線性方程組AX=b的系數(shù)矩陣
A=np.zeros((n,n))
for i in range(n):
    A[i,i]=12
    if i>=0 and i<=48:
        A[i,i+1]=-2
    if i>=0 and i<=47:
        A[i,i+2]=1
    if i>=1:
        A[i,i-1]=-2
    if i>=2:
        A[i,i-2]=1
#迭代的初始值
X0=np.zeros((n,1))
for i in range(n):
    X0[i]=0
#進(jìn)行迭代的次數(shù)
max1=50
#進(jìn)行高斯—賽德?tīng)柕蠼饩€性方程組AX=b的解
X=jacobi(A,b,X0,max1)
#輸出由高斯—賽德?tīng)柕蟮玫木€性方程組的解
print(X)

二、高斯—賽德?tīng)柕?/h2>

? ? ? 高斯—賽德?tīng)柕ㄊ窃傺趴杀鹊ǖ幕A(chǔ)上,在計(jì)算用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣時(shí)盡可能地用最新的用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣來(lái)替換?。同樣對(duì)于線性方程組 AX=b,我們首先將系數(shù)矩陣A分解為對(duì)角矩陣D、下三角矩陣L和上三角矩陣U:

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣

用雅可比迭代法和高斯塞德?tīng)柦饩€性方程組ax=b,數(shù)值方法,python,算法,線性代數(shù),matlab,矩陣?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-824015.html

?2.1高斯—賽德?tīng)柕ǖ膍atlab代碼

function X0=Gauss_Saidel(A,b,X0,max1)
%輸入  -A代表線性方程組AX=b的系數(shù)矩陣
%      -b代表線性方程組AX=b右側(cè)的數(shù)值
%      -X0代表線性方程組AX=b進(jìn)行高斯-賽德?tīng)柕ㄇ蠼獾牡踔?%      -max1代表迭代的次數(shù)
%輸出  -X0代表通過(guò)高斯-賽德?tīng)柕ㄇ蠼饩€性方程組AX=b的解
[N,N]=size(A);
L=-tril(A,-1);
U=-triu(A,1);
D=A+L+U;
B=inv(D-L)*U;
f=inv(D-L)*b;
for k=1:max1
    X0=B*X0+f
end

2.2高斯—賽德?tīng)柕ǖ膒ython代碼

import numpy as np

def Gauss_Saidel(A,b,X0,max1):
    '''A代表線性方程組AX=b的系數(shù)矩陣
       b代表線性方程組AX=b右邊的部分
       X0代表高斯—賽德?tīng)柕某跏贾?       max1代表迭代的次數(shù)'''
    n=np.shape(A)[0]
    L=-np.tril(A,-1)
    U=-np.triu(A,1)
    D=A+L+U
    B=np.dot(np.linalg.inv(D-L),U)
    f=np.dot(np.linalg.inv(D-L),b)
    for i in range(max1):
        X0=np.dot(B,X0)+f
    return X0

n=50
#線性方程組AX=b右邊的部分
b=np.zeros((n,1))
for i in range(n):
    b[i]=5
#線性方程組AX=b的系數(shù)矩陣
A=np.zeros((n,n))
for i in range(n):
    A[i,i]=12
    if i>=0 and i<=48:
        A[i,i+1]=-2
    if i>=0 and i<=47:
        A[i,i+2]=1
    if i>=1:
        A[i,i-1]=-2
    if i>=2:
        A[i,i-2]=1
#迭代的初始值
X0=np.zeros((n,1))
for i in range(n):
    X0[i]=0
#進(jìn)行迭代的次數(shù)
max1=50
#進(jìn)行高斯—賽德?tīng)柕蠼饩€性方程組AX=b的解
X=Gauss_Saidel(A,b,X0,max1)
#輸出由高斯—賽德?tīng)柕蟮玫木€性方程組的解
print(X)

到了這里,關(guān)于雅可比迭代和高斯—賽德?tīng)柕ǖ奈恼戮徒榻B完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Matlab中求解線性方程組——高斯消元法、LU分解法、QR分解法、SVD分解法、迭代法等

    Matlab中求解線性方程組——高斯消元法、LU分解法、QR分解法、SVD分解法、迭代法等

    MATLAB迭代的三種方式以及相關(guān)案例舉例 MATLAB矩陣的分解函數(shù)與案例舉例 MATLAB當(dāng)中線性方程組、不定方程組、奇異方程組、超定方程組的介紹 MATLAB語(yǔ)句實(shí)現(xiàn)方陣性質(zhì)的驗(yàn)證 MATLAB繪圖函數(shù)的相關(guān)介紹——海底測(cè)量、二維與三維圖形繪制 MATLAB求函數(shù)極限的簡(jiǎn)單介紹 文章目錄 前言

    2024年02月08日
    瀏覽(25)
  • 34 | 牛頓迭代法

    牛頓迭代法(Newton’s Method)是一種用于尋找方程的實(shí)根的數(shù)值方法。其基本思想是通過(guò)一系列逼近來(lái)求解方程的根。對(duì)于方程 f ( x ) = 0 f(x) = 0

    2024年02月15日
    瀏覽(25)
  • 3.4 迭代法

    3.4 迭代法

    ? ? 雅可比迭代法是一種用于求解線性方程組的迭代算法,其基本思想是將線性方程組中的系數(shù)矩陣拆分為對(duì)角線矩陣和非對(duì)角線矩陣兩部分,并利用對(duì)角線矩陣的逆矩陣來(lái)迭代求解方程組。 具體地,設(shè)線性方程組為Ax=b,其中A為系數(shù)矩陣,b為常數(shù)向量,x為未知向量,雅可

    2024年02月08日
    瀏覽(23)
  • 松弛(SOR)迭代法

    ? ? ? ? 松弛迭代法是在雅可比迭代法和高斯——賽德?tīng)柕ǖ幕A(chǔ)上,以w0為松弛因子,建立迭代格式如下: 即 ? ? ? ? 我們將線性方程組AX=b的系數(shù)矩陣A分解成一個(gè)對(duì)角矩陣D、一個(gè)下三角矩陣L和一個(gè)上三角矩陣D,即A=D-L-U,則有: ?? ?? ?? ?? ?? ? ? ? ? 當(dāng)w=1時(shí),

    2024年02月04日
    瀏覽(20)
  • python算法二:迭代法

    1.定義:迭代法也稱輾轉(zhuǎn)法,是一種不斷用變量的舊值遞推新值的過(guò)程,跟迭代法相對(duì)應(yīng)的是直接法(或者稱為一次解法),即一次性解決問(wèn)題。迭代算法是用計(jì)算機(jī)解決問(wèn)題的一種基本方法,它利用計(jì)算機(jī)運(yùn)算速度快、適合做重復(fù)性操作的特點(diǎn),讓計(jì)算機(jī)對(duì)一組指令(或一定步

    2024年02月06日
    瀏覽(22)
  • 程序設(shè)計(jì)基礎(chǔ)實(shí)例大全(1.迭代法)

    本博文最先發(fā)表于知乎網(wǎng) 程序設(shè)計(jì)最為常用的計(jì)算方法有枚舉(Enumeration)、遞推和遞歸(Recursion)等。暴力搜索(Brute--force search)屬于枚舉法。 迭代法(Iteration)也是最為常用的一種方法。 1.1 階乘之和 問(wèn)題描述 計(jì)算S=1!+2!+…+n! 輸入 一個(gè)正整數(shù)n,滿足1≤n≤10。 輸出 階

    2024年02月07日
    瀏覽(26)
  • 牛頓迭代法求解方程根——C語(yǔ)言

    牛頓迭代法是一種求解非線性方程的數(shù)值計(jì)算方法,它的基本思路是通過(guò)不斷迭代逼近方程的根。下面我們將介紹如何使用C語(yǔ)言編寫牛頓迭代法求解方程根的代碼,并利用博客對(duì)代碼進(jìn)行解釋。 牛頓迭代法的基本原理是利用函數(shù)f(x)在點(diǎn)x_0處的切線來(lái)逼近函數(shù)的零點(diǎn),將切線

    2024年02月08日
    瀏覽(24)
  • 【數(shù)學(xué)】通俗理解泰勒公式(牛頓迭代法有用到)

    【數(shù)學(xué)】通俗理解泰勒公式(牛頓迭代法有用到)

    最近在看一些機(jī)器學(xué)習(xí)優(yōu)化相關(guān)的方法(梯度下降、牛頓迭代等),里面又涉及到泰勒公式展開(kāi)等,大學(xué)學(xué)的奈何都忘的差不多了,于是就看了一些博客,整理一下。 泰勒公式,也稱泰勒展開(kāi)式。是用一個(gè)函數(shù)在某點(diǎn)的信息,描述其附近取值的公式。如果函數(shù)足夠平滑,在已

    2024年02月04日
    瀏覽(23)
  • Jacobi迭代法的matlab程序(《數(shù)值分析原理》)

    Jacobi迭代法的matlab程序(《數(shù)值分析原理》)

    Jacobi迭代法是常見(jiàn)的幾種迭代法之一,迭代格式如下圖所示:(圖片來(lái)自CHD的ztl老師的PPT)(具體內(nèi)容詳見(jiàn)《數(shù)值分析原理》) 該例子使用matlab的命令文件格式,命名為jacobi.m。 舉例:設(shè)有方程組 取初始向量為x (0)=(-3,1,1) (T),用Jacobi方法求解,要求||x (k+1)-x (k)||小于等于10…

    2023年04月08日
    瀏覽(16)
  • 數(shù)值分析——關(guān)于非線性方程求根的迭代法

    數(shù)值分析——關(guān)于非線性方程求根的迭代法

    目錄 一、Aitken算法: 二、Steffensen算法: 三、牛頓切線法 四、定端點(diǎn)弦截法 五、動(dòng)端點(diǎn)弦截法 六、不動(dòng)點(diǎn)迭代法 七、二分迭代法 Aitken算法是一種加速級(jí)數(shù)收斂的方法,適用于遞推計(jì)算和迭代解法,其核心思想是通過(guò)利用級(jí)數(shù)中的部分和之間的線性關(guān)系來(lái)加速收斂。 對(duì)應(yīng)的迭

    2024年02月03日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包