找回密码
 注册
关于网站域名变更的通知
查看: 604|回复: 5
打印 上一主题 下一主题

matlab矩阵的应用

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

( g# y4 M4 B- |! ~% i1、向量组的秩:rank(A)
' x8 O- q2 G% C/ z  o) {6 N  K5 l# M0 V0 ~5 O; u7 m; Y
2、判断线性相关性6 [$ U, n* x: p: }# k8 r6 F8 D

. b; _8 F$ b. b8 H一般步骤(1)输入向量组
( M  u0 F5 D, G2 t2 e
' [. R6 |2 K+ [" B6 ]. g: q                  (2)用A’将行向量转置为列向量
5 X( I( X3 a7 O& q  I6 R: M
, H& N: B5 L8 ~6 V6 k··                 (3)用rref(A)命令求秩
+ _1 u+ f* F- x1 e3 z! T6 p! g0 Q3 c* m: `- f; K
例:判断向量组a1=(1 2 0 1), a2=(1 3 0 -1), a3=(-1 -1 1 0)是否线性相关,并求秩。
. B7 c6 A3 L+ S: q9 k: c
7 f. |* O7 f& r; s9 P1 z! v>> A=[1 2 0 1;1 3 0-1;-1 -1 1 0]; %输入矩阵
, V; I# ?# p0 k: ?% k: Y$ P0 |& n9 L2 {6 c- Q( Y
>>A=A’   % 将行向量转置为列向量再求秩4 e( m, O$ R, H# P# o6 t

- U+ n% |4 Q2 U( \>>rank(A)   %求秩
  N5 Z' `5 }7 |; R: J" X3 C; f" w2 P3 F1 X" T: w5 F
Ans = 3
, D- ^* }# }$ ~) V$ N/ ]
# l1 I* l5 e" H& M4 o* h(注意:当rank(A)等于向量组个数时,线性无关,否则线性相关): x% v: X5 w0 s5 @

+ h  J& s+ Z% U  K     3、求向量组的极大无关组
! A) W7 ]- e( m5 d6 M9 @% V8 F
3 f- _  W  L. g- ?7 p0 u$ C9 V     一般步骤:(1)输入向量组,并将其进行转置
  p9 p7 w4 k3 o2 r
( L; v( X5 w) D4 p$ i                    (2)化为分数形式0 U& k( c! N8 w# z+ M: N- C# n4 L, f

+ ~8 P2 c: u' o, \8 A                    (3)将向量化为行最简型1 ^7 p# p# {2 ~; G& U1 K: C
, n; k' M, b+ M" W1 C
                   (4)对线性相关性进行判断
4 {) ]  }" u5 l, p& S- D
& [! U- T3 ~  V& U4 s     注:将矩阵化为行最简型的命令为:rref(A)或者rrefmovie(A)0 D3 {+ s( K: {  N

, U4 a7 Y* L7 |: G, _+ ]& }  例1:求下列向量组的秩和一个极大线性无关组,并将其余向量用该极大无关组线性表示。+ H* {/ R& }) K/ L/ R5 m$ a; q; Q

! ?! [- Z% d8 f, Ua1=(2 -1 3 5),a2=(4 -3 1 3),a3=(3 -2 3 4),3 a$ d; k6 X) s) E
& t  @3 w6 _! P/ {% e* z* n
a4=(4 -1 15 17),a5=(7 -6 -7 0)% C9 s& _3 y$ L' x- a; Y1 O

7 J3 p- w. {( v>> A=[2 -1 3 5;4 -3 1 3;3 -2 3 4;4 -1 15 17;7 -6 -7 0];
6 J" _$ g8 b9 I7 E$ @4 P6 W% a8 E) L1 E5 O  l0 @
>> A=A′  %将行向量转化为列向量进行运算
6 d+ O! k6 e4 T) ^
9 c! p- F9 d! i>> format rat   %分数格式形式7 Q3 C* _1 V. h0 N" m

" s  F7 l8 R4 ~9 @>> rref(A)  %将A变换为行最简型7 y3 T1 b4 a2 n4 K, b5 F

: Z! _  T9 s1 _3 F/ e$ p3 aans =
0 T, Y$ C5 D+ t# D. @2 ?5 ^8 Y2 Q$ e" b5 A
        1      0    0     2     1$ G1 f9 ^) |* j/ \/ Z) l

0 v; O- C) `6 V% ]. n        0      1    0    -3     57 Z7 F! M6 v0 A! k0 d* D/ d

. y: d( m5 L' [        0      0    1     4    -5
. J" x! w1 s' d' B: F! R' ]; J: {9 v$ w1 B' ]
        0      0    0     0     0
: z6 R0 r$ m! l* b  g# w, A  `+ a! c1 ~7 p; @
因为前三行的向量均不全为0,且第1,2,3列的均为1开头,所以a1,a2,a3为一个极大无关组。
. ^) q& p0 P  @8 B: {2 j  v! G2 u

9 c6 J) s8 |# c* }8 [4 o, b' `6 n4 g8 y6 {" s
例2:求下列向量组的秩和一个极大线性无关组,并将其余向量用该极大无关组线性表示。
0 s2 H4 z. C" i+ n. l8 ja1=(1,-2,2,3),a2=(-2,4,-1,3),a3=(-1,2,0,3),a4=(0,6,2,3),a5=(2,-6,3,4) 1 ~5 Y+ A( o6 {3 e2 ~

) |/ f' _( y& s% A) y# {! ^解:
( M+ J+ @" l2 v4 |2 X$ Z- S* v2 X" D; G- @: h5 |+ I
A=[1,-2,2,3;-2,4,-1,3;-1,2,0,3;0,6,2,3;2,-6,3,4]. b/ j) U1 O" r% W/ Q

4 c) J  ~% g# W+ |/ i, P0 A, a>> A=A′  %将行向量转化为列向量进行运算
# N3 m$ B4 u6 i( F9 p! w) B5 _0 q5 J, K  w( o1 a. K5 O8 r8 s
>> format rat   %分数格式形式
% A9 x- l! {0 y9 W# W$ u5 ?
. p3 `; B; M0 f>> rref(A)  %将A变换为行最简型
7 e( w/ S9 I; b$ G) k; W# q. `) _& q" `( Z8 ?

" C) D6 w- ^! }& L0 a" [
6 R7 f" z( J! [1 W* }A1,a2,a4为一个线性无关组,a3,a5可用其其线性表示/ A( i4 Z1 n$ k  m+ _5 V: r

( f  Q8 Z; `: F; U5 d0 j3、线性方程组的求解
1 C  n/ ~3 P& ^# i4 Z
! V7 A7 ?, z5 d' e8 m8 j3 I, b         (1)使用克莱姆法则求解# C! e7 k* ~. ]0 p

" x$ C/ H$ ~1 c  `# s
( _. u( q$ W& D. j8 @( v1 b6 C; P3 |8 X: r* K5 h) h5 y" G

% e8 H: V8 `) [& p>> A=[2 1-5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6];  %输入系数矩阵
& `- c: Y' d- l6 m9 |8 g/ |  |7 O, @3 _0 ?7 S4 z
>>D=det(A)  %判断解的情况
) O( ^3 A4 y+ U, r
4 i, Y2 A2 F  K# ~) h. S$ V& x1 k8 K6 GD =  27     
. O4 v' x5 j8 W1 s- k  `7 X" A1 z6 w% h( I# F% T
>> C1=A;C2=A;C3=A;C4=A;b=[8;9;-5;0];% D2 v: [5 n4 h  N$ ]
% ^8 A; V* \3 {) W
%将A赋值给不同变量2 C9 }( g& s0 q" \

$ J$ ^/ f$ D+ a; H( C>> C1(:,1)=b;D1=det(C1); %将某行替换为系数列3 X; E* C0 P, {% K
5 j% [+ `* R: i9 d9 d! q
x1=D1/D    %x求解x1
  ]" q& w% Q8 l2 `; z) L/ N- }6 I" ~' C4 b; T
x1 = 35 ~1 s; C8 u9 u  R) h
" {% x6 z, a% ^+ o' P  E
>> C2(:,2)=b;D2=det(C2);x2=D2/D. F2 N; I. S0 a! H( Q
% S0 [3 w/ m- _9 M: y; ?
>> C3(:,3)=b;D3=det(C3);x3=D3/D        
, w; e% d8 \# c8 ?: G5 E
0 X1 X+ {& [# O4 m* U* C5 V>> C4(:,4)=b;D4=det(C4);x4=D4/D
  q& b! u9 C6 C) W
0 B) M  |& B* E3 g6 E6 \: i; T; o. C(2)使用矩阵左除法求线性方程的解
  R( F0 U9 `* d# o# `
8 R" p' w5 O) u+ |2 l8 x线性方程组AX=B的一个解为X=A\B。1 m* c9 |% b3 P) @$ F2 {! U' a

; |# u2 A$ [( W+ t例:利用左除法求解上题中线性方程组的解.- P  \" l# N6 k1 q% v4 [
7 R& I  a! }& b0 _
>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6];3 z0 o: Q/ L+ i% I9 A) c8 {4 O) E
6 i$ v4 A% i: Q; v
>>rank(A)' T4 y5 @+ r+ j4 E$ \: U
3 G3 K' K/ Y+ P
>> b=[8;9;-5;0];
' H) h2 o& g$ x0 E% u2 {' b7 T- i- R2 p+ d
>> x=A\b        %左除法
6 J; X) o, G1 E& e4 M% a) r8 y* g$ g& v* f3 B0 q- N( Z
x =, b$ D% D' h2 G! ]1 E! o1 g3 C

$ n- ^+ H. l( g6 D. V# x    3.0000& Q( H0 ~$ _7 j
. g* Z/ @9 D6 z( j/ r
   -4.00008 M5 v3 k1 f* F0 y: Q& p
4 w, R# V0 H: U; f/ _5 J
   -1.0000/ W4 D# b, [; _* k. _
3 F0 S; G: ?; a$ f3 h8 I4 D
    1.0000, X4 i7 q8 R# X0 s& H" b& j; i; ^
7 ?2 c' W) M' P0 I& l1 ~7 u
(3)利用矩阵的行(列)初等变换求线性方程组的通解: B+ _& ]7 j! q% F4 j  I  p

! m) g; Q9 V0 [* N- u* V  e  基本步骤:(1)将线性方程组表示成增广矩阵的形式;; T" g0 g# {$ V1 o0 _8 R. F1 ^9 Z
4 c/ z6 W- N5 s  a) j
(2)对增广矩阵实行初等变换,使增广矩阵转化为行阶梯形矩阵;6 U. s) u- v# G) ]

9 d4 W0 i$ r" u2 g3 Y$ |6 n(3)得到方程组的解。/ o" P: G. x, }# x
& C( I& i$ b5 O6 s2 x! o  n
例:求解线性方程组
  ?5 @0 U, p( L2 ?& v) j5 b/ J; `7 t) F# l7 W  V2 j" l
. ?" r( \# v. ]- i( [, N/ |" z

  `2 c/ x# B+ m( B
# S* h& m6 S: z, b2 N>>A=[1,1,1,1;0,1,-1,1;2,3,1,3];     %方程组的增广矩阵* G. C% N) j: Z; @4 N, n
: I( T! ?+ t. V8 @
>>F=rref(A);    %将方程组增广矩阵化为行阶梯形矩阵
- G! O1 D  s7 g) I
/ f) S( Y. C. C2 n* ^>>F  %输出增广矩阵的行阶梯形矩阵, C" l! \( A! s- z: w
; A/ H! H% G; f' A0 @' O' U
F =( z2 Y, B: _% }* T

& L0 I2 H" C: H$ V% {" y     1     0    2     01 c0 K7 \5 Q8 J3 O
" Y3 C- e  a  ^1 d0 N
     0     1   -1     1, Y- W6 N' Q9 H
. v% D' ~9 M- e" W1 v
     0     0    0     0# o& u% {; |0 L

. _- W0 Z3 f( W由该阶梯形矩阵,可得方程组:x1=-2x3    x2=x3+1
! u8 m9 T. C8 ?0 t
3 z6 J4 F6 ^8 ]' A  [8 M+ W$ Y* O$ q7 p$ {' f

/ N7 i: i* B7 d! m* e(4)求非齐次线性方程组的通解
& d2 `6 l) m6 K0 F4 Z5 P0 d3 _
. D1 H$ K: F: V( N; l$ Y非齐次线性方程组需要先判断是否有解,若有解,再进一步求通解。
2 x2 A0 I/ {6 Y, z, K! |# _
% E( O8 a' [% a" b  Y- x9 ?6 I* ]0 F3 y" X一般步骤为:
7 o. c0 Q, _3 Q
6 A) p* K, @6 G  e第一步:判断AX=b是否有解,若有解则进行第二步;(R(A)与R(A,b)比较,即比较系数矩阵的秩和增广矩阵的秩)' q0 n7 ]4 r3 F) i2 H. S

" X- Z2 v6 W, w第二步:求AX=b的一个特解;(矩阵除法): X2 E: |) o* s' [7 t" O( j

# n5 w- g- b" Y* M) m% l第三步:求AX=0的通解;(利用null命令)
  }/ Y% A+ q/ u& v
/ \* ~3 L( n9 s( h第四步:AX=b的通解:AX=0的通解+AX=b的一个特解。4 i, H+ Z4 I. u; n1 R  i

+ ^2 a- e) p: p3 H6 M% k6 k例:判断方程组  a: P. `1 F' |2 a
, `) m- K3 S( ^5 d% Y
%第一步:判断系数矩阵与增广矩阵的秩* i1 b3 A6 B. F$ i0 ?  w

% u9 X0 z4 b% X# X>> A=[1 -1 1 -1;-1 1 1 -1;2 -2 -1 1];    %系数矩阵A5 R' a, q: d/ P
5 Y7 R0 J' H5 U
>> b=[1;1;-1];    %常数b
; r' u0 o- h4 |: j. s, s# E3 P2 |/ ]. d8 r# t8 `
>> rank(A)     %系数矩阵的秩
$ S; g4 p! A4 O' b# m  n
$ t% E" ^9 T! W' _; X. a$ i; Zans =
( \- V: x: h3 z: E5 S, j" W* X% z8 f& e: l% `! N/ h9 f  i
     2  J- m1 U' M( k+ o+ P% z3 h4 n

0 H8 Y: M  p% O( {( ?>> rank([A,b])    %增广矩阵的秩
/ y0 E& S( p( X8 L  D1 U! m3 U, r- T- a1 N3 t* {
ans =# k" V: w8 I4 e/ Z
/ f5 i# o, O3 X! n2 Z
     22 M4 f- a" B' a& m8 `

& N$ J4 }$ d8 D. C. m%求通解
5 Z& m& {- J$ E) J' @) L0 s. l1 ~
* j) |# ]: D4 k- U4 [# a化行最简形,用rref命令
; ~7 R! l- s) N$ Z! U) B
! o& U% ?2 Q9 Z1 N- @4 v& O>> rref([A,b])) ?$ l# H, E: N! z0 A/ ~$ o
4 H6 I. T* d# m, v$ Y: }  D
ans =
6 u1 O5 G. m& E8 M. m7 x/ S, r% Y. B/ o! l) k
     1    -1    0     0     0/ r  M& C' L2 F% W/ w( }# H) Z
" L. A( s. a% T" O/ Y) L$ Q
     0     0    1    -1     1
  H3 @4 U* Y5 F3 z/ l
  r) h4 Z/ L/ [     0     0    0     0     0! G5 \$ C6 ^; d% p6 @& D+ D& U
9 \6 B2 x% t2 Z, L! K
取x2,x4为自由变量,从而通解为:x1=x2,x3=x4+1
: {* A' r- \- G5 C% K0 \
: l3 h  l, ]; Y. {! ^6 @(2)先求出特解及导出组的基础解系, 用命令null,例如:2 }7 M% F+ j/ |9 s
( E+ u+ V$ ?1 K, |; r" A1 z
>>x0=A\b       %方程组的一个特解
4 s4 ^' G7 O1 S% Z* L. _: F; A
% i, [& e, H8 U% _$ P/ px0 =4 q2 V6 \$ v7 t3 R/ m* k1 Y

9 U8 v6 p* p1 D; L; I     0
. r7 L2 s  M/ o1 w8 C5 X2 c( Q2 N
% P& Q' m$ }- W: c# @9 H; j     07 L2 \( R' z6 c7 s; ^! i! w
" u! x' S; y& r
     1
" P  _; y  F" M2 h; X1 o; a5 j
7 r( l$ E! N/ j, {% B$ O7 O     09 ?1 Q8 c3 n' T# ~7 K! ~* n

* D# ^+ C5 p! C4 f, b% P+ D2 H>>x1=null(A)    %求导出组的基础解系
* ?) M# ^( z- X) O' ~1 {1 t0 E
; n, \( o' l4 \# q9 J. @# qx1 =8 G- U( P) H8 L

, Z3 [1 s* M! l9 n- e/ F4 T  -0.7071               0& G7 {& C! _  T; X( F

2 a) L) n8 D! j+ U7 \   -0.7071               0
# ^9 x7 X0 h5 J5 \9 A4 ~/ |+ k! c0 X0 h" F' u% k
   -0.0000        0.7071
+ k* U) i+ @) w3 u2 }
4 V6 }/ d" Z) [/ m# F  -0.0000       0.7071! ?0 T) B; j# G, @( e7 Q% d8 O
! h. V5 n- t  V; t( n
故原方程组的通解为
/ q- t- b" j& f0 J- u- o: x" B$ h# {3 m' D2 K2 J
(x1,x2,x3,x4)=(0,0,1,0)+c1(-0.7071,-0.7071,0,0)   +c2(0,0, 0.7071, 0.7071),c1,c2为任意常数.. D+ L* b" W0 q' R

# h9 ~8 h4 Q9 j2 |( O& o0 Xnull是用来求齐次线性方程组的基础解系的,加上'r'则求出的是一组最小正整数解,如果不加,则求出的是解空间的规范正交基。(x1=null(A,'r'))
& Y* H# O" O# Y1 o+ W  Z) n) i

该用户从未签到

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-22 13:00 , Processed in 0.109375 second(s), 26 queries , Gzip On.

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

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

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