Tải bản đầy đủ - 0 (trang)
3- Các phép toán trong matlab

3- Các phép toán trong matlab

Tải bản đầy đủ - 0trang

Giáo trình Matlab và ứng dụng



3.3.3- Các phép toán quan hệ và phép toán logic

3.3.3.1- Các phép toán quan hệ:

Các phép toán quan hệ bao gồm:

Nhỏ hơn:



-



<



Nhỏ hơn hoặc bằng: <=



-



Lớn hơn:



>



-



Lớn hơn hoặc bằng: >=



-



Bằng:

-



==



Không bằng (khác): ~=



Biểu thức có các toán tử quan hệ nhận gia trị đúng là (true) hoặc

sai (false). Trong Matlab, biểu thức đúng sẽ có giá trị là 1, biểu thức

sai có gia trị lµ 0.

VÝ dơ1:

>>12.2>12



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



ans =



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



A=



1



A=



1



2



3



1



2



3



>>1~=1



4



5



6



4



5



6



ans =



7



8



9



7



8



9



0

>>



>> A==B



B=[1:3;2:4;10:12]

B=



ans =

1



1



1



1



2



3



0



0



0



2



3



4



0



0



0



10



11



12



>>12.2>12

ans =

1

>>1~=1

ans =

Bộ môn TĐH Xí nghiệp Công nghiệp



25



Giáo trình Matlab và ứng dụng

0

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

A=

1



2



3



4



5



6



7



8



9



Ví dụ 2:

Cho một quả cầu nặng có khối lợng là



v



m=2kg đợc buộc vào một sợi dây có

chiều dài l=1.5m (hình 3.5). Một ngời

nắm vào đầu dây và quay tròn quả

cầu theo phơng thẳng đứng.Vận tốc







dài của quả cầu ở vị trí cao nhất là v

=6m/s. lực kéo T trên sợi dây thay đổi



Hình 3.5. Minh hoạ ví dụ 2



theo góc nghiêng của dây với phơng

nằm ngang xác định theo công thức sau:

T=



mv 2

+ mg ( 2 - 3 sin θ )

l



Cho biÕt khi lùc kéo T > 145N thì sơi dây bị đứt. Hãy xác định

những vị trí dây bị đứt.

Chơng trình nh sau:

function y = tinhluc(theta,T)

m=2;l=1.5;Tmax=145;v=6;g=9.8;

theta=0:10:360;

rad=pi*theta/180;

T=m*(v^2/l+g*(2-3*sin(rad)));

bang=[theta;T>Tmax]

plot(theta,T);

grid on

>>Tinhluc

bang =

Columns 1 through 12

Bộ môn TĐH Xí nghiệp Công nghiệp



26



Giáo trình Matlab và ứng dụng

0



10



0



20



30



0



0



0



40



50



60



70



80



0



0



0



0



0



90 100 110

0



0



0



Columns 13 through 24

120 130 140 150 160 170 180 190 200 210 220 230

0



0



0



0



0



0



0



0



0



0



0



0



Columns 25 through 36

240 250 260 270 280 290 300 310 320 330 340 350

0



0



1



1



1



0



0



0



0



0



0



0



Column 37

360

0

Tõ kết quả trên ta thấy tại các vị trí ứng với các góc 260 0, , , 2700, ,

2800, thì biểu thức logic T>Tmax có giá trị là 1, tức tại đó dây có thể

sẽ bị đứt.



3.3.3.2- Các phép toán logic

Các phép toán logic và, hoặc, đảo đợc thực hiện bởi các toán tử

sau:

-



Phép và( and): Ký hiệu là &



VD: phÐp & 2 ma trËn cïng cì A, B lµ một ma trận có các phần tử

bằng 1 nếu các phần tử tơng ứng của cả 2 ma trận đầu đều khác 0

và bằng 0 nếu 1 trong 2 phần tư t¬ng øng cđa 2 ma trËn b»ng 0.

>>A=[1 2 7; 0 4 9;1 3 5]; B=[0 2 4; 2 4 6; 3 0 7]; C=A&B

C=



-



0



1



1



0



1



1



1



0



1



PhÐp hc (or) : Ký hiƯulµ |



VD : phÐp or 2 ma trËn cïng cì A,B là một ma trận có các phần tử

bằng 0 nếu các phần tử tơng ứng của cả 2 ma trận đầu đều bằng 0

và bằng 1 nếu 1 trong 2 phần tử tơng ứng của 2 ma trận khác 0.

>>A=[0 2 7; 0 4 9;1 3 0];



Bộ môn TĐH Xí nghiệp Công nghiệp



27



Giáo trình Matlab và ứng dụng

>> B=[0 2 4; 2 4 6; 3 0 0];

>> C=A | B

C=



-



0



1



1



1



1



1



1



1



0



Phép đảo( not): Ký hiệu là ~



Ví Dụ : phép đảo của một ma trận là một ma trận có cùng cỡ với

các phần tử có giá trị bằng 1 nếu các phần tử của ma trận đầu có giá

trị bằng 0 và bằng 0 nếu các phần tử của ma trận đầu có giá trị khác

0.

>>A=[0 2 7; 0 4 9;1 3 0]

>> B=~A

B=

1



0



0



1



0



0



0



0



1



3.3.4- Các ví dụ:

Ví dụ 1: Giải phơng trình bậc hai ax2 +bx +c = 0

Ta biết các nghiệm của phơng trình này có dạng:

2

x = b b 4ac



2a



Vì Matlab là một chơng trình tính toán số nên chúng ta phải xác

định các giá trị a, b, c.

Dấu = đợc sử dụng để gán giá trị của a, b, c nh sau ( gõ phím

Enter ở cuối mỗi hàng)

>>a = 2

a=

2

>>b = 5;



Bộ môn TĐH Xí nghiệp Công nghiệp



28



Giáo trình Matlab và ứng dụng

>>c = -3; %Dấu ; ở cuối dòng thì Matlab sẽ không hiển thị lại

giá trị vừa nhập.

>> x1= (-b + sqrt(b^2- 4*a*c))/(2*a)

x1 =

0.5000

>> x2= (-b - sqrt(b^2- 4*a*c))/(2*a)

x2 =

-3

Ví dụ 2: Tính giá trị của đa thức.

>>x=3;

>> a = x^3 -2*x^2 - 6;

>>b = x^2 + 5*x -7;

>> w = a/b

w=

0.1765



3.4- Số phức và các phép toán vỊ sè phøc.

Matlab chÊp nhËn sè phøc biĨu thÞ bëi hàm đặc biệt i và j, cả hai

là toán tử và các hàm.



3.4.1- Biểu diễn số phức:

Tên = Phần thực + phần ảo i hoặc Tên = Phần thực + phần ảo j

Vidụ:

>> a = 3 +4i



3.4.2- Các phép toán đối với số phức:

Cộng, trừ, nhân số phức:

C1= a1+b1i ; C2=a2+b2i

Céng : c1+c2

Trõ : c1 - c2

Nh©n: c1*c2

Chia: c1/c2

Các hàm đặc biệt:

Bộ môn TĐH Xí nghiệp Công nghiệp



29



Giáo trình Matlab và ứng dụng

real(x) : tìm phần thực của số phức x.

imag(x): tìm phần ảo của số phức x.

conj(x): tìm số phức liên hợp của số phức x.

abs(x): Tìm giá trị tuyệt đối của số phức x ( độ lớn )

angle(x): góc tạo bởi giữa trục thực và ¶o.

VÝ dô:

>> a =3.0000 + 4.0000i

a=

3.0000 + 4.0000i

>> thuc=real(a);

>> ao=imag(a);

>> lienhop=conj(a);

>> dolon=abs(a);

>> goc =angle(a);



3.5- Sư dơng c¸c file lƯnh (lËp trình M-file)

Những lệnh của Matlab có thể đợc đa vào một file. Sau đó bạn sẽ hớng dẫn Matlab làm việc với các lệnh đó. Bây giờ, với ví dụ 1, chúng ta

sẽ đa toàn bộ các lệnh trên vào một file lấy tên là vidu.m. Tên của file

phải đợc bắt đầu bằng một ký tự và phần mở rộng là .m. Các bớc nh

sau:

Bớc 1: File / New/ M-file, Môi trờng soạn thảo Editor / Debugger sẽ

xuất hiện

Bớc 2: Trên màn hình soạn thảo, ta gõ các lệnh của Matlab.

a = 2;

b = 5;

c=-3;

x1= (-b + sqrt(b^2- 4*a*c))/(2*a)

x2= (-b - sqrt(b^2- 4*a*c))/(2*a)

Bíc 3: Ghi l¹i néi dung tËp tin với tên vidu.m rồi thoát khỏi môi trờng soạn thảo ®Ĩ trë vỊ cưa sỉ lƯnh (Matlab Command window).

Bíc 4: Tại cửa sổ lệnh ta gõ tên tập tin.

Bộ môn TĐH Xí nghiệp Công nghiệp



30



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

3- Các phép toán trong matlab

Tải bản đầy đủ ngay(0 tr)

×