18
Khoa Công Nghệ Điện Giáo trình tin học ứng dụng CHƯƠNG 2 : CÁC PHÉP TOÁN CƠ BẢN Các phép toán cơ bản của Matlab được thực hiện trực tiếp trên cửa sổ lệnh command windows. Các phép toán cơ bản gồm : các phép toán số học, các phép toán lượng giác, các phép toán làm tròn, các phép toán so sánh, các phép về số phức. 2.1 Các phép toán số học Để tính toán với các phép tính số học đơn giản, tại ngay dấu nhắc >> của cửa sổ lệnh Command Windows, chúng ta gõ vào trực tiếp : Stt Tên hàm Ý nghĩa Ví dụ Kết quả 1 + Cộng 2+5 7 2 - Trừ 1000-25 975 3 * Nhân 10*10 100 4 / Chia 100/5 20 5 ^ Lũy thừa ( a b ) 10^3 1000 6 sqrt(x) Căn bậc 2 sqrt(144) 12 7 exp(x) Hàm mũ (e x ) exp(1) 2.7183 8 log(x) Logarit tự nhiên (ln (x) ) log(exp(1)) 1 9 log10(x) Logarit thập phân (lg 10 (x) log10(100) 2 Chú ý : Các hàm của Matlab sử dụng ký tự thường, không sử dụng ký tự hoa. 2.2 Các phép toán lượng giác : Khi sử dụng các phép toán lượng giác, chúng ta chú ý là matlab hiểu các đối số của các hàm lượng giác là radian.Cũng như kết qủa trả về của các hàm lượng giác ngược cũng là radian. Trang 8

Chuong2 Cac Pheptoancoban

Embed Size (px)

Citation preview

Page 1: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

CHƯƠNG 2 : CÁC PHÉP TOÁN CƠ BẢN

Các phép toán cơ bản của Matlab được thực hiện trực tiếp trên cửa sổ lệnh command windows.

Các phép toán cơ bản gồm : các phép toán số học, các phép toán lượng giác, các phép toán làm tròn, các phép toán so sánh, các phép về số phức.

2.1 Các phép toán số học Để tính toán với các phép tính số học đơn giản, tại ngay dấu nhắc >> của cửa sổ

lệnh Command Windows, chúng ta gõ vào trực tiếp :Stt Tên hàm Ý nghĩa Ví dụ Kết quả

1 + Cộng 2+5 72 - Trừ 1000-25 9753 * Nhân 10*10 1004 / Chia 100/5 205 ^ Lũy thừa ( ab ) 10^3 10006 sqrt(x) Căn bậc 2 sqrt(144) 127 exp(x) Hàm mũ (ex ) exp(1) 2.71838 log(x) Logarit tự nhiên (ln (x) ) log(exp(1)) 19 log10(x) Logarit thập phân (lg10(x) log10(100) 2

Chú ý : Các hàm của Matlab sử dụng ký tự thường, không sử dụng ký tự hoa.

2.2 Các phép toán lượng giác :Khi sử dụng các phép toán lượng giác, chúng ta chú ý là matlab hiểu các đối số của

các hàm lượng giác là radian.Cũng như kết qủa trả về của các hàm lượng giác ngược cũng là radian.

Trang 8

Stt Tên hàm Ý nghĩa Ví dụ Kết quả1 sin Sin sin(30*pi/180) 0.50002 cos Cos cos(0.5) 0.87763 tan Tang tan(10*pi/180) 0.17634 cot Cotang cot(45*pi/180) 15 asin arcsin asin(0.5)*180/pi 306 acos Arccos acos(0.86)*180/pi 307 atan Arctang atan(1)*180/pi 458 acot arccotang acot(1)*180/pi 45

Page 2: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Ngoài ra, Matlab còn cho phép tính toán một cách khá trọn vẹn các hàm hyperbolic, có thể tham khảo các hàm này bằng cách dùng help của matlab ( Sinh viên sẽ gặp các hàm này khi học về mạng 2 cửa)

2.3 Các phép toán làm tròn và lấy phần dư :

2.4 Các phép toán so sánh :Các phép toán so sánh sẽ so sánh giá trị của giá trị bên phải và bên trái của hàm

so sánh, tuỳ theo từng trường hợp cụ thể mà giá trị trả về có thể là 1 hay 0

2.5 Các phép toán logicCác phép toán so sánh sẽ so sánh giá trị của giá trị bên phải và bên trái của hàm

so sánh, tuỳ theo từng trường hợp cụ thể mà giá trị trả về có thể là 1 hay 0

Trang 9

Stt Tên hàm Ý nghĩa Ví dụ Kết quả1 fix làm tròn các thành

phần thập phân về 0fix(1.5680) 1

2 floor làm tròn về số nguyên gần nhất nhỏ hơn

floor(1.5680) 1

3 ceil làm tròn về số nguyên gần nhất lớn hơn

ceil(1.5680) 2

4 round Làm tròn về số nguyên gần nhất

round(1.5680) 2

5 Mod(x,y) Tính phần dư phép chia, lấy theo y

mod(13,5) 3

6 Rem(x,y) Tính phần dư phép chia, lấy theo x

rem(13,2) 1

7 Sign(x) Lấy dấu của x sign(-2) -1

Stt Tên hàm

Ý nghĩa Ví dụ Kết quả

1 > So sánh lớn hơn 1>2 02 < So sánh nhỏ hơn 1<2 13 == So sánh bằng 1==2 04 ~= So sánh không bằng 1~=2 15 >= So sánh lớn hơn hay

bằng1>=2 0

6 <= So sánh nhỏ hơn hay bằng

1<=2 1

Stt Tên hàm

Ý nghĩa Ví dụ Kết quả

1 & Phép giao (1>3)&(2>4) 02 and Phép giao and(1>3,2>4) 03 | Phép hợp (1>3)|(2>1) 14 or Phép hợp or(1>3,2>1) 15 ~ Phép phủ định ~(1>2) 16 not Phép phủ định not(1>2) 17 xor Phép Xor xor(1<3,2<5) 0

Page 3: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Nguyên lý làm việc của hàm xor như sau :

2.6 Các hằng số trong MatlabCó một số giá trị thông dụng đã được được định nghĩa sẵn trong Matlab, khi sử

dụng, ta có thể gọi tên các hằng số thay cho các giá trị của chúng.

2.7 Phép toán gán Toán tử gán được sử dụng trong Matlab dùng để thay thế cho giá trị hoặc một biểu

thức tính toán. Ví dụ cần tính biểu thức :

Khi đó, chúng ta sẽ thay giá trị tử số bằng biến B, giá trị mẫu số bằng biến C, và giá trị A cần tính bằng B/C.

Cú pháp của toán tử gán :Tên biến = giá trị hay biểu thức tính toán.

Tên biến : Tối đa 31 ký tự, có phân biệt chữ hoa và chữ thường, có thể sử dụng các chữ số trong tên biến nhưng kí tự đầu tiên của tên biến phải là chữ.

Thực hiện phép gán giải quyết ví dụ trên như sau

Trang 10

Stt Tên hằng số

Ý nghĩa Ví dụ Kết quả

1 pi Số π 2*pi 6.28322 exp Số e exp(1)^2 7.38913 i Đơn vị ảo i*i -14 inf Vô cùng 1/0 Inf5 NaN Không xác định 0/0 NaN6 ans Đáp số gần nhất

Page 4: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

B=51^6+76^7C=log(107)*exp(15)A=B/C

2.8 Các phép toán về số phức.Matlab là một trong những phần mềm mạnh có khả năng tính toán các phép tính

liên quan đến số phức. Điểm quan trọng trong phép tính số phức là Matlab chỉ cho phép tính tóan với số

phức được cho ở dạng đại số . Do số phức là một vần đề khá trừu tượng nên chúng ta sẽ xem xét các khái niệm này.

a. Khái niệm về số phứcĐơn vị ảo j là một số mà j2 = - 1Số ảo là một số thực b nhân với đơn vị ảo j , viết là j.bSố phức z là tổng của 2 số : số thực a và số ảo j.b : z = a + jb

a được gọi là phần thực của số phức z , ký hiệu Rez : a = Rez b được gọi là phần ảo của số phức z , ký hiệu Imz : b = Imz

Đây là dạng đại số của số phức.2 số phức z1 = a1 + jb1 và z2 = a2 + jb2 chỉ bằng nhau khi và chỉ khi

a1 = a2 và b1 = b2

Một phức z = a + jb được biểu diễn hình học bằng vectơ OM

Chiều dài OM =Z gọi là môđun của z

Góc j gọi là Argumen của z

Số phức z = a + jb có thể được viết theo dạng lượng giác như sau :Löz = Zcosj + jZsinj

ôïng giaùc

Trang 11

j

b

a phaàn thöïc

phaàn aûo

j

O

M MOz

Z

j

a=ZcosjO

M

b=ZsinjZ

Page 5: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Theo công thức ơle, ta có : cosj + jsinj = ejj

Khi đó, số phức z = Zcosj + jZsinj được viết dưới dạng mũ như sau :

z = Zejj =ZÐj

Các phép toán về số phứcMuốn cộng hai số phức, ta cộng các phần thực với nhau và cộng các phần ảo với nhau Cho z1 = a1 + jb1 và z2 = a2 + jb2 Khi đó :

z1 + z2 = (a1 + a2) + j(b1 + b2)

Muốn trừ hai số phức, ta trừ các phần thực với nhau và trừ các phần ảo với nhau Cho z1 = a1 + jb1 và z2 = a2 + jb2 Khi đó :

z1 - z2 = (a1 - a2) + j(b1 - b2)

Muốn nhân hai số phức dưới dạng mũ , ta nhân các môđun với nhau và cộng các Argumen với nhauCho z1 = Z1jÐ1 và z2 = Z2jÐ2 Khi đó :

z1.z2 = (Z1.Z2)Ð(j1 +j 2)

Muốn chia hai phức dưới dạng mũ , ta chia các môđun cho nhau và trừ các Argumen với nhauCho z1 = Z1jÐ1 và z2 = Z2jÐ2 Khi đó :

b. Các phép toán về số phức của MatlabMtalab chấp nhận sử dụng 1 trong 2 ký hiệu i, j làm đơn vị ảo. Tuy nhiên, khi

tính toán, matlab chỉ dùng kí tự i để làm đơn vị ảo. Chúng ta thực hiện các phép toán cộng trừ nhân chia tương tự như các phép

trong số thực .

Trang 12

Page 6: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

2.9 Định dạng số Dữ liệu số xuất ra màn hình được Matlab ấn định mặc định theo 4 chữ số thập

phân. Tuy nhiên, trong một số trường hợp chúng ta cần các định dạng khác .

Trang 13

Stt Tên hàm

Ý nghĩa Ví dụ Kết quả

1 Tạo số phức z1=5+7i 5.0000 + 7.0000i2 Tạo số phức z2=5-10*j 5.0000 -10.0000i3 complex

(a,b)Trả về số phức có phần thực là a, phần ảo là b

z1=complex(5,7) 5.0000 + 7.0000i

4 abs(z) Tính giá trị modun của số phức z

abs(z1) 11.1803

5 angle(z) Tính giá trị góc pha của số phức z - rad

angle(z1) 0.9505

6 imag Tính giá trị ảo của số phức z

imag(z2) -10

7 real Tính giá trị thực của số phức z

real(z2) 5

8 conj(z) Tạo ra liên hiệp phức z3=conj(z1) 5.0000 - 7.0000i9 + Cộng z1+z2 10.0000 - 3.0000i10 - Trừ z1-z2 0 +17.0000i11 * Nhân z1*z2 95.0000 -15.0000i12 / Chia z1/z2 -0.3600 + 0.6800i13 ^ Lũy thừa ( ab ) z1^2 -24.0000 +70.0000i14 sqrt(x) Căn bậc 2 sqrt(z1) 2.6079 + 1.3421i15 exp(x) Hàm mũ (ex ) exp(z1) 1.1189e+002

+9.7505e+001i

Page 7: Chuong2 Cac Pheptoancoban

R1

R2

1

R3

23

R12

R23

R13

1

23

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

BÀI TẬP

BT 2.1 : Phép biến đổi Y/Trong khi giải các bài toán về mạch điện, ta phải sử dụng phép biến đổi Y/ để

biến đổi mạch điện từ phức tạp về đơn giản.

Công thức biến đổi :

Yêu cầu : - Cho trước R1 = 0.05 ,R2 =1.67 , R3= 0.18 Xác định các giá trị R12, R23, R31 .- Từ các giá trị R12, R23, R31 tìm được, tính toán lại các giá trị R1, R2, R3

BT 2.2 Dòng điện dung trong cáp ngầm.Đặc đặc trưng của cáp ngầm là điện dung của cáp tương đối lớn. Đối với 1 sợi

cáp có đường kính lõi đồng là r và đường kính tổng sợi cáp là R thì các giá trị có thể được xác định theo công thức sau :

Trang 14

Stt Tên hàm Ý nghĩa Kết quả1 Format Định dạng 4 chữ số thập phân 3.14162 format short Định dạng 4 chữ số thập phân 3.14163 format long Định dạng 16 chữ số 3.1415926535897934 format short e Định dạng 5 chữ số, gồm 4 chữ

số thập phân và phần mũ .3.1416e+000

5 format long e Định dạng 16 chữ số, gồm 15 chữ số thập phân và phần mũ .

3.141592653589793e+000

6 format bank Định dạng 2 chữ số, không áp dụng cho số phức

3.14

7 format + Hiển thị dấu của số , gồm +,-,và khoảng trắng

+

8 format rat Định dạng số dưới dạng phân số .

355/113

Page 8: Chuong2 Cac Pheptoancoban

r

R

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Giá trị điện dung của sợi cáp :

Với là hằng số điện thẩm tương đối Dòng điện điện dung chạy trong sợi cáp :

Với U là điện áp đường dây (V), f là tần số lưới điện (Hz).Tổn hao điện môi ( tổn hao công suất do điện dung)

Với cosj là hệ số công suất khi không tải Yêu cầu : Tính các giá trị điện dung C, dòng điện dung chạy chạy trong sợi cáp ngầm, công suất tổn hao do điện môi theo các giá trị cho trước. Các giá trị cho trước là :

ε=3R=5r=2U=22000f=50cosfi=0.03

BT 2.3 Cảm kháng đường dây trên không

Trang 15

Dd

Page 9: Chuong2 Cac Pheptoancoban

i3

i2

i1

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Cảm kháng đường dây trên không là đại lượng phụ thuộc vào khoảng cách bố trí của các dây dẫn. Xét đường dây có hoán vị, gồm 3 pha được bố trí như hình vẽ :

Khoảng cách trung bình hình học GMD:

Với D12, D23, D31 là khoảng cách giữa các dây pha, đơn vị là mBán kinh trung bình hình học GMR :

Với r là bán kính của dây dẫn, đơn vị là mGiá trị cảm kháng – henries/met :

Yêu cầu : Tính các giá trị điện cảm L của đường dây trên không theo giá trị cho trước sau

D=10mD=8mm

BT 2.4 Giải mạch điện bằng phương pháp dùng số phứcDùng số phức sẽ giúp việc giải mạch điện được dễ dàng. Ví dụ xác định biểu thức

dòng điện i3 trong hình :

Chuyển các giá trị dòng điện i1, i2 sang dạng phức.

Trang 16

Page 10: Chuong2 Cac Pheptoancoban

1Ω A

B

D

12Ω 6Ω

18Ω

6Ω 21Ω

+_ 240V

C

I

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Yêu cầu : Chuyển dòng điện i1, i2 về dạng phức .Tính tóan dòng điện i3Chuyển dòng i3 về dạng đại số .

BT 2.5 Giải mạch điện với các phép biến đổi nối tiếp song song Trong các mạch điện phức tạp, đòi hỏi tính toán nhiều bước, thì Matlab là một

công cụ hữu ích .

Cho

Yêu cầu : - Tính toán tổng trở Z tương đương của mạch.- Tính điện áp giửa 2 điểm AD.

BT 2.6 Giải mạch điện phức tạp với số phức Đối với mạch xoay chiều như hình vẽ , phương pháp giải tích mạch dùng số phức

là một trong những phương pháp tối ưu .

Trang 17

Page 11: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Yêu cầu : - Tính toán tổng trở Z phức tương đương của mạch.- Tính biều thức dòng i1

Cho

HƯỚNG DẪN

BT 2.1

BT 2.2

Trang 18

+_

I1

1-2i -5i

3.5+6.7i1+2i

2-4.6i

0.5i

%Nhap R1, R2, R3R1=10R2=5R3=17%Xac dinh R12, R23, R31R12=R1+R2+R1*R2/R3R23=R2+R3+R2*R3/R1R31=R3+R1+R3*R1/R2%Tinh toan lai R1, R2, R3R_1=R12*R31/(R12+R23+R31)R_2=R12*R23/(R12+R23+R31)R_3=R23*R31/(R12+R23+R31)

% Nhap gia trie=3R=5r=2U=22000f=50cosfi=0.03% Tinh cac gia triC=0.0242*e/log10(R/r)I=2*pi*f*C*10^(-6)*UdeltaP=U*I*cosfi

Page 12: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

BT 2.3

BT 2.4

BT 2.5

Trang 19

%Nhap gia triD=10 %metd=8/1000 %m%Tinh toanD12=DD23=DD31=2*DGMD=(D12*D23*D31)^(1/3)r=d/2GMR=r*exp(1)^(-4)L=2*10^(-7)*log(GMD/GMR)

% Nhap gia triI1=5;alpha1=40 %Tri hieu dung va goc pha dong dien 1I2=10,alpha2=-30 %Tri hieu dung va goc pha dong dien 2%Tinh toanalpha1_rad=alpha1*pi/180 % Chuyen goc pha qua don vi radianalpha2_rad=alpha2*pi/180 % Chuyen goc pha qua don vi radiani1=I1*exp(i*alpha1_rad) % chuyen i1 qua so phuci2=I2*exp(i*alpha2_rad) % chuyen i1 qua so phuci3=i1+i2I3=abs(i3) % Tri hieu dung cua i3alpha3_rad=angle(i3); % goc pha cua i3, radalpha3=alpha3_rad*180/pi % Goc pha cua i3, do

U=240;Z1=1;Z2=12;Z3=6;Z4=18;Z5=6;Z6=21;Z7=1; % Bien doi tam giac ABC -> YZ_A=Z2*Z3/(Z2+Z3+Z4)Z_B=Z2*Z4/(Z2+Z3+Z4)Z_C=Z3*Z4/(Z2+Z3+Z4) Z_OD=(Z_B+Z5)*(Z_C+Z6)/(Z_B+Z5+Z_C+Z6)Z_AD=Z_OD+Z_AZ=Z_AD+Z1+Z7 I=U/ZU_AD=I*Z_AD clear all

Page 13: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

BT 2.6

BT 2.7

Trang 20

% Thong so dau vaou=10*exp(-30*pi*i/180);Z6=-5i;Z5=3.5+6.7i;Z4=1-2i;Z3=1+2i;Z2=2-4.6i;Z1=0.5i; % Tinh tong tro ZZ_56=Z5+Z6;Z_456=Z4*Z_56/(Z4+Z_56);Z_3456=Z3+Z_456;Z_23456=Z2*Z_3456/(Z2+Z_3456);Z=Z1+Z_23456 % Tinh dong i1i1=u/Z;I1_mod=abs(i1)I1_angle=angle(i1)*180/pi% Tinh dong i2u2=i1*Z_23456;i2=u2/Z2;I2_mod=abs(i2)I2_angle=angle(i2)*180/pi% Tinh dong i4i3=u2/Z_3456;u4=i3*Z_456;i4=u4/Z4;I4_mod=abs(i4)I4_angle=angle(i4)*180/pi% Tinh dong i6i6=u4/Z_56;I6_mod=abs(i6)I6_angle=angle(i6)*180/pi

Page 14: Chuong2 Cac Pheptoancoban

Khoa Công Nghệ Điện Giáo trình tin học ứng dụng

Tính diện tích hình chữ nhậttinh dthcndisp('tinh dien tich hinh chu nhat');a=input('nhap a=');b=input('nhap b=');S=a*b%fprintf('dien tich S=%2.5g\n',S);disp('dien tich hinh chu nhat:');disp(S)

BT 2.8Giải phương trình bậc 2:

%chuong trinh giai phuong trinh bac hai disp('CHUONG TRINH GIAI PHUONG TRINH BAC HAI')disp('nhap vao cac he so:')a=input('nhap he so a = ');b=input('nhap he so b = ');c=input('nhap he so c = ');delta = b^2-4*a*c;disp('cac nghiem so : ');x1=(-b+sqrt(delta))/(2*a)x2=(-b-sqrt(delta))/(2*a)

Trang 21