找回密码
 注册
查看: 598|回复: 5
打印 上一主题 下一主题

matlab矩阵的应用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-9-29 10:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

; V% K1 Q/ G, O( T1、向量组的秩:rank(A)8 J2 {( _; G6 e# |

. W) z. B6 E5 W1 r" Y0 E2 q! Y2、判断线性相关性
0 a4 e1 ~8 x4 v" o8 h; m% c: V+ n) W) n0 j$ z- `: X" e* |
一般步骤(1)输入向量组
3 d" c" \3 G6 w; A+ l' H) G6 h( q8 Z
0 c( R) o3 I- |$ P) l4 \4 B                  (2)用A’将行向量转置为列向量
* S3 [, c" o4 y8 s/ a4 m4 j
" X% G1 N$ g) ?  \3 p( l; ]··                 (3)用rref(A)命令求秩' a1 v7 {# x/ I8 S
& {0 ^7 V$ j' B4 E! V
例:判断向量组a1=(1 2 0 1), a2=(1 3 0 -1), a3=(-1 -1 1 0)是否线性相关,并求秩。' Z4 M$ F( C4 Z; Q& N
( m" d3 }7 y3 l, T
>> A=[1 2 0 1;1 3 0-1;-1 -1 1 0]; %输入矩阵: `/ _6 q0 o  [2 U
. f, E" E) b% k' `% Y
>>A=A’   % 将行向量转置为列向量再求秩
1 B" Q! w* z8 r/ \" h) x0 p' S. O  I$ @5 y
>>rank(A)   %求秩
2 G4 w9 K% w+ X; c+ a8 S( G8 x/ \5 J  |( o. t
Ans = 3, l/ \7 e. d* U2 }& ~# q
+ a, e/ [. A: Y$ G- {4 m
(注意:当rank(A)等于向量组个数时,线性无关,否则线性相关)4 C( |6 Y2 |5 g$ d) q
) a' M' v+ u7 X- Y3 d
     3、求向量组的极大无关组
7 h% l; X7 P' Q9 }' G1 V8 \8 o5 M) b: `3 r9 p) }
     一般步骤:(1)输入向量组,并将其进行转置
) }" Z7 o+ K2 L* G. m1 w+ N4 b! T2 g" j! K3 z
                    (2)化为分数形式+ U8 H6 p3 z) Z- L1 x; P

& b: A" S7 r- A) d7 _4 |                    (3)将向量化为行最简型' b: M, g  ?# ?( F6 _4 U9 \
, R: K$ ?! J) m; C5 X
                   (4)对线性相关性进行判断
# B% x( [! x2 B1 p7 w" a9 R1 t/ D/ f' S/ _1 p* {
     注:将矩阵化为行最简型的命令为:rref(A)或者rrefmovie(A)
9 _5 X8 I# t) f0 i1 ?% ]& p
4 {5 e. i- H- u- {) g) ?  例1:求下列向量组的秩和一个极大线性无关组,并将其余向量用该极大无关组线性表示。
$ K" N/ ]* Y  M+ j) b2 K9 v8 i) Y% S. w6 L4 I; Y/ a5 ~) H2 L
a1=(2 -1 3 5),a2=(4 -3 1 3),a3=(3 -2 3 4),/ N9 P0 p7 B, T9 H% X

! V% i0 R  ?4 b0 p3 P( q/ pa4=(4 -1 15 17),a5=(7 -6 -7 0)
3 N$ Y8 g$ @& v
8 W" D& W- f; y/ j! T>> A=[2 -1 3 5;4 -3 1 3;3 -2 3 4;4 -1 15 17;7 -6 -7 0];! O( r7 h2 i! O( B9 Q4 W
1 Y  b9 i7 m; n, c' u8 g
>> A=A′  %将行向量转化为列向量进行运算
- U: }( y  d  S6 G/ w
$ B3 q6 G  K, ]' c>> format rat   %分数格式形式
! E9 G" Z# w! l5 ]# |- K4 `% t. w, a0 X# c
>> rref(A)  %将A变换为行最简型3 z/ N* ?3 d$ K/ k- A

0 H7 l9 u4 }3 N; N) u1 c6 tans =
$ S. q% R( y! N6 d; r! W! m3 Z& Z" W+ I/ `$ H
        1      0    0     2     1: T3 S$ e* X& R
2 {( a; h/ [+ P9 O* [5 ?
        0      1    0    -3     5
9 w: r; |  n- X% Y0 b+ p: }$ f. ~) I& A9 _' H, [
        0      0    1     4    -5
" P+ P* _% M$ O. Y: A" A1 \3 N2 r+ P8 j) [( O
        0      0    0     0     0
- ~* Y0 T8 N! [6 t  t6 N. g3 M, ~$ f" h6 x
因为前三行的向量均不全为0,且第1,2,3列的均为1开头,所以a1,a2,a3为一个极大无关组。
5 ^. G3 b! \% Y* @/ @6 t2 M2 P- i) t0 P9 N
8 v, I* \$ v, u" d9 u
- d0 t  U" V6 T1 T7 @& |5 J/ J+ ?
例2:求下列向量组的秩和一个极大线性无关组,并将其余向量用该极大无关组线性表示。$ z1 a# {* h: H+ Z7 \  c2 D" a/ Q
a1=(1,-2,2,3),a2=(-2,4,-1,3),a3=(-1,2,0,3),a4=(0,6,2,3),a5=(2,-6,3,4)
" F( U+ H" T5 N. q4 }4 p3 {) I
1 G/ K6 b$ v# H9 t/ |解:
' ~' Z# V& S& `& Y
' m5 E% y: D; B7 jA=[1,-2,2,3;-2,4,-1,3;-1,2,0,3;0,6,2,3;2,-6,3,4]& v' x; w) R5 ]7 S4 Y
5 ~  S  ]7 O4 o. H
>> A=A′  %将行向量转化为列向量进行运算
9 i6 @" s( I4 |# {% U7 M
& m! q5 S) a! v% |>> format rat   %分数格式形式: k) _0 v* N  S( \/ h
0 _2 S" j$ A7 m* s9 ]- r/ g4 G4 A: ~
>> rref(A)  %将A变换为行最简型! @1 n4 p' ~  E# H/ ]
# [( u* O; D2 ^5 F

1 |  N4 f- P- O& B+ x# @* @$ U" z) w' T
A1,a2,a4为一个线性无关组,a3,a5可用其其线性表示3 P  F5 J- X% n: L7 I: g

: M/ N+ v( n: o$ _" f; ]- ]3、线性方程组的求解
( {1 ~  B9 k3 v
/ ]- }- u% a6 U) |( v, Z3 `         (1)使用克莱姆法则求解
* ~$ Q; W* O  D& X( P
8 y5 C, c) r: Q* i/ b2 m   U# Q! t: u$ {" N+ f+ L
; c$ i# M0 Z0 s+ s& D/ w

/ I" o0 ^7 n+ X  M>> A=[2 1-5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6];  %输入系数矩阵4 J: x% m  P+ B+ n) T
, ^- O2 n6 r$ @7 W' r5 s
>>D=det(A)  %判断解的情况( \* n5 b' N" G7 _; Y: y8 q
6 Z, v& a% f( Y2 k' g
D =  27     9 A: _/ q! J" J; N, s4 P

; h! X( t1 Q6 A>> C1=A;C2=A;C3=A;C4=A;b=[8;9;-5;0];: z& f/ b- f; {* n
4 G. `0 q: {) }8 B, K6 B1 r
%将A赋值给不同变量, T- d9 F0 P) C3 `

$ S3 F! w; J7 Q( c>> C1(:,1)=b;D1=det(C1); %将某行替换为系数列
! o9 x+ ]% {( W# M0 _
; ?- ~1 f- H+ w5 I  n& lx1=D1/D    %x求解x1( I( u8 e  F9 W1 @8 a' n! T! v

2 M: h. o( e" u% e9 vx1 = 3. i' h' N4 v! W+ g  m2 e  e
4 u7 f% ~4 ?# m7 H
>> C2(:,2)=b;D2=det(C2);x2=D2/D6 B: c$ ]9 V5 Z( _
$ W1 c2 t3 r- E: b
>> C3(:,3)=b;D3=det(C3);x3=D3/D        $ P0 A" O' ^4 P9 r9 W

4 v; b7 M( ~; Q3 R0 |  p>> C4(:,4)=b;D4=det(C4);x4=D4/D
! Z6 V& n9 k% A+ V' t! \7 d2 t5 |9 y
(2)使用矩阵左除法求线性方程的解
* W' E+ V" h1 _" R- P* s) b, }
线性方程组AX=B的一个解为X=A\B。$ Y# G# d7 Z) k! L! S
$ @9 `7 {/ a: s, y2 X$ P& T$ k
例:利用左除法求解上题中线性方程组的解.
; G1 ]% G' t2 b  f( [& t
" w8 a4 |& Q' t) v1 \" L>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6];
9 N1 s9 ~0 E4 C4 j( `% t$ U' @1 t2 E* W  |# b6 Q7 A2 ^* E( z2 t
>>rank(A)4 U5 r) I. y( u! N  {! F
* a2 L2 V+ V" `: k" R, B3 E! ^
>> b=[8;9;-5;0];) C% t' }6 P* d0 |( U
9 e6 g' ]  ~+ V+ A
>> x=A\b        %左除法
+ _  G. ~! r# [, Z, u9 Q- h  y# z( h( q6 W
x =. {) [8 a9 f! b; |

% j: S# R0 F5 `0 \. E) f8 m    3.0000
8 v% ~  x& R4 |6 l; T& W' W
) J1 u" {/ q% M   -4.0000
) f$ j" ]) _- R& J9 n! S
6 Y/ j' h; ]" n6 Q   -1.0000
) n  E& S- a# u& P' d" c5 S3 W2 J1 Y$ L3 f# j& H
    1.0000
# x( m) f! ]% ~& l" d0 l3 S) c# ^
6 p6 H3 w+ P8 s8 L% G" H(3)利用矩阵的行(列)初等变换求线性方程组的通解
& X7 ^9 ?1 L7 |$ s: i) R$ a* Q% W" L  A" W7 g9 d. a
  基本步骤:(1)将线性方程组表示成增广矩阵的形式;4 z3 P, K# l+ j) W1 w7 V+ Q& g7 e/ A# C
& u" z. C/ t7 b
(2)对增广矩阵实行初等变换,使增广矩阵转化为行阶梯形矩阵;
) }% a% D" K  e+ Z9 K3 d
) c3 E. I' A* W(3)得到方程组的解。
; C# M4 F+ z3 ]$ m& f. Z+ C' v* {7 O. C1 \! {: h
例:求解线性方程组& C. i# z* B# e
- n- L4 F' m4 u* w! `) G. e
) y: N7 b7 V" V" U% i

0 g0 ]3 {2 ]) Z2 `# m' K# ^. [* t: m0 B( g$ }8 @
>>A=[1,1,1,1;0,1,-1,1;2,3,1,3];     %方程组的增广矩阵: M) ~6 M  E* |
! I, \2 L, M& w# K* b% Q* F% I
>>F=rref(A);    %将方程组增广矩阵化为行阶梯形矩阵% Y4 a- V  _% G; S( u& v8 L
, W5 P8 k" |9 F' r; z  I
>>F  %输出增广矩阵的行阶梯形矩阵
3 M4 {; g3 u0 q: b$ W2 v7 U! p' I; ?; [3 e; `: f( [& e
F =
9 o& I- d# z0 Q) b4 C& Y( Q; T* \* S
' c8 Y% W. G3 r' O     1     0    2     08 S$ W/ K) v- M1 r9 S: @# G% n

" H  i( [+ D. `+ O     0     1   -1     16 v4 x; W1 O6 o2 j/ \$ f1 O4 E

& R8 H% z4 A, s- _8 N     0     0    0     0
  g; c1 R( K1 X" N2 |* G$ {
* C1 C" K+ s5 X( O& O由该阶梯形矩阵,可得方程组:x1=-2x3    x2=x3+1
" A$ M# L: V! o. ~" k. i: `1 t$ z  c0 V7 p' t  S# g7 Z  B+ s6 l
% U2 T4 w7 K8 ?# s

5 c. a: c6 a2 _, g(4)求非齐次线性方程组的通解& [8 r7 f' U6 w* x; Q0 B

1 R; b0 ^) |7 \& a" k# L非齐次线性方程组需要先判断是否有解,若有解,再进一步求通解。: v  X2 x. Y: R3 W  N
5 [. w7 a, _9 S* \6 F$ L5 S% b
一般步骤为:
0 I0 p" g1 d( {( T
$ g7 M, U, j% @1 W3 I4 C  _第一步:判断AX=b是否有解,若有解则进行第二步;(R(A)与R(A,b)比较,即比较系数矩阵的秩和增广矩阵的秩)& h6 `0 I! _0 o# Z

- v# I5 T4 q9 T: z6 Y第二步:求AX=b的一个特解;(矩阵除法)% x8 @0 Y) J. e9 H' Y$ E) y8 x
$ t# F1 f9 h; ~- ^
第三步:求AX=0的通解;(利用null命令)
2 U- L. y2 }! @2 S' j* Y& n  W, W! T; l! u) C* T- y
第四步:AX=b的通解:AX=0的通解+AX=b的一个特解。8 p# \, N3 t% v, k

8 Y, s  W: [) b( i- e' d/ u( e0 l" ~( V例:判断方程组& d4 n; R) ?" u1 x6 m

9 \0 p! |7 Z8 b' z9 E, D3 m%第一步:判断系数矩阵与增广矩阵的秩& d4 ^; k0 `$ l7 r& A8 H2 U- O

/ C* H! l6 D( {6 d# N0 P# m>> A=[1 -1 1 -1;-1 1 1 -1;2 -2 -1 1];    %系数矩阵A
' a# A, e7 A; |, m) \  {3 c3 ^0 C/ t0 ?/ ?, \
>> b=[1;1;-1];    %常数b
# S' T+ j9 \/ Y) Z# ~1 F7 y( W1 Y' P4 C
>> rank(A)     %系数矩阵的秩# ]: P8 U& b! I  D3 }0 I
: K! s+ f6 z0 y  p7 m; k
ans =3 p" W, F' g: M
' I; \0 {( ~) m: \% D' ~
     2
, n' J! M7 r. r7 H$ i6 v7 l: t
) v% _- D* F0 Q5 \>> rank([A,b])    %增广矩阵的秩1 M6 k8 C5 S! s  a# T
5 _  T  p# [; A* W
ans =& l5 ?. D% J1 T4 ~- R/ n
, Y" r" P: ~% j5 I/ Y! }: w
     2
- n& i. J5 X8 U" u# }& Y
2 X: A9 h9 e. U8 s% F6 [%求通解$ X+ `' I( [! M2 o+ f# M1 S
% T3 g; |* Q% h1 @: n/ c
化行最简形,用rref命令
( ^0 @- H. x) m, l* O& k- T
0 q. b* G  d, p6 q>> rref([A,b])
) r7 K) l( p( p& X' f. p( }& U* m  h1 c1 z- r" e6 Z9 \
ans =
2 B0 [1 p  c' k4 v0 R0 \: E4 E
+ e: \6 W# l8 f2 j( m     1    -1    0     0     07 a- @+ q& n* v5 P' i
% u# Z+ C# T0 D; q. N, x& _
     0     0    1    -1     1
2 U' w/ u" v  n
4 i2 {; |5 ~8 M# o# V: q* d9 |0 }( a     0     0    0     0     05 ^! ^8 S! T9 [( c' f( i! b3 P

( C8 l! C* d5 @5 u$ w0 ~取x2,x4为自由变量,从而通解为:x1=x2,x3=x4+1
0 |; H2 n$ _. R- N1 i, Y
/ e: `: v' h- J+ D$ ]8 I7 J7 w; V(2)先求出特解及导出组的基础解系, 用命令null,例如:
4 h# D* F9 @8 h  p1 n# j/ F% l% i( P% c% Q: V) q9 e! J. O7 N9 E
>>x0=A\b       %方程组的一个特解
6 Q3 y, Z: S6 i1 p& K9 k
5 ~  A. m! r# k$ O+ d* [0 hx0 =
; F' @9 p8 B: `# V9 a# H; D, `# b+ z" d5 r. M9 ?; Q
     0
8 T% R7 p, W& J: X* D* U; f. c, u) O) m3 M
     0
3 |* w; Y" M0 R5 l2 u5 }9 D0 }* p2 s# q3 n( |% O
     1
3 m! _! r2 \2 w! A& e8 I
9 {! |* w2 Y% ^% K7 h' n  V9 ]. W6 Y     0
( ^; o4 f2 m8 M% L5 v& o) x
: o! n4 v2 R1 {* Y7 x3 {>>x1=null(A)    %求导出组的基础解系2 i5 q/ ]5 B& T3 n# n+ w0 b1 @4 |
( {, ~7 \1 ~/ g* B6 p
x1 =% k# x6 A% t" e) l8 W6 t

7 D( i* a' O( @$ R  -0.7071               0
! V" ]$ f" e  ?) [  H% T% q
4 E. v; g+ U3 P" s4 @; [  p' n/ s9 d   -0.7071               0
) W; ^6 k6 w: A( E$ z4 T! s* J- N6 `
   -0.0000        0.7071& i0 i7 K( u8 R# u! |8 }
* `5 q/ j- E  I0 }+ M2 u1 d$ F" ~
  -0.0000       0.70711 L5 C3 c0 ?# J+ q

. R+ g  H0 Z& B7 f9 @' A故原方程组的通解为) T7 h% P+ S% b; F
! ^) Q/ i- [! A
(x1,x2,x3,x4)=(0,0,1,0)+c1(-0.7071,-0.7071,0,0)   +c2(0,0, 0.7071, 0.7071),c1,c2为任意常数.# [) ?7 U1 L( t8 F( A+ n

" n7 C+ g0 q) C6 o& t* c& C# Jnull是用来求齐次线性方程组的基础解系的,加上'r'则求出的是一组最小正整数解,如果不加,则求出的是解空间的规范正交基。(x1=null(A,'r'))
/ c5 S; v, x- A$ e& p

该用户从未签到

2#
发表于 2021-9-29 13:04 | 只看该作者
很清楚   感谢分享

该用户从未签到

3#
发表于 2021-9-29 13:39 | 只看该作者
matlab矩阵的应用

该用户从未签到

4#
发表于 2021-9-29 13:40 | 只看该作者
非齐次线性方程组需要先判断是否有解,若有解,再进一步求通解
  • TA的每日心情
    奋斗
    2025-1-1 15:26
  • 签到天数: 584 天

    [LV.9]以坛为家II

    5#
    发表于 2021-10-1 21:51 | 只看该作者
    LZ辛苦,学习学习
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-1 03:24 , Processed in 0.109375 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表