Professional Documents
Culture Documents
rogrm de iduo utoril gurso de ingenhri de eleomunies niversidde pederl pluminense eutor tulX ltims tulizesX ssell prn e prn fetriz gost ieiro itor de ouz vim elexndre ntos de l eg
Prefcio
endo em vist s diretrizes do wig em esquisD insino e ixtensoD o rogrm de iduo utoril @iA do urso de ingenhri de eleomunies d niversidde pederl pluminense @ppA desenvolveu um projeto de eloro de postils e ursos voltdos pr grduoF y intuito desse trlho uxilir lunos no prendizdo de tems importntes pr su formoD que esto usentes em quisquer ements de disiplinsY eD lm dissoD servir de mteril didtio pr ursos de pito ministrdos pelos olsists do rogrm os orpos disente e doente d grduoF eixo segue list de postils preprds nesse projetoF
vingugem de progrmo pr hipertextosD priniplmente empregd n onstruE o de pgins d snternet @webpages AF istem de edio de texto lrgmente utilizdo em meios dmios e ient(osD em omo por editors nionis e internionisF sntroduo o sistem operionl vsxF
vingugem de progrmo mplmente utilizd em prolems de engenhri e omputoF emiente de simulo mtemtiD utilizdo em diverss res pro(ssionisF
emiente de simulo de iruitos eltrios @nlgios e digitisAD utilizdo em projeto de iruitos disretos e integrdosF
iste doumento destinEse introduzir o usurio o miente do F endoEse d imens quntidde de funes e d existni de um ervo de doumento prprio inludo no progrmD est postil no pretende esgotr o tem omo um mnulF entesD pelo ontrrioD el destinEse introduzir de form suint o usurio o miente do progrmD mostrndo e exempli(ndo s ferrments sis de utilizo do mesmoF r miores informes e um estudo mis profunddoD onsulte s refernis iliogr(s no (m do doumentoF muito importnteD pr um melhor prendizdoD que o leitor estej em frente um omputdor om o software instldoF medid em que se l postilD omndos e operes devem ser testdos no progrmF snteress ind menionr que sero destdosD o longo ds pginsD omndos e funes teis s disiplins do urso de ingenhri de eleomuniesD orgnizdos em sees reltivs sus pliesF
Matlab
Este documento de distribuio gratuita, sendo proibida a venda de parte ou da ntegra do documento.
Sumrio
1 Introduo
IFI IFP IFQ IFR snformes iniiis F F F F F F F tnels F F F F F F F F F F F F F F ejud F F F F F F F F F F F F F F filiotes do F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F
Matlab
I I P Q R R S
2 Variveis
PFI PFP PFQ QFI QFP QFQ QFR RFI RFP SFI SFP SFQ SFR SFS TFI TFP TFQ TFR
helro F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F wnipulo F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F riveis prEde(nids F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F epresento numri pormtos de visulizo he(nio de mtrizes F F sndexo F F F F F F F F F F F F F F F de nmeros F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F
3 Nmeros e matrizes
T T U V
yperes ritmtis F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F yperes lgis e relionis F F F F F F F F F F F F F F F F F F F F F F F F F F F F wtrizes elementres F F F F F lger liner F F F F F F F F F snformes mtriiis sis wnipulo de mtrizes F F F enlise de ddos F F F F F F F punes punes punes punes F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F
10
IH II
13
IQ IR IS IS IU
19
IW IW PH PH
22 23
PQ PU PW
SUMRIO
iii
32 35
QS QT QT QU QW RH RI
39
Captulo 1 Introduo
1.1 Informaes iniciais
y @revitur de MATrix LABoratory E vortrio de wtrizesA um software de simulo mtemti que reliz nlise numriD onstri gr(os em dus ou trs dimensesD uxili no proessmento de sinisD lm de mnipulr outrs funes espeilizdsF ile trlh om um lingugem de progrmo de ltoEnvel e um miente intertivo pr o desenvolvimento de lgoritmosD nlise e visulizo de ddos e omputo numriF rprio pr s res tnis e ient(sD o software tem funes de trtmento numrio de lt performne pzes de resolver prolems omputionis tnios de form mis e(iente e rpid do que s trdiionis lingugens de progrmoF elm do miente intertivoD outr filidde do possiilidde de uso de rquivos texto ontendo um seqni de instrues de(nids pelo usurioD exeutds pelo progrm so form de omndos ou funesF isses rquivos textoD que tm extenso Fm9D podem ser ridos e editdos dentro ou for do seu mienteF
Matlab
Matlab
1.2 Janelas
etrvs de ojetos gr(os denomindos jnelsD o usurio oper s funionliddes do proE grm de form intertivF e jnel prinipl do hmEse Command Window @tnel de gomndoAD onde os ddos e instrues so digitdos no prompt >>9 pelo usurio eD ps tel Enter ser pressiondD o progrm os proess imeditmente e expe n tel o resultdoF ys omndos digitdos so rmzendos em um buer de omndosD no qul podeEse nvegr usndo s tels seta-para-cima 9 e seta-para-baixo 9F elm dissoD telndoEse 9D por exemploD e usndoEse s sets 9 e 9D nvegEse por todos os omndos iniidos om letr 9F e tel Esc limp o que estiver esrito n linh do promptF gomndos termindos om pontoEeEvrgul no exiem s vriveis de respost n telF y uso do pontoEeEvrgul til qundo impresso do resultdo n tel no interessD ou qundo impresso muito extens omoD por exemploD pr um mtriz 1000 1000F heveEse ressltr queD pesr d impresso ser suspensD o omndo exeutdo pelo progrmF rios omndos podem ser digitdos n mesm linhD desde que estejm seprdos por vrgul ou pontoEeEvrgul F gomndos muito longos pr um linh podem ser interrompidos por trs pontos FFF9 e ontinudos n linh seguinteF y exemplo seguir ilustrtivo qunto esses detlhesF
Matlab
CAPTULO 1.
INTRODUO
importnte pontr que tnel de gomndo normlmente usd pr testes de omnE dos e funes ou simples operesF undo se desej implementr lgum progrmD projeto ou trlhoD utilizEse o M-File EditorF xeste editorD rimos um rquivo texto Fm9 om os mesmos omndos interpretdos n jnel Command WindowF r rir um novo rquivoE wD lique em File > New > M-le ou simplesmente digite o omndo editF eps esrever o progrmD exeuteEo pel tel de tlho F5F elm d tnel de gomndo e do iditor de erquivoEwD h ind s jnels HelpD Command HistoryD Current Directory e WorkspaceD que esto respetivmente relionds om judD histrio dos ltimos omndos digitdosD diretrio orrente do progrm e o espo de trlho onde se visulizm ddos e vriveisF isss jnels podem ser mntids fehds ou erts dependendo d neessidde ou gosto do usurioF ormD esss outrs jnels no so enfoque nest postilF
1.3 Ajuda
etrvs do omndo helpD o usurio pode onsultr jud do F isrevendoEse help e o nome d funoD mostrdo um pequeno resumo d funo @normlmente de um linhA seguido de um desrio mis detlhd d mesmF
Matlab
>> help ones ONES Ones array. ONES(N) is an N-by-N matrix of ones. ONES(M,N) or ONES([M,N]) is an M-by-N matrix of ones. ONES(M,N,P,...) is an M-by-N-by-P-by-... array of ones. ONES(SIZE(A)) is the same size as A and all ones. See also ZEROS.
possvel ind prourr por funes ujos resumos ontenhm determinds plvrsE hveF r istoD st digitr o omndo lookfor seguido d plvr desejdF gso se queir interromper usD deveEse telr CTRL+CF
>> lookfor ones ONES Ones array. SPONES Replace nonzero sparse matrix elements with ones. SLUPDATE Replace blocks from a previous release with newer ones. FPUPDATE Replace blocks from a previous release with newer ones. FPUPDT Replace older 1.x blocks with newer 1.1 ones. BUFFERM buffer zones for vector data. ONEM Constructs a regular matrix map of all ones. UPDATEXPCENV Updates the new Environment settings to become the current ones. DRAMADAH Matrix of zeros and ones with large determinant or inverse.
CAPTULO 1.
INTRODUO
1.4 Bibliotecas do
y present um srie de omndosD operdores e funes primitivsD orgnizds por tegorisD ssim omo rotins espe(s de diverss res d engenhriD orgnizds em iliotes ToolboxesF ists tegoris e iliotes so designds por tpios primriosF r visulizo de todos estes tpiosD st digitr o omndo helpF elguns desses tpios primrios soX
Matlab
Matlab
general omndos geris ops operdores e rteres espeiis control iliote de sistems de ontroles signal iliote de proessmento de sinis optim iliote de otimizo
yutrs iliotes rngem mpos to vridos omo quisio e proessmento de imE gemD ioEinformtiD teleomuniesD lgi difus e relidde virtulF r se profundr mis em qulquer ilioteD st digitr o omndo help tpicoF
Captulo 2 Variveis
2.1 Declarao
m rtersti onveniente do que s vriveis no preism ser dimensionds ntes do uso pois so gerds utomtimente o serem utilizdsF r rmzenr informE es em vriveis de(nids pelo usurioD st digitr o nome d vrivel seguido do sinl de igul =9 e d expresso desejdF x esolh dos nomes devem ser oedeidos os seguintes ritriosX
Matlab
os rteres podem ser lfnumrios @letrs e nmerosAD desde que iniidos por letrsY letrs misuls e minsuls de(nem nomes diferentes @case sensitive AY o rter 9 pode ser usdo no meio do nomeY so permitidos nomes omD no mximoD QP rteresF
2.2 Manipulao
ixistem omndos prprios pr mnipulo de vriveisF eixo esto listdos os mis utilizdosF
whosX
ilimin tods s vriveis d re de trlhoF r se pgr um ou mis vriveis utilizEse o omndo clear seguido dos nomes ds vriveis seprds por espoF lv s vriveis no disoD podendo utilizEls novmente n prxim vez que o progrm for iniilizdo ou mesmo qundo exeutdo o omndo clearF
loadX clcX
saveF
CAPTULO 2.
V ARI VEIS
Matlab
ans pi eps inf NaN ou nan i ou j nargin nargout realmin realmax bitmax
Varivel
Representao
rivel pdro pr rmzenr resultdosF zo entre o permetro d irunferni e o seu dimetroF reiso de ponto )utunteD ou distni entre I e prximo nmero relF sn(nito @por exemploD resultdo d diviso IGHAF lor noEnumrio @por exemploD resultdo d diviso HGHAF gonstnte imginri 1F xmero de rgumentos de entrd de um funoF xmero de rgumentos de sd de um funoF wenor nmero rel positivo utilizvelF wior nmero rel positivo utilizvelF wior nmero inteiro positivo utilizvelF
gso o usurio utilize pr (ns prprios um vrivel om o mesmo nome de lgum ds vriveis ou funes prEde(nidsD el funionr normlmente omo um vrivel omumF undo pgdD el retornr o seu omportmento pdroF
Matlab
Matlab
nmeros negtivosX 9 Y
ixFX 5
nmeros om ss deimisX .9 Y
ixFX 3.2
noto ient(X e9 ou E 9F
ixFX 5e3 @equivlente 5 103 A
Matlab Matlab
CAPTULO 3.
NMEROS E MATRIZES
Comando
format short format long format short e format long e format short g format long g format hex format + format bank format rat format debug
2 IFRIRP IFRIRPIQSTPQUQIH IFRIRPeCHHH IFRIRPIQSTPQUQHWSeCHHH IFRIRP IFRIRPIQSTPQUQI Q'THWeTTUfQd C IFRI IQWQGWVS truture ddress a IPPHV maI naI pr a IPTHHH pi a H IFRIRP
Comentrio
S dgitos @ponto (xoAF IS dgitos @ponto (xoAF S dgitos e expoente @ponto )utunteAF IS dgitos e expoente @ponto )utunteAF y melhor entre short e short eF y melhor entre long e long eF rexdeiml em ponto )utunteF ositivo +9D negtivo 9 ou zero 9F P ss deimis representndo moedF eproximo rionlF short g e informes sore rmzengem internF
>> a=`Duas'; >> b=` '; >> c=`palavras.'; >> [a b c] ans = Duas palavras.
intendido o oneito de glutinoD que ser muito utilizdo dqui em dinteD tornEse fil tref de de(nir um mtrizF m mtriz montd linh ps linhD onde espo ou vrgul indim trnsio de olun e pontoEeEvrgul indi trnsio de linhF
5 6
yserve que ans @answer A vrivel pdro do responsvel por rmzenr o ltimo resultdoD so no tenh sido previmente delrd um vrivelF
Matlab
CAPTULO 3.
NMEROS E MATRIZES
m outr mneir de de(nir mtrizes onsiste em rir vetoresElinh om elementos em progresso ritmti trvs d simples sintxeX
11
16
4.7100
5.7100
m tereir form de rir vetores utiliz funo linspaceD que esp linermente um determindo nmero de elementos entre um vlor (nl e um iniilF u sintxe X
5.0000
7.5000
10.0000
e funo logspace similrD porm esp os elementos logritmimente n se IHF m diferen muito importnte em su sintxe que os vlores iniiis e (nis so potnis de IHD devendo ser esritos pens seus expoentesF
10.0000
ixistem muits outrs forms de se rir um mtrizF epens ttulo de uriosiddeD funo xlsread l um mtriz prtir de um rquivo v gerdo pelo progrm Microsoft ExcelF
3.4 Indexao
y pdro de indexo mtriil no form trdiionl intuitiv (i, j)D onde i represent o nmero d linh e j represent o nmero d olunF
Matlab
>> m=[.1 .2 .3 .4 .5 ; .6 .7 .8 .9 1 ; 1.1 m = 0.1000 0.2000 0.3000 0.4000 0.6000 0.7000 0.8000 0.9000 1.1000 1.2000 1.3000 1.4000 >> m(2,5) ans = 1
CAPTULO 3.
NMEROS E MATRIZES
ys elementos d mtriz tmm podem ser indexdos seqenilmente onformeD tel ixoF I P Q I
(1) (2) (3)
P
(4) (5) (6)
Q
(7) (8) (9)
R
(10) (11) (12)
S
(13) (14) (15)
>> m(3,1:4) ans = 1.1000 >> m(:,5) ans = 0.5000 1.0000 1.5000
1.2000
1.3000
1.4000
>> m(1,3:end) ans = 0.3000 0.4000 0.5000 y oneito de indexo pode ser mplido qundo no lugr dos ndies olomEse vetores ou mtrizes de ndiesF >> m([1 3],[2 4]) ans = 0.2000 0.4000 1.2000 1.4000 >> m([1 5 9; 4 8 12]) ans = 0.1000 0.7000 1.3000 0.2000 0.8000 1.4000 gso se oloque um ndie que exed s dimenses d mtrizD o resultdo ser um menE sgem de erroF or outro ldoD se for de(nido um novo elemento que exed esss mesms dimensesD ento mtriz ser redimensiond de form inluir esse novo elementoD sendo s novs posies preenhids om HF >>m(4,6)=2.1 ans = 0.1000 0.6000 1.1000 0
0 0 0 2.1000
Matlab
+9 X dioF
ixFX x + y = [3 9; 7 11]
9 X sutroF
ixFX x y = [1 3; 3 3]
9 X multiplio mtriilF
ixFX x y = [8 24; 19 58]
99 X trnspost
ixFX x = [2 5; 3 7]
.9 X multiplio eslrF
ixFX x. y = [2 18; 10 28]
CAPTULO 4.
II
F9 X potni eslrF
ixFX x.2 = [4 9; 25 49] yservesX IF r operes entre mtriz e nmero eslrD o progrm fz um expnso eslr do nmeroD exeutndo opero entre o nmero e d elemento d mtrizF ixFX x + 3 = x + [3 3; 3 3] = [5 6; 8 10] PF e preedni de operes pode ser ontrold utilizndoEse prntesesF ixFX ((x + 3) x ) = [28 46; 67 110]
Matlab
Operador Descrio
< <= > >= == ~= 8
wenor que wenor ou igul wior que wior ou igul sgul @no onfundir om = A hiferente de i y xy
interessnte ressltr que no os operdores podem ser usdos no somente om eslresD ms tmm om vetores e mtrizesD sendo opero relizd elemento elementoF
Matlab
CAPTULO 4.
IP
>> a=-3; b=7; >> a<b ans = 1 >> a<b & a==b ans = 0 >> x=1:10 x = 1 2 >> y=x>=5 y = 0 0
10
Matlab
onesX
ri um mtriz ujos elementos so todos iguis ID ddos o nmero de linhs e oluns d mtrizD respetivmenteF
1 1
r se rir um mtriz om todos os elementos iguis PD por exemploD st multiplir mtriz de I por PF @PBonesA
zerosX
CAPTULO 5.
FUNES MATRICIAIS
IR
eyeX
0 0 1
randX ri um mtriz de elementos pseudoEletrios om distriuio uniforme entre H e ID ddos os nmeros de linhs e olunsF y omndo rand(`state',n) reinii o gerdor de nmeros pseudoEletrios pr o nEsimo estdoF se rand(`state',sum(100*clock)) pr reiniir em um diferente estdo d horrioF m omndo similrD o randn D
funion d mesm formD ms om distriuio normlF
0.8913 0.7621
0.4565 0.0185
0.8214 0.4447
0.6154 0.7919
0.9218 0.7382
ist funo muito til prD por exemploD se fzer testes em progrms que vo trlhr om ddos imprevisveisF
detX
invX
CAPTULO 5.
FUNES MATRICIAIS
IS
eigX
retorn um vetor de utovlores d mtriz de entrdF r dus vriveis de sdD retorn mtriz de utovetores e mtriz digonl de utovloresF
>> v=eig(a) v = 0.2679 3.7321 >> [V D]=eig(a) V = -0.9391 -0.5907 0.3437 -0.8069 D = 0.2679 0 0 3.7321
sizeX
lengthX
reshapeX
d um novo formtoD qundo possvelD mtriz de entrdD ddos respetivE mente mtriz e seus novos nmeros de linhs e olunsF ys elementos d mtriz so perorridos seqenilmente pelo modo de indexo a(i)F @ej seo PFRA
7 8 4 9
9 10 5 10
CAPTULO 5.
FUNES MATRICIAIS
IT
rot90X
9 8 7
iplrX
1 4 7
9 6 3
diagX
ri um vetor prtir d digonl prinipl de um mtriz de entrd ou ri um mtriz digonl prtir de um vetor de entrdF
0 0 9
CAPTULO 5.
FUNES MATRICIAIS
IU
triuX
3 6 9
0 0 9
sumX
retorn som dos elementos de d olun de um mtriz de entrd ou som dos elementos de um vetor de entrdF
18
prodX
retorn o produto dos elementos de d olun de um mtriz de entrd ou o produto dos elementos de um vetor de entrdF
meanX retorn mdi ritmti dos elementos de d olun de um mtriz de entrd ou mdi ritmti dos elementos de um vetor de entrdF
>> mean( [1 -2 3 -4; 5 -6 7 -8] ) ans = 3 -4 5 -6
CAPTULO 5.
FUNES MATRICIAIS
IV
min e maxX
retornmD respetivmenteD o vlor mnimo e o vlor mximo dos elementos de d olun de um mtriz de entrd ou o vlor mnimo e o vlor mximo dos elementos de um vetor de entrdF
sortX
retorn mtriz de entrd om d olun ordend em ordem resenteD ou o vetor de entrd om seus elementos ordendos em ordem resenteF
-2
-4
-6
-8
Matlab
help elfunF
possui muits funes mtemtis elementres que podem ser listds pelo oE eixo esto listds s mis importntesF
Matlab
trlhm em rdinosF
seno seno hiperlio ro seno osseno osseno hiperlio ro osseno tngente tngente hiperli ro tngente
sente sente hiperli ro sente ossente ossente hiperli ro ossente otngente otngente hiperli ro otngente
CAPTULO 6.
PH
xX ceilX
eproxim pr o inteiro de menor vlor solutoD ignorndo s ss deimisF eproxim pr o inteiro nteessorF
oorX
roundX
esto de diviso inteirD ddos respetivmente o diviE dendo e o divisorF r dividendos negtivosD sendo x e y inteiros positivosD rem(-x,y)=-rem(x,y)F wis detlhes em help remF esto de diviso inteirD ddos respetivmente dividendo e o divisorF r dividendos negtivosD sendo x e y inteiros positivosD mod(-x,y)=y-mod(x,y) se mod(x,y)=0D ou mod(-x,y)=0 so ontrrioF wis detlhes em help modF
CAPTULO 6.
PI
>> x=[-4:4] x = -4 -3 >> rem(x,3) ans = -1 0 >> mod(x,3) ans = 2 0 >> sign(x) ans = -1 -1
yservesX
-2
-1
-2
-1
-1
-1
IF iw@xDyA tem o mesmo sinl de x enqunto wyh@xDyA tem o mesmo sinl de yF PF iw@xDyA e wyh@xDyA so iguis se x e y possuem o mesmo sinlD ms diferem de y se x e y possuem sinis opostosF
rootsX
polyvalX etorn o vlor ou imgem de um polinmioD ddos respetivmente o poE linmio e o vlor de su vrivel independenteF
>> polyval(a,2) ans = 20
ssto o mesmo que 1(2)2 + 5(2) + 6 = 20F
polyX
convX
gonvolui dois polinmiosF x prtiD isso o mesmo que multiplir de form distriutiv dois polinmios @ms no dois vetoresAF
32
24
xeste exemploD mostrEse que (x2 + 5x + 6)(2x + 4) = 2x3 + 14x2 + 32x + 24F
Captulo 8 Grcos
8.1 Grcos de duas dimenses
y um software muito e(iente n rio e mnipulo de gr(osD presentndo diverss funes que uxilim esss operesF fsimenteD os gr(os rtesinos so plotdos onforme os pssos ixoX IF griEse um vetor X om s oordends do eixo ds sisssY PF isreveEse funo desejdD prtir do vetor XD qul rir um novo vetor Y ds ordendsY QF lotEse o gr(oF iste psso ser ensindo mis frenteF ys pres ordendos (x,yA ssim ridos so mrdos no gr(o e ligdos por rets @interE polo linerAF yservEse portnto queD qunto menor for o inremento do vetor XD mis pres ordendos sero ridos eD onseqentementeD melhor preiso do gr(oF im ompensoD um mior quntidde de memri utilizdF intre s inmers funesD esto listds ixo s mis usdsX
Matlab
plotX
hesenh gr(os lineres de dus dimensesD ddos o vetor de sisss e o vetor de ordendsF
X2 e Y2 orrespondem s
CAPTULO 8.
GRFICOS
PR
pigur VFIX
Grco do comando
plot(X,Y).
e formto de orD mrdor e tipo de linh dos gr(os tmm pode ser on(gurd pelo usurioF r isso usEse seguinte notoX
plot(X1, Y1, `Conf1', X2, Y2, `Conf2', ... , Xn, Yn, `Confn') ,
onde no lugr de ixoF
Cor
y m r g w k mrel mgent zulElro vermelh verde zul rn pret F o x C B s d v
Marcador
ponto rulo xis ruz estrel qudrdo losngo tringulo pG tringulo pG tringulo pG tringulo pG pentgrm hexgrm
Tipo de linha
E X EF slid pontilhd troEponto trejd
--
^ ` b p h
>> plot(X,Y,`ko--',X,10*X,`*')
r rir gr(os em jnels diferentes usEse o omndo gure(n) ntes do omndo plotD onde n o nmero d jnel de (gursF gso ontrrioD d novo gr(o rido ser plotdo n ltim jnel ert @gr(o orrenteAF r pgr o gr(o d jnel orrente sem fehElD esreveEse o omndo clf F
CAPTULO 8.
GRFICOS
PS
pigur VFPX
Grco de
plot(X,Y,`ko',X,10*X,`*').
subplotX
hivide jnel de (gurs em um mtriz m x n de suEjnelsD seleionndo um ds suEjnels pelo seu nmero orrespondenteF isses nmeros esto ordendos suessivmente o longo ds linhsF es entrds dess funo so respetivmente o nmero de linhs e oluns d jnel e posio do pr de eixos orrenteF
pigur VFQX
lot gr(os om o eixo x em esl logrtmi n se IHF lot gr(os om o eixo y em esl logrtmi n se IHF
CAPTULO 8.
GRFICOS
PT
pigur VFRX
em escala logartmica.
lot dus urvs no mesmo gr(o om diferentes esls pr o eixo yF e primeir dels tem esl esquerdD e segund tem esl direitF
plotyyX
>> plotyy(X,Y,X,cos(X))
pigur VFSX
y.
polarX
CAPTULO 8.
GRFICOS
PU
pigur VFTX
Matlab
plot3X
pigur VFUX
Grco do comando
plot3.
meshgridX gri dus mtrizes X e Y prtir de dois vetores x e yD onde s linhs d mtriz X so pis do vetor xD e s oluns d mtriz Y so pis do vetor y D sendo feits tnts pis neessris pr que ms s mtrizes tenhm s mesms dimensesF iss funo importnte pr rio de mlhs e superfies em trs dimensesF
CAPTULO 8.
GRFICOS
PV
>> [X,Y]=meshgrid(x,y) X = 0 1 0 1 0 1 Y = 2 3 4 2 3 4
meshX
pigur VFVX
Grco do comando
mesh.
surf X
>> surf(X,Y,Z);
es ores tnto d superfie qunto d mlh em Qh esto odi(ds de ordo om ltur reltiv dos pontos no eixo z F unto mior for z D mis vermelhd ser orD e qunto menor for z D mis zuld el serF
CAPTULO 8.
GRFICOS
PW
pigur VFWX
Grco do comando
surf.
titleX
title(`Ttulo do Grco')
text(X, Y, `Texto')
gridX axisX
wostr linhs de grde no gr(o orrenteF helimit os intervlos dos eixos de ordo om sintxeX
hold onX
ermite que novos gr(os sejm ridos n jnel orrente sem que os gr(os nteriores sejm pgdosF
hold o X
CAPTULO 8.
GRFICOS
QH
whitebgX
>> >> >> >> >> >> >> >> >> >>
x=[-5*pi:0.1:5*pi]; y=sin(x)./x; plot(x,y); title(`\it{Sample}') xlabel(`x'); ylabel(`sin(x)/x'); axis([-15 15 -0.3 1.1]); text(-2*pi, 0, `-2\pi'); text(2*pi, 0, `2\pi'); whitebg([0.4057 0.9355 0.9169]);
pigur VFIHX
e or do plno de fundo volt ser rn qundo (gur exportd do F xos textos inseridos nelD possvel mudr o tipo e o tmnho d fonteD esrever em negritoD itlioD susritoD soresrito e ind representr letrs gregsF ssso pode ser ompreendido pel tel seguinteX
Matlab
CAPTULO 8.
GRFICOS
QI
Propriedade
ipo de fonte mnho de fonte xegrito stlio usrito oresrito vetr greg
Sintaxe
Exemplo
clf X
closeX peh jnel orrenteF r fehr nEsim close(n)F y omndo close all feh tods s jnelsF
H(s) =
onde os oe(ientes a1 , a2 , ...an e b1 , b2 , ...bm so reis e onstntesD e k = bm /an F es rzes do numerdor e do denomindor so hmdsD respetivmenteD de zeros e plos d funo H(s)F e onstnte k denomind gnhoF
tf2zpX
>> [z,p,g]=tf2zp(num,den) z = -1 p = -3 -2 1
inontr o numerdor e denomindor d funoD ddos zerosD plos e gnhoF
g =
zp2tf X
>> [N,D]=zp2tf(z,p,g) N = 0 1 1 D = 1 5 6
CAPTULO 9.
tf X
pzmapX
epresent o digrm de plos e zerosD ddo o ojeto d funo de trnsferniF gd riz do numerdor @zeroA representd no plno omplexo por um rulo @AD enqunto d riz do denomindor @ploA representd por um xis @AF
>> pzmap(H)
pigur WFIX
bodeX
hesenh os gr(os de |H(j)|dB e H(j) @higrm de fodeAD ddo o ojeto d funo de trnsferniF
>> bode(H)
y omndo bode(H,w) desenh o gr(o pr um ddo vetor de freqnis wD bode(H,{wmin,wmax}A desenhEo pr freqnis mnim e mximF e
>> bode(H,{1e-1,1e2})
CAPTULO 9.
QR
pigur WFPX
Diagrama de Bode.
etorn um vetor omplexo om respost em freqni de H(j) = H(s)|s=j D ddos o seu numerdorD o seu denomindor e um vetor de freqnis F gso sej omitid vrivel de retornoD est funo simplesmente exie os gr(os de mdulo e fseF
freqsX
>> >> >> >> >> >> >> >> >>
clf; w=logspace(-1,2,101); Hjw=freqs(num,den,w); moddb=20*log10(abs(Hjw)); fase=180*angle(Hjw)/pi; subplot(2,1,1), semilogx(w,moddb); title('Resposta em freqncia'), ylabel('|H(j\omega)|_{dB}'); subplot(2,1,2), semilogx(w,fase); ylabel('\angle H(j\omega) (graus)'), xlabel('\omega (rad/s)');
pigur WFQX
Captulo 10 Programao
10.1 Funes e scripts
punes e scripts so seqnis de omndos do rmzends em rquivos do tipo texto om extenso Fm9 @m-les AD que tm por (nlidde utomtizr proessos repetitivos e implementr lulos e omndos lgiosF e diferen si entre mos que s funes eitm prmetros de entrd e retornm prmetros de sdD enqunto os scripts unimente exeutm seqni de omndosF es funes e os scripts podem ser ridos esrevendo edit n linh de omndo ou lindo n rr de ferrments em File > New > M-leF or (rem rmzendos em rquivos textoD tmm podem ser editdos num editor de textosF ys mesmos omndos que o usurio esreveri no prompt d tnel de gomndo so usdos pr implemento do scriptF r que o m-le sej onvertido num funoD deve ser esrit seguinte expresso no elho do rquivoX
Matlab
%COMPLEXO % [r,i,m,a,c] = COMPLEXO(x) retorna em cinco % variveis as partes real e imaginria, % o mdulo, o argumento e o conjugado de % um nmero complexo. function[a,b,c,d,e]=complexo(x) a=real(x); b=imag(x); c=abs(x); d=angle(x); e=conj(x);
eps esrito o digoD o rquivo w dever ser slvo om o mesmo nome d funo @no exemploD omplexoFm9AF
CAPTULO 10.
PROGRAMAO
QT
m ondio neessri pr exeuo de rquivos w que eles estejm no diretrio orrente do F r exeuo de um scriptD feit n rr de ferrments d jnel de edio pel opo Debug>Run ou File>Run Script @dependendo d verso do AD mudn de diretrio orrente utomtiD sendo desneessri interveno do usurioF e mudn de diretrio orrente pode ser feit lindoEse no oto d jnel prinipl do progrm ontendo FFF9D o ldo de Current DirectoryD ou por um dos seguintes omndosF
Matlab
Matlab
dir E list diretrios e rquivos do diretrio orrenteY d nome_diretrio E mud diretrio orrente pr nome_diretrio Y d FF E retorn o diretrio piD um nvel imY edit nome E edit um funo ou um script no diretrio orrenteY nome_script E exeut um sriptD so estej no diretrio orrenteY [sIDsP]anome_funo @eIDePA E hm um funoD so estej no diretrio orrente ou n iliote do F
Matlab
m estrutur ondiionl permite seleo de um onjunto de omndos serem exeutdos qundo um dd ondio for ou no stisfeitD podendo ssim modi(r o )uxo nturl de omndosF es trs estruturs ondiionis sis do esto listds seguirF
Matlab
comandos
istrutur if P if condio1
comandos1 else elseif condio2 comandos2 comandos2 end elseif condio3 comandos3
FFF else end
comandos1
istrutur if Q if condio1
comandosN
CAPTULO 10.
PROGRAMAO
QU
es estruturs I e P so sos prtiulres d estrutur QF es ondies so formds pelos operdores lgios e relionisF eixo mostrdo um exemplo de um script om um estrutur ifF
A=2; B=3; if A==B display(`A e B iguais.') % Exibe texto na Janela de Comando. else display(`A e B diferentes.') end
undo se fz uso repetido de testes de iguldde om pens um rgumento omumD ostumEse usr estrutur switch-caseF iss estrutur tem seguinte formX swith var_teste se expresso_teste1
comandos3
e os testes de iguldde resultrem em flso pr todos os sosD os omndos de otherwise @que opionlA sero exeutdosF y exemplo ixo demonstr um plio d estrutur switch-caseF
clear all num=input('Escreva inteiro: '); % Exibe texto e l varivel. switch num case 1 y=1 case {2, 2.5} y=2 case 'tres' y=3 case {'quatro', 'Quatro', 'QUATRO' } y=4 otherwise y=0 end
10.2.2 Estruturas de repetio
m estrutur de repetio fz om que um seqni de omndos sej exeutd repetiE dmente enqunto se stisf um dd ondioF y possui dus estruturs de repetioX for e whileF
Matlab
comandos
comandos
CAPTULO 10.
PROGRAMAO
QV
e ondio d estrutur for que varivel sej menor ou igul mF inqunto stisfeit ess ondioD o trmino de d loop de omndosD varivel inrementd de incrF y inremento incr onsiderdo unitrio so sej omitidoF eixo segue um exemplo de lulo de mdi usndoEseD de form omprtivD s dus estrutursF
clear all x=input('Vetor de amostras: '); compr=length(x); % retorna o comprimento do vetor soma_f=0; for k=1:compr soma_f=soma_f+x(k); end media_f=soma_f./compr; soma_w=0; k=1; while k<=compr soma_w=soma_w+x(k); k=k+1; end media_w=soma_w./compr; disp('Media do for: '); % Exibe string disp(media_f); % Exibe valor da varivel disp('Media do while: '); disp(media_w);
A.1 Butterworth
BUTTER
r onstruo de (ltros
ButterworthF
[num,dem] = butter(N,Wn,`s') ! iste omndo retorn os oe(ientes do numerdor @num A e denomindor @dem A d funo de trnsferni do (ltro Butterworth pssEixF N ordem do (ltro e Wn freqni de orteF
e Wn for um vetor ontendo dus freqnis W n = [W1 W2 ] este omndo retorn funo de trnsferni do (ltro pssEnd Butterworth de ordem Px tendo fnd de pssgem om W 1 < W < W 2F $[num,dem] = butter(N,Wn,`high',`s') ! gonstri um (ltro pssEltF $[num,dem] = butter(N,Wn,`stop',`s') ! gonstri um (ltro fnd de rejeio se W n = [W 1 W 2]F
BUTTORD
Butterworth F
[N, Wn] = buttord(Wp, Ws, Rp, Rs,`s') ! iste omndo retorn ordem do (ltro
Wp Wp Wp Wp
= = = =
APNDICE A.
RH
A.2 Chebyshev
CHEBY1
r onstruo de (ltros
Chebyshev ipo sF
[num,dem] = cheby1(N,R,`s') ! iste omndo retorn os oe(ientes do numerdor @num A e denomindor @dem A d funo de trnsferni do (ltro chebyshev pssEixF N ordem do (ltro D R tenuo mxim n nd de pssgem e Wn freqni de orteF
e Wn for um vetor ontendo dus freqnis W n = [W1 W2 ] este omndo retorn funo de trnsferni do (ltro pssEnd Chebyshev de ordem Px tendo fnd de pssgem om W 1 < W < W 2F $[num,dem] = cheby1(N,R,Wn,`high',`s') ! gonstri um (ltro pssEltF $[num,dem] = cheby1(N,R,Wn,`stop',`s') ! gonstri um (ltro fnd de rejeio se W n = [W 1 W 2]F
CHEB1ORD
Chebyshev ipo s F
[N, Wn] = cheb1ord(Wp, Ws, Rp, Rs,`s') ! iste omndo retorn ordem do (lE tro Chebyshev que no mximo Rp df de tenuo n nd de pssgem e no mnimo Rs df n nd de rejeioF W p nd W s so s freqnis d nd de pssgem e rejeio respetivmenteF W deve ser ddo em rad/secF
ixemploX
Wp Wp Wp Wp
= = = =
CHEBY2
r onstruo de (ltros
[num,dem] = cheby2(N,R,`s') ! iste omndo retorn os oe(ientes do numerdor @num A e denomindor @dem A d funo de trnsferni do (ltro Chebyshev pssEixF N ordem do (ltro D R tenuo mnim n nd de rejeio e Wn freqni de orte d nd de rejeioF
e Wn for um vetor ontendo dus freqnis W n = [W1 W2 ] este omndo retorn funo de trnsferni do (ltro pssEnd Chebyshev de ordem Px tendo fnd de pssgem om W 1 < W < W 2F $[num,dem] = cheby2(N,R,Wn,`high',`s') ! gonstri um (ltro pssEltF $[num,dem] = cheby2(N,R,Wn,`stop',`s') ! gonstri um (ltro fnd de rejeio se W n = [W 1 W 2]F
APNDICE A.
RI
CHEB2ORD
Chebyshev ipo ss F
[N, Wn] = cheb2ord(Wp, Ws, Rp, Rs,`s') ! iste omndo retorn ordem do (ltro Chebyshev que tenh no mximo Rp df de tenuo n nd de pssgem e no mnimo Rs df n nd de rejeioF W p nd W s so s freqnis d nd de pssgem e rejeio respetivmenteF W deve ser ddo em rad/secF
ixemploX
Wp Wp Wp Wp
= = = =
A.3 Elliptic
ELLIP
r onstruo de (ltros
Elliptics ou CauerF
[num,dem] = ellip(N,Rp,Rs,Wn,`s') ! iste omndo retorn os oe(ientes do nuE merdor @num A e denomindor @dem A d funo de trnsferni do (ltro Elliptic pssE ixF N ordem do (ltroD Wn freqni de orteD Rp df de tenuo n nd de pssgem e Rs df n nd de rejeioF
e Wn for um vetor ontendo dus freqnis W n = [W1 W2 ] este omndo retorn funo de trnsferni do (ltro pssEnd Elliptic de ordem Px tendo fnd de pssgem om W 1 < W < W 2F $[num,dem] = ellip(N,Rp,Rs,Wn,`high',`s') ! gonstri um (ltro pssEltF $[num,dem] = ellip(N,Rp,Rs,Wn,`stop',`s') ! gonstri um (ltro fnd de rejeio se W n = [W 1 W 2]F
ELLIPORD
Elliptic F
[N, Wn] = buttord(Wp, Ws, Rp, Rs,`s') ! iste omndo retorn ordem do (ltro Elliptic que tem no mximo Rp df de tenuo n nd de pssgem e no mnimo Rs df n nd de rejeioF W p nd W s so s freqnis d nd de pssgem e rejeio respetivmenteF W deve ser ddo em rad/secF
ixemploX
Wp Wp Wp Wp
= = = =
Referncias Bibliogrcas
I li thie wtsurotoF
MATLAB 6: Fundamentos de ProgramaoF riD PHHIF MATLAB 6: Curso CompletoF wkron fooksD PHHQF
Programao em Matlab para EngenheirosF homson verningD PHHQF MATLAB 7: FundamentosF riD PHHRF Matlab 5: Verso do Estudante - Guia do UsurioF
R li thie wtsurotoF