1. Trang chủ
  2. » Giáo án - Bài giảng

ma tran va` ma phuong

11 490 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ma trận và ma phương
Thể loại Bài luận
Định dạng
Số trang 11
Dung lượng 79,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tên đặt bên trái dấu bằng , bên phải dấu bằng là các phần tử của ma trận.. - Các phần tử trong ma trận đợc cách nhau bởi ký tự trống hoặc dấu phẩy ,.. - Nếu dùng dấu ; câu lệnh đợc thực

Trang 1

chơng 4

Ma trận - các phép toán về ma trận.

4.1 Khái niệm:

- Trong MATLAB dữ liệu để đa vào xử lý dới dạng ma trận

- Ma trận A có n hàng, m cột đợc gọi là ma trận cỡ n  m Đợc ký hiệu An  m

- Phần tử aij của ma trận An  m là phần tử nằm ở hàng thứ i, cột j

- Ma trận đơn ( số đơn lẻ ) là ma trận 1 hàng 1 cột

- Ma trận hàng ( 1  m ) số liệu đợc bố trí trên một hàng

a11 a12 a13 a1m

- Ma trận cột ( n  1) số liệu đợc bố trí trên 1 cột

a11

a21

a31

an1

4.1.1 Các qui định để định nghĩa một ma trận:

- Tên ma trận có thể gồm 31 ký tự Bắt đầu phải bằng chữ cái sau đó có thể là

số, chữ cái, các ký tự đặc biệt Tên đặt bên trái dấu bằng , bên phải dấu bằng

là các phần tử của ma trận

- Bao quanh các phần tử của ma trận bằng dấu ngoặc vuông

- Các phần tử trong ma trận đợc cách nhau bởi ký tự trống hoặc dấu phẩy ( , )

- Kết thúc một hàng trong ma trận bởi dấu ( ; )

4.1.2 Các cách để nhập một ma trận:

- Liệt kê trực tiếp:VD >> A =[1 2 3; 4 5 6 ; 7 8 9]

>> B =[1 2 3;

4 5 6 ;

7 8 9]

- Nhập thông qua lệnh Dùng lệnh input

>> input('Nhap gia tri cho ma tran C = ')

Nhap gia tri cho ma tran C = [1 3 4;4 5 7;7 5 8]

ans =

1 3 4

Trang 2

4 5 7

7 5 8

Chú ý khi kết thúc một câu lệnh có thể dùng dấu (; ) hoặc không dùng dấu ( ;).

- Nếu dùng dấu (;) câu lệnh đợc thực hiện nhng kết quả không hiện ra màn hình.

- Nếu không dùng dấu ( ; ) câu lệnh đợc thực hiện và kết quả đợc hiện ra màn hình.

- Trong cả 2 trờng hợp trên sau khi câu lệnh đợc thực hiện kết quả đều đợc

lu vào trong bộ nhớ và có thể sử dụng cho các câu lệnh tiếp theo.

Vd

>>a = [1 2 3;3 2 4;4 5 1];

>> b = [1 2 3;4 5 6;7 8 9]

b =

1 2 3

4 5 6

7 8 9

Cả 2 ma trận A, B đều đợc lu vào trong bộ nhớ và có thể đợc sử dụng cho những câu lệnh tiếp theo

>> c = a*b

c =

30 36 42

39 48 57

31 41 51

4.1.3 Hiển thị lại ma trận:

- Để hiển thị lại ma trận ta gõ tên ma trận sau đó enter

VD >> c

c =

30 36 42

39 48 57

31 41 51

- Để hiển thị nội dung của ma trận hoặc lời thông báo (trong dấu nháy đơn) ta dùng lệnh: disp

VD >> disp (c)

c =

Trang 3

30 36 42

39 48 57

31 41 51

>> disp('hiển thị lời thông báo này')

hiển thị lời thông báo này

Chú ý:

- Các phần tử trong ma trận có thể là các số phức:

VD >> a=[1+3i 2+2i;3+i 1+i]

a = 1.0000 + 3.0000i 2.0000 + 2.0000i 3.0000 + 1.0000i 1.0000 + 1.0000i

- Các phần tử trong ma trận có thể là các ký tự Nhng trớc tiên ta phải khai báo các phần

tử bằng lệnh syms

VD >> syms sinx cosx a

>> b = [ sinx cosx; a cosx]

b =

[ sinx, cosx]

[ a, cosx]

>> c=[a sinx; a a]

c =

[ a, sinx]

[ a, a]

4.2 Xử lý trong ma trận:

4.2.1 Tạo véctơ từ ma trận:

Công thức tổng quát: Biến = giới hạn đầu : bớc chạy : gới hạn cuối

Giới hạn đầu, giới hạn cuối, bớc chạy: là các số thực

Bớc chạy có thể dơng hoặc âm

VD Tạo 1 vectơ t chạy từ 0 đến 0.6 với bớc chạy tiến là 0.1

>> t=0: 0.1:0.6

t =

0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000

VD: Tạo 1 vectơ t chạy từ 0.6 đến 0 với bớc chạy lùi là 0.1

>>t=0.6:-0.1:0

t =

0.6000 0.5000 0.4000 0.3000 0.2000 0.1000 0

Chú ý : Trong trờng hợp giới hạn trên, gới hạn dới là các số nguyên và bớc chạy bằng 1

thì ta không cần đa bớc chạy vào trong biểu thức

Trang 4

VD >> C = 1:5

C =

4.2.2 Gọi các phần tử trong ma trận.

MATLAB cho phép ta xử lý đến từng phần tử của ma trận Để truy cập đến từng phần tử của ma trận ta phải gọi đợc chúng thông qua chỉ số của từng phần tử

Tên của ma trận( Chỉ số hàng, chỉ số cột)

VD:

>> A = [1:3; 4:6; 7:9]

A =

>> B = A(1,1)

B =

1

>> A(3,3) = A(2,2) + B

A =

Chú ý: Trong trờng hợp ta muốn gọi tất cả các hàng hoặc tất cả các cột ta có thể dùng toán

tử hai chấm ( : )

VD:

>> A = [1:3; 4:6; 7:9]

A =

>> B = A(2,:)

B =

>>C = A(:,2)

C = 2 5 8

4.2.3 Gọi 1 ma trận con từ một ma trận lớn.

VD

Trang 5

>> A = [1:3; 4:6; 7:9]

A =

>> B = A ( 2:3,1:2 )

B =

5

>> c =[a(1,1) a(3,3); a(2,3) a(3,1)]

c =

1 9

6 7

4.3 Các ma trận đặc biệt:

4.3.1 Ma trận zeros Tất cả các phần tử trong ma trận đều bằng 0.

VD

>> C = zeros (2,3)

C =

>> d = zeros(3)

d =

4.3.2 Ma trận ones Tất cả các phần tử trong ma trận đều bằng 1

VD

>> C = ones (2,3)

C =

>> d = ones(3)

d =

4.3.3 Ma trận ma phơng Magic: Tổng tất cả giá trị các phần tử trên hàng = Tổng tất cả

giá trị các phần tử trên cột = Tổng tất cả giá trị các phần tử trên đờng chéo của ma trận Vd

Trang 6

>> A = Magic (3)

A=

4.3.4 Ma trận eye Tất cả các phần tử trên đờng chéo có giá trị 1, các phần tử khác có giá

trị 0

VD

>> B = eye (3)

B =

4.4 Các phép toán vector:

4.4.1 Các phần tử là các số thực:

>>a=[1 1 2;2 1 1]

a =

1 1 2

2 1 1

>> b=[1 2 2; 1 1 1]

b =

1 2 2

1 1 1

>> c=a.*b

c =

1 2 4

2 1 1

>> d=a./b

d =

1.0000 0.5000 1.0000

2.0000 1.0000 1.0000

Trang 7

>> e=a.\b

e =

1.0000 2.0000 1.0000

0.5000 1.0000 1.0000

>> f=a.^b

f =

1 1 4

2 1 1

4.4.2 C¸c phÇn tö lµ c¸c sè phøc.

>>a=[1+i 2+3i;3-4i 1+3i]

a =

1.0000 + 1.0000i 2.0000 + 3.0000i

3.0000 - 4.0000i 1.0000 + 3.0000i

>> b=[2+i 2+2i;1-4i 3+3i]

b =

2.0000 + 1.0000i 2.0000 + 2.0000i

1.0000 - 4.0000i 3.0000 + 3.0000i

>> c=a.*b

c =

1.0000 + 3.0000i -2.0000 +10.0000i

-13.0000 -16.0000i -6.0000 +12.0000i

4.4.3 C¸c phÇn tö lµ c¸c tham sè:

>> syms a b c

>>A=[a b; b c]

A =

[ a, b]

[ b, c]

>> B=A

B =

[ a, b]

[ b, c]

>> C=A.*B

C =

[ a^2, b^2]

[ b^2, c^2]

4.5 C¸c phÐp to¸n vÒ ma trËn:

4.5.1 PhÐp chuyÓn vÞ:

Trang 8

Phép chuyển đổi véctơ hàng thành véctơ cột gọi là phép chuyển vị Thực hiện phép chuyển vị bằng toán tử dấu nháy đơn ( ‘ )

VD

>> A = [1:3; 4:6; 7:9]

A =

>> B = A’

B =

Ma trận B đợc gọi là ma trận chuyển vị của ma trận A

4.5.2 Phép cộng - trừ ma trận.( + , - )

Phép cộng và trừ ma trận đợc thực hiện với các ma trận có cùng kích cỡ

Cij = Aij + Bij

Dij = Aịj - Bij

>> A = [1:3; 4:6; 7:9]

A =

>> B = A’

B =

>> C = A + B

C =

10 14 18

4.5.3 Phép nhân, chia ma trận:

C = A*B

Để thực hiện đợc phép nhân trên thì số cột của ma trận A phải bằng số hàng của ma trận B

Trang 9

Các phần tử trong ma trận C đợc tính nh sau:

VD các phần tử trong ma trận là các số thực.

>> A = [1 2 1; 1 0 1]

A =

>> B = [1 0 2; 2 1 1; 1 1 1]

B =

>> C = A * B

C =

VD các phần tử trong ma trận là các số phức.

>> a=[1+2i 2+2i;1+3i 2+2i]

a =

1.0000 + 2.0000i 2.0000 + 2.0000i

1.0000 + 3.0000i 2.0000 + 2.0000i

>> b=[1+i 2+i;1+3i 2+i]

b =

1.0000 + 1.0000i 2.0000 + 1.0000i

1.0000 + 3.0000i 2.0000 + 1.0000i

>> c=a*b

c =

-5.0000 +11.0000i 2.0000 +11.0000i

-6.0000 +12.0000i 1.0000 +13.0000i

VD các phần tử trong ma trận là các tham số

>> syms a b c

>>d=[2*a b c; a b c; 0 0 a]

d =

[ 2*a, b, c]

[ a, b, c]

n 1 k

kj ik

C

Trang 10

[ 0, 0, a]

>> e=[a b c; 2*a 2*b^2 c ; a 0 b]

e =

[ a, b, c]

[ 2*a, 2*b^2, c]

[ a, 0, b]

>> f=d*e

f =

[ 2*a^2+2*b*a+c*a, 2*b*a+2*b^3, 2*c*a+2*c*b]

[ a^2+2*b*a+c*a, b*a+2*b^3, c*a+2*c*b]

[ a^2, 0, b*a]

Phép chia ma trận thực chất là phép nhân với ma trận nghịch đảo

Lấy ma trận nghịch đảo thực hiện bằng hàm inv

>> A = [1 2 1; 1 0 1]

A =

>> B = [1 0 2; 2 1 1; 1 1 1]

B =

>> C = inv(B)

C =

0 1.0000 -1.000 -0.5000 -0.5000 1.5000

0.500 -0.5000 0.5000

>> D = A*C

D=

- 0.5000 -0.5000 2.5000 0.5000 0.5000 -0.5000

Chú ý: Trong các phép tính trên nếu nếu thực hiện với một số thực thì tất cả các phần tử trong ma trận sẽ đợc cộng, trừ, nhân, chia ( / ) với số thực đó tuỳ thuộc vào phép toán tơng ứng

>> A = [1 2 1; 1 0 1]

A =

B

A B A

C  *1

Trang 11

1 2 1

>> B = A*2

B =

4.5.4 Phép quay ma trận: Quay ma trận B đi 1 góc 90 độ theo ngợc chiều kim đồng

hồ

>> a=[1 2 3;4 5 6;7 8 9]

a =

1 2 3

4 5 6

7 8 9

>> b=rot90(a)

b =

3 6 9

2 5 8

1 4 7

4.5.5.Phép đảo ma trận: Đảo các phần tử của ma trận từ trái sang phải.

>> c=fliplr(b)

c =

9 6 3

8 5 2

7 4 1

Ngày đăng: 15/06/2013, 01:25

TỪ KHÓA LIÊN QUAN

w