huong dan su dung scilab

Upload: mathse

Post on 08-Jul-2015

1.225 views

Category:

Documents


0 download

DESCRIPTION

Hướng dẫn sử dụng Scilab cho học phần Toán cao cấp

TRANSCRIPT

Hng dn s dng

PHN MM SCILAB(Cho hc phn Ton cao cp)

L VN TUN I HC THNG MI

LI NI UScilab is the closest that you can get to Matlab without spending a penny Scilab l gi phn mm tnh ton s pht trin t nm 1990 bi cc nh nghin cu t INRIA v cole nationale des ponts et chausses (ENPC). To ra vo thng 5 nm 2003, n c pht trin v duy tr bi INRIA. Scilab l ngn ng lp trnh hng s bc cao. Ngn ng ny cung cp mt mi trng lp trnh din gii, vi ma trn nh kiu d liu chnh. Bng cch tnh ton da trn ma trn, kiu ng, v qun l b nh t ng, nhiu vn c th c th hin trong mt s t cc dng m lnh hn so vi cc gii php tng t trong cc ngn ng truyn thng nh Fortran, C, hoc C++. iu ny cho php ngi dng nhanh chng xy dng cc m hnh trong phm vi ton hc. Trong khi ngn ng cung cp cc php ton ma trn c bn nh php nhn, gi Scilab cng cung cp mt th vin cc php ton bc cao. Phn mm ny c th c s dng cho x l tn hiu, phn tch thng k, x l nh, m phng ng lc cht lu, v ti u ha. C php ca Scilab tng t nh MATLAB, Scilab bao gm b chuyn i m ngun t MATLAB. Scilab hin sn dng min ph di giy php m ngun m. Do tnh cht mt s ng gp ca ngi dng c tch hp vo Scilab. Ti liu ngn ny ti vit da theo Scilab Help nhm gip cc bn sinh vin lm quen vi vic s dng mt phn mm ton hc gii cc bi ton ca hc phn Ton cao cp.

L VN TUN

MC LC

Ch 0. Download v ci t Ch 1. Tnh ton trn trng s thc Ch 2. Ma trn v nh thc Ch 3. Gii h phng trnh tuyn tnh Ch 4. V th Ch 5. Tch phn Ch 6. o hm Ch 7. Phng trnh vi phn Ch 8. Phng trnh sai phn

Ch 0. Download v ci tBn truy cp vo trang ch: http://www.scilab.org/ (giao din nh hnh di), click vo Download Scilab bn s download c file scilab-5.3.1.exe (thng 4/2010), ci t nh cc phn mm khc.

Sau khi ci t, Shoutcut chy phn mm s xut hin trn Desktop, bn click chy phn mm. Ca s lnh ca phn mm s nh hnh di, ti du nhc --> bn c th g cu lnh v nhn Enter () yu cu phn mm thc hin cu lnh.

Ghi ch:Bn c th click vo du ? trn menu vo Scilab Help. Trong s lit k cc ch ca Scilab v hng dn ca tng ch . Bn c th click vo biu tng hnh knh lp tm kim vn c th mnh quan tm (bng ting Anh), v d: matrix.

Ch 1. Tnh ton trn trng s thcCc php ton trn trng s thc l: cng (+), tr (-), nhn (*), chia (/), ly tha (^) Cc hm thng dng:

(%pi biu din s VD: -->7/3.5

; %e biu din s e)

(ghi s thp phn: 3.5 ) VD: Tnh a = (4^5 1/6)( )

-->a=(4^5-1/6)*(%e^(1/3)+%pi); Ghi ch: Nu thm du ; vo cui cu lnh th s khng hin th kt qu ra mn hnh. VD: Tnh log3(4) -->log(4)/log(3) (log = ln, y ta dng cng thc i c s) VD: Tnh arcsin ca 1/2 -->asin(1/2) Ghi ch: n v l rad; nu cn phi tnh sin(27o) ta i sang radian VD: Cho f(x) = (sin(x) + x2)/(ex + 1), tnh f( )

-->(sin(%pi/6)+(%pi/6)^2)/(exp(%pi/6)+1)

Ch 2. Ma trn v nh thc1. Khai bo bin ma trn VD: Khai bo ma trn c 1x3 (vec t dng): -->a=[1,2,4] VD: Khai bo ma trn c 3x3: -->b=[11,4,3;4,9,6;20,8,9]; Ghi ch: Mi dng ca ma trn cch nhau bi du ; mi phn t ca dng cch nhau bi du , 2. Cc php ton trn ma trn Phn mm ang nh cc bin a v b c khai bo 2 cu lnh trn, ta khai bo thm bin c: -->c=[0,-2,3.5;4,5,8;17,8,-9.2] Ta c th thc hin cc php ton cng (+), tr (-), nhn (*), ly tha (^) VD: Cng -->b+c hoc -->d=b+c ( y ta to thm bin d = b+c ) VD: -->b*c; -->b^2; -->5*b 3. Ma trn chuyn v VD: -->b VD: -->[1,2,3;3,5,5] (thm du cui ma trn) 4. Tm hng ca ma trn VD: -->rank(b) 5. Tm ma trn nghch o VD: -->inv(b) 6. Tnh nh thc (ca ma trn vung) VD: -->det(b) Ghi ch:Nu tnh c p s (chng hn) 1.954D-14 th hiu l -1.954*10-14 ~ 0 (kt qu chc l 0, nhng c sai s trong tnh ton ca Scilab) .

Ch 3. Gii h phng trnh tuyn tnhScilab gii h phng trnh tuyn tnh dng: A*x+b=0 (nn ta phi bin i h v dng ny).VD1: Gii h PTTT: ; Khi : v

Ta thc hin nh sau: -->A=[1,1,1;1,-1,0;1,1,2] -->b=[-6;1;-9] -->[x,kerA]=linsolve(A,b)

Trn mn hnh s xut hin kt qu l: kerA = [] x = 1. 2. 3.

Ghi ch: kerA ti s gii thch VD2 & VD3, trong v d ny ta c nghim duy nht, x=(1, 2, 3) VD2: Gii h PTTT:

Ta thc hin nh sau: -->A=[1,1,-1;3,0,-1] -->b=[0;-3] -->[x,kerA]=linsolve(A,b)

Trn mn hnh s xut hin kt qu l: kerA = 0.2672612 0.5345225 0.8017837 x = 1.0714286

- 0.8571429 0.2142857 Ghi ch: Trong v d ny h c 1 tham s, kerA lu cc h s ca tham s (trong v d 1, h c nghim duy nht, khng c tham s nn kerA bng rng; v d 3 l trng hp h c nhiu tham s) nghim ca h hiu l: x1 = 1.0714286 + t*0.2672612 ; x2 = - 0.8571429 + t*0.5345225 ; x3 = 0.2142857 + t*0.8017837 (c l gii thut tnh ton ca Scilab khng tt nn cho kt qu khng c p v khng chnh xc!!!, khng bit l x l th no???) VD3: Gii h PTTT

Ta thc hin nh sau: -->A=[1,1,-1]

Trn mn hnh s xut hin kt qu l: kerA = - 0.5773503 0.5773503 0.7886751 0.2113249 x = 1. 1. - 1. 0.2113249 0.7886751

-->b=[-3] -->[x,kerA]=linsolve(A,b)

Ghi ch: Trong v d ny h c 2 tham s, kerA lu cc h s ca tham s (n y bn t rt ra y ngha tng qut ca kerA) nghim ca h hiu l: x1 = 1 - 0.5773503*t + 0.5773503*s x2 = 1 + 0.7886751*t + 0.2113249*s x3 = -1 + 0.2113249*t + 0.7886751*s

Ch 4. V th1. Hm 1 bin (2D) VD: V th hm s: y = x2 + 1 trn on [-10; 10] Cch 1. Thc hin nh sau: -->x=[-10:10] -->plot(x^2+1) hoc -->plot2d(x^2+1) Phn mm s xut ra th (trn 1 ca s khc Graphic window) nh hnh di (bn c th vo File -> Copy to clipboard v paste vo word)

Cch 1. C th thc hin nh sau: -->x=[-10:0.1:10] -->plot(x^2+1) Ghi ch: S 0.1 l bc nhy ca bin x, bn th v cho 2 trng hp x=[-1:1] v x=[-1:0.1:1] hiu y ngha ca tham s ny (trng hp khng c bc nhy, bc nhy ngm nh l 1). Cch 2. C th thc hin nh sau: -->deff('[y]=ham(x)',['y=x^2+1']); -->x=(-10:0.1:10)'; -->fplot2d(x,ham)

Ghi ch: Cc cu lnh trong cch 2 phc tp hn cch 1 nhng cho php v c c dng hm kiu:x^x. Thao kho Ch 1 khi cn v cc hm phc tp. 2. Hm 2 bin (3D) VD: V th hm z=sin(x)*y vi x [0; 2], y [0; 5] -->x=[0:%pi/16:2*%pi]' (c du chuyn v x thnh ct) -->y=[0:0.5:5]; -->z=sin(x)*y; -->plot3d(x, y, z)

Ghi ch: Trong ca s Graphic, bn vo Edit ---> Axes properties ghi ch cho hnh.

Ch 5. Tch phn1. Tch phn hm 1 bin (1 lp)10

VD: Tnh x*exdx

9

-->function y=f(x),y=x*(%e^x),endfunction -->I=intg(9,10,f) (dng trn l khai bo hm s f(x), dng di tnh tch phn vi cn t 9 -> 10) Ghi ch: Tham kho Ch 1 khi phi lm vic vi cc hm phc tp. 2. Tch phn mt (2 lp) VD: Tnh tch phn 2 lp ca hm z = cos(x+y) trn min [0 1]x[0 1] -->X=[0,0;1,1;1,0]; -->Y=[0,0;0,1;1,1]; -->deff('z=f(x,y)','z=cos(x+y)') -->[I,err]=int2d(X,Y,f) err = 3.569D-11 I = 0.4967514 Ghi ch: Min ly tch phn c chia thnh 2 tam gic. Bin X lu honh cc nh ca 2 tam gic (tam gic th nht l: 0; 1 ; 1 t m) ; bin Y lu tung ca 2 tam gic. Nh vy, tnh tch phn mt, bn phi chia min ly tch phn thnh cc tham gic. err l sai s: err = 3.569D-11 ~ 3.569*10-11~ 0.

Ch 6. o hm1. o hm ca hm (gi tr thc) 1 bin s VD: Tnh o hm ca hm s y = x^3 + 1 ti x = 2 Ta thc hin nh sau: -->function y=F(x) --> y=x^3 + 1; -->endfunction -->x=[2]; -->derivative(F,x)

ans = 12.Ghi ch: Tham kho Ch 1 khi phi lm vic vi cc hm phc tp. 2. o hm ca hm (gi tr thc) nhiu bin s Ghi ch: Cho hm thc nhiu bin y = f(x1, x2,....xn) Ma trn Jacobian (cc o hm ring cp 1):J = ( Ma trn Hessian (cc o hm ring cp 2): ;...; )

VD: Tnh cc o hm ring cp 1 (ma trn J) v cc o hm ring cp 2 (ma trn H) ca hm s: y= ti im (1; 2) Ta thc hin nh sau: -->function y=F(x) --> y=[x(1)^2 + x(2)^2]; -->endfunction -->x=[1;2]; -->[J,H]=derivative(F,x,H_form='hypermat') H = 2. 0. J = 2. 4. 0. 2.

Ch 7. Phng trnh vi phn1. Phng trnh vi phn cp 1 Ghi ch: Xt PTVP: dy/dx = f(x,y) Gi s ta cn gii PTVP: dy/dx = x2. Phng trnh ny c nghim tng qut l: y = x3/3 + C. Vi iu kin y(0) = 1 ta c nghim ring: y = x3/3 + 1, ta s v th ca nghim ring ny. Ti khng bit cch hin th nghim tng qut ca PTVP bng Scilab, ti on l Scilab khng lm c Scilab khng sinh ra lm vic , v c l Matlab cng vy, y l nhng phn mm tnh ton s; Maple v Mathematica th c, l nhng phn mm tnh ton trn biu tng. Bn lu y l Scilab (v c l c Matlab) lu mi th ca n trong ma trn, s thc 5 cng c lu trong ma trn [5], hm s cng lu trong ma trn nn cng thc ca n khng hin th ra c nhng vn v c th (y l ni v nguyn tc, v c th c nhng gi cng c no m ti khng bit cho php cc phn mm ny hin th ra cng thc ca hm s). VD1: V th nghim ring ca phng trnh vi phn dy/dx = x2 vi iu kin ban u y(0) = 5 trn min [0, 10]. Ta thc hin nh sau: -->function ydot=f(x,y),ydot=x^2,endfunction -->y0=5;x0=0;x=0:0.1:10; -->y=ode(y0,x0,x,f) -->plot(x,y)

Ghi ch: Tham kho Ch 1 khi phi lm vic vi cc hm phc tp.

Trong ca s Graphic, bn vo Edit ---> Axes properties ghi ch cho hnh.VD2: V th nghim ring ca phng trnh vi phn

vi iu kin ban u y(4) = 2 trn min [4, 10]. Ta lm nh sau: -->function ydot=f(x,y),ydot=-x/(1-x^2)*y+x*y^(1/2),endfunction -->y0=2;x0=4;x=4:0.1:10; -->y=ode(y0,x0,x,f) -->plot(x,y)

Ch 8. Phng trnh sai phn1. Phng trnh sai phn cp 1 Ghi ch: Xt PTSP: y(k+1) = f(k, y(k)) Ta s v th nghim ring ca phng trnh ny trn 1 min ri rc no (xem thm phn l gii Ch 7). VD1: V th nghim ring ca phng trnh sai phn: y(n+1) + 2y(n) = 0 vi iu kin ban u y(2) = 3 trn dy cc s nguyn [2, 20] Ta thc hin nh sau: -->function z=f(k,y),z=-2*y,endfunction -->kvect=2:20; -->y=ode("discrete",3,2,kvect,f); -->plot2d2(kvect,y)

Ghi ch:V nghim ca PTSP l hm ri rc nn ta dng hm plot2d2() v th. hin th cc gi tr ca y bn g tip: -->y (khng c du ; )

Lu y ham y l dy y(2), y(3), ...., y(20). hin th y(2) (l s u tin) bn g:-->y(1)

hin th y(20) (l s th 19) bn g:-->y(19) Ghi ch: tnh y(30) chng hn, bn m rng min kvect ln qu 30. Tham kho Ch 1 khi phi lm vic vi cc hm phc tp.

Trong ca s Graphic, bn vo Edit ---> Axes properties ghi ch cho hnh.VD2: V th nghim ring ca phng trnh sai phn: y(n+1) - 2y(n) = 2n - 3 vi iu kin ban u y(0) = 1 trn dy cc s nguyn [0, 5] Ta thc hin nh sau: --> function z=f(k,y),z=2*y+(2*k-3),endfunction -->kvect=0:5; -->y=ode("discrete",1,0,kvect,f); -->plot2d2(kvect,y)

----------&&---------