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

matlab矩阵的应用

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

$ g) L9 l+ ]8 I  l1、向量组的秩:rank(A)
+ D/ Z& J2 x6 g) c- r6 }' [* e% @) b: C4 ]6 S& h4 {: h  g
2、判断线性相关性
  j- x) a, O% }1 t* U' |0 p, U* v) q5 t6 q3 H
一般步骤(1)输入向量组. I; M6 P; Q/ j) W. g3 R0 y

! q+ k0 W! f) A; N9 M                  (2)用A’将行向量转置为列向量
; T: E( c3 q) ^9 A, D; {% ]- k
5 E/ x6 n, k" a) ?) r3 e+ x··                 (3)用rref(A)命令求秩5 m% J! x% ^/ C5 l# s6 I4 Z

- i9 n$ o% x% I/ Z, d- o* n例:判断向量组a1=(1 2 0 1), a2=(1 3 0 -1), a3=(-1 -1 1 0)是否线性相关,并求秩。2 M1 o  l6 B9 o. T' T

3 z/ D; u% c( q5 v+ ]. @. H, z>> A=[1 2 0 1;1 3 0-1;-1 -1 1 0]; %输入矩阵5 r1 z) t$ c0 d2 p7 j/ N( ^
- g) o8 P2 g5 ]! c1 ^" \3 P0 ~. j
>>A=A’   % 将行向量转置为列向量再求秩
$ W. Y9 }$ u7 o0 u: o3 F
. w4 S0 r/ F! D+ |9 j>>rank(A)   %求秩
) A6 {/ \& v8 l6 q6 `1 f
$ A" c/ n& E: y- E, W5 m3 yAns = 3: |0 E; ~) R) l2 H: }$ g! H

  K" @0 {' f$ b(注意:当rank(A)等于向量组个数时,线性无关,否则线性相关)$ r5 j6 B' U. ?( C# y

! n: D3 L# M  r7 E2 F; C& ~4 W& X. U     3、求向量组的极大无关组- m" b: M/ b# j( z! G% e; ^
" g! H; H; F/ }% f4 w0 H2 q
     一般步骤:(1)输入向量组,并将其进行转置* F6 V( m$ i$ u0 p" Y6 y
: J% [0 J  `1 a, O' u
                    (2)化为分数形式
5 M* T# y0 ?3 u5 r4 p% j8 R, \$ E2 s
  R5 Y! M; ^% _: _8 y' S                    (3)将向量化为行最简型+ ^, U  ~! X8 p' b8 f

3 Z% I9 ~8 D5 o3 b- J: t                   (4)对线性相关性进行判断
6 X( h+ }8 e8 }$ z/ d2 m3 {' J
9 I* h* _. ~% B     注:将矩阵化为行最简型的命令为:rref(A)或者rrefmovie(A)
. }2 w, t5 {1 _  @* ~7 z: R3 b' r- U/ H8 ?; p
  例1:求下列向量组的秩和一个极大线性无关组,并将其余向量用该极大无关组线性表示。. |: ]: r% L2 K4 s+ q9 X
1 S; Z. F) @" `* n2 f6 e
a1=(2 -1 3 5),a2=(4 -3 1 3),a3=(3 -2 3 4),
5 C3 K+ m4 l! H" c$ p  Q3 J
+ o& v" j* y4 J( N" R! m. Ga4=(4 -1 15 17),a5=(7 -6 -7 0)
5 s% x. x- R! v0 Q: n5 B8 [
: j$ K1 Q  M1 J) C& F>> A=[2 -1 3 5;4 -3 1 3;3 -2 3 4;4 -1 15 17;7 -6 -7 0];
  _6 z6 G2 f  `9 d6 U/ s( W
' F' E" g) J& S4 z% @% t>> A=A′  %将行向量转化为列向量进行运算/ o8 q/ `- N4 ~2 x
8 `# ~9 R' E2 k0 O% N; Z/ i! a
>> format rat   %分数格式形式7 M% h4 S2 a6 w& @9 d! W6 e. f

) t# R$ F! m2 Q>> rref(A)  %将A变换为行最简型
% h3 U( @" F3 q1 {3 k5 O
( Q" y/ ?# U( B+ h$ [7 {# H- X* Dans =
; }/ E6 Y' U7 E5 X. j0 `& J; u
) B/ d4 i* o4 {1 C. j5 Q' S% y& c        1      0    0     2     1. e6 G4 V7 p1 t* H$ L$ V

' b+ ?( A) T& P" }8 Z        0      1    0    -3     5+ p. K, Y3 c  l( W4 o4 H' t
4 w- K7 L! }, u: F
        0      0    1     4    -5
1 s' J2 O( y$ p' j0 G* Y
/ ~. s3 W2 }- ]9 J$ i) Q9 ]        0      0    0     0     0
. b5 Z, C1 i6 p
+ u' {! O: L9 V' X0 J 因为前三行的向量均不全为0,且第1,2,3列的均为1开头,所以a1,a2,a3为一个极大无关组。
$ q( z/ n4 V' \
6 k3 G* j  ^9 ]! L; s) p2 V5 C; q
  ?' f" h& e) n4 X9 V7 n
% w5 T0 T7 l  W3 o. M. A( {) p例2:求下列向量组的秩和一个极大线性无关组,并将其余向量用该极大无关组线性表示。
" o6 s  r1 l9 J- I. J4 o' W# Za1=(1,-2,2,3),a2=(-2,4,-1,3),a3=(-1,2,0,3),a4=(0,6,2,3),a5=(2,-6,3,4)
; O1 q$ J7 n! \$ z% B9 @, D" n7 d4 N" i. i( e+ q$ |) F" p7 r
解:4 r- H, }0 c3 T
7 h. v0 t+ c  n5 |; W- X
A=[1,-2,2,3;-2,4,-1,3;-1,2,0,3;0,6,2,3;2,-6,3,4]
6 C8 _8 L* g/ N& a$ r1 V
; Y* Q% C6 z4 ]& P4 T( L>> A=A′  %将行向量转化为列向量进行运算4 y' D3 I- b) v$ x% x2 Y
8 @: e9 v8 B8 R: R# m0 b& K
>> format rat   %分数格式形式
9 o  R, i, Z  [" |: Z) E5 c/ q4 P4 G% z
>> rref(A)  %将A变换为行最简型
. m, J2 B2 N3 d4 H: G+ s* U* P! e# |& s4 @* Z% h# W2 Y9 c, N

0 l6 h% [6 Q4 T% J- K3 V! N" z( f9 t' E1 W
A1,a2,a4为一个线性无关组,a3,a5可用其其线性表示
0 x( m6 f8 G) O3 z9 a5 k8 i
5 ^5 k; Q5 E, {2 e. l7 j% L9 a, n3、线性方程组的求解
1 v4 X" t( z$ y1 O' w& q1 h* K4 ?- I5 F* ]! o
         (1)使用克莱姆法则求解
. ]' f4 z3 E# K+ e" d) ]; J! P; X: x/ n( E

6 f; |% U# Y1 [& D8 q
, p, B/ g- c, h1 ]8 }* E. q: @. l+ i4 k: ^( v: I2 t) k1 R) _  F
>> A=[2 1-5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6];  %输入系数矩阵, t' d9 X+ O. j1 ~( ~6 h
: L( k! ?4 Z+ r( A
>>D=det(A)  %判断解的情况" a7 v5 i, s7 ^% w8 i
6 j+ h) f7 g7 q- y& }
D =  27     9 Y/ r7 x7 I: E

( C6 u, \. r" C- h2 l; q>> C1=A;C2=A;C3=A;C4=A;b=[8;9;-5;0];* y$ O# i& q3 v1 H
: w  S3 t& ?1 _9 H% `  n5 ^: G
%将A赋值给不同变量& B! Y6 B$ Y! W. D

& X# w  T) t1 p0 S) }. Y- ?>> C1(:,1)=b;D1=det(C1); %将某行替换为系数列
# S/ n" _$ F. t- v$ y8 z: q4 x5 r  Y/ p3 X, C, m. S) T
x1=D1/D    %x求解x1" y2 X+ k: z  ?2 a* n) C

( s$ `: n2 o$ P! L8 h& Fx1 = 3
6 x. v# U6 m: x& u% h1 i6 O8 j2 x+ \
>> C2(:,2)=b;D2=det(C2);x2=D2/D
/ H" d1 l1 e/ c+ a* ^- ]& G7 K5 _+ t
>> C3(:,3)=b;D3=det(C3);x3=D3/D        & J! k2 i, ?: M9 n5 W- P2 k# f' S

4 p/ X2 v% ~; v5 z4 D6 S9 _) }>> C4(:,4)=b;D4=det(C4);x4=D4/D; @4 F9 Y" a) X3 n" o" o$ k. r, |" E
5 d% U' \- |" f+ e+ b& Z- P1 T
(2)使用矩阵左除法求线性方程的解
  A% B5 q4 o! _/ Y1 X! \4 ?5 w" u. W
) u2 A) U$ x1 {  l, y线性方程组AX=B的一个解为X=A\B。  ~5 m( `& q% ~

+ r' E3 }2 B7 ~& T. j) [6 Z* k例:利用左除法求解上题中线性方程组的解.6 i, C9 ~6 i1 d. d9 x- ^4 r" }

3 _' s" N2 W$ u1 D3 u- l>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6];* q& X- ~2 Z0 p! u; i
3 W  n) L/ ~7 d6 I
>>rank(A)
4 \9 q# A3 I# h& x7 W" U
! k* x+ z' [" [) u0 L1 {>> b=[8;9;-5;0];
0 j; q9 I% l9 F- m
& r3 R: x' C" l  l+ `" [>> x=A\b        %左除法8 Y2 ]5 U5 ?, `

$ y: ~# v9 M0 ^/ Q8 G, L& Hx =& V" @6 {5 @4 W1 W' z  s" K

% @2 m( j/ t" `9 V: L- Y+ b  F    3.0000+ d' f9 v5 o+ y8 q8 a

+ U+ G. I4 h0 c1 \1 h   -4.00002 p4 F! e/ \, _/ t$ J3 O! p9 j

/ y& c, D0 @% Z- }   -1.0000
4 \( ~* n9 p; P2 T# n0 j' ?
9 B* Y1 @/ O3 \" |& `, G$ X4 {    1.0000: s% ]9 W% z9 s; O* d
$ i8 E; z) q- a9 {
(3)利用矩阵的行(列)初等变换求线性方程组的通解9 Q+ h0 u- i* w

0 `6 j1 W! L! S1 @# f  基本步骤:(1)将线性方程组表示成增广矩阵的形式;( o9 J  L: R" A( D$ F

: w  B' O4 C- L5 C(2)对增广矩阵实行初等变换,使增广矩阵转化为行阶梯形矩阵;
% p1 D0 F8 e5 T  s( K3 r; X6 ^9 D; v& s6 V! k
(3)得到方程组的解。
5 u6 s: }) g! u) d+ w6 l- n" {
例:求解线性方程组
% M$ a: \2 F! m; J( L$ W) d* H0 D1 V  g* B0 O2 A+ S. p
' y3 i& C: @( s/ F: u; o6 ]8 T
1 }! z: s: x/ |9 T5 u/ d
0 @: M5 B' A9 i; b# \% _# n4 l5 v
>>A=[1,1,1,1;0,1,-1,1;2,3,1,3];     %方程组的增广矩阵/ x# i, M2 j& Q3 K! E
* r% G1 d5 ~5 E' K# S7 e3 |2 M
>>F=rref(A);    %将方程组增广矩阵化为行阶梯形矩阵
* }; y4 g" [$ F7 o
' S8 W2 ]2 J2 i  Q>>F  %输出增广矩阵的行阶梯形矩阵1 e2 I. G6 M, y7 q% r

$ x% M5 y3 N3 HF =4 S: V6 L; B1 A4 j7 n

. S1 t& m& `; N9 N     1     0    2     0
, y, W6 g/ k8 d* f
* R* }7 w1 g& u. [7 V7 T& G/ I- _     0     1   -1     1
2 V! f6 J) e6 e* y& M9 H+ l5 W2 b, T- m' P
     0     0    0     09 a' K7 R0 Q4 J5 O: j3 P! G

; b. N' ^+ {9 n( w9 g' ^: Q# Z由该阶梯形矩阵,可得方程组:x1=-2x3    x2=x3+1
& J, r; k' l6 y# o; K4 @3 B# b! ^  `# x) u6 z5 O* y0 i# F
- R/ \1 `& X6 G: O

0 \# T1 A( Z. w$ h; L) K6 x(4)求非齐次线性方程组的通解
) h  t0 h& ]  j  K" Q+ j
) H( }6 F+ K5 }9 N0 l5 p# F非齐次线性方程组需要先判断是否有解,若有解,再进一步求通解。4 Y3 z2 O9 U' U1 w% T) ]* J; d
7 l* Z  R3 Z7 Q+ S  z! Y" S7 Q
一般步骤为:0 D; j6 g0 @" D
$ S( p& \* V9 X0 M  o
第一步:判断AX=b是否有解,若有解则进行第二步;(R(A)与R(A,b)比较,即比较系数矩阵的秩和增广矩阵的秩)
2 \! c7 [8 b1 [5 c% c/ Z4 }+ Z: p$ B) e4 @$ M& u1 W- W. j& L7 B/ w$ ~
第二步:求AX=b的一个特解;(矩阵除法), ]! e3 C2 ?- g  A
; e0 b. p" R) B4 j
第三步:求AX=0的通解;(利用null命令)
" L* o# b& K- g$ A+ O4 q* I% Z# m% ^' y  l; K/ M
第四步:AX=b的通解:AX=0的通解+AX=b的一个特解。
6 H5 x3 r- e: S7 {1 H7 v( U, m9 n3 M) y( c' q* s
例:判断方程组
, g! \, b. t: n) F, {
% a7 e) ~7 M- v7 j1 H; b%第一步:判断系数矩阵与增广矩阵的秩! A! c7 W  K3 E5 H2 B: t2 ?
, ?3 k( G' Q6 t( c" m
>> A=[1 -1 1 -1;-1 1 1 -1;2 -2 -1 1];    %系数矩阵A
7 c$ S. p( G: C3 b9 }6 }2 M
; g5 |! ?& y# f; d/ `. w) k>> b=[1;1;-1];    %常数b+ h3 N$ ^0 @2 \$ Q
$ U) O. F( A  p* M) I# e! M
>> rank(A)     %系数矩阵的秩% |1 z8 O3 t9 O3 g$ R
! V! k" A, }+ E7 b9 f
ans =2 \! H2 a& ^  q6 d
, K$ L; c" P% Q2 M
     2, ^6 C% G, X( I% N# P
0 D( K" y3 o& w/ ]. d
>> rank([A,b])    %增广矩阵的秩
% F) O* E. L5 e9 ]7 J
) g) k" z8 ]5 q+ Hans =4 y0 Y0 u5 ^# r

2 j; ?/ N( F; ~     26 }6 e# I" |3 j0 X: ^

% M& N+ G( k2 @% g%求通解; Q2 g: ?/ ?. t4 U; M6 \0 L
+ P5 _5 l9 X1 B3 J6 x+ k7 Q: o
化行最简形,用rref命令: a4 [8 r" _! ?& W$ `

' D2 f0 Q  }, T: z# @>> rref([A,b])
0 w! \! l$ K7 n, x& c
/ T* U8 h; `0 r  lans =& J8 n  T) f+ _  r
# ]2 p: t+ R' X" a( P! d7 T
     1    -1    0     0     0
7 c! o+ i1 D# R+ P- O9 P3 e" g4 c7 R+ L5 ~5 w
     0     0    1    -1     1
. z5 {- g/ p( Q* y4 w# x3 C  G3 E/ c
     0     0    0     0     04 t; ^- ?1 T2 O5 n7 k6 [
1 X/ _( g$ z* I1 C5 r. {, ]
取x2,x4为自由变量,从而通解为:x1=x2,x3=x4+1  g( L- q0 |1 w+ e# R

6 t5 m% S( i# l4 G  ~0 M2 {( x* N& x/ o(2)先求出特解及导出组的基础解系, 用命令null,例如:% [) ]+ T# o' p; s% l

0 x) P) W$ I" p) z" O: B; a>>x0=A\b       %方程组的一个特解3 q5 w$ c/ S5 k+ E* w5 k

0 W5 X/ o/ n, v$ |( @) Ux0 =
  G! I& Z. u. g
1 t+ ^4 n" O8 N     0) G6 x( J2 H4 T9 c( x

! H" X9 x! C* D- x, S, {     0
% T0 j0 D7 A1 i+ g. r" F
& j( P: r* v; E6 i/ N     17 ^' n( H9 k1 Z* l
+ W% F2 |. N3 W( ~0 |5 o2 X  u
     0# P4 Z7 Z; L  G- e

9 C6 {, Q, k. Y4 J) }. b>>x1=null(A)    %求导出组的基础解系. d3 V) N! X% U6 w4 C

' h1 w9 s" A3 c  ex1 =  s* [! G1 P& O1 Z; D9 w- A2 {
8 {* H$ j0 ]) c' ^+ _$ a4 y( s6 C
  -0.7071               0% L0 l) `" B% o

# \. R! Q; f4 [% O& a$ q& D   -0.7071               0
, U% D: P2 X* Q% D3 K: C) b; ~2 F: d( ?) y
   -0.0000        0.7071' p( Q1 _4 L8 ]. Q% j& N6 k

( {7 h, `% n* j2 r% A+ a) C  -0.0000       0.7071( a5 R# g3 s; A5 `/ }

2 o5 \) Y5 v6 F% Q故原方程组的通解为* I+ U6 B) E$ [. n

4 c* B( A8 x/ }0 l; l. C. U; F$ n(x1,x2,x3,x4)=(0,0,1,0)+c1(-0.7071,-0.7071,0,0)   +c2(0,0, 0.7071, 0.7071),c1,c2为任意常数.
, \! F$ }# F3 V- R2 p+ U7 H3 Z) V; W  E& }# m& P) r
null是用来求齐次线性方程组的基础解系的,加上'r'则求出的是一组最小正整数解,如果不加,则求出的是解空间的规范正交基。(x1=null(A,'r'))
+ W( d4 z" `  L

该用户从未签到

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-11-23 16:33 , Processed in 0.187500 second(s), 26 queries , Gzip On.

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

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

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