数学建模社区-数学中国
标题:
雅可比迭代法解线性方程组
[打印本页]
作者:
seven3069
时间:
2016-10-12 22:38
标题:
雅可比迭代法解线性方程组
雅可比迭代法解线性方程组:
%雅可比迭代法解线性方程组;
+ E5 e' f, ^; H8 `# x6 U
clc;clear;close;
. ^8 L) i6 u y* ]5 h: q) }9 h/ c
% digits(4);
& F2 _6 X. f. j
A=input('请输入系数矩阵:');
$ W! ~5 y( R( R0 q" r( i# Y2 C! X
b=input('请输入b矩阵(列向量):');
4 c8 F/ X7 @" J# I* h* l
X0=input('请输入迭代初值(列向量):');
+ f( ^8 f" Q3 Y8 T7 S* R0 a& b1 l
k=input('请输入迭代次数:');
a5 T3 r3 R6 j! u4 Q8 H/ L k
[M1,N1]=size(A);
: v: {- b/ d$ u7 U8 D
% X0=[3.1481 4.8 2.037]';
0 ~# `+ u1 h8 b# N/ Y0 S4 _
% f=X0;
" U) |! l7 A' ]" A* a8 P/ R
% X=X0;
# s9 c+ @+ t9 v& R
% vpa(X0);
( W6 k% X7 l. k
% vpa(X);
4 C S5 y$ h) C. W+ c
% vpa(f);
8 G4 Z0 e, o& V0 ^# _
OUT=[];
/ D, @3 g. J8 @: i# }1 O) ^
% vpa(OUT);
$ E" b' n- e. t3 M$ H1 b" ^
%M=[0 -0.2222 0.0370;-0.4 0 -0.1333;-0.0185 -0.0185 0];
% U! ^& @- J5 ?* K
%求解M矩阵;
6 W8 t/ u) H8 d7 X+ n
for m=1:M1
. g- B. T1 c* E- f1 X2 Z
for n=1:N1
" q1 f, Q/ T- ~, N# \
if m==n
1 w$ ]) _7 k. ]: M1 C+ m
D(m,n)=A(m,n);
. L. a; g# c8 J& V& J. z( K
else
) l( t U; P3 c
D(m,n)=0;
7 T8 R1 d8 ?/ j2 _* M+ ^+ e5 E4 `
end
. \! F2 X( A) x. R5 [
end
q9 g% z0 c0 t+ L* ]
end
% [! t: r4 J4 @
LU=A-D
: G- X& k% r% U( L/ o) t
M=-inv(D)*(LU)
4 ?( q* I' V& p
f=inv(D)*b
( I e. s, v' i$ a! g, e
X=X0;
& i0 O4 n' j& v1 L- a3 \0 J
%特征根求解;
# N' @. U; L. v# J3 M5 I
[v,d]=eig(M)
! S- R0 e7 c4 S# A% d; w3 }& v
% vpa(M);
! K) @# V* Q$ G# [5 {8 C
for i=1:k;
) U5 v/ J" b& }
X=M*X+f;
( D4 C2 W% i$ X* u4 j: f
OUT=[OUT;X'];
8 i1 f. {9 y6 c) a. Q# `
K1(i)=i;
. P# {9 L9 D: s8 N8 N# J
end
1 s; J& g4 C6 i/ p
K1=[0 K1]';
3 U6 E2 a$ J& c; X/ N- ^7 Z1 S* Y7 p
OUT1=[X0';OUT];
6 d5 s, T Y4 K
OUT1=[K1 OUT1]
& B l: }5 w' R$ g9 V, }. h- e+ m
% vpa(OUT1);
/ G# V, E" r$ A) C7 A
xlswrite('C:\Users\LENOVO\Desktop\雅可比迭代法2.xls',OUT1);
' `! \+ U5 n2 k$ P' G+ ]8 [
复制代码
结果输入与输出范例:
请输入系数矩阵:[5 -1 -1 -1;-1 10 -1 -1;-1 -1 5 -1;-1 -1 -1 10]
. |( S4 y2 N/ t# V' C
请输入b矩阵(列向量):[-4 12 8 34]'
0 E% ?: V5 ]7 I3 X1 F2 c
请输入迭代初值(列向量):[0 0 0 0 ]'
( |: }/ U6 B6 L: N: }+ x" j
请输入迭代次数:5
) E2 U) \/ z) M" k2 }- A
结果输出:
% m, t. Q7 T# @9 {5 ?2 [8 R
& _1 O M9 Y7 `
LU =
6 ] X! ? o! c
0 J& D- Z& X* o
0 -1 -1 -1
6 p& t% ^& L+ d( p$ k' k( I& G3 d
-1 0 -1 -1
) h7 O$ d4 B% r, ]6 b
-1 -1 0 -1
7 e6 M# Q) |: N" @% c
-1 -1 -1 0
* ?2 c9 Y0 H+ F
. h7 j# x6 W7 q2 p- _
8 V5 |! K1 Q( v. Q' @; N5 z
M =
9 U& ?- h5 `, H+ _! r! A. C( F
) r- j, h- B0 a/ p. o- s, m& `$ f
0 0.2000 0.2000 0.2000
$ w' w5 O) y' L% E
0.1000 0 0.1000 0.1000
3 Z& `4 i8 i" u/ `
0.2000 0.2000 0 0.2000
5 V& K4 _2 W5 N" \: {4 l5 o9 e Y
0.1000 0.1000 0.1000 0
# a% k6 o+ v) o& D4 B* d1 o
3 a5 w! u& s7 Z4 v3 a" c5 ?
$ K W% n8 U" q5 s
f =
+ \: Z! \# n3 }, Z" p @
& R4 y" }7 k5 @8 G
-0.8000
9 g7 u, p1 r7 I% u* v: u R
1.2000
) s5 [9 ?) R" C' k
1.6000
# Q. \8 a8 I# m) w' C1 D
3.4000
% z# {5 }: P* x0 k2 w; l* M. p( A
- G' P& i g2 J5 a" X
^$ \+ {# A" ~* N3 f+ Q
v =
8 `: r5 c$ T7 q
/ Y0 O4 g- l, r* d- `
-0.6082 -0.7071 -0.5406 0.0000
3 ?9 l& Z: y. \! t1 [ B: B' R
-0.3607 -0.0000 0.4558 -0.7071
( I7 T, c) S0 b0 C9 @
-0.6082 0.7071 -0.5406 0.0000
4 Y- h! y8 b0 y8 n5 B* v9 q
-0.3607 -0.0000 0.4558 0.7071
; s% D+ F7 Y# L- ~* x0 X
* k3 \% r; d& u; d
4 ^4 O" a" s- S
d =
2 F" U5 R% k8 H0 u( ~
6 b9 u- g) f r( p; o# T$ l
0.4372 0 0 0
. X. K: G0 A T5 Z5 k
0 -0.2000 0 0
6 P1 C+ D' q8 U7 u; @; M6 S
0 0 -0.1372 0
p2 S1 y* h- c8 s8 }+ i7 g
0 0 0 -0.1000
7 P% b9 ?. [2 ?# r
( g3 H5 V% Y& n2 f
迭代结果输出:
1 @: b! o, h z9 M
' t4 n3 E6 D7 @! k) F m6 X6 p
OUT1 =
5 @2 w& H/ ?4 V* F. ^1 o
& @. B3 R! g9 T7 d* z
0 0 0 0 0
# f8 d6 H! q. _5 f& ^8 O
1.0000 -0.8000 1.2000 1.6000 3.4000
, i2 W1 t; `' f( ]8 `) K' l5 g
2.0000 0.4400 1.6200 2.3600 3.6000
& o: N3 A+ r2 R3 N
3.0000 0.7160 1.8400 2.7320 3.8420
4 U) L( ^. E2 w: i
4.0000 0.8828 1.9290 2.8796 3.9288
& a* |# i1 E0 q3 F. G; m. p0 P6 I
5.0000 0.9475 1.9691 2.9481 3.9691
复制代码
?' Z4 F2 T8 P8 z3 A' b5 i: r/ O
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5