我是靠谱客的博主 甜蜜书包,最近开发中收集的这篇文章主要介绍【数值分析】解线性方程组的迭代法(雅可比迭代法)前言迭代公式代码仓库地址,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

在计算大型稀疏矩阵方程组时,利用迭代法往往比较合适
本文将介绍雅可比迭代法及对应matlab代码

迭代公式

对线性方程 A x = b Ax=b Ax=b,有雅可比迭代公式:
{ x ( 0 ) = ( x 1 ( 0 ) , x 2 ( 0 ) , ⋯   , x n ( 0 ) ) T , x i ( k + 1 ) = ( b i − ∑ j = 1 , j ≠ i n a i j x j ( k ) ) / a i i , i = 1 , 2 , ⋯   , n ; k = 0 , 1 , ⋯ 迭 代 次 数 . left { begin{array}{c} x^{(0)}=(x_1^{(0)},x_2^{(0)},cdots ,x_n^{(0)})^T,\ x_i^{(k+1)}=(b_i-sum_{j=1,jneq i}^na_{ij}x_j^{(k)})/a_{ii},\ i=1,2,cdots ,n;k=0,1,cdots 迭代次数. end{array} right. x(0)=(x1(0),x2(0),,xn(0))T,xik+1)=(bij=1,j=inaijxj(k))/aii,i=1,2,,n;k=0,1,.

代码

main.m

clear;clc

%% input
A=input('A=');
b=input('b=');
x=input('x0=');
k=input('k=');
n=size(A,1);

%% x(k+1)
for m=0:k
    for i=1:n
        x(i)=(b(i)-f_sum(A,x,i,n))./A(i,i);
    end
end

%% output
x

f_sum.m

function sum=f_sum(A,x,i,n)
sum=0;
for j=1:n
    if j~=i
        sum=sum+A(i,j)*x(j);
    end
end

仓库地址

本文涉及代码已上传GitHub
仓库地址

最后

以上就是甜蜜书包为你收集整理的【数值分析】解线性方程组的迭代法(雅可比迭代法)前言迭代公式代码仓库地址的全部内容,希望文章能够帮你解决【数值分析】解线性方程组的迭代法(雅可比迭代法)前言迭代公式代码仓库地址所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部