You are on page 1of 68

Trng I hc giao thng vn tI

matlab tm hiu v ng dng


gii mt s bi ton k thut

HANOI - 2002

mc lc Phn 1
Gii thiu v Matlab

1. Bt u vi Matlab 2. Cc khi nim c bn a. Cu lnh v bin b. Cc php ton c. S dng trong Matlab d. Nhp s liu t bn phm e. In kt qu ra mn hnh f. Ma trn g. S phc v ma trn phc 3. Cc hm ton hc a. Cc hm lng gic b. Cc hm ton s cp 4. Cc thao tc c bit trn ma trn 5. Thc hin cc php tnh trn ma trn a. Cc php tnh trn ma trn b. Cc php tnh phn t - phn t ca ma trn 6. Cc hm thc hin cc php tnh v a thc 7. Cc hm phn tch d liu 8. Hm ca hm a. Hm tch phn s b. Hm tm nghim phng trnh phi tuyn v cc hm ti u c. Hm gii phng trnh vi phn 9. Cc ton t iu khin 10. 11. Cc loi file trong Matlab X l tn hiu

12. V th 2

ng dng Matlab gii mt s bi ton k thut 1. Bi ton v mch in 2. Gii bi ton ng hc c cu phng 3. Gii bi ton cn bng my 4. Tnh thit k b truyn bnh rng 5. Tnh sc bn trc 6. Tnh dao ng a. Tnh dao ng h mt bc t do b. Tnh dao ng h hai bc t do c. Xc nh tn s dao ng ring ca h nhiu bc t do Kt lun ti liu tham kho

Phn 2

Gii thiu

MATLAB l mt b phn mm dng tnh ton cc bi ton k thut, c vit bng ngn ng C do hng Math Works Inc. sn xut. N c to trn c s nhng phn mm do cc nh lp trnh ca cc d n LINPACK v EISPACK vit ra bng ngn ng Fortran dng cho vic thc hin cc php tnh v thao tc trn ma trn. Tn ca phn mm MATLAB l ch vit tt ca matrix laboratory c ngha l phng php ma trn. n khi thc hnh s dng phn mm ta s thy mi phn t c bn ca MATLAB l mt ma trn. MATLAB lin tc c b sung v hon thin. Thi gian gn y hng sn xut cho ra phin bn mi nht l MATLAB 6.0. Matlab l mt phn mm rt mnh, cho php gii rt nhanh cc bi ton phn tch s liu, tnh ton ma trn, x l tn hiu, m phng v to v th ... L do v Matlab c mt lot cc hm chuyn gii quyt cc vn c t trong Toolbox. Thm na, Matlab li rt d s dng: n khng cn khai bo bin, cc cu lnh c vit rt gn gi nh khi vit cc biu thc ton hc, tit kim rt nhiu thi gian cho vic lp trnh. Mt c im ni bt na ca Matlab l n c kh nng m rng: ngi s dng c th t sng to nhng file hm t vo Toolbox thc hin gii nhng ba ton trong lnh vc chuyn mn ca mnh. Sau mt thi gian t tm hiu v ng dng chng ti thy rng MATLAB l mt phn mm rt thch hp cho vic gii cc bi ton k thut trong nhiu lnh vc. c bit trong cc trng i hc k thut n c th gip cho cc cn b nghin cu v sinh vin c c mt cng c 4

sc bn nng cao nng lc tnh ton, tit kim thi gian lp trnh. l l do nhm nghin cu chng ti mnh dn thc hin ti c tnh cht tm hiu, gii thiu v th ng dng ny.

Phn 1

gii thiu v matlab

1. Bt u vi Matlab Sau khi bt my tnh, khi ng Matlab, t mn hnh Destop, nhp p tr chut tri vo biu tng ca Matlab. trn mn hnh s xut hin ca s Command Window nh hnh di y:

Hnh 1 Bn cng c th vo Matlab bng cch trn mn hnh Destop bm chn Start \ Program \ Matlab5.3 kt qu mhn c cng nh trn. 5

Ta c th trc tip thc hin cc php tnh ton v chy cc chng trnh trn ca s Command Window ny. V d 1: Cn ttc hin php tnh 201+191x32/44, t du nhc trn Command Window ta g vo nh sau: >> 201+191*32/44 Bm Enter, kt qu cho nh di y: ans = 339.9091 Hnh 2 l hnh nh bn thy trn mn hnh.

Hnh 2 V d 2: Nu bn mun v th hm s y=5sinx+2cos2x+0,2x vi bin x chy t -10 n 10, gia s ca x l 0,1, trn Command Window bn c th g vo cc lnh nh c th hin trong hnh 3 di y:

Hnh 3 Sau khi bm Enter dng lnh cui cng, chng trnh chy v cho kt qu l th nh trong hnh 4.

Hnh 4 Nu mun lu gi chng trnh v th trn c th tu sa hoc chy nhiu ln, bn hy vit mt file chng 7

trnh ( gi l M. file) nh sau: trn ca s Command Window bm chn File \ New \ M-file (hnh 5):

Hnh 5 trn mn hnh s xut hin mt ca s son tho Editor/ Debugger vi tn file l [Untitled1] nh trn hnh 6 di y:

Hnh 6 Vit chng trnh v th trn mn hnh son tho ( Hnh 7).

Hnh 7 Khi vit xong ta t tn cho file v ct n bng cch bm chn File \ Save as trn mn hnh Editor / Debugger ( Hnh 8). Ca s Save as xut hin (hnh 9): ta g

Hnh 8 tn file, v d dothi vo File name ri bm chn Save. Chng trnh s c t ng ct vo th mc Work ca Matlab vi tn l dothi v vi ui mc nh l .m ( file va ct s l dothi.m).

Hnh 9 chy chng trnh trong file ny, ti ch du nhc trn mn hnh Command Window ta ch vic g tn file : >> dothi ri bm Enter.Chng trnh s c thc hin v kt qu cho ra l th nh c th hin trn hnh 4. Trng hp bn ct file .m vo mt th mc ngoi, khi cn chy chng trnh c th bm chn File \ Run Scrip, mt ca s s xut hin v bn c th g ng dn v tn file vo ri bm phm Enter. 2. Cc khi nim c bn a-Cu lnh v bin trong Matlab Cc cu lnh trong Matlab thng c dng sau: bin = biu thc Tn bin c bt u bng mt ch ci, sau c th l cc ch v s. 10

V d: a2=4/5 Matlab chp nhn tn bin (cng nh tn hm) c n 19 k t v phn bit ch in hoa vi ch in thng. V d : A v a l tn hai bin khc nhau. Khng ging vi mt s phn mm lp trnh khc, y bin khng phi khai bo trc. Nu khng vit tn bin v du = trc biu thc th chng trnh s t ng to tn bin l ans ( ng cho ch answer). V d: >> 4/5 ans = 0.8000 Nu cui cu lnh ta nh du kt thc ; th cc php tnh c thc hin nhng khng xut kt qu ra mn hnh. Ngc li nu khng g du kt thc lnh th kt qu tnh c in ra mn hnh. V d: >> b20=30+3^4/35 b20 = 32.3143 Nu cu lnh qu di khng th vit ht c trn mt dng th c th dng du ba chm (...) vit tip trn dng th hai. V d: >> b = 22.334 - 45.12 + 89.222 ( 123.30+330.2)/217.22 ... + 87.32 443.112 ; Mun vit li ch dn, trc dng ta g du %. V d: % Day la chuong trinh giai phuong trinh vi fan bc hai. Khi chy chng trnh, my s b qua dng ny. b. Cc php ton Cc php ton s hc: ni cc ton hng trong biu thc c vi nhau. Du cc php ton nh sau: + cng tr * nhn / chia phi \ chia tri ^ lu tha 11

Cc php ton quan h == bng <= nh hn hoc bng >= ln hn hoc bng ~= khng bng < nh hn > ln hn Cc php ton l gic & v / hoc ~ khng Cc php ton quan h v l gc thng c dng trong cc bi thc ca cc ton t iu khin nh if, while. c. S dng trong Matlab Matlab dng s thp phn truyn thng vi s ch s thp phn tu chn. Bn cng c th dng s di dng lu tha ca 10 v s c n v phc. Di y l mt s v d v cc s hp thc dng trong Matlab: 4 57 -180.1122 3.09837412 12.6529E4 20.2908e-2 12i -23.1261i 5e2i d- Nhp s liu t bn phm Dng lnh input vi qui cch vit nh sau: a=input( Hy nhp gi tr ca a : a = ) Khi chy chng trnh my s dng i ta g vo t bn phm gi tr ca a, sau bm Enter. e. In kt qu ra mn hnh: c hai cch Cch 1 : Khng g du kt thc ( ; ) cui cu lnh. Khi chy kt qu tnh c t ng in ra trn mn hnh. V d: >> x=12+6*sin(pi/7) x= 14.6033 Cch 2: dng lnh disp >> x=12+6*sin(pi/7); disp(x) 14.6033 12

f. Ma trn Ma trn c biu th trong du ngoc vung, mi phn t trn mt hng c cch nhau bng cc trng hoc du phy (,), cn mi hng c ngn cch bi du chm phy (;). V d : vit ma trn A gm 3 hng 3 ct trn mn hnh Command Window >> A=[ 1 2 3 ; 4 5 6 ; 7 8 9] A= 1 2 3 4 5 6 7 8 9 Trng hp ma trn qu ln ta c th vit mi hng ca ma trn trn mt dng nh sau: B=[1 2 3 4 5 6 7 8 9 10 11 12 ] ; Cc phn t ca ma trn c th l cc biu thc. V d: C=[ -1 2*3/5 2.2^3 (12+34/7)/3 ] C= -1.0000 1.2000 10.6480 5.6190

g. S phc v ma trn phc Matlab c th thc hin c cc php ton v s phc. S phc c biu th nh hm i v j. V d vit s phc z dng i v j nh di y cho kt qu nh nhau: z = 4+5*i hoc z = 4+5*j Mt v d khc v s phc c vit di dng e m: w =r* exp(i*theta) Ma trn c cc phn t l s phc c vit nh sau: A=[ 3+2*i 4-9*i ; 12+i 7-6*i ] 3. Cc hm ton hc a. Cc hm lng gic - sin : sin - cos : cosin - tan : tang 13

V d 1: a=1.223; b=sin(a) Kt qu cho: b= 0.9401

asin : arcsin acos : arccosin atan : arctang atan2 : arctan gc phn t sinh : sin hypecblic cosh : cosin hypecblic tanh : tang hypecblic asinh : sin hypecblic ngc acosh : cosin hypecblic ngc atanh : tang hypecblic ngc

V d 2: c=[1.22 -0.96 1.17 ]; d=cos(c) Kt qu cho: d= 0.3436 0.5735 0.3902 b. Cc hm ton s cp - abs : gi tr tuyt i hoc m un ca s phc - angle : gc pha - real : phn thc ca s phc - imag: phn o - sqrt : cn bc hai - conj : s phc lin hp - round : lm trn n s nguyn gn nht - fix : lm trn hng v zo - sign : hm xt du - gcd : c s chung ln nht - lom : Bi s chung nh nht - exp : hm e m - log : logarit c s t nhin - log10 : logarit c s 10 14

V d 1: a=2+5*i; md= abs(a) arg= angle(a) Kt qu cho: md = 5.3852 arg = 1.1903 4. Cc thao tc c bit trn ma trn

- To ma trn hng
>>t=0: 0.5: 3 t= 0 0.5000 3.0000 >> v= -2: 3 v= -2 -1 0 1 2 3

1.0000

1.5000

2.0000

2.5000

- Ly ra mt ma trn con t mt ma trn cho


V d: Cho ma trn c >> c=[1 2 3 4 ; 5 6 7 8; 9 10 11 12] c= 1 2 3 4 5 6 7 8 9 10 11 12 Ly ra mt ma trn con e t ma trn c nh sau: >> e=c(1:2,2: 4) e= 2 6 3 7 4 8 15

Hoc v d khc: ly ra mt ma trn ct tng ng vi ct th 3 ca ma trn c >> f=c(:,3) f= 3 7 11 Ly ra mt ma trn hng gm 3 phn t cui ca hng th 3: >>g=c(3,2:4) g= 10 11 12

- To ma trn c c ln hn t cc ma trn nh
V d: to ma trn h t hai ma trn e v g trn >> h=[e ; g] h= 2 3 4 6 7 8 10 11 12 V d khc: to ma trn k t ma trn h v ma trn ct f >> k= [ h f ] k= 2 6 10 3 4 7 8 11 12 3 7 11

- To mt s ma trn c bit
+ Vt ca ma trn : Dng lnh diag to mt ma trn ct m cc phn t ca n l cc phn t nm 16

trn ng cho ca ma trn cho trc. V d: mun c vt ca ma trn h trn ta lm nh sau: >> ch=diag(h) ch = 2 7 12 + Ma trn ng cho Cng dng lnh diag to ma trn ng cho t mt ma trn ct hoc ma trn hng cho trc. V d: to ma trn ng cho t ma trn ct ch trn >>C=diag(ch) C= 2 0 0 0 7 0 0 0 12

+ Ma trn n v : Dng hm eye V d: to ma trn n v c 4 hng 4 ct ta vit nh sau: >> I=eye(4) I= 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

+ Ma trn m cc phn t u l cc s 0 hoc s 1: Dng hm zeros v hm ones. V d: >> K=zeros(3,4) K= 0 0 0 0 0 0 0 0 0 0 0 0

>>M=ones(2,2) 17

M= 1 1 1 1

- o ma trn
Dng hm fliplr o ma trn t tri sang phi v hm flipud o ma trn t trn xung di. V d : Cho ma trn M c 4x4 ri tin hnh o nh di y >> M=[1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16] M= 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 >> Mtf=fliplr(M) Mtf = 4 8 12 16 3 7 11 15 2 6 10 14 1 5 9 13 % Dao tu tren xuong duoi % Dao tu trai sang phai

>> Mtd=flipud(M) Mtd =

13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4 5. Thc hin Cc php tnh trn ma trn a- Cc php tnh tiu chun Gi s cho a l ma trn vung c 4x4 a=[1 3 -4 5; 2 -1 2 0 ; 4 6 -1 1; 0 1 3 5] a= 1 3 -4 5 18

2 4 0

-1 6 1

2 -1 3

0 1 5

- Ma trn chuyn v Ma trn chuyn v ca a l ac c xc nh nh sau: ac=a' ac = 1 2 4 0 3 -1 6 1 -4 2 -1 3 5 0 1 5 - Cng ma trn : hai ma trn phi cng c. Ta tnh tng ca hai ma trn a v ac nh sau: at=a+ac at = 2 5 0 5 -2 8 0 8 -2 5 1 4

5 1 4 10

- Cng mt s vi ma trn: Matlab coi s nh mt ma trn cng c vi ma trn c cng, mi phn t ca ma trn bng chnh s . V d: cng s l 7 vi ma trn at trn ta c ma trn cs. s =7; cs=s+at cs = 9 12 7 12 12 5 15 8 7 15 5 11 12 8 11 17 - Nhn ma trn vi mt s V d: Nhn s 3 vi ma trn a trn >> t=3*a t= 3 9 -12 15 6 -3 6 0 12 18 -3 3 19

15

- Nhn ma trn vi ma trn iu kin hai ma trn nhn c vi nhau l s ct ca ma trn th nht phi bng s hng ca ma trn th hai. V d ta nhn ma trn b di y vi ma trn a: >> b=[3 7 0 9]; >> tich=b*a tich = 17 11 29 60 V d na l ta nhn ma trn a vi ma trn chuyn v ca b: >> tich2=a*b' tich2 = 69 -1 63 52 - Chia ma trn Ma trn x= A\B vi iu kin : A*x=B V d: A=[ 2 1 9 7; 1 3 8 5; 5 3 4 2; 9 0 6 6] A= 2 1 5 9 1 3 3 0 9 8 4 6 7 5 2 6 (*)

B=[12; 2; -6; 8 ]' B= 12 2 -6 8 x= A\B x= 20

0.1026 -6.2051 4.8718 -3.6923 Th li xem A*x c bng B khng: A*x ans = 12.0000 2.0000 -6.0000 8.0000 Kt qu ng bng vc t B (cng c th dng php chia phi / nhng phi thay A v B bng cc ma trn chuyn v tng ng, tc B/A, v kt qu l mt ma trn hng ng bng ma trn chuyn ca nghim x tnh trn). - Ma trn nghch o : Dng hm inv V d: Tnh ma trn nghch o ca ma trn A trn gi An l ma trn nghch o ca ma trn A th: >> An=inv(A) An = 0.4615 -0.6154 0.4615 -0.1795 -2.9231 3.2308 -1.9231 1.3590 3.9231 -4.2308 2.9231 -2.0256 -4.6154 5.1538 -3.6154 2.4615 Th tm nghim x t phng trnh (*) khi dng ma trn nghch o: Ta c nghim x c vit nh sau: x=A-1.B G vo dng lnh sau: X=An*B Kt qu cho: X= 0.1026 -6.2051 4.8718 -3.6923 - nh thc ca ma trn 21

nh thc ca ma trn vung c tnh nh hm det. V d tnh nh thc D ca ma trn A trn: >> D=det(A) D= -39 - Nhn v hng, nhn c hng vc t Cho hai vc t m v n nh sau: m=[1 1 3]; 2 0]; Tch v hng ca m v n: dng hm dot vh=dot(m,n) vh = 6 Tch c hng ca m v n: dng hm cross ch=cross(m,n) ch = -6 12 -2 Cn tch c hng ca n v m: ch2=cross(n,m) ch2 = 6 -12 2

n=[4

b- Cc php tnh phn t - phn t ca ma trn


Cc php tnh ny rt tin ch v c phn bit vi cc php tnh tiu chun trn ma trn bng du chm ( . ) c t trc cc du php tnh. V d: X.^Y, X.*Y, hay X.\Y. Nu X v Y l cc ma trn ( hay vc t) cc phn t ca X s c nng ln lu tha hoc c nhn , chia bi cc phn t tng ng ca ma trn Y. D thy l ma trn X v Y phi cng c. - Lu tha cc phn t ma trn V d: >> x=[1 2 ; 3 4] x= 1 3 2 4

>> y=[ 3 4; 1 2] y= 3 4 22

>> x.^y ans = 1 3 x= 1 3 2 4 16 16

Nu y khng phi l ma trn m l mt s, v d y=2, th kt qu nh sau: >> x.^2 ans = 1 4 9 16 - Nhn phn t ma trn V d >> x.*y ans = 3 8 2 8 - Chia phn t ma trn V d; >> x./y ans = 0.3333 3.0000 0.5000 2.0000

6. Cc hm thc hin cc php tnh vi a thc 23

- Hm poly : Xc nh a thc khi bit trc nghim Quy cc vit p=poly(b) trong b l mt ma trn hng. Kt qu s cho ra l mt ma trn hng m mi phn t ca n l mt h s ca mt a thc c nghim l cc phn t ca ma trn b ( theo s m gim dn). V d: b=[2 1 -4 3]; p=poly(b) p= 1 -2 -13 38 -24 Theo kt qu trn th cc s 2, 1, -4 v 3 l nghim ca a thc : x4- 2x3 - 13x2 + 38x - 24 = 0 - Hm roots : Xc nh nghim ca a thc Quy cch vit : a=roots(b) trong b l ma trn hng vi cc phn t l cc h s ca a thc (theo s m gim dn). Kt qu cho ra l mt ma trn ct m cc phn t l nghim ca a thc. V d: Th tm li nghim ca a thc trn. Ta vit cc ln nh sau: p=[ 1 -2 -13 r=roots(p) 38 -24 ];

r= -4.0000 3.0000 2.0000 1.0000 Ta thy kt qu hon ton chnh xc. - Hm conv : Dng nhn a thc. Quy cch vit: a=conv(b,c) trong b,c l hai ma trn hng c cc phn t l cc h s ca cc a thc cn nhn. Kt qu cho ra l ma trn a c cc phn t l h s ca ma trn tch. V d : cn nhn hai a thc x 3+2x2+6 v 3x46x2+5x-10 ta lm nh sau: 24

b=[1 2 0 6]; c=[3 0 -6 5 -10]; a=conv(b,c) a= 3 6 -6 11 0 -56 30 -60 Vy a thc tch l: 3x7+ 6x6- 6x5 + 11x4 - 56x2 + 30x 60 - Hm deconv : Dng chia hai a thc Qui cch vit nh sau: [ m , n] = deconv(p,q) vi p v q l hai ma trn hng c cc phn t l cc h s ca a thc b chia v a thc chia, cn cc phn t ca ma trn m,n l cc h s ca a thc thng v phn d. V d : Ta th chia ngay a thc tch va c trn cho a thc c cc h s l cc phn t ca ma trn c, tc a thc: 3x4-6x2+5x-10. a=[3 6 -6 11 c=[3 0 -6 5 -10]; [b,d]=deconv(a,c) b= 1 d= 0 0 0 0 0 0 0 0 2 0 6 0 -56 30 -60];

Ta thy kt qu l hon ton ng. 7. cc Hm dng phn tch d liu Cc hm tm gi tr cc i, cc tiu v trung bnh - Hm max : Tm gi tr ln nht Qui cch vit ln=max(a) vi a l ma trn hng. Kt qu cho ra l mt phn t c gi tr ln nht ca a V d: a=[ 10 2 1 -30 23 8]; 25

ln=max(a) ln = 23 - Hm min : tm gi tr cc tiu V d: bn=min(a) bn = -30 bn=mi - Hm mean : Tm gi tr trung bnh V d: tb=mean(a) tb = 2.3333 Nu a l mt ma trn c nhiu hng nhiu ct th cc gi tr max, min hoc trung bnh s l cc gi tr tng ng i vi cc ct ca ma trn. V du : >>b=[1 2 3; 4 5 6 ; 7 8 9] b= 1 2 3 4 5 6 7 8 9 >>ln=max(b) ln = 7 8 9

>>bn=min(b) bn = 1 2 3

>>tb=mean(b) tb = 4 5 6 - Hm sum : dng tnh tng V d: Tnh tng cc phn t ca ma trn a nh sau T=sum(a) T= 26 26

- Hm diff : Tnh gi tr sai khc ca hai s ng lin nhau. Qui cch vit: s=diff(x) vi x l mt ma trn hng hoc ct. V d: >>x=[ 1.2 1.4 1.8 2.1 3 ]; >> s=diff(x) s= 0.2000 0.4000 0.3000 0.9000 Ta d dng thy rng hm diff ny c th dng tnh gn ng o hm. Nu x l mt ma trn bnh thng th qu trnh tnh s c thc hin theo th t cc ct. - Hm Interp1 : Dng tm cc gi tr b khuyt. V d: bit gi tr ca hm y=x3-3x+4 ti cc im c x=0,1,2,3,4 v 5. Hy xc nh gi tr ca y ti cc im c x= 0,3, 0,5, ..., 4.2, 4,8. Ta vit cc lnh nh sau: x1=0:5; y1=x1.^3-3*x1+4; x2=[0 .3 .5 1.2 1.4 2.1 3.3 4.2 4.8 5]; y2=interp1(x1,y1,x2,'cubic') plot(x1,y1,'ro',x2,y2,'b+') Kt qu cho dng s v th di y y2 = Columns 1 through 7 4.0000 30.1210 2.7700 2.2500 2.2240 2.5920 7.0330

Columns 8 through 10 65.6800 100.4800 114.0000 l 10 gi tr ca y ng vi 10 gi tr ca x ( trong chng trnh tnh l x2). Cn th s cho thy s ph hp ca cc kt qu ny: Cc im v bng du + l biu 27

th cc im cn tm, cn cc im v bng du o l tng ng cc im cho.


1 20

1 00

80

60

40

20

0 0

8. Hm ca hm C nhiu hm trong Matlab khng ch lm vic vi cc ma trn s m cn lm vic vi cc hm ton. Cc hm ca hm ny bao gm cc hm dng tnh tch phn, gii cc phng trnh phi tuyn v gii cc phng trnh vi phn.

a. Hm dng tch phn s: hm quad hoc


quad8 V d: Cn tnh tch phn ca hm f(x) = 3+sin2x/ (4+2cosx) vi cn t 0 n 4, ta tin hnh nh sau: Vit mt file hm c tn tfan1.m nh di y: function f=tfan1(x) f=3+sin(2*x)/(4+2*cos(x)); v mt file chnh c tn tfan.m: tf=quad8('tfan1',0,4) Chy chng trnh kt qu cho gi tr ca tch phn: tf = 28

12.0517

b. Hm tm nghim phng trnh phi tuyn v cc hm ti u


- Hm fzero : xc nh nghim ca hm mt bin. - Hm fmin : tnh gi tr cc tiu ca hm mt bin. - Hm fmins : tnh cc gi tr cc tiu ca hm nhiu bin V d: Dng hm fzero tm nghim ca phng trnh sau ti v tr gn x=1 : y=2- 6sinx / (1+x); Ta vit file hm nghiem1.m nh sau: function y=nghiem(x) y=2-6*sin(x)./(1+x); Sau vit file chnh nghiem.m: x1=fzero('nghiem1',1) Chy chng trnh chnh, kt qu cho trn mn hnh nh sau: Zero found in the interval: [0.36, 1.4525]. x1 = 0.5385 th li, ta thay x=x1 vo phng trnh ban u xem kt qu hai v c bng 0 hay khng. y=2-6*sin(.5385)/(1+.5385) y= -6.0516e-005 Ta thy y~ 0 v c th ni kt qu chnh xc.

c. Hm gii phng trnh vi phn : hm


ode23 v ode34 V d: Gii phng trnh vi phn Van de Pol c dng nh sau: 29

x+( x2- 1 ) x+ x=0 Ta vit li phng trnh trn di dng h phng trnh vi phn bc nht: x1= x1(1- x22 ) - x2 x2= x1 Vit mt file hm mang tn ftvf.m m t h phng trnh vi phn: function xc=ftvf(t,x) xc=zeros(2,1); xc(1)=x(1).*(1-x(2).^2)-x(2); xc(2)=x(1); Vit file chnh c tn ftvf0.m nh di y: t0=0; t1=20;% Thoi diem dau va cuoi x0=[0 .2]; % Dieu kien ban dau [t,x]=ode23('ftvf',t0,t1,x0); plot(t,x) Chy chng trnh kt qu cho di dng th nh di y:

-1

-2

-3 0

10

15

20

30

9. Cc ton t iu khin Cng nh cc phn mm lp trnh khc, cc ton t iu khin cng c trong Matlab. l ton t vng lp for, while v ton t la chn if. - Ton t for Dng chung ca ton t ny c vit nh sau: for bin = biu thc cc cu lnh end Biu thc y thng c dng m:n hoc m:i:n, trong m, n l gi tr u v cui, cn i l gia s. V d: for k=1: n a(k)=sin(k*pi/5); b(k)=c(k*pi/5); end - Ton t while Dng chung ca lnh vng lp ny c dng sau: while biu thc cc cu lnh end Biu thc y l biu thc quan h. V d: d=1; while d>0.001 z1=z2-sin(z2)/(z2+2); d=abs(z2-z1); z2=z1; end - Ton t iu kin if Ton t c dng chung nh sau: if biu thc cc cu lnh elseif biu thc cc cu lnh ... ... else cc cu lnh end 31

Cng nh i vi ton t while biu thc y cng l biu thc quan h. V d: for k=1: n for p=1: m if k= =p z(k,p)=1; elseif k<p z(k,p)=-1 ; else z(k,p)=0; end end end - Cu lnh Break Lnh Break cho php thot ra khi vng lp. V d: k=input(' k='); if k>0 break else a=5*k+4 end 10. cc loi file dng trong matlab C hai loi file l M-File v file d liu (data file) Cc file c cha cc lnh ca Matlab c gi l M- file . S d gi l M- file v phn m rng ca cc file ny l .m. C hai loi M- file l script file v function file (file hm)

Script File
Khi Script c kch hot Matlab n gin thc hin cc lnh tm thy trong file. Cc cu lnh trong file ny th hot ng trn ton b cc d liu trong Workspace. V d : file lg.m di y l mt script file: % File dung tinh ham luong giac va ve do thi f1=0:2*pi/60; a=3*sin(f1)+4.5*cos(f1+.6); plot(f1,a) 32

Sau khi tnh ton v v th xong cc bin f1 v a vn cn lu trong workspace

Function File
L mt M-File c cha t function ti v tr u tin trn dng u ca file. Vi function file, cc bin c nh ngha v hot ng ch trong phm vi file, ch khng c tnh ton cc nh trong script file. Function file rt tin ch trong vic m rng thm kh nng ca Matlab, c th l to thm c cc Matlab file mi. Di y l mt v d v function file c to gii phng trnh bc hai, tn file l ftb2.m : function [x1 , x2] = ftb2(a,b,c) % File ham nay dung de giai Fuong trnh bac hai : ax^2+bx+c=0 % voi a, b, c la cac hang so cho truoc. Cac nghiem l x1 va x2 delta=b^2-4*a*c; x1=(-b+sqrt(delta)/(2*a); x2=(-b-sqrt(delta)/(2*a); Hm ny dng gii phng trnh bc hai vi lnh gi ra l: [nghiem1, nghiem2] = ftb2(10,-6.5,-3.5);

File d liu ( data file)


Ta c th ghi s liu vo mt file gi l file s liu vi phn m rng l .dat. Khi cn file c th c gi ra. Di y l v d v to v gi file s liu: Gi s ta c mt ma trn hng a nh sau: >>a=1:8 a= 1 2 3 4 5 6 7 8 Gi ta mun ghi cc gi tr ca ma trn a vo mt file d liu c tn l sl1.dat, ta dng lnh save vi qui cch vit nh sau: >> save sl1.dat a -ascii Khi ma trn a c lu trong fil sl1.dat. Nu mun gi ra cc s liu ny v gn cho cho n mt tn bin mi, v d l x, ta dng lnh load vi qui cch vit nh sau: >>load sl1.dat 33

>> x=sl1 x= 1

11. X l tn hiu Matlab c mt s hm dng x l tn hiu s y: abs - gi tr (m un) ca s phc angle gc pha conv - tch chp ( convolution) deconv ( deconvotution) fft - bin i Fu ri nhanh ift - bin i ngc Fu ri fftshift V d: cho x l mt ma trn ct nh sau: x=[ 4 3 7 -9 1 0 0 0 ] ; Bin i Fu ri nhanh ca x c vit nh sau: y=fft(x) Kt qu cho nh di y: y= 6.0000 11.4853 + 2.7574i -2.0000 +12.0000i -5.4853 -11.2426i 18.0000 -5.4853 +11.2426i -2.0000 -12.0000i 11.4853 - 2.7574i 12. v th Matlab rt mnh vi vic v th. Di y trnh by cch v th trong khng gian hai chiu (2D) v ba chiu (3D). di

a.V th 2D
V cc ng cong thng thng: Dng lnh plot vi qui cch vit nh sau: plot(x,y) 34

trong x v y l cc ma trn hng (hoc ct ) cng c. Matlab s v ra mt ng cong ca y theo x. Nu bn mun chn mu v kiu nt v cho ng cong c th lm theo v d sau: plot(x,y, 'r*') Khi chy, Matab s cho bn ng cong to bi cc du *** v c mu (ch r ng cho t red trong ting Anh, ngha l ). Di y l bng k hiu mu v kiu nt v dng khi v th: Biu tng y m c r g b w k Mu sc Vng ti Xanh l m Xanh l cy Xanh nc bin Trng en Biu tng . + : --. Loi ng nt im Vng trn Du nhn Du cng Du sao Nt lin Nt chm Nt t Nt chm gch

Cng c th v nhiu ng cong trn cng mt h trc to . V d: lnh v sau s cho 3 ng cong khc nhau trn mt hnh: plot(x1,y1,r *,x2,y2,g+x3,y3,w -) Nu bn mun t tn cho th hy dng lnh title. V d: title(' Do thi 1 ) Bn cng c th t tn cho cc trc to x v y bng cch dng lnh xlabel v ylabel . V d: xlabel('x - m'); ylabel('y - m/s '); Cn to li trn hnh v dng lnh grid. C th ta lm mt v d di y: V trn cng h trc to th hai hm s sau y1=e-5tsin5t ; y2= e-5t cos5t; 35

vi bin t chy t - 4 n +4: Ta vit file p2d.m v th nh sau: % Chuong trinh ve do thi 2D t=-4:.05:4; y1=exp(-.5*t).*sin(5*t); y2=exp(-.5*t).*cos(5*t); plot(t,y1,'*',t,y2,'-'); title('VE DO THI 2 CHIEU : y1( ***), y2 (---)') xlabel(' Gia tri t ') ylabel('gia tri y1, y2') grid Chy chng trinh cho kt qu l th di y:
V ED OT H I2C H I E U: y 1 ( ***), y 2 (---) 8 6 4 g ia tri y 1 ,y 2 2 0 -2 -4 -6 -8 -4

-3

-2

-1

0 G ia tri t

C th v nhiu th trn mt hnh bng cch dng lnh subplot. V d: ta v hai th y1=y1(t) v y2=y2(t) va nu trn cng mt hnh nhng li trn hai h trc ring bit, ta vit li cc cc lnh ( tnh t lnh plot(t,y1,...) nh sau: subplot(211) plot(t,y1,'*') title('VE DO THI 2 CHIEU : y1( ***), y2 (---)') xlabel('gia tri t') ylabel('gia tri y1') grid 36

subplot(212) plot(t,y2,'-') xlabel('gia tri t') ylabel('gia tri y2') grid

VE DO T H I 2 CH IEU : y1( ***), y2 (---) 10 gia tri y 1 5 0 -5 -10 -4 10 gia tri y2

-3

-2

-1

0 gia tri x

-5 -4

-3

-2

-1

0 gia tri x

V th c cc Dng lnh polar V d: v th hm y=4e-4t vi t=0:2pi/3 Ta vit chng trnh v nh sau: t=0:pi/20:2*pi/3; r=4*exp(-4*t); polar(t,r) Kt qu cho ra nh di y:

37

90 120

4 60 3

150

2 1

30

180

210

330

240 270

300

V th dng thanh (Bar). th bar biu din gi tr ca mt vc t hay mt ma trn di dng cc thanh thng ng hay nm ngang. Bar(y) biu din cc phn t ca vc t y nu y l mt vc t. Nu y l mt ma trn, mt nhm thanh s biu din cc phn t trong mt hng, trc x s biu din s hng. V d: V th biu th s sinh vin tt nghip ca mt trng i hc t nm 1995 n 2001, bit s sinh vin tt nghip tng ng l 1000, 1200, 1800, 1850, 1750, 2100. Lp chng trnh v nh sau: x=[1000, 1200, 1800, 1850, 1750, 2100] bar(x); title('SO LUONG SINH VIEN TOT NGHIEP HANG NAM') xlabel('Nam') ylabel('So luong sinh vien') set(gca,'XTickLabel',{'1996';'1997';'1998';... '1999';'2000';'2001'}) Chy chng trnh cho kt qu l th di y:

38

th pie.
Lnh Pie(x) biu th thnh phn phn trm theo d liu trong x. Mi phn t trong x c i din bng mt phn ca th Pie. Pie(x,explode) t cc phn t cho th Pie. Explode l mt vc t hay mt ma trn ca s 0 v 1 tng ng vi x. Cc phn t l 0 s tng ng vi cc phn to thnh mt khi lin trong th pie. Nu l gi tr 1 th phn t tng ng vi mu trn th s c tch ri khi khi lin trong th Pie. Explode phi c c ging vi x. V d : Biu din thnh phn phn trm ca cc loi vt liu c trong mt hn hp. x=[7 15 56 12 10]; eplode= [1 0 0 0 0]; pie(x,eplode) colormap jet Ta c th :

39

b. V th 3D : dng lnh surf, mesh, contour3


V d: V th z=-20x2+x-15y2+5y , vi -4<x<4 v -4<y<4. Vit file p3d.m v th ( dng lnh surf )nh sau: [x,y]=meshgrid(-4:.2:4,-4:.2:4); z=-20*x.^2+x-15*y.^2+5*y; surf(x,y,z) title(' Do thi 3D') xlabel(' truc x') ylabel(' truc y') zlabel(' truc z') pause

Kt qu cho nh hnh di y: 40

Cn hai th di y c v bng ln mesh v lnh contour3: - th 3D dng lnh mesh

41

- th 3D dng lnh contour


Do th i 3D du n g lenh con tou r

0 -100 tru cz -200 -300 -400 -500 40 30 20 10 tru cy 10 truc x 30 20 40

42

Phn 2 ng dng Matlab gii mt s bi ton k thut


1. Bi ton v mch in

V d 1: Tnh cng dng in ca mch in c


cc tr khng phc di y, bit hiu in th ngun U=5V, cc tr khng: z1=1+0,5i, z2=2+0,5i, z3=4+i, z4=z1 ( ).

z1 z1

z1

z1

aaa U=5v fff

z4

z4

z4

z4 Gii: Vit cc phng trnh nh lut Kic sp cho mch nh sau: (z1+z2+z4)I1- z2I2 = U (z1+2z2+z4)I2 - z2I1- z2I3= 0 (z1+2z2+z4)I3- z2I2- z2I4= 0 (z1+z2+z3+z4)I4- z2I3 = 0 Vit li h phng trnh trn di dng ma trn nh sau: (z1+z2+z4) - z2 = U 0 43 0 I1

- z2 = 0 0 = 0 0 I4 = 0

(z1+2z2+z4)I2 - z2 - z2 0

0 I3

I2

(z1+2z2+z4) - z2 - z2 (z1+z2+z3+z4)

hay Z.I = U vi Z l ma trn tr khng, I l ma trn ct dng in, cn U l ma trn ct th hiu. Nghim I c tnh nh sau: I=Z-1.U Di y l file ml12.m gii phng trnh ma trn trn % File ml12.m % Chuong trinh giai mach dien tro khang phuc z1=1+.5i; z2=2+.5i; z3=4+i; z4=z1; % Cac tro khang U=5; % Hieu dien the nguon % Ma tran tro khang Z=[z1+z2+z4 -z2 0 0;... -z2 z1+2*z2+z4 -z2 0;... 0 -z2 z1+2*z2+z4 -z2;... 0 0 -z2 z1+z2+z3+z4 ]; F=[ V 0 0 0 ]'; % Ma tran cot ve phai I=inv(Z)*F % Tinh dong dien Chy chng trnh cho kt qu di y: I= 1.3008 - 0.5560i 0.4560 - 0.2504i 0.1530 - 0.1026i 0.0361 - 0.0274i

44

V d 2: Tnh dng in cho mch c R, L v C nh


hnh v, cho E=60v, R=50 , L=1H, C=10-4F, ti thi im ban u i1(0)=0, i2(0)=0. i1 L i3 E oi R C

Vit h phng trnh vi phn cho mch nh sau: Ldi1/dt + Ri2 = E RCdi2/dt+ i2 - i1 = 0 Chuyn v, vit li h phng trnh trn nh di y: i1 = - Ri2/L + E/L (1) i2 = i1/RC - i2 /RC Dng hm ode45, lp chng trnh xc nh i1, i2 bng cc file ml13.m v ml13a.m di y: % File ml13.m % global E R L C E=60; L=1; R=50;C=.005 % Nhap cac so lieu i0=[0 0]'; % Dieu kien ban dau t=5; % thoi gian [t,i]=ode45('ml13a',t,i0); subplot(211) plot(t,i(:,1)) title('GIAI MACH DIEN CO R- L- C') ylabel('D.dien trong mach chinh I1 - A') grid subplot(212) plot(t,i(:,2)) ylabel('D.dien trong mach re I2 - A') xlabel(' Thoi gian') grid 45 CHUONG TRINHF TINH MACH DIEN CO R-L-C

File ml13a.m function ic=ml13a(t,i) global E R L C ic=zeros(2,1); ic(1)=-R/L*i(2)+E/L; ic(2)=i(1)/(R*C)-i(2)/(R*C);

D.dien trong mach re I2 - A D.dien trong mach chinh I1- A

Chy chng trnh cho kt qu l tr s cng dng in trong mch chhh i1 v mch r i2 nh hnh di y:
GIAI MACH DIEN CO R- L- C 1.5

0.5

0 0 1.5 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

0.5

0.5

1.5

2.5 Thoi gian

3.5

4.5

kim tra kt qu trn, ta so snh n vi kt qu chnh xc ca h phng trnh vi phn (1) l: i1= 6/5- 6e-100t/5- 60te-100t i2= 6/5- 6e-100t/5- 120te-100t th chnh xc ca i1 v i2 c dng nh hnh di y:

46

( ( D o n g d i e n I 1 = 6 / 5 6 / 5 e 1 0 0 t ) 6 0 t e 1 0 0 t )

1 . 4

1 . 2

0 . 8

0 . 6

0 . 4

0 . 2

0 0

0 . 5

1 . 5

2 . 5

3 . 5

4 . 5

( ( D o n g d i e n I 2 = 6 / 5 6 / 5 e 1 0 0 t ) 1 2 0 t e 1 0 0 t )

1 . 4

1 . 2

0 . 8

0 . 6

0 . 4

0 . 2

0 0

0 . 5

1 . 5

2 . 5

3 . 5

4 . 5

Ta thy kt qu ca hai cch tnh l nh nhau. thy s dao ng ca mch in mt cch r nt ta tng in dung ca t in: ly C=0,005F ri chy li chng trnh ta c kt qu nh hnh di y:
D o n gd ie n tro n gm a ch re R - A D o n gd ie n tro n gm a ch ch in h- A G IAI M AC HD IEN C OR -L -C 6 4 2 0 -2 0 2 1 .5 1 0 .5 0 0

0 .5

1 .5

2 .5

3 .5

4 .5

0 .5

1 .5

2 .5 T h o ig ia n

3 .5

4 .5

47

2. Gii bi ton ng hc c cu phng

V d : Gii bi ton ng hc c cu cu lit


Hy xc nh chuyn v, vn tc gc, gia tc gc ca thanh cu lit 3 ca c cu cu lit, bit trc kch thc cc khu: l0=0,5m, l1=0,2m, tay quay 1 quay u vi w1=8rad/s.

l1

l0

l3

Ta c quan h vc t sau: l3 = l 0 + l 1 Vit l0 , l1 di dng s phc ta c: 1 l3 = l0ei / 2 + l1ei (1) Dng hm abs ta tnh c tr s ca vc t l3 , dng hm angle tnh gc ch phng ca vc t ny cng l gc 3 ca cu lit. l3a = abs( l3 ) (2) (3) 3 = angle( l3 ) tnh c vn tc gc v gia tc gc ca cu lt ta thay 3 l3 = l3aei vo (1) ri o hm theo t, ta c: 3 = l ei / 2 + l ei 1 l3aei 0 1 i i 3 + i 3 = i 1 3 l3ae 1 l1 e l3ae i 3 : Chia c hai v cho ei i (1 3 ) 1 l1e l3a + i 3 l3a = i Tch phn thc v o, ta rt ra: (1 3 ) l3a = - (4) 1 l1sin( (1 3 ) / l3a (5) 3 = 1 l1cos c gia tc gc, ta o hm (5) : (1 3 ) ( 3 = ( - - l3a 3 )/ l3a (6) 3 ) l3a 1 l1sin 148

Cn c vo cc biu thc (1), (2), (3), (4), (5) v (6) lp chng trnh tnh cc chuyn v vn tc v gia tc nh c vit trong file cl3.m di y. Kt qu v chuyn v, vn tc v gia tc gc cu lt c cho di dng th pha di chng trnh.
% CHUONG TRINH TINH CHUYEN DONG CUA CO CAU CU LIT

l1=.2; l0=.5; gia w1=8; rad/s n=51; df=2*pi/n; f1=0:df:2*pi; f1d=f1*180/pi;

% % % %

Kich thuoc tay quay va Van toc goc khau dan -

So vi tri tay quay Goc tay quay do

l3=l0*exp(i*pi/2)+l1*exp(j*f1); f3=angle(l3); l3a=abs(l3); l3ac=-l1*w1*sin(f1-f3); w3=l1*w1*cos(f1-f3)./l3a; alpha3=-(v32.*w3+l1*w1*(w3-w1).*sin(f3f1))./l3a; subplot(311) plot(f1d,f3*180/pi) title(' CHUYEN DONG CUA CU LIT ') ylabel(' C.vi goc Culit - do') grid subplot(312) plot(f1d,w3) ylabel(' Van toc goc Culit - rad/s') grid subplot(313) plot(f1d,alpha3) ylabel(' Gia toc goc Culit - rad/s^2') xlabel(' Goc tay quay') grid

49

CHUYEN DONG CUA CU LIT 120 C.vi goc Culit - do 100 80 60 5 0 -5 -10 50 0 50 100 150 200 250 300 350 400 0 50 100 150 200 250 300 350 400

2 toc goc Culit - rad/s Gia toc goc Culit - rad/s Van

-50

50

100

150

200 250 Goc tay quay

300

350

400

3. Gii bi ton cn bng my

V d 1 : Gii bi ton cn bng tnh


C trc quay trn c gn cc khi lng lch tm t trong cng mt mt phng nh hnh v. Trc hin ang mt cn bng tnh.Ta tin hnh cn bng trc quay bng phng php s phc nh sau: T iu kin cn bng tnh ta c: m4 m1 m1r1 + m2r2 + m3r3 + m4r4 + mcbrcb = 0 r1 r4 r2 mcb r3 Biu din cc vc t di dng s phc ta c: 50 rcb

i i 3 + m r ei 1 + m r e 2+ m r e 4 mcbrcb = - (m1r1ei 2 2 3 3 4 4

) T tnh c tr s ca tch mcbrcb v gc ch phng ca bn knh vc t rcb bng cch dng hm abs v hm angle. mcbrcb = abs( mcbrcb); = angle(mcbrcb ) Chng trnh tnh nh sau:
%

File canbt.m TINH CAN BANG TINH % Cac khoi

m1=12; m2=15; m3=27;m4=30; luong r1=.6; r2=.8; r3=.5; r4=.4; kinh vec to f1=pi/2; f2=pi/12; phuong f3=-pi/6;f4=2*pi/3;

% Tri so cac ban % Cac goc chi

% cua ban kinh ri

mrcb=-m1*r1*exp(i*f1)-m2*r2*exp(i*f2)m3*r1*exp(i*f3)-... m4*r4*exp(i*f4); mr=abs(mrcb) % Tri so mcg*rcb f=angle(mrcb)*180/pi % Goc chi phuong cua ban % kinh vecto rcb (do) Chy chng trnh trn kt qu nhn c l tch mcbrcb ( k hiu l mr) v gc ch phng (k hiu l f) ca bn knh vc t ca khi lng cn bng (tnh ra ): mr = 23.3171 f= -147.2962 Nu chn trc r = rcb= 0,6m th khi lng cn bng cn t vo l: m = mcb = mr/rcb =38,86 kg.

V d 2: Gii bi ton cn bng ng vt quay


51

Bi ton: Hy cn bng ng trc quay c gn cc khi lng t lch tm trn nhng mt phng khc nhau nh hnh v di y. Bit hai mt phng T v P l hai mt phng cn bng. m1 P m2 r1 m4 r4 B m4 r3 r3 m3 m3 rT mT mT l l3 rP mP mP l2 l1 l4 A r2 m2 r2 r1 T m1

Cc khi lng, di cc bn knh vc t tng ng v cc kch thc khc c cho nh sau: m1=20 kg, m2=15 kg, m3=17 kg, m4=26 kg, r1=0,6m, r2= 0,3m, r3=0,4m, r4=0,4m, l1=0,3m, l2=0,5m, l3=0,8m, l4=1,2m, l=1,5m . Cc bn knh vc t r1, r4 tng ng c phng thng ng v nm ngang, cn vc t r2, r3 lm vi phng ngang gc = 30 v 3 = 60 0 . Ta gii nh sau: Gi s hai i trng khi lng mT v mP c t vo hai mt phng cn bng T v P, cc bn knh vc t tng ng l rT v rP , v hin gi trc c cn bng tnh v ng. T phng trnh cn bng m men i vi im A ca cc lc qun tnh v phng trnh tng vc t cc lc qun tnh bng 0 ta c hai phng trnh vc t sau: m1l1r1 + m2l2r2 + m3l3r3 + m4l4r4 + mPlrP =0 (1) m1r1 + m2r2 + m3r3 + m4r4 + mPrP +mTrT=0 (2) Ta gii (1) trc xc nh mP, rP , sau gii tip (2) xc nh nt mT , rT .
0 2

52

V : r1 = r1 e , r2 = r2 e , r3 = r3 e vit li (1) di dng s phc nh sau: mPlrP = mPlrP

i1

i 2

i3

, r4 = r4 e

i 4

ta - m3l3r3

i P

= - m1l1r1

i1

- m2l2r2

i 2

i3

- m4l4r4 e
i 4

i 4

hay : m4l4r4 e )/l

m PrP = (- m1l1r1

i1

- m2l2r2

i 2

- m3l3r3

i3

Tr s ca tch mPrP c tnh nh sau: mP rP = abs(mPrP ) Chn trc rP ta s xc nh c khi lng ca i trng cn t trn mt phng cn bng phi P: mP= mP rP /rP Gc ch phng ca bn knh vc t :

angle( mPrP )

Sau khi c mP ,rP ta gii (2) xc nh mTrT: mTrT = - ( m1r1 + m2r2 + m3r3 + m4r4 + mPrP ) Tr s ca mTrT c tnh theo: mTrT = abs( mTrT ) Nu chn trc mT ta s xc nh c di ca bn knh vc t rT : rT = m TrT / mT Gc ch phng ca bn knh vc t rT

= angle(mTrT)

n y bi ton gii xong. Di y l chng trnh tnh: % % File canbd.m CHUONG TRINH TINH CAN BANG DONG CHO VAT QUAY
% Khoi luong cac % vat lech tam - kg % Do dai cac ban % kinh vec % Khoang cach doc % truc den mat phang % cua cacs khoi luong

m1=20; m2=15; m3=17; m4=26; r1a=0.6; r2a= 0.3; r3a=0.4; r4a=0.4; to -m l1=0.3; l2=0.5; l3=0.8; l4=1.2; T

53

l=1.5; c.bang f1=pi/2; f2=pi/6; f3=-pi/3; f4=pi; r1=r1a*exp(i*f1); r2=r2a*exp(i*f2); r3=r3a*exp(i*f3); r4=r4a*exp(i*f4);

Khoang cach giua hai mat phang

% Cac goc chi phuong cua cac % ban kinh vec to -m % Cac ban kinh vec to % duoi dang so phuc

mPrP=(-m1*l1*r1-m2*l2*r2-m3*l3*r3-m4*l4*r4)/l; % Vec to mPrPa=abs(mPrP); kg.m rPa=0.5; mP=mPrPa/rPa; fP=angle(mPrP)*180/pi; % Tri so cua tich mPrP % Chon truoc tri so v.to rP % Khoi luong doi trong mP % Goc chi phuong cua rP

rP=mPrP/mP; % ban kinh vec to cua doi trong mP mTrT=-m1*r1-m2*r2-m3*r3-m4*r4-mP*rP; mTrTa=abs(mTrT); % Tri so tich mTrT mT=10; % chon truoc doi trong trai mT - kg rTa=mTrTa/mT; % Do dai ban kinh vec to rT fT=angle(mTrT)*180/pi; % Goc chi phuong cua vec to rT do disp(' DOI TRONG DAT LEN M.PHANG P ') disp(' mP(kg) rP(m) fP(do)') P=[ mP rPa fP]; disp(P) disp(' DOI TRONG DAT LEN M.PHANG T ') disp( ' mT (kg) rT(m) fT (do)') T=[ mT rTa fT]; disp(T)

Chy chng trnh vi tr s bn knh vc t ca i trng t trn mt phng cn bng phi r P v khi lng i trng t trn mt phng cn bng tri m T c chn trc: rP = 0,5 m v mT = 10 kg ta c kt qu l cc khi lng ca cc i trng ( tnh bng kg), di cc bn knh vc t (tnh bng m)v cc gc ch phng tng ng ca chng (tnh bng ) nh c biu din di y: DOI TRONG DAT LEN M.PHANG P mP(kg) rP(m) fP(do) 10.4153 0.5000 -0.1014 54

DOI TRONG DAT LEN M.PHANG T mT (kg) rT(m) fT (do) 10.0 0.8613 -104.1446 V tr ca cc i trng c th hin trn hnh v. 4. Tnh thit k b truyn bnh rng

V d: Tnh khong cch trc ca b truyn bnh rng


tr rng thng A v kho st s ph thuc gia A v t s truyn i khi cc thng s khc l khng i Khong cch trc ca b truyn bnh rng tr rng thng c tnh theo cng thc c dng quen thuc sau:
1,05.10 6 A (i + 1) [ ] i tx
3

KN n A 2

Cho ng sut tip xc cho php [ ]tx = 546 N / mm 2 , h s ti trng K=1,3, h s chiu rng bnh rng A = 0,4 , tc vng quay trc b dn n2 = 60 v/ph, cng sut truyn N=5 kw. thy c quan h gia tr s khong cch trc v t s truyn ta cho t s truyn i bin thin t 1 n 10, sau tnh cc tr s A tng ng. Cch tnh c trnh by trong file kctA.m v th trn hnh di y m t quan h gia A v i l kt qu thu c khi chy chng trnh. Ta thy mt iu th v l khong cch trc c tr s nh nht khi t s truyn bng 2 v khong cch trc tng nhanh khi t s truyn vt qu 4.

55

T I N HK H .C A C HT R U CB O T R U Y E NB . R A N G 2 4 0

K h .c a c ht r u c- m m

2 3 0

2 2 0

2 1 0

2 0 0

1 9 0

1 8 0 1

5 6 T is ot r u y e n

1 0

% %

File kctA.m TINH KHOANG CACH TRUC BO TRUYEN BANH RANG

i=1:.5:10; % Ti so truyen ustx = input(' ung suat tiep xuc - N/mm^2 ustx=') k = input('he so tai trong la k=') phiA = input('he so chieu rong banh rang phiA=') teta=input('he so tang kha nang tai teta=') n2= input('so vong quay banh rang n2=') N=input('cong suat la - KW N=')
A=(i+1).*((1.05*10^6./(ustx*i)).^2*k*N/ (phiA*teta*n2)).^(1/3);

plot(i,A) title(' TINH KH. CACH TRUC BO TRUYEN B.RANG') xlabel('Ti so truyen') ylabel(' Kh. cach truc - mm') grid 5. Tnh sc bn trc Trong tnh sc bn trc trong cc hp gim tc vic xc nh cc phn lc ti cc gi v tr s m men un ti cc tit din nguy him ( thng l bi ton khng gian) c th c thc hin nh lp mt chng trnh tnh nh trong v d di y: 56

y PAy 0 C x z lA PAz lB lC Gi s trc chu tc dng ca h lc nh hnh v. Gi R0y,R0z,RAy,Raz l cc thnh phn phn lc t cc ti 0 v C. Theo iu kin cn bng v m men i vi im O v cn bng tng vc t lc , ta vit c hai phng trnh cn bng sau: lAxPAy+lAxPAz+ lBxPBy+lBxPBz+ lCxRCy+lCxRCz = 0 (1) PAy+PAz+ PBy+PBz+ RCy+RCz+ R0y+R0z = 0 (2) Thay Rc=RCy+RCz , R0= R0y+R0z vo (1) v (2) ta rt ra: lCxRC = - ( lAxPAy+lAxPAz+ lBxPBy+lBxPBz ) (3) R0 = - ( PAy+PAz+ PBy+PBz+ RCy+RCz ) (4) Sau khi tnh c cc p lc khp ng ti C v O, ta c th tnh c m men un ti cc tit din nguy him l A v B da vo cc phng trnh cn bng sau: MB + lBC x RC = 0 (5) MA+(-lA x R0) = 0 (6) gii cc phng trnh vc t (3), (4), (5) v (6) ta a ra cc vc t n v ca h toa cc l i, j v k v dng hm cross(...,...) nhn c hng hai vc t. Cch lm c th hin r trong file plkd.m di y:
%

PBy B PBz

File plkd.m
Tinh phan luc tai khop dong va mo men uon Cac Vec to don vi cua he toa do De cac 57

% %

I=[1 0 0]'; J=[0 1 0]'; K=[0 0 1]'; % Vec to vi tri la=100; lb=250; lc=350; lbc=100; La=100*I; Lb=250*I; Lc=350*I; Lbc=lbc*I; % Luc tac dung Pay=-1.4*J; Paz=.5*K; Pby=-.9*J; Pbz=1.4*K; % Tinh phan luc goi C LcRc=-cross(La,Pay)-cross(La,Paz)-cross(Lb,Pby)cross(Lb,Pbz); Rc0=LcRc/lc; goi C(chua quay) % Vec to phan luc tai

Q=[0 0 0; 0 0 -1; 0 1 0]; % Ma tran chuyen (quay) Rc=-Q*Rc0 % Vec to phan luc tai goi C % Tinh phan luc tai goi O R0=-(Pay+Paz+Pby+Pbz+Rc) % Tinh mo men uon tai tiet dien B va A Mb=-cross(Lbc,Rc) Ma=-cross(-La,R0)
% ---------------------------------------------

Chy chng trnh plkd.m trn mn hnh Command Window, kt qu ca cc phn lc khp ng ti O , C v cc m men un ti mt ct A v B nhn c nh sau: Rc = 0 1.0429 -1.1429 0 1.2571 -0.7571 58

R0 =

Mb =

0 -114.2857 -104.2857 0 -75.7143 -125.7143

Ma =

plkd Rc = 0 1.0429 -1.1429 R0 = 0 1.2571 -0.7571

Mb = 0 -114.2857 -104.2857 Ma = 0 75.7143 125.7143

6. Tnh dao ng a. Tnh dao ng ca h mt bc t do Gi s c h dao ng mt bc t do nh hnh v: m k khi lng ca vt, c l cng l xo (N/m), k l h s cn ca gim chn thu lc (Ns/m), cn F l lc kich thch vi F=F0coswt ( F0 l bin ca lc N, w l tn s gc rad/s). Vit phng trnh nh lut 2 cho vt ; 59

mx= -kx-cx +F0coswt (1) trong x, x, x ln lt l chuyn v, x vn tc v gia tc ca vt. F ta bin i (1) nh sau: c x= -kx/m - cx/m + +F0coswt/m (2) t x1=x, x2= x th x1= x, x2= x1, phng trnh vi phn cp 2 trn s c vit thnh h hai phng trnh bc nht vi hai n l x1 v x2 nh di y: x1= - kx1/m - cx2m + F0coswt/m (3) x2= x1 Chng trnh gii h (3) c vit trong cc file ml00.m v ml0.m nh di y: % File ml00.m % Chuongtrinh tinh dao dong he 1 bac tu do co giam chan % thuy luc chui luc kich dong dang F=F0cos(wt) global m k c w F0 m=100; c=10000; k=80; w1=sqrt(c/m) w=6; tc=15; x0=[0 .01 ]' ; toc, toa do) F0=20 ; % Khoi luong vat - kg % Do cung lo xo - N/m % He so can nhot Ns/m % Tan so dao dong rieng % Tan so luc kich dong % Thoi gian dao dong % % Dieu kien ban dau (van Bien do luc kich dong - N

k m

[t,x]=ode45('ml0',tc,x0); subplot(211) plot(t,x(:,2)) title(' TINH DAO DONG HE MOT BAC TU DO') ylabel('Chuyen vi cua vat - cm') 60

grid subplot(212) plot(t,x(:,1)) xlabel('thoi gian -s') ylabel('Van toc cua vat - m/s') grid pause % File ml0.m

function xc=ml0(t,x) global m k c w F0 xc=zeros(2,1); xc(1)=-k/m*x(1)-c/m*x(2)+F01*cos(w*t)/m; xc(2)=x(1); Kt qu chy chng trnh cho di dng th di y:

Chuyen v i cua v at - cm

T INH DAO DONG HE MOT BAC T U DO 1 0.5 0 -0.5 -1 0 0.1 0.05 0 -0.05 -0.1 0

10

15

Van toc cua v at - m/s

5 thoi gian -s

10

15

61

b. Tnh dao ng h hai bc t do


C h dao dng hai bc t do nh hnh v: khi lng ca cc vt l m1, m2, cng cc l xo l c1v c2, h x2 F2 s cn nht l k1 v k2, lc kch thich t ln h l c2 k2 F1=F10sinw1t, F2=F20sinw2t. x1 F1 c1 k1 Vit h phng trnh nh lut 2 Niu tn cho tng vt: m1x1=- k1x1- c1x1+k2(x2-x1)+c2(x2-x1) +F01sinw1t m2x2= - k2 (x2-x1)- c2(x2 -x1)+F02sinw2t hay: x1 = - (k1+k2)x1/m1- (c1+c2)x1/ m1+k2x2/ m1+c2x2 / m1+ F01sinw1t/ m1 (1) x2 = k2x1/ m2 + c2x1 / m2 - k2x2 / m2 - c2x2/ m2 + F02sinw2t/ m2 Tng t nh khi gii phng trnh vi phn cp hai phn trn, ta cng t: y1 = x1, y2 = x1, y3 = x2, y4 = x2. (2) Rt ra: y1=x1 (3) y2=y1 y3= x2 62

y4=y3 Thay (1) vo (3) v ch n (2) ta lp c h gm bn phng trnh vi phn tuyn tnh bc nht. H phng trnh ny v cch gii n c cho trong file ml11.m v ml1.m di y. Nhn tin y ta cng th tc dng ca gim chn ng lc: theo l thuyt, nu lc kch thch vo vt 2 bng 0 ( F2=0), v cc thng s ca b gim chn ng lc gm khi lng m2 v l xo c cng c2 tho mn iu kin: c2/m2 = w12 ( w1 l tn s lc kch thch ca lc F1 ln vt 1) th dao ng ca vt chnh 1 c khi lng m1 s bng 0. Trong chng trnh ta cho F20=0, m2=10 kg, c2=510 N/m v w1= c 2 / m 2 . % File ml11.m % Tinh dao dong he hai bac tu do global m1 m2 k1 k2 c1 c2 w F10 F20 m1=100; c1=10000; m2=10; c2=510; k1=220; k2=0; - Ns/m w20=sqrt(c2/m2) % % % % % Khoi luong vat thu nhat - kg Do cung lo xo thu nhat - N/m Khoi luong vat thu 2 - kg Do cung lo xo thu 2 - N/m He so can nhot cua giam chan

x0=[0 .0 0 .0]'; % Dieu kien ban dau F10=100; % Bien do luc tac dung vao vat 1 N F20=0; % -2 w1=w20; % Tan so goc cua luc k.thich - rad/s [t,y]=ode45('ml1',tc,x0); subplot(211) plot(t,y(:,2)*100) title('TINH DAO DONG HE HAI BAC TU DO') ylabel('Chuyen vi cua vat 1 - cm') grid subplot(212) plot(t,y(:,4)*100) xlabel(' Thoi gian - s') 63

ylabel('Chuyen vi cua vat 2 - cm') grid pause

% File ml1.m % Chuong trinh con tinh dao dong he hai bac tu do function yc=ml1(t,y) global m1 m2 k1 k2 c1 c2 w F10 F20 yc=zeros(4,1); yc(1)=-(k1+k2)/m1*y(1)-(c1+c2)/m1*y(2)+... k2/m1*y(3)+c2/m1*y(4)+F10*sin(w1*t)/m1; yc(2)= y(1); yc(3)= k2/m2*y(1)+c2/m2*y(2)-k2/m2*y(3)c2/m2*y(4)+... F20*sin(w2*t)/m2; yc(4)= y(3); Chy chng trnh s cho kt qu di dng th sau:
Chuyen v i cua v at 1 - cm T INH DAO DON G HE HAI BAC T U DO 2 1 0 -1 -2 0 40 20 0 -20 -40 0

10

12

14

16

18

20

Chuyen v i cua v at 2 - cm

10 12 T hoi gian - s

14

16

18

20

64

Ta thy mt iu th v l : ng nh d on, bin dao ng ca vt chnh 1 gim dn theo thi gian v s tt hn sau t giy na.

c. Xc nh tn s dao ng ring ca h nhiu bc t do


Vi h c hc nhiu bc t do vic xc nh cc tn s dao ng ring ca h c mt ngha quan trng. Matlab gip ta gii bi ton ny khng my kh khn. V d: C h gm bn toa xe mc ni vi nhau, hy xc nh tn s dao ng ring ca h theo chiu dc. Bit khi lng cc toa xe l m1=45T, m2=35T, m3=40T, m4=50T, cng cc l xo l c1=c2=800KNm, c3=1000KN/m. m1 m4 x4 x1 m2 x2 m3 x3

gii bi ton trc ht ta phi lp cc ma trn khi lng v ma trn cng nh sau: - Ma trn khi lng: M=diag(m1, m2, m3, m4); ( Ma trn cho c cc phn t l cc khi lng) -Ma trn cng: c1 C= -c1 -c1 c1+c2 0 -c2 0 0 0 -c2 c2+c3 -c3 0 0 -c3 c3

- Dng hm eig xc nh cc tr ring v vc t ring: [ X, L] = eig( C, M); trong L l ma trn ng cho m mi phn t trn ng cho l mt tr ring (eigenvalue) l w 12, w22, w32 v w42 . Cn w1 w2, w3 v w4 chnh l cc tn s dao ng ring ca h (rad/s). 65

Ma trn (hng) ca cc tn s dao ng ring c xc nh nh sau: w = diag(sqrt(L)); Kt qu tnh bng s c th nhn c nh chy chng trnh trong file tansd.m di y: % File tnd.m % CHUONG TRINH TINH TAN SO DAO DONG RIENG % CUA HE NHIEU BAC TU DO m1=45000; m2=35000; m3=40000; m4=50000; % Khoi luong cac toa xe c1=800000;c2=c1; % Do cung lo xo N/m. c3=1000000; % Ma tran khoi luong va ma tran do cung m=[m1 m2 m3 m4]; M=diag(m); C=[c1 -c1 0 0; -c1 c1+c2 -c2 0 ; 0 -c2 c2+c3 -c3;... 0 0 -c3 c3]; % Tinh tri rieng va vec to rieng ,L]=eig(C,M); wb=diag(L); w=sqrt(wb) rad/s % % Cac tri rieng Cac tan so dao dong rieng -

Cc gi tr tn s dao ng ring c chng trnh cho di y: w= 8.6524 6.5472 0 + 0.0000i 3.2807 Ta thy c mt tn s dao ng ring bng 0 : w 3=0. iu ny v mt l thuyt dao ng th hon ton hp l v n tng ng vi mt dng dao ng ring ca h trong ton h chuyn ng nh mt vt rn.

66

Kt lun Qua hai phn nghin cu tm hiu phn mm lp trnh Matlab v ng dng n gii mt s bi ton k thut, chng ti thy rng y l mt phn mm rt mnh, d s dng v rt c hiu qu trong tnh ton, c bit thch hp cho vic nghin cu trong lnh vc khoa hc k thut. ng thi chng ti cng thy r rng: hiu cn k cng nh s dng c ht kh nng ca Matlab th cng khng phi l chuyn d, v bn thn n l mt phn mm ln. Tuy nhin, trong phm vi ca ti nghin cu ny, nhng vn c bn v nhng ng dng ph bin ca phn mm c trnh by v c nhng v d minh ho c th. T nhng phn c bn ny, ngi c qua s dng thc t phn mm s c kh nng t tm hiu su hn nh tra cu phn Help trong my. Cch trnh by chng ti c gng sao cho ngn gn, d hiu v thin v thc hnh. Mt trong nhng mc ch chnh ca nhm nghin cu l bin kt qu nghin cu ny thnh ti liu tm hiu v s dng Matlab cho nhng ngi quan tm, c bit l cho sinh vin. Hi vng l vi ti liu ny, ngi hc c th t thc hnh trn my tnh lp cc chng trnh tnh ton cho bi ton ca mnh. Do khun kh thi gian c hn, cn mt phn th hai na ca Matlab m chng ti cha kp nghin cu: l phn SIMULINK. y l phn mm m phng rt mnh v hiu qu ca Matlab, cho php giic nhiu loi bi ton phc tp. Chng ti hi vng s c iu kin nghin cu tip trong thi gian ti.

67

68

You might also like