2.1 Khái niệm
Các dữ liệu đƣa vào xử lý trong MATLAB đều 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 Anm, phần tử aij của ma
trận Anm là phần tử nằm ở hàng thứ i, cột j. Ta chú ý một số ma trận sau: - 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.
- Ma trận cột ( n 1) số liệu đƣợc bố trí trên 1 cột.
2.1.1 Qui định để định nghĩa một ma trận trong Matlab
Tên ma trận (có thể đến 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, các phần tử của ma trận đƣợc đóng bằng dấu ngoặc vuông ([]), các phần tử trong trong cùng một hàng đƣợc cách nhau bởi ký tự trống hoặc dấu phẩy (, ), các phần tử thuộc các hàng khác nhau cách nhau bởi dấu (;).
249 trang |
Chia sẻ: Tiểu Khải Minh | Ngày: 19/02/2024 | Lượt xem: 185 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Tập bài giảng Mạch điện 1, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
a thứ n ta có:
1 2n-1U Un (5-112)
Do đó từ (5-110), (5-111) suy ra:
n-1 ng +g en-1 en1n-1
2n n-1 n
ρ ρU
=e
U ρ ρ
(5-113)
Tiến hành tƣơng tự cho tất cả các mạng hai cửa ta đƣợc kết quả sau:
1 2 n
(g +g +...+g ) e1 e2 en11
2n 1 2 n
ρ ρ ...ρU
=e
U ρ ρ ...ρ
(5-114)
(Chú ý ở đây ký hiệu g1, g2 là hệ số truyền đạt sóng trung bình của mạng hai cửa
thứ nhất và thứ hai chứ không phải là hệ số truyền đạt sơ cấp và thứ cấp).
206
Các biểu thức (5-108), (5-109) và (5-114) cho phép thay n mạng hai cửa nối dây
chuyền, phối hợp sóng với nhau làm việc nhƣ trên hình 5.28 bởi một mạng tƣơng
đƣơng làm việc nhƣ trên hình 5.29. Mạng hai cửa tƣơng đƣơng này có trở kháng sóng
sơ cấp bằng
c11Z , trở kháng sóng thứ cấp bằng c2nZ , hệ số truyền đạt sóng trung bình
g = g1 + g2 +...+ gn , tỷ số trở kháng = 12...n, tỷ năng lƣợng e = e1e2...en.
Dễ dàng chứng minh đƣợc rằng đối với công suất biểu kiến phía sơ cấp và thứ
cấp có quan hệ:
1 2a
2
n
k
k=1
S
=e ;
S
a=Re(g)=Re g
(5-115)
Hình 5.29 Mạng hai cửa tƣơng đƣơng n mạng nối dây chuyền
5.7. Lọc điện
Mạng hai cửa và lý thuyết mạng hai cửa đƣợc ứng dụng rộng rãi trong các lĩnh
vực điện tử viễn thông. Một trong những ví dụ về ứng dụng của nó là mạch lọc. Mạch
lọc là các mạng hai cửa đặc biệt có tính lựa chọn tần số, nó cho truyền qua một cách dễ
dàng các tín hiệu dòng áp thuộc dải tần số nào đó gọi là dải thông và làm tắt (suy
giảm) các tín hiệu thuộc giải tần số khác gọi là dải chắn. Một mạch lọc lý tƣởng có hệ
số suy giảm a = 0 trong dải thông, còn trong dải chắn hệ số suy giảm a = .
Theo phạm vi tần số, mạch lọc có thể đƣợc chia thành các loại chính:
- Lọc thông thấp (thấp qua): dải thông là 0 C, dải chắn >C.
- Lọc thông cao (cao qua): dải thông là C dải chắn 0 C.
- Lọc thông dải (dải qua):dải thông là C1C2 dải chắn 0C1 và >C2.
- Lọc chắn dải: dải thông là 0 C1 và >C2 , dải chắn C1C2.
Các tần số C, C1, C2 gọi là các tần số cắt
207
Theo các phần tử dùng để tạo thành mạch lọc, ta có các loại chính:
+ Lọc thụ động LC: Chỉ gồm các phần tử L, C
+ Lọc thụ động RC: Chỉ gồm các phần tử R, C
+ Lọc tích cực RC: Gồm các phần tử R, C và các phần tử tích cực nhƣ Transistor,
Op-amp...
+ Lọc áp điện (thạch anh) và v.v...
Trong mục này chủ yếu xét đến các mạch lọc thụ động LC có cấu trúc hình cái
thang nhƣ hình 5.30
Hình 5.30 Các mạch lọc thụ động có cấu trúc hình cái thang
Hình 5.31 Nối dây chuyên các mắt xích nguyên tố
Giả thiết rằng các mạng hai cửa hình 5.30 làm việc trong điều kiện phối hợp sóng
cả hai phía. Cấu trúc hình thang nhƣ hình 5.30 có thể đƣợc biểu diễn dƣới dạng nối
dây chuyền các mắt xích hình Γ và hình đƣợc phối hợp sóng với nhau (Hình 5.31).
5.7.1 Điều kiện để trở thành mạch lọc
Các thông số sóng của các mắt xích nguyên tố hình Γ và hình . Theo mục 5.6.3 ta
có hệ số suy giảm và hệ số dịch pha của các mắt xích nguyên tố.
Mạch lọc hình T và hình gồm hai mắt xích nguyên tố , Γ ghép lại thƣờng đƣợc
gọi là mắt lọc cơ bản, và các mắt xích nguyên tố , Γ đƣợc gọi là nửa mắt lọc. Gọi
g=a+jb là hệ số truyền đạt sóng của mắt lọc hình T và hình
Trong mạch hình 5.30 các phần tử Z1 = jX1, Z2 = jX2. Vậy để mạch hình 5.30 là
mạch lọc thì X1, X2 phải khác dấu, khi đó dải thông ứng với
208
1
2
X
0 -4
X
(5-116)
Khi đó trở kháng sóng là số thực tức thuần trở còn dải chắn ứng với
1
2
X
4
X
(5-117)
Nghĩa là các trở kháng sóng phải là thuần ảo tức thuần cảm hoặc thuần dung.
5.7.2 Lọc loại K
Mạch lọc hình thang hình 5.30 có tích các trở kháng:
2
1 2Z Z K 0 (5-118)
trong đó K là hằng số dƣơng, gọi là mạch lọc loại K.
Dễ dàng nhận thấy rằng việc thỏa mãn điều kiện (5-118) chứng tỏ biểu thức sau
đây cũng thỏa mãn:
21 2 CT CΠ 1 2 1 2
1
Z ×2Z = Z ×Z =-X X = X X =k
2
(5-119)
Vì
2 2
1 1
2 2
2 2
X k X
= =
X X k
nên điều kiện dải thông 1
2
X
0 4
X
tƣơng đƣơng với:
2
k
0 1
2 X
(5-120)
Hoặc 2
X
0 1
2k
(5-121)
Còn các điều kiện dải chắn 1
2
X
4
X
tƣơng đƣơng với:
2
k
1
2 X
(5-122)
Hoặc 2
X
1
2k
(5-123)
Từ công thức:
1
2
b X
sin
2 4X
(5-124)
1 1
2 2
a -X a X
ch = ;sh =± - 1+
2 4X 2 4X
(5-125)
209
Cũng thay
2 2
1 1
2 2
2 2
X k X
= =
X X k
vào (5-124) và (5-125) ta có:
- Trong dải thông:
1
2
Xb k
a 0; sin
2 2 X 2k
(5-126)
Có thể chứng minh b cùng dấu với X1 và ngƣợc dấu với X2
- Trong dải chắn:
1
2
Xa k
cha = = ; b= ±π
2 2 X 2k
(5-127)
Vậy ta thấy trong dải thông các trở kháng là số thực còn trong dải chắn là thuần ảo.
1. Lọc thông thấp loại k
Các mắt lọc hình Γ, hình và các mắt lọc cơ bản hình T, hình đƣợc cho trên
hình 5.32
a)
b)
c)
d)
Hình 5.32 Nửa mắt lọc và các mắt lọc cơ bản của mạch lọc thông thấp loại k
Trong đó:
1 1 1
2 2
2
1
1 2
2
Z =jX =jωL
1
Z =jX =
jωC
L
k= Z Z =
C
(5-128)
Điều kiện dải thông theo (5-120) và (5-121) là:
210
1
2 1 2
2
L
C ω L C
0 1 0 1
2 2
ωC
(5-129)
Do đó dải thông là:
1 2
2
0
L C
(5-130)
Vậy giới hạn dƣới của dải thông là = 0 (5-131)
Giới hạn trên là:
C
1 21 2
2 2k 2
= = =
L kCL C
(5-132)
Các hệ số suy giảm và dịch pha theo (5-126) và (5-127) là:
- Trong dải thông là: a = 0;
C
b 2arcsin
(5-133)
- Trong dải chắn là:
C
a 2arch ;b
(5-134)
Các trở kháng sóng là:
T
2
C C
2
C
C
k
Z k 1 ; Z
1
(5-135)
2. Lọc thông cao loại k
Trên hình 5.33 giới thiệu các nửa mắt lọc và các mắt lọc cơ bản của mạch lọc thông
cao loại k
a)
b)
c)
d)
Hình 5.33 Các nửa mắt lọc và các mắt lọc cơ bản của mạch lọc thông cao loại k
211
Trong đó:
1 2 2
1
1
Z = ; Z =jωL
jωC
(5-136)
2
1
L
k=
C
(5-137)
Từ (5-120) và (5-121) suy ra dải thông là:
2 1
1
2 L C
(5-138)
Giới hạn dƣới của dải thông là:
C
2 12 1
1 k 1
= = =
2L 2kC2 L C
(5-139)
Giới hạn trên là: =
Các hệ số suy giảm và dịch pha theo (5-126) và (5-127) là:
- Trong dải thông là: a = 0; Cb 2arcsin
(5-140)
- Trong dải chắn là: Ca 2arch ;b
(5-141)
Các trở kháng sóng là:
T π
2
C
C C
2
C
ω k
Z =k 1- ; Z =
ω ω
1-
ω
(5-142)
3. Lọc thông dải loại k
Các cấu trúc cơ bản của mạch thông dải loại k cho trên hình 5.34
a)
b)
c)
d)
Hình 5.34 Mạch thông dải loại k
212
Trong đó:
1 1 2 2L C =L C (5-143)
1 1
1
2
2
2
1
Z =j ωL - ;
ωC
1
Z =
1
j ωC -
ωL
(5-144)
1 2
2 1
L L
k= =
C C
(5-145)
Nhánh dọc và nhánh ngang có cộng hƣởng áp hoặc dòng ở tần số:
0
1 1 2 2
1 1
= =
L C L C
(5-146)
Từ (5-120) và (5-121) suy ra dải thông là:
C1 C2ω ω ω (5-147)
Với 1
1 2 1 1 1 2
1 1 1
ω =
L C L C L C
C (5-148)
là tần số giới hạn dƣới của dải thông
và: 2
1 2 1 2 1 2
1 1 1
ω =
L C L C L C
C (5-149)
Từ (5-126)và (5-127) suy ra các hệ số suy giảm và dịch pha:
- Trong dải thông: a = 0
và 0 0
ω+ω ω-ω
b=2arcsin
2ω
(5-150)
trong đó 2 1
1 2
1 1
= ω ω =
2 L C
C C (5-151)
- Trong dải chắn b =
và 0 0
ω+ω ω-ω
a=2arch
2ω
(5-152)
Trở kháng sóng:
C
2
0 0
k
Z =
ω+ω ω-ω
1
2ω
(5-153)
213
2
0 0
CT
ω+ω ω-ω
Z =k 1
2ω
(5-154)
4. Lọc chắn dải loại k
a) b)
b) b)
Hình 5.35 Mạch lọc chắn dải loại k
Lọc chắn dải loại k đƣợc vẽ trên hình 5.35 với:
1 1 2 2
L C =L C (5-155)
Nhánh dọc và nhánh ngang có cộng hƣởng áp hoặc dòng ở tần số:
0
1 1 2 2
1 1
= =
L C L C
(5-156)
1
1
1
2 2
2
1
Z = ;
1
j ωC -
ωL
1
Z =j ωL -
ωC
(5-157)
Từ (5-120) và (5-121) suy ra dải thông là:
C1 C20 ω ω ; ω ω (5-158)
Dải chắn là: C1 C2ω <ω<ω
214
Với:
1
2 1 2 2 2 1
2
2 1 2 2 2 1
1 1 16 1
ω = ;
4 L C L C L C
1 1 16 1
ω =
4 L C L C L C
C
C
(5-159)
Ta có quan hệ: 2
C1 C2 0ω ω =ω
Đặt 2 1
2 1
ω ω 1
= =
2 4 L C
C C (5-160)
Từ (5-126)và (5-127) suy ra các hệ số suy giảm và dịch pha:
- Trong dải thông: a = 0
và
0 0
2ω
b=-2arcsin
ω+ω ω-ω
(5-161)
- Trong dải chắn b =
và
0 0
2ω
a=2arch
ω+ω ω-ω
(5-162)
Trở kháng sóng:
C
2
0 0
k
Z =
2ω
1
ω+ω ω-ω
(5-163)
2
CT
0 0
2ω
Z =k 1
ω+ω ω-ω
(5-164)
Kết luận:
- Trong thông trở kháng sóng là thực và là hàm của tần số, ngoài dải thông là ảo
và cũng là hàm của tần số. Để đảm bảo phối hợp sóng (phối hợp trở kháng) trong dải
thông cả về hai phía sơ cấp và thứ cấp, các trở kháng tải và trở kháng trong của nguồn
cung cấp cũng phải thực và bằng trở kháng sóng CT CZ ,Z tùy theo dạng của nửa mắt
lọc ở hai đầu mạch lọc.
- Trở kháng sóng thay đổi nhanh trong dải thông làm cho việc phối hợp trở kháng
giữa bộ lọc với nguồn và với tải khó thực hiện. Nếu không phối hợp trở kháng tốt thì
đặc tính tần a() của hệ số suy giảm sẽ kém chất lƣợng. Sự tăng của hệ số suy giảm
trong dải chắn quá chậm.
215
CÂU HỎI VÀ BÀI TẬP CHƢƠNG 5
A. CÂU HỎI
1. Tình bày khái niệm mạng hai cửa
2. Kể tên, mối quan hệ giữa các lƣợng, viết hệ phƣơng trình trạng thái và cách ghép
tƣơng ứng của các hệ phƣơng trình trạng thái của mạng hai cửa.
3. Trình bày các phƣơng pháp xác định hệ số Aik.
4. Nêu điều kiện , kể tên các loại mạch lọc loại K và viết biểu thức tính các tổng trở
sóng tƣơng ứng của mạch lọc.
B. BÀI TẬP
1. Cho mạng 2 cửa (4 cực) hình 1. Biết:
1dZ = j5 ( ); 2dZ = j5 ( ); nZ = -j2( ).
Hãy thành lập biểu thức và tính các
giá trị A11, A21 bằng cách dựa vào trạng
thái làm việc đặc biệt của mạch.
Hình 1
2. Cho mạng 2 cửa (4 cực) hình 2.
Biết: 1dZ = j5 ( ); 2dZ = j5 ( ); nZ = -
j2( ).
Hãy thành lập biểu thức và tính các
giá trị A12, A22 bằng cách dựa vào trạng
thái làm việc đặc biệt của mạch.
Hình 2
3. Cho mạng 2 cửa (4 cực) hình 3. Biết:
1nZ = -j15 ( ); 2nZ = -j18 ( ); dZ =
j12( ).
Hãy thành lập biểu thức và tính các
giá trị A11, A21 bằng cách dựa vào trạng
thái làm việc đặc biệt của mạch.
Hình 3
216
4. Cho mạng 2 cửa (4 cực) hình 4.
Biết:
1nZ = -j16 ( ); 2nZ = -j9 ( );
dZ = j7( )
Hãy thành lập biểu thức và tính các
giá trị A12, A22 bằng cách dựa vào
trạng thái làm việc đặc biệt của
mạch.
Hình 4
5. Cho mạng 2 cửa (4 cực) nhƣ hình
5. Biết :
1dZ = j9 ( ); 2dZ = j6 ( );
nZ = -j3( ).
Hãy tính các giá trị A11, A21 , A12,
A22. (Không cần chứng mình các
biểu thức tổng quát)
Hình 5
6. Cho mạng 2 cửa (4 cực) hình 6.
Biết:
1nZ = -j8 ( ); 2nZ = -j14 ( );
dZ = j9( ).
Hãy tính các giá trị A11, A21 , A12,
A22. (Không cần chứng mình các
biểu thức tổng quát)
Hình 6
7. Cho mạng 2 cửa (4 cực) hình 7.
Biết: A11 = 3; A12 = 2; A21 = 7;
A22 = 5; 2Z = 10( ).
Hãy thành lập biểu thức và tính giá
trị của tổng trở vào cửa 1( V1Z )
Hình 7
8. Cho mạng 2 cửa (4 cực) hình 8.
Biết: A11 = 4; A12 = 13; A21 = 3;
A22 = 10; 2Z = 20( ).
Hãy thành lập biểu thức và tính
hàm truyền đạt áp: 2
1
U
U
K
U
.
Hình 8
217
9. Cho mạng 2 cửa (4 cực) nhƣ hình
9. Biết:
nZ = -j30 ( ); dZ = j15( ).
Hãy thành lập biểu thức và tính các
giá trị A22, A12 bằng cách dựa vào
trạng thái làm việc đặc biệt của
mạch.
Hình 9
10. Cho mạng 2 cửa (4 cực) hình 10.
Biết:
nZ = -j10 ( ); dZ = j45( ).
Hãy thành lập biểu thức và tính
các giá trị A11, A21bằng cách dựa vào
trạng thái làm việc đặc biệt của
mạch.
Hình 10
11. Cho mạng 2 cửa (4 cực) hình 11.
Biết:
nZ = -j30 ( ); dZ = j15( ).
Hãy thành lập biểu thức và tính các
giá trị A21, A22 bằng cách dựa vào kết
cấu của mạch.
Hình 11
12. Cho mạng 2 cửa (4 cực) hình 12.
Biết: nZ = -j30 ( ); dZ = j15( ).
Hãy thành lập biểu thức và tính
các giá trị A11, A21 bằng cách dựa vào
trạng thái làm việc đặc biệt của
mạch.
Hình 12
218
13. Cho mạng 2 cửa (4 cực) hình 13.
Biết:
nZ = -j30 ( ); dZ = j15( ).
Hãy thành lập biểu thức và tính các
giá trị A11, A12 bằng cách dựa vào kết
cấu của mạch.
Hình 13
14. Cho mạng 2 cửa (4 cực) hình 14.
Biết:
nZ = -j10 ( ); dZ = j45( ).
Hãy thành lập biểu thức và tính các
giá trị A21, A22bằng cách dựa vào kết
cấu của mạch.
Hình 14
15. Cho mạng 2 cửa (4 cực) hình 15.
Biết:
nZ = -j10 ( ); dZ = j45( ).
Hãy thành lập biểu thức và tính các
giá trị A12, A22 bằng cách dựa vào trạng
thái làm việc đặc biệt của mạch.
Hình 15
16. Cho mạng 2 cửa (4 cực) hình 16.
Biết: nZ = -j10 ( ); dZ = j45( ).
Hãy thành lập biểu thức và tính
các giá trị A11, A12 bằng cách dựa vào
kết cấu của mạch.
Hình 16
17. Cho mạng 2 cửa (4 cực) hình 17.
Biết: Xn1= 20(); Xn2= 5 ();
Xd = 10().
Hãy thành lập biểu thức và tính các
giá trị A12, A11 bằng cách dựa vào kết
cấu của mạch.
Hình 17
219
18. Cho mạng 2 cửa (4 cực) hình 18.
Biết: Xn1= 20(); Xn2= 5 ();
Xd = 10().
Hãy thành lập biểu thức và tính các giá
trị A21, A22 bằng cách dựa vào kết cấu
của mạch.
Hình 18
19. Cho mạng 2 cửa (4 cực) hình 19.
Biết: Xn= 10 ( ); Xd1 = 45( );
Xd2 =45( ).
Hãy thành lập biểu thức và tính
các giá trị A21, A22bằng cách dựa vào
kết cấu của mạch.
Hình 19
20. Cho mạng 2 cửa (4 cực) hình
20. Biết: Xn= 10 ( ); Xd1 = 45( );
Xd2 =45( ).
Hãy thành lập biểu thức và tính
các giá trị A11, A12 bằng cách dựa
vào kết cấu của mạch.
Hình 20
220
PHỤ LỤC
A. MỘT SỐ KIẾN THỨC CƠ BẢN VỀ MATLAB
Phần 1. TỔNG QUAN VỀ MATLAB
1.1. Giới thiệu chung
MATLAB là 1 phần mềm ứng dụng chạy trong môi trƣờng Windows do hãng
MathWorks sản xuất và cung cấp, nó tích hợp các công cụ rất mạnh phục vụ tính toán,
lập trình, thiết kế, mô phỏng, V.V... trong một môi trƣờng rất dễ sử dụng trong đó các
bài toán và các lời giải đƣợc biểu diễn theo các ký hiệu toán học quen thuộc. Có thể
nói Matlab là ngôn ngữ của kỹ thuật, đang đƣợc rất nhiều các nhà khoa học, các cán bộ
kỹ thuật, giảng viên và sinh viên các trƣờng đại học kỹ thuật ƣa dùng. Các ứng dụng
điển hình là:
- Toán học và tính toán.
- Phát triển thuật toán.
- Tạo mô hình, mô phỏng và tạo giao thức.
- Khảo sát, phân tích số liệu.
- Đồ hoạ khoa học kỹ thuật.
- Phát triển ứng dụng, gồm cả xây dựng giao diện ngƣời dùng đồ hoạ GUI.
- Thiết kế các hệ thống điều khiển trong thời gian thực
Matlab cung cấp một họ các phƣơng pháp theo hƣớng chuyên dụng hóa đƣợc
gọi là các Toolbox (hộp công cụ). Các Toolbox cho phép ngƣời sử dụng học và áp
dụng các kỹ thuật chuyên dụng cho một lĩnh vực nào đó. Toolbox là một tập hợp toàn
diện các hàm của Matlab (M-file) cho phép mở rộng môi trƣờng Matlab để giải các
lớp bài toán cụ thể. Các lĩnh vực trong đó có sẵn các Toolbox bao gồm: Xử lý tín hiệu,
hệ thống điều khiển, logic mờ, mạng nơron, mô phỏng ...
Hệ thống Matlab gồm có 5 phần chính:
- Ngôn ngữ Matlab: Là một ngôn ngữ ma trận, mảng cấp cao với các câu lệnh,
hàm, cấu trúc dữ liệu vào / ra, các tính năng lập trình hƣớng đối tƣợng. Nó cho phép
lập trình các ứng dụng từ nhỏ đến các ứng dụng lớn, từ các ứng dụng đơn giản đến các
ứng dụng phức tạp.
- Môi trƣờng làm việc của Matlab: Đây là một bộ các công cụ và phƣơng tiện
mà bạn sử dụng với tƣ cách là ngƣời dùng hoặc ngƣời lập trình Matlab. Nó bao gồm
các phƣơng tiện cho việc quản lý các biến trong không gian làm việc Workspace cũng
nhƣ xuất nhập khẩu dữ liệu. Nó cũng bao gồm các công cụ để phát triển, quản lý, gỡ
rối và định hình M-file, ứng dụng của Matlab.
221
- Xử lý đồ họa: Đây là một hệ thống đồ họa của Matlab. Nó bao gồm các lệnh
cao cấp cho trực quan hóa dữ liệu hai chiều và ba chiều, xử lý ảnh, ảnh động, ... Nó
cũng cung cấp các lệnh cấp thấp cho phép bạn tùy biến giao diện đồ họa cũng nhƣ đi
xây dựng một giao diện đồ họa hoàn chỉnh cho ứng dụng Matlab của mình.
- Thƣ viện toán học Matlab: Đây là một tập hợp khổng lồ các thuật toán tính
toán từ các hàm cơ bản nhƣ: cộng, trừ, nhân, chia, sin, cos, tang, số học phức .....tới
các hàm phức tạp hơn nhƣ: nghịch đảo, ma trận, tìm trị riêng của ma trận, phép biến
đổi Fourier nhanh.
- Giao diện chƣơng trình ứng dụng Matlab API (Application Program
Interface): Đây là một thƣ viện cho phép bạn viết các chƣơng trình C và Fortran tƣơng
thích với Matlab.
Simulink là một chƣơng trình đi kèm với Matlab, là một hệ thống tƣơng tác với
việc mô phỏng các hệ thống động học phi tuyến. Nó là một chƣơng trình đồ họa sử
dụng chuột để thao tác cho phép mô hình hóa một hệ thống bằng cách vẽ một sơ đồ
khối trên màn hình. Nó có thể làm việc với các hệ thống tuyến tính, phi tuyến, hệ
thống liên tục theo thời gian, hệ thống gián đoạn theo thời gian, hệ thống đa biến ...
1.2. Không gian làm việc của Matlab (Matlab Workspace)
Không gian làm việc của Matlab chứa một tập các biến (các mảng đƣợc đặt tên)
mà bạn có thể thao tác từ dòng lệnh của Matlab. Có thể sử dụng lệnh Who và whos để
xem nội dung của workspace.
Để xóa tất cả các biến đang tồn tại trongWorkpace, gõ >>clear
Matlab có các lệnh cho phép ngƣời sử dụng lƣu lại nội dung của Workpace ở
bất kỳ thời điểm nào trong phiên làm việc và sau đó có thể nạp dữ liệu trở lại Matlab
trong phiên làm việc đó hoặc trong phiên làm việc sau đó. Lƣu và nạp dữ liệu cũng có
thể xuất nhập các file dữ liệu kiểu text.
1.2.1. Lưu không gian làm việc (Saving the Workpace)
Để lƣu Workpace, chọn lệnh Save Workpace as từ menu File hoặc gõ lệnh trực
tiếp từ cửa sổ lệnh. Lệnh dữ liệu sẽ lƣu nội dung của Workpace thành một file nhị
phân có phần mở rộng là .mat. Ví dụ: >>save data
lƣu toàn bộ nội dung Workpace vào file data.mat. Nếu muốn có thể lƣu một số
biến nhất định bằng cách đƣa thêm tên các biến vào sau tên file:
>>save data x, y, z
chỉ lƣu các bién x,y,z,vào file data.mat.
1.2.2. Xuất không gian làm việc (loading the Workpace)
Lệnh nạp sẽ nạp một MAT-file đã đƣợc tạo ra trƣớc đó bằng lệnh save. Ví dụ:
>>load data
222
nạp nội dung file data.matvào không gian làm việc. Nếu file data.mat chứa các
biến a ,b, c, thì các biến này sẽ đƣợc đƣa trở lại vào Workpace. Nếu các biến này đã
tồn tại trong Workpace thì chúng sẽ bị ghi đè.
Trong windows, nạp lại Workpace có thể thực hiện bằng cách chọn lệnh:
Load Workpace từ menu File.
1.3 Các biến và các hàm
1.3.1 Các biến
- Tên biến đƣợc gán bởi các chữ cái a đến chữ z, chữ in hoa A đến Z, các chữ số
từ 0 đến 9, dấu gạch dƣới _; với đội dài không quá 32 ký tự.
- Không dùng các chữ, ký hiệu sau để đặt tên biến: pi, i, j, dấu phảy, dấu chấm
phảy, dấu =, +, -, *, /, ^.
- Có thể khai báo các biến trên một dòng, giữa các biến dùng dấu phảy để phân
biệt nhƣ ví dụ sau:
>> giatri_1 = 10, giatri_2 = 20, giatri_3 =30
giatri_1=
10
giatri_2=
20
giatri_3=
30
- Cũng có thể khai báo các biến trên nhiều dòng, để kết thúc mỗi dòng ta dùng
dấu chấm phảy nhƣ ví dụ sau:
>>giatri_1=10;
>> giatri_2=10;
>> giatri_3=10;
>> tong = giatri_1+ giatri_2+ giatri_3
Tong =
60
1.3.2 Các hàm toán, lượng giác
Các hàm toán Các hàm lƣợng giác
Sqrt(x) Căn bậc hai Sin(x) Hàm sin
exp(x) Hàm mũ cơ số e cos(x) Hàm sin
log(x) Logarit tự nhiên tg(x) Hàm tg
abs(x) Giá trị tuyệt đối atan(x) Hàm arctg 90
0
sign(x) Hàm dấu atan(x) Hàm arctg 180
0
223
Các hàm toán Các hàm lƣợng giác
real(x) Phần thực của số phức Sinc(x) Hàm sin
imag(x) Phần ảo của số phức (x) Hàm sin
phase(x) Góc pha của số phức
rem(x) số dƣ của phép chia x/y
round(x) làm tròn số
ceil(x) làm tròn số lên
floor(x) làm tròn số xuống
sum (v) Tính tổng các phần tử véctơ
prod(v) Tính tích các phần tử véctơ
min(v) Phần tử véctơ bé nhất
max(v) Phần tử véctơ lớn nhất
mean(v) giá trị trung bình cộng
Phần 2. MA TRẬN VÀ CÁC PHÉP TOÁN VỀ MA TRẬN TRONG MATLAB
2.1 Khái niệm
Các dữ liệu đƣa vào xử lý trong MATLAB đều 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 Anm, phần tử aij của ma
trận Anm
là phần tử nằm ở hàng thứ i, cột j. Ta chú ý một số ma trận sau:
- 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.
- Ma trận cột ( n 1) số liệu đƣợc bố trí trên 1 cột.
2.1.1 Qui định để định nghĩa một ma trận trong Matlab
Tên ma trận (có thể đến 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, các phần tử của ma trận đƣợc đóng bằng dấu ngoặc vuông ([]), các
phần tử trong trong cùng một hàng đƣợc cách nhau bởi ký tự trống hoặc dấu phẩy (, ),
các phần tử thuộc các hàng khác nhau cách nhau bởi dấu (;).
2.1.2 Các phương pháp nhập một ma trận
+ Liệt kê trực tiếp, ví dụ lệnh:
>> A =[1 2 3; 4 5 6 ; 7 8 9]
Kết quả cho ra một ma trận có 3 hàng, 3 cột
+ Nhập thông qua lệnh input, ví dụ lệnh:
>> input('Nhap gia tri cho ma tran A = ')
Nhap gia tri cho ma tran A = [1 23;4 5 6;7 8 9]
224
ans =
1 2 3
4 5 6
7 8 9
Chú ý:
+ Kết thúc một câu lệnh ta 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 nhƣng 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 sau khi câu lệnh đƣợc thực hiện, kết quả đều đƣợc lƣu vào bộ nhớ và có
thể sử dụng cho các câu lệnh tiếp theo.
+ Các phần tử trong ma trận có thể là các số phức, ví dụ lệnh:
>> B = [1+2i 2+2i;3-i 1+2i] sẽ cho ma trận
B =
1.0000 + 2.0000i 2.0000 + 2.0000i
3.0000 - 1.0000i 1.0000 + 2.0000i
+ Các phần tử trong ma trận có thể là các ký tự, để làm đƣợc điều này trƣớc tiên
ta phải khai báo các phần tử bằng lệnh syms, ví dụ:
>> syms sinx cosx a
>> C = [ sinx cosx; a cosx] cho ta ma trận:
C =
[ sinx, cosx]
[ a, cosx]
2.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 ấn , ví dụ
>> A sẽ cho ta ma trận A
A =
1 2 3
4 5 6
7 8 9
2.2. Xử lý trong ma trận
2.2.1. Tạo ma trận véctơ : việc tạo ma trận Vectơ được thực hiện theo công thức sau:
Biến = giới hạn đầu : bƣớc chạy : gới hạn cuối
Trong đó: 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.
Ví dụ 1: Tạo 1 vectơ t chạy từ 0 đến 0.6 với bƣớc chạy tiến là 0.1
225
>> t=0: 0.1:0.6
t =
0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000
Ví dụ 2: 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 đều 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, ví dụ:
>> C = 1:5 ta đƣợc kết quả:
C =
1 2 3 4 5
2.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 gọi chúng thông qua chỉ số của từng phần tử với các nội dung:
Tên của ma trận (Chỉ số hàng, chỉ số cột), ví dụ:
>> A = [1:3; 4:6; 7:9] (Tạo ma trận A có kích thƣớc 3X3)
A =
1 2 3
4 5 6
7 8 9
>> B = A(1,1) (Xuất phần tử ở hàng 1, cột 1)
B =
1
Chú ý: Trong trƣờng hợp ta muốn gọi tất cả các phần tử trong một hàng hoặc tất
cả các phần tử trong một cột ta dùng toán tử hai chấm (:), ví dụ:
>> C = A(2,:) (xuất các phần tử thuộc dòng 2 của ma trận A)
C =
4 5 6
>> D = A(:,2) (xuất các phần tử thuộc cột 2 của ma trận A)
D =
2
5
8
2.2.3. Gọi ma trận con từ một ma trận lớn.
226
Ví dụ:
>> A = [1:3; 4:6; 7:9] (tạo ma trận A3X3)
A =
1 2 3
4 5 6
7 8 9
>> B = A ( 2:3,1:2 ) (gọi phần tử 2, 3 của hàng 2 và phần tử 1, 2 của hàng 3)
B =
4 5
7 8
2.3 Các ma trận đặc biệt
2.3.1 Ma trận không (zeros): Tất cả các phần tử trong ma trận đều bằng 0.
>> C = zeros (2,3) (tạo ma trận zêro có 2 hàng, 3 cột)
C =
0 0 0
0 0 0
2.3.2 Ma trận đơn vị (ones): Tất cả các phần tử trong ma trận đều bằng 1
>> C = ones (2,3) (tạo ma trận đơn vị có 2 hàng, 3 cột)
C =
1 1 1
1 1 1
2.3.3 Ma trận ma phương Magic: Ma trận này có tổng giá trị các phần tử trên hàng =
tổng 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, ví dụ:
>> A = Magic (3)
A =
8 1 6
3 5 7
4 9 2
2.3.4 Ma trận eye: có tất cả các phần tử trên đƣờng chéo chính bằng 1, các phần tử
khác có giá trị 0, ví dụ:
>> B = eye (3)
B =
1 0 0
0 1 0
227
0 0 1
2.4 Các phép toán vector
Phép toán Công thức Matlab
Cộng, trừ A+B, A-B A+B, A-B
Nhân mảng A.B = C A.*B
Chia trái mảng B\A B.\A
Chia phải mảng A/B A./B
Luỹ thừa mảng A
B
A.^B
2.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
>> 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
2.4.2 Các phần tử là số phức
228
>>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
2.4.3 Các phần tử là các tham số:
>> syms a b c d
>>A=[a b; c d]
A =
[ a, b]
[ c, d]
>> B = A
B =
[ a, b]
[ b, c]
>> C=A.*B
C =
[ a^2, b^2]
[ c^2, d^2]
2.5 Các phép toán về ma trận
2.5.1 Phép chuyển vị: Chuyển đổi hàng thành cột và ngƣợc lại. Thực hiện phép
chuyển vị bằng toán tử dấu nháy đơn ( ' ), ví dụ:
>> A = [1:3; 4:6; 7:9]
A =
1 2 3
4 5 6
7 8 9
>> B = A
‟
(Ma trận chuyển vị của ma trận A)
229
B =
1 4 7
2 5 8
3 6 9
2.5.2 Tổng, hiệu 2 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 thƣớc, các phần tử tƣơng ứng của 2 ma trận đƣợc cộng (hoặc trừ) với
nhau theo công thức: Cij = Aij Bij, ví dụ:
>> A = [1:3; 4:6; 7:9]
A =
1 2 3
4 5 6
7 8 9
>> B = A
‟
(Ma trận B là chuyển vị của ma trận A)
B =
1 4 7
2 5 8
3 6 9
>> C = A + B (Tổng 2 ma trận)
C =
2 6 10
6 10 14
10 14 18
2.5.3 phép nghịch đảo ma trận: đƣợc thực hiện bởi hàm inv, ví dụ:
>> A = [1 2;4 5]
A =
1 2
4 5
>> B=inv(A)
B =
-1.6667 0.6667
1.3333 -0.3333
>> C = A*B
C =
1.0000 0
0.0000 1.0000
230
2.5.4 Phép nhân: C = A*B. Để thực hiện đƣợc phép nhân hai ma 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, ví dụ:
>> A = [1 2 1; 1 0 1]
A =
1 2 1
1 0 1
>> B = [1 0 2; 2 1 1; 1 1 1]
B =
1 0 2
2 1 1
1 1 1
>> C = A * B
C =
6 3 5
2 1 3
2.5.5 Phép chia: Phép chia ma trận thực chất là phép nhân với ma trận nghịch đảo, ví
dụ:
>> A = [1 2 1; 1 0 1]
A =
1 2 1
1 0 1
>> B = [1 0 2; 2 1 1; 1 1 1]
B =
1 0 2
2 1 1
1 1 1
>> 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
231
2.5.6 Phép quay ma trận: Thực hiện quay ma trận B đi 1 góc 90 độ theo ngƣợc chiều
kim đồng hồ, ví dụ:
>> 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.7 Phép đảo ma trận: Đảo các phần tử của ma trận từ trái sang phải, ví dụ:
>> C = fliplr(B)
C =
9 6 3
8 5 2
7 4 1
Phần 3. MỘT SỐ ỨNG DỤNG CƠ BẢN CỦA MATLAB
3.1 Nhân 2 đa thức: Để nhân 2 đa thức, ta dùng lệnh conv, ví dụ cho 2 đa thức:
y1 = anx
n
+ an-1x
n-1
+ ... + a0
y2 = bnx
n
+ bn-1x
n-1
+ ...+ b0
Để nhân 2 đa thức trên, ta thực hiện theo các bƣớc sau:
+ Lập 2 ma trận hàng với tên là y1và y2 có các phần tử là các hệ số từ an đến a0 và
bn đến b0 giảm dần theo bậc của phƣơng trình, hệ số nào không có thì ghi 0;
+ Nhân 2 đa thức bằng lệnh conv: y3 = conv(y1y2), ví dụ cho 2 đa thức: y1 = x
2
+
3x + 5; y2 = 3x
2
+ 4x ta thao tác theo các lệnh sau:
>> y1 = [1 3 5];
>> y2 = [3 4 0];
>> y3 = conv(y1,y2)
y3 = 3 13 27 20 0
Vậy, y3 = 3x
4
+ 13x
3
+ 27x
2
+ 20x
3.2 Giải phƣơng trình bậc cao: (Lệnh Roots)
anx
n
+ an-1x
n-1
+...+a0 = 0
232
+ Lập ma trận hàng với tên là y có các phần tử là các hệ số từ an đến a0 giảm dần
theo bậc của phƣơng trình, hệ số nào không có thì ghi 0;
+ Dùng lệnh Roots để tìm nghiệm.
Ví dụ: giải phƣơng trình sau: x5 - 2x4 + 5x2 - 1= 0, ta thao tác theo các lệnh
sau:
>> y = [ 1 -2 0 5 0 -1]
y =
1 -2 0 5 0 -1
>> KQ = roots(y)
KQ =
1.5862 + 1.1870i
1.5862 - 1.1870i
-1.1606
-0.4744
0.4627
3.3 Biết nghiệm tìm lại phƣơng trình: ( lệnh poly )
Ví dụ: Tìm phƣơng trình biết các nghiệm của nó là 1 và -5, ta thao tác theo các
lệnh sau:
>>A = [1 – 5 ];
>> poly(A)
ans =
1 4 -5
3.4 Chuyển từ phƣơng trình hệ số sang phƣơng trình có chứa cả tham số:
(poly2sym)
Ví dụ: chuyển phƣơng trình có các hệ số: a4 = 1; a3 = 3; a2 = 0; a1 = -5 sang
phƣơng trình chứa tham số:
>> poly2sym([1 3 0 -5])
ans =
x^3 + 3*x - 5
3.5 Giải hệ phƣơng trình đại số tuyến tính:
Ví dụ: giải hệ phƣơng trình tuyến tính sau:
1 2 3
1 2 3
1 2 3
2x 3x 3x 8
3x 6x 4x 19
x 2x x 2
Thực chất hệ phƣơng trình trên có thể đƣa về phép toán ma trận sau:
233
% Giai he phuong trinh dai so tuyen tinh
% Nhap ma tran A
A = [2 3 4;3 6 -4;1 2 3];
% Nhap ma tran B
B = [9;19;2];
% lay ma tran A nghich dao
C = inv(A);
% Nghiem
X = C*B
1
2
3
2 3 3 x 9
3 6 4 x 19
1 2 3 x 2
A.X = B
Nhƣ vậy việc giải hệ PT tuyến tính thực chất là thực hiện phép toán về ma trận, ta
có: 1
1
X .B A .B
A
Để giải hệ phƣơng trình này ta cần thực hiện qua các bƣớc sau:
- Lập ma trận A, B;
- Lấy ma trận nghịch đảo A
-1
- Nghiệm 1X A .B
Chƣơng trình giải hệ phƣơng trình đại số đƣợc viết:
Lƣu chƣơng trình và cho chạy, ta thu đƣợc các nghiệm:
X =
11.0000
-3.0000
-1.0000
3.6 Giải hệ phƣơng trình đại số phi tuyến:( Lệnh solve)
Để giải hệ phƣơng trình đại số phi tuyến, ta dùng lệnh solve với cú pháp:
[biến 1, biến 2, ] = solve('phƣơng trình 1', 'phƣơng trình 2')
Ví dụ 1: Giải hệ phƣơng trình
2
2
x xy y 3
x 4x 3 0
Gõ lệnh: >> [x,y] = solve('x^2 + x*y + y = 3','x^2 - 4*x + 3 = 0') ta thu đƣợc
các cặp nghiệm
x =
[ 1]
[ 3]
234
y =
[ 1]
[ -3/2]
Ví dụ 2: Giải hệ phƣơng trình:
2
3
sin x y log z 7
3x 2y z 4
x y x 2
>> [x,y,z]=solve('sin(x)+y^2+log(z)=7','3*x+2^y+z^3=4','x+y+z=2')
Các nghiệm là:
x = -2.3495756224572032187410536400368
y = 2.6835269194785219427270239079010
z = 1.666048702978681276014029732135
3.7 Giải hệ phƣơng trình tham số: Để giải hệ phƣơng trình tham số ta dùng lệnh
solve với cú pháp tƣơng tự nhƣ trên, ví dụ cần giải hệ:
2 2au v 0
u v 1
Thực hiện lệnh: >> [u,v] = solve('a*u^2 + v^2 = 0','u - v = 1') ta đƣợc
u =
1/2/(a+1)*(-2*a+2*(-a)^(1/2))+1
1/2/(a+1)*(-2*a-2*(-a)^(1/2))+1
v =
1/2/(a+1)*
(-2*a+2*(-a)^(1/2))
1/2/(a+1)*(-2*a-2*(-a)^(1/2)
3.8 Giải hệ phƣơng trình vi phân thƣờng: ( lệnh dsolve)
- Đối với phƣơng trình vi phân không có điều kiện đầu ta sử dụng cú pháp: >> y =
dsolve('phƣơng trình')
Ví dụ: Giải phƣơng trình vi phân: x' + ax + 1 = 0, ta thực hiện lệnh:
>> x = dsolve('Dx+a*x+1=0')
x = -1/a+exp(-a*t)*C1
- Đối với phƣơng trình vi phân có điều kiện đầu ta sử dụng cú pháp: >> y =
dsolve('phƣơng trình','điều kiện đầu')
Ví dụ: Giải phƣơng trình vi phân: x' + ax + 1 = 0, với x(0) = 0, ta thực hiện
lệnh:
>> x = dsolve('Dx+a*x+1=0','x(0)=0')
235
x = -1/a+exp(-a*t)/a
- Đối với hệ phƣơng trình vi phân, cú pháp lệnh là:
>> [biến 1, biến 2,] = dsolve('phƣơng trình 1', 'phƣơng trình 2', )
Ví dụ: Giải hệ phƣơng trình:
dx
y
dt
dy
x
dt
>>[x,y] = dsolve('Dx = y', 'Dy = -x')
x = C1*sin(t) + C2*cos(t)
y = C1*cos(t) - C2*sin(t)
3.9 Giải hệ phƣơng trình vi phần theo hàm có sẵn của Matlab:
Ví dụ: Cho hệ phƣờng trình vi phân:
1 2 3
2 1 3
3 1 2
y' y y
y ' y y
y ' 0,5y y
với các điều kiện đầu: y1(0) = 0; y1(0) = 1; y3(0) = 1
Chƣơng trình mô tả phƣơng trình vi phân dạng M-file:
function dy = rigid(t,y)
dy = zeros(3,1);
dy(1) = y(2) * y(3);
dy(2) = -y(1) * y(3);
dy(3) = -0.51 * y(1) * y(2);
Thời gian giải phƣơng trình vi phân Tspan =[0 12], vector điều kiện đầu [0 1 1]
>>options = odeset('RelTol',1e-4,'AbsTol',[1e-4 1e-4 1e-5]);
>>[t,y] = ode45('rigid',[0 12],[0 1 1],options);
>>plot(t,y(:,1),'-',t,y(:,2),'-.',t,y(:,3),'.')
236
Phần 4: MỘT SỐ PHÉP BIẾN ĐỔI TRONG MATLAB
4.1 Tính toán (Calculus):
4.1.1. Tính đạo hàm (diff):
diff(S): Đạo hàm biểu thức symbolic S với biến của đạo hàm tự do.
diff(S,‟v‟) hay diff(S,sym(„v‟)): Đạo hàm biểu thức symbolic S với biến lấy
đạo hàm là biến symbolic v.
diff(S,n) : Đạo hàm cấp n biểu thức S, n là số nguyên dƣơng.
Ví dụ 1:
>>syms x t
>> y = sin(x^2);
>>z = diff(y)
z = 2*cos(x^2)*x
>>y = diff(t^6,6) % đạo hàm bậc 6 của hàm t
6
.
y = 720
Ví dụ 2:
>>syms u v
>>y = u^2*v - u*v^3; % cho biểu thức với 2 biến u và v
>> y2u = diff(y,u,2) % đạo hàm cấp 2 theo u
>> y3u = diff(y,v,3) % đạo hàm cấp 2 theo v
y2u = 2*v
y3u = -6*u
4.1.2.Tính tích phân( int):
int(S): Tích phân không xác định của biển thức symbolic S với biến tự do mặc
định. Muốn biết biến mặc định ta dùng lệnh fìndsym.
int(S,v): Tích phân không xác định của biểu thức symbolic S với biến tích phân
v.
int(S,a,b): Tích phân không xác định của biểu thức symbolic S với biến tự do
và cận lấy tích phân từ [a,b].
int(S,v,a,b): Tích phân không xác định của biểu thức symbolic S với biến tích
phân v và cận lấy tích phân từ [a,b].
Vidụ 1:
>>syms x t z alpha
>>int(-2*x/(1+x^2)^2)
ans = 1/(1+x^2)
>>int(x/(1+z^2),z)
ans = x*atan(z)
237
>>int(x*log(1+x),0,1)
ans = 1/4
>>int(-2*x/(1+x^2)^2)
ans = 1/(1+x^2)
>> int([exp(t),exp(alpha*t)])
ans = [ exp(t), 1/alpha*exp(alpha*t)]
Vídụ 2: Tính tích phân I =
dxe sx
2)(
>>Syms x s real
>>f = exp(-(s*x)^2);
>>I = int(f,x,-inf,inf)% inf là vô cùng lớn
I =
Signum(s)/s*pi^(1/2)
Hàm signum chính là hàm sign (hàm dấu), nghĩa là sign(s) cho ta:
sign(s) = 1 khi s>0; sign(s) = 0 khi s =0; sign(s) = -1 khi s<0;
4.1.3. Tính giới hạn(limit):
limit(F, x, a) : Tìm giới hạn của biểu thức F khi xa.
limit(F, a) : Tìm giới hạn của biểu thức F với biến độc lập.
limit(F) : Tìm giới hạn của biểu thức F khi a = 0.
limit(F, x, a, „right‟) hoặc Lim it(F, x, a, „left‟) : Tìm giới hạn phải hoặc bên
trái
Ví dụ:
>>syms x a t h
>>limit(sin(x)/x)
ans = 1
>>limit(1/x,x,0,‟right‟)
ans = inf
>>limit(1/x,x,0,‟left‟)
ans = -inf
>>limit((sin(x+h)-sin(x))/h,h,0)
ans = cos(x)
>>v = [(1+a/x)^x,exp(-x)];
>>limit(v,x,inf,‟left‟)
ans = [exp(a),0]
4.1.4. Tính tổng của dãy số là các biến symbolic(symsum):
238
symsum(S): Tổng của biểu thức symbolic theo biến symbolic k , k đƣợc xác
định bằng lệnh findsym từ 0k -1.
symsum(S,v): Tổng của biểu thức symbolic S theo biến symbolic v,v đƣợc
xác định từ 0k - 1.
symsum(S,a,b), symsum(S,v,a,b): Tổng của biểu thức symbolic S theo
symbolic v, v đƣợc xác định từ v = a đến v = b.
Ví dụ 1:
>>syms k n x
>>symsum(k^2)
ans = 1/3*k^3-1/2*k^2+1/6*k
>>symsum(k)
ans = 1/2*k^2-1/2*k
>>symsum(sin(k*pi)/k,0,n)
ans = -1/2*sin(k*(n+1))/k+1/2*sin(k)/k/(cos(k)-1)*cos(k*(n+1))-
1/2*sin(k)/k/(cos(k)-1)
>>symsum(k^2,0,10)
ans = 385
>>symsum(x^k/sym(„k!‟), k, 0,inf)
ans = exp(x)
Vi dụ: Cho tổng của 2 dãy
S1 = 1 +
22 3
1
2
1
.
S2 = 1 + x + x
2
+..
>>syms x k
>>s1 = symsum(1/k^2,1,inf) %inf là vô cùng.
s1 = 1/6*pi^2
>>s2 = symsum(x^k,k,0,inf)
Tìm hàm ngƣợc (finverse):
finverse(f): Tìm hàm ngƣợc của f. f là hàm symbolic với một biến x
finverse(f,u): Tìm hàm ngƣợc của f. f là hàm symbolic với một biến u.
Ví dụ 2:
>>syms u v x
>>finverse(1/tan(x))
ans = atan(1/x)
>>finverse(exp(u-2*v),u)
ans = 2*v+log(u)
239
s2 = -1/(x-1)
4.2. Khai triển
4.2.1. Khai triển taylor(taylor):
taylor(f)
taylor(f,n,v): Cho ta xấp xỉ đa thức theo Maclaurin bậc (n-1) của biểu thức,
hàm khai triển symbolic f và v là biến độc lập trong biểu thức. v có thể là một xâu
(string) hay là biến symbolic.
taylor(f,n,v,a): Khai triển Taylor của biểu thức hay hàm symbolic f quanh
điểm a. Đối số có thể là giá trị số, một hàm symbolic hay một xâuNếu không cho
gía trị n thì mặc nhiên trong Matlab n = 6.
Vi dụ:
Khai triển Taylor của hàm f = e
xsin(x)
quanh điểm x0 = 2 (Nếu x0 = 0 ta có khai
triển Maclaurin).
>>syms x
>> f = exp(x*sin(x));
>>t = taylor(f,4,2) % khai triển 4 số hạng đầu tiên khác o và xung quanh điểm x0 = 2
f = exp(2*sin(2)) + exp(2*sin(2))*(2*cos(2) + sin(2))*(x-2) + exp(2*sin(2)) *(-
sin(2) + cos(2) + 2*cos(2)^2 + 2*cos(2)*sin(2) + 1/2*sin(2)^2)*(x-2)^2 +
exp(2*sin(2)) * (-1/3*cos(2)-1/2*sin(2)-cos(2)*sin(2) + 2*cos(2)^2-sin(2)^2 +
4/3*cos(2)^3 + 2*cos(2)^2*sin(2) +cos(2)*sin(2)^2 + 1/6*sin(2)^3)*(x-2)^3
4.2.2. Các hàm làm đơn giản hoá các biểu thức:
a) Gom số hạng, biến(collect):
collect(S): S là đa thức, gom các số hạng chứa biến x
collect(S,v): S là đa thức, gom các số hạng chứa biến v
Ví dụ:
>>syms x y;
>>R1 = collect((exp(x)+x)*(x+2))
>>R2 = collect((x+y)*(x^2+y^2+1), y)
>>R3 = collect([(x+1)*(y+1),x+y])
R1 = x^2+(exp(x)+2)*x+2*exp(x)
R2 = y^3+x*y^2+(x^2+1)*y+x*(x^2+1)
R3 = [(y+1)*x+y+1, x+y]
b) Khai triển biểu thức(expand):
Ví dụ:
>>syms x y a b c t
>>expand((x-2)*(x-4))
240
ans = x^2-6*x+8
>>expand(cos(x+y))
ans = cos(x)*cos(y)-sin(x)*sin(y)
>>expand(exp((a+b)^2))
ans = exp(a^2)*exp(a*b)^2*exp(b^2)
>>expand(log(a*b/sqrt(c)))
ans = log(a)+log(b)-1/2*log(c)
>>expand([sin(2*t), cos(2*t)])
ans = [2*sin(t)*cos(t), 2*cos(t)^2-1]
c) Phân tích biểu thức thành thừa số (factor):
factor(X): Phân tích biểu thức mảng symbolic X thành thừa số.
Ví dụ:
>>syms x y a b
>>factor(x^3-y^3)
(x-y)*(x^2+x*y+y^2)
>>factor([a^2-b^2, a^3+b^3])
[(a-b)*(a+b), (a+b)*(a^2-a*b+b^2)]
>>factor(sym('12345678901234567890'))
(2)*(3)^2*(5)*(101)*(3803)*(3607)*(27961)*(3541)
Phân tích đa thức ra dạng thừa số(horner):
R = horner(p):
Ví dụ:
>>syms x y
>>horner(x^3-6*x^2+11*x-6)
ans = -6+(11+(-6+x)*x)*x
>>horner([x^2+x;y^3-2*y])
ans = [ (1+x)*x]
[(-2+y^2)*y]
Lấy tử số và mẫu số(numden):
Ví dụ:
>>syms x y a b
>>A= (4-x)/5;
>>[n,d] = numden(A)
n = 4-x
d = 5
>>[n,d] = numden(x/y + y/x)
241
n = x^2+y^2
d = y*x
>>A = [a, 1/b]
>>[n,d] = numden(A)
n = [a, 1]
d = [1, b]
Tìm dạng tối giản của đa thức( simple, simplify):
R = simplify(S)
R = simple(S)
[r, how] = simple(S)
Ví dụ:
>>syms x y a b c
>>simplify(sin(x)^2 + cos(x)^2)
ans = 1
>>simplify(exp(c*log(sqrt(a+b))))
ans = (a+b)^(1/2*c)
>>S = [(x^2+5*x+6)/(x+2),sqrt(16)];
>>R = simplify(S)
R = [x+3,4]
4.3. Các phép biến đổi
4.3.1. Biến đổi Furiê
a) Biến đổi Furiê thuận
F = fourier(f): Biến đổi fourier của hàm vô hƣớng f với biến độc lập mặc nhiên
f và cho ta hàm mặc nhiên qua phép biến đổi nàylà w.
F = fourier(f,v): F là hàm của biến v thay thế biến mặc nhiên w.
F = fourier(f,u,v): f là hàm của u và F là hàm của v chúng thay thế các biến
mặc nhiên x và w.
Ví dụ:
>>syms x w u
>>f = exp(-x^2)
>>fourier(f)
ans = pi^(1/2)*exp(-1/4*w^2)
>>g = exp(-abs(w))
>>fourier(g)
ans = 2/(1+t^2)
>>f= x*exp(-abs(x))
242
>>fourier(f,u)
ans = -4*i/(1+u^2)^2*u
>>syms x v u real
>>f= exp(-x^2*abs(v))*sin(v)/v
>>fourier(f,v,u)
ans = -atan((u-1)/x^2)+atan((u+1)/x^2)
b) Biến đổi Furiê ngƣợc
f = ifourier(F): Biến đổi ngƣợc của hàm mục tiêu vô hƣớng F với biến độc lập
mặc nhiên w. phép biến đổi ngƣợc này là hàm của x.
f = ifourier(F,u): f là hàm củabiến u thay thế biến mặc nhiên x.
f = ifourier(F,v,u): F là hàm của v và f là hàm của u chúng thay thế các biến
mặc nhiên w và x tƣơng ứng.
Ví dụ:
>>syms a w x t v real
>>f = exp(-w^2/(4*a^2))
>>F = ifourier(f);
>>F = simple(F)
F = a*exp(-x^2*a^2)/pi^(1/2)
>>g=exp(-abs(x))
>>ifourier(g)
ans = 1/(1+t^2)/pi
>>f=2*exp(-abs(w))-1
>>simplify(ifourier(f,t))
ans = (2-pi*Dirac(t)-pi*Dirac(t)*t^2)/(pi+pi*t^2)
>>f=exp(-w^2*abs(v))*sin(v)/v;
>>ifourier(f,v,t)
ans = 1/2*(atan((t+1)/w^2) - atan((-1+t)/w^2))/pi
4..3.2. Biến đổi laplace
a) Biến đổi Laplace thuận
L = laplace(F): Biến đổi Laplace của hàm F với biến mặc nhiên độc lập t. nó
cho ta một hàm của s
L = laplace(F,t): L là một hàm của t thay thế biến mặc nhiên s.
L = laplace(F,w,z): L là hàm của z và F là hàm của w, nó thay thế các biến
symbolic mặc nhiên s và t tƣơng ứng.
243
Ví dụ:
>>syms t v x a;
>> f=exp(-50*t);
>> laplace(f)
ans = 1/(s+50)
>> g = 1/sqrt(x)
>> laplace(g)
ans = (pi/s)^(1/2)>>f=exp(-a*t)
>>laplace(f,x)
ans= 1/(x + 50)
>>f = 1- cos(t*v);
>>laplace(f,x)
ans = 1/x-x/(x^2+v^2)
b) Biến đổi Laplace ngược
F = ilaplace(L): Biến đổi Laplace ngƣợc của hàm symbolic L với biến mặc
nhiên độc lập s. Nó cho ta một hàm của t.
F = ilaplace(L,y): F là hàm của y thay thế biến mặc nhiên t.
F = ilaplace(L,y,x): F là hàm của x và L là hàm của y, nó thay thế các biến
symbolic mặc nhiên t và s.
Ví dụ:
>>syms s a t
>>f=1/s^2
>>ilaplace(f)
ans = t
>>g=1/(t-a)^2,
>>ilaplace(g)
ans = x*exp(a*x)
>>syms u a x,
>>f=1/(u^2-a^2),
>>ilaplace(f,x)
ans = 1/(-a^2)^(1/2)*sin((-a^2)^(1/2)*x)
>>syms s v x,
>>f=s^3*v/(s^2+v^2),
>>ilaplace(f,v,x)
ans = s^3*cos(s*x)
4.4. Vẽ đƣờng cong trong Matlab
244
4.4.1.Vẽ đường
a) Đường trong không gia 2 chiều (ezplot)
ezplot(f): Vẽ hàm f = f(x) với miền mặc nhiên -2 < x < 2 .
ezplot(f,[min,max]) : Vẽ hàm f = f(x) trong miền giá trị [min,max] của biến.
ezplot(x,y): Vẽ đƣờng cong ham số x = x(t); y = y(t) với biến mặc định 0<t<
2 .
Ví dụ:
>>syms x
>>ezplot(x^3)
>>grid
b) Vẽ đƣờng trong không gia 3 chiều (ezplot3)
ezplot3(x,y,z): Vẽ các hàm x = x(t), y = y(t), và z = z(t) với miền mặc định là:
0<t<2 .
ezplot3(x,y,z,[tmin,tmax]): Vẽ các hàm x = x(t), y = y(t), và z = z(t)
trong khoảng giá trị tmin < t < tmax.
Ví dụ:
>>syms t;
>>ezplot3(sin(t), cos(t), t,[0,6*pi])
-1
0
1
-1
0
1
0
10
20
x
x = sin(t), y = cos(t), z = t
y
z
245
B. PHÂN TÍCH MẠCH ĐIỆN TỬ CHỨA NGUỒN DÕNG PHỤ THUỘC BẰNG
PHƢƠNG PHÁP ĐIỆN THẾ NÖT
1.1 Nguồn phụ thuộc
Nguồn phụ thuộc có giá trị phụ thuộc vào hiệu thế hay dòng điện ở một nhánh
khác trong mạch. Những nguồn này đặc biệt quan trọng trong việc xây ựng mạch
tƣơng đƣơng cho các linh kiện điện tử.
Có 4 loại nguồn phụ thuộc:
- Nguồn hiệu thế phụ thuộc hiệu thế (Voltage-Controlled Voltage Source, hình
1.a)
- Nguồn hiệu thế phụ thuộc dòng điện (Current-Controlled Voltage Source,
hình 1.b)
- Nguồn dòng điện phụ thuộc hiệu thế (Voltage-Controlled Current Source,
hình 1.c)
- Nguồn dòng điện phụ thuộc dòng điện (Current-Controlled Current Source, hình
1.d)
Hình 1: Nguồn phụ thuộc
1.2 Phương trình điện thế nút của mạch điện chứa nguồn dòng phụ thuộc
Khi phân tích mạch có chứa nguồn phụ thuộc, thuận tiện hơn cả là dùng phƣơng
pháp điện thế nút. Khi đó nếu trong mạch chứa nguồn áp phụ thuộc ta phải thay thế
tƣơng đƣơng bằng nguồn dòng phụ thuộc.
Xét trong mạch có chứa một nguồn phụ thuộc, giả sử nguồn phụ thuộc đƣợc mắc
giữa nút l và nút m, và nó đƣợc điều khiển bởi điện áp giữa hai nút p và q với tham số
điều khiển a. Vậy trong hệ phƣơng trình điện thế nút đối với nút l và nút m vế trái phải
bổ xung thêm thành phần nguồn phụ thuộc, còn phƣơng trình đối với các nút khác thì
không đổi. Tại nút l nguồn dòng phụ thuộc hƣớng tới nút nên mang dấu cộng, tại nút
a b
c d
246
m nguồn phụ thuộc hƣớng ra khỏi nút nên mang dầu trừ. Do đó phƣơng trình đối với
nút m và l sẽ có dạng:
N
l p q ls s
s 1
N
m p q ms s
s 1
J a Y
J a Y
Hình 2: Nguồn phụ thuộc mắc vào hai nút l,m
Khai triển cụ thể hệ phƣơng trình điện thế nút của toàn mạch có dạng:
1 11 1 12 2 1p p 1q q 1N N
2 21 1 22 2 2p p 2q q 2N N
J Y Y ..... Y Y ........ Y
J Y Y ..... Y Y ........ Y
..........................................................................................................
l p q l1 1 l2 2 lp p lq q lN N
m p q m1 1 m2 2 mp p mq q mN N
....
J a Y Y ..... Y Y ........ Y
J a Y Y ..... Y Y ........ Y
........................................................................................
N N1 1 N2 2 Np p Nq q NN N
......................
J Y Y ..... Y Y ........ Y
Chuyển các số hạng chứa ẩn sang vế phải nhóm các thừa số chung ta nhận đƣợc:
1 11 1 12 2 1p p 1q q 1N N
2 21 1 22 2 2p p 2q q 2N N
J Y Y ..... Y Y ........ Y
J Y Y ..... Y Y ........ Y
..........................................................................................................
l l1 1 l2 2 lp p lq q lN N
m m1 1 m2 2 mp p mq q mN N
....
J Y Y ..... (Y a) (Y a) ........ Y
J Y Y ..... (Y a) (Y a) ........ Y
......................................................................................
N N1 1 N2 2 Np p Nq q NN N
........................
J Y Y ..... Y Y ........ Y
Nhƣ vậy ma trận tổng dẫn Y có kết cấu nhƣ sau:
p
q
l
m
Upq=p-q a(p-q)
247
11 1p 1q 1N
l1 lp lq lN
m1 mp mq mN
N1 Np Nq NN
Y .... Y Y .... Y
..... .... .... .... .... ....
Y .... Y a Y a .... Y
Y
Y .... Y a Y a .... Y
.... .... .... .... .... ....
Y .... Y Y .... Y
Nhƣ vậy tổng dẫn tại vị trí giao nhau của dòng l, m và dòng p, q bổ xung thêm
tham số điều khiển nguồn phụ thuộc, nguồn dòng phụ thuộc hƣớng tới nút l(m) mang
dấu cộng, nguồn phụ thuộc hƣớng ra khỏi nút n(l) mang dầu trừ.
Dễ dàng thấy kết luận trên hoàn toàn đúng cho mạch chứa nhiều nguồn phụ thuộc. đó
rút ra quy tức thành lập ma trận tổng dẫn của mạch chứa nguồn phụ thuộc:
- Thành lập ma trận của mạch chỉ chứa phần tử tƣơng hỗ (không tính đến các
nguồn phụ thuộc).
- Bổ xung thêm tham số điều khiển nguồn phụ thuộc vào ma trận theo kết luận trên.
Sau khi thành lập đƣợc ma trận tổng dẫn các bƣớc tiếp theo thực hiện nhƣ bài toán
không chứa nguồn phụ thuộc.
Ví dụ 1: Thành lập ma trận tổng dẫn Y của mạch khuếch đại dùng transistor có sơ
đồ tƣơng đƣơng tín hiệu nhƣ hình 3
a) b)
Hình 3 Sơ đồ có chứa phần tử tích cực T (a) và sơ đồ có chứa nguồn phụ thuộc (b)
Thay thế transistor bằng sơ đồ vật lý tƣơng đƣơng với giải thiết điện trở rb của
transistor rất nhỏ, ta nhận đƣợc sơ đồ hình b. Chọn nút 0 có điện thế bằng không,
thành lập ma trận tổng dẫn Y1 khi chƣa tính đễn nguồn phụ thuộc.
1 be bc bc
1 bc 2 be ce
3
g Y Y Y
Y Y g Y Y j C j C
j C g j C
ở đây k
k
1
g
R
248
Nguồn dòng phụ thuộc mắc giữa nút 2 và nút 0, điện áp điều khiển mắc giữa nút 1
và nút 0n với tham số điều khiển g. Vậy tham số điều khiển đƣợc bổ xung vào ô giao
nhau của 1 và 2. Ma trận tổng dẫn Y của mạch là:
1 be bc bc
bc 2 be ce
3
g Y Y Y
Y g Y g Y Y j C j C
j C g j C
249
TÀI LIỆU THAM KHẢO
[1]. Phạm Thị Cƣ, Lê Minh Cƣờng, Trƣơng Trọng Tuấn Mỹ; Mạch Điện I; NXB -
Đại học Quốc Gia Tp. Hồ Chí Minh, 2002.
[2]. Đặng Văn Đào, Lê Văn Doanh; Cơ sở kỹ thuật điện
[3]. Nguyễn Bình Thành, Nguyễn Trần Quân, Phạm Khắc Chƣơng, Nguyễn Thế
Thắng, Lê Văn Bảng; Cơ Sở Lý Thuyết Mạch; NXB – Giáo dục, 1992.
[4]. Nguyễn Quân; Lý Thuyết Mạch; Trƣờng Đại Học Bách Khoa Thành Phố Hồ
Chí Minh, 1994.
[5]. Phƣơng Xuân Nhàn, Hồ Anh Túy; Lý Thuyết Mạch; NXB – Khoa học Kỹ
thuật, 1993.
[6] Đặng Văn Đào & Lê Văn Doanh; Kỹ thuật điện; Nhà xuất bản Khoa học &
kỹ thuật; 1997.
Các file đính kèm theo tài liệu này:
- tap_bai_giang_mach_dien_1.pdf