El propsito de estas notas es hacer una rpida introduccin al matlab. Son
slo unas pequeas muestras para dar idea de como funciona este programa. Para un estudio ms serio deben consultarse otras referencias. En particular las que damos al final de esta pgina. El nombre de Matlab viene de Matrix Laborator como el nombre indica matlab es especialmente fuerte en el tratamiento de matrices. Estos fueron sus or!genes" a los que se han ido incorporando sucesivamente ms capacidades" sobretodo grficas. Matlab es una potente calculadora" por e#emplo calcula la suma de dos n$meros
>> 2+2 ans = 4 %unque el e#emplo es sencillo a vemos como actua matlab" se escriben las instrucciones en la l!nea de comandos && despu's de pulsar la tecla (ntro aparece el resultado ms aba#o como variable ans. El resultado no aparece visible en la pantalla si ponemos punto coma ) al final de las instrucciones" como en
>> A=rand(6); B=inv(A); B*A; Si quitamos los puntos comas de esta $ltima expresin veremos el resultado. Para escribirla de nuevo podemos usar la flecha hacia arriba del teclado" que nos recupera los comandos escritos anteriormente en la sesin.
>> A=rand(6), B=inv(A), B*A A = 0.1338 0.4514 0.6831 0.0164 0.7176 0.1536 0.2071 0.0439 0.0928 0.1901 0.6927 0.6756 0.6072 0.0272 0.0353 0.5869 0.0841 0.6992 0.6299 0.3127 0.6124 0.0576 0.4544 0.7275 0.3705 0.0129 0.6085 0.3676 0.4418 0.4784 0.5751 0.3840 0.0158 0.6315 0.3533 0.5548 B = -18.9422 -0.1768 -27.4583 8.2189 14.1721 17.0665 10.6427 -0.8112 14.3231 -3.3853 -9.0470 -7.7695 5.3157 -0.9261 7.4863 -1.8170 -2.6566 -5.1051 4.6141 -0.4972 6.8101 -3.2198 -2.1772 -3.1550 -9.7318 1.3315 -15.5596 3.3890 7.9718 9.3641 13.0642 0.4891 20.4944 -4.6187 -10.9522 -12.7382 ans = 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0 0.0000 0 -0.0000 -0.0000 1.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 0.0000 1.0000 -0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 1.0000 0.0000 0.0000 -0.0000 0.0000 0 0.0000 1.0000 *bs'rvese la rapide+ con que se han calculado estas matrices %,rand-./ encuentra una matri+ .x. de n$meros aleatorios -cada uno entre 0 1/" inv-%/ calcula su inversa luego comprobamos que 23% es la matri+ identidad. Los n$meros negativos que aparecen son debido al redondeo -en este caso ser!an n$meros mu pequeos" pero negativos/. 4eamos como mane#a matab los n$meros5
>> pi ans = 3.1416 >> !r"a# $!n% >> pi ans = 3.14159265358979 %unque nos da el valor de pi con distinto n$mero de decimales en realidad matlab traba#a internamente con doble presicin" pero nos muestra distintos formatos. Para ver los distintos formatos basta con usar el help5
?"a%inar= par#s ar' i%n!r'd. 1234A5 BA:@ 1i-'d !r"a# !r d!$$ars and ('n#s. 1234A5 3A5 Appr!-i"a#i!n .= ra#i! ! s"a$$ in#'%'rs. A$$ (!"p)#a#i!ns in 4A59AB ar' d!n' in d!).$' pr'(isi!n. 6ada n$mero se guarda en memoria como un vector de 7 btes" lo que da una mantisa de unos 18 1. d!gitos decimales. %l ser 7 btes , .9 bits de memoria" cada bit es como si fuera una ca#ita donde se almacenan los ceros o unos corrspondientes al n$mero en binario. :e estas ca#itas o bits" una de ellas corresponde al signo -; </" 11 bits al exponente el resto" esto es 8= bits a la mantisa. >n n$mero x ser por tanto -= si%n! - "an#isa - 10 * Los = 11 ,=097 posibles exponentes E se distribuen entre <10=? E 10=9" siendo el n$mero ms grande posible del orden de -=<eps/3= 10=? 1,7977- 10 ?07 el n$mero ms pequeo del orden de = <10== 2,25-10 <?07 . La mantisa de 8= bits nos da un epsilon mquina del orden de eps,= <8= 2,22-10 <1. . @ecordenmos que el epsilon mquina eps se define como el n$mero ms grande eps tal que la mquina no distingue entre 1 1;eps. El n$mero real ms grande" ms pequeo epsilon mquina respectivamente" se obtienen con
>>r'a$"in >>r'a$"a- >>'ps 6on matlab podemos ir escribiendo los comandos uno tras otro" pero cuando tenemos que hacer un pequeo programa o escribir muchos comandos suele resultar ms $til escribir un fichero con las instrucciones luego hacer que matlab los e#ecute. Estos son los ficheros .m que no son ms que ficheros de texto a los que luego ponemos la extensin .m . Matlab lleva incorporado un editor que podemos usar para este propsito. 2uscamos en Aile <& BeC <& M<file escribimos en el editor que aparece
!r"a# $!n% pri"'r!=2.1; s'%)nd!=2.1 !r n=1,40 #'r('r!=4*pri"'r!-3*s'%)nd! pri"'r!=s'%)nd!; s'%)nd!=#'r('r!; 'nd que luego guardamos en matlab con el nombre diferencias.m " a que lo que hace este programita es calcular los sucesivos t'rminos de la sucesin a n;= ,9 a n ? a n;1 empe+ando con a 1 ,=.1 a = ,=.1 En este caso" como no hemos puesto punto coma despu's de la l!nea de tercero" los resultados se irn escribiendo en la pantalla" unos deba#o de otros a medida que se van calculando.
2.10000000000000 2.10000000000000 2.10000000000000 2.09999999999999 2.10000000000002 2.09999999999991 2.10000000000036 2.09999999999854 2.10000000000582 2.09999999997672 2.10000000009313 2.09999999962747 2.10000000149012 2.09999999403954 2.10000002384186 2.09999990463257 2.10000038146973 2.09999847412109 2.10000610351563 2.09997558593750 2.10009765625000 2.09960937500000 2.10156250000000 2.09375000000000 2.12500000000000 2 2.50000000000000 0.50000000000000 8.50000000000000 -23.50000000000000 1.045000000000000'+00 2 - 4.075000000000000'+00 2 1.640500000000000'+00 3 - 6.551500000000000'+00 3 2.621650000000000'+00 4 - 1.048555000000000'+00 5 4.194325000000000'+00 5 - 1.677719500000000'+00 6 6.710888500000000'+00 6 - El resultado es sorprendente DD Esperar!amos ver que a n ,=.1" para todo n. EPor qu' aparece este extrao comportamientoF En realidad la ecuacin en diferencias a n;= ,9 a n ? a n;1 tiene por solucin
donde siendo 6 1 6 = dos constantes cualesquiera. Las condiciones iniciales a 1 ,a = ,=.1 determinan la solucin con constantes 6 1 ,1" 6 = ,0. Pero debido a que =.1 en base dos tiene una fraccin peridica que se repite indefinidamente" a que al calcular tercero,tercero,93primero<?3segundo" resulta que si eps es un n$mero mu pequeo comparable al epsilon mquina a ? ,tercero,=.1;eps al iterar ahora de nuevo con a = ,=.1" a ? ,=.1;eps" como nuevas condiciones iniciales" resulta que la constante 6 = a no es 0. Lo que hace que la solucin errnea aumente exponencialmente enmascare completamente la solucin prevista. Es un claro e#emplo de inestabilidad num'rica. !No te fes de los ordenadores! 2.684354350000000'+00 7 1.073741845000000'+00 8
6omentarios al programa5
1/ Si aadimos la instruccin fprintf-G H1..IfJn G"segundo/) aparecer una pantalla ms ordenada con los resultados en columna. =/
prin#(i,AB16.7CnA,s'%)nd!); 'nd ($!s'(i) Este programa abre un fichero de texto llamado resultados.txt donde se escribirn los clculos en columna. 2uscar en >> &'$p prin# para ms informacin sobre este otros comandos parecidos. ?/ a(1)=2.1; a(2)=2.1; !r n=1,18 a(n+2)=4*a(n+1)- 3*a(n); 'nd Este otro programa tiene una estructura ms apropiada para Matlab a que va incrementando las componentes de un vector a. Kue luego se puede usar " por e#emplo" para representar grficamente como >>p$!#(a) 4er >>8&!s para observar las variables que estn en memoria como van cambiando. En matlab ha unos aadidos llamados Loolboxes que incorporan ms funciones posibilidades. >na de ellas" que se incorpora en todas las versiones de Matlab para estudiantes" se llama Smbolic Loolbox. 6on ella podemos traba#ar con el n$mero de d!gitos de mantisa que deseemos" esta funcin es vpa. 2uscar en help vpa. El e#emplo siguiente nos da los 700 primeros d!gitos de pi5
>> vpa(pi,800) ans = ?.1918M=.8?87MIM?=?79.=.9??7?=IM80=7791MI1.M?MM?I81087=0MI9M998M=?0I71.90.=7.=07MM7.= 70?97=8? 9=11I0.IM7=19707.81?=7=?0..9I0M?799.0M88087==?1I=8?8M9071=797111I980=7910=I01M?78=110 888M.99. ==M97M89M?0?71M.99=7710MI8..8M??99.1=79I8.97=??I7.I7?1.8=I1=01M0M198.978..M=?9.0?97.1 0989?=.. 97=1??M?.0I=.0=9M191=I?I=987I00..0.?188771I97718=0M=0M.=7=M=890M1I18?.9?.I7M=8M0?.001 1??08?08 977=09..8=1?7919.M81M91811.0M9??08I=I0?.8I8M8M1M8?0M=17.11I?71M?=.11IM?1081178970I99. =?IMM.=I 9M8.I?81778I8=I=97M1==IM?717?011M9M1=M7??.I??.=990.8..9?07.0=1?M9M9.?M8==9I?I1M0I0=1I M7.0M9?I 0=II08?M=1I1I.=M?1I.I8=?79.I97179.I..M9081?=0008.71=I198=.?8.07=II78II1?9=I8II7M.0M1I ?.?I1I7I =19.7990M01==9M8?9?019.89M878?I1080IM==IM.7M=87M=?89=01MM8.11=1=M0=1M.07.90?991718M71 ?.=MII9I I1?0MM.0817I0I=11?9MMMMMM7?I=MI709MM8108MI?1I?=71.0M.?17. 6omo otro e#emplo" calculemos con mantisa ? la suma de los primeros =0 t'rminos de la serie armnica" esto es ($'ar a$$ s)"a=1 !r n=2,20 s)"a=vpa(vpa(s)"a,3)+vpa(10n,3),3) 'nd *$ r's)$#ad! D)' !.#'n'"!s 's s)"a =3.60. E' n! &a.'r (a$()$ad! (!n 's#a "an#isa !.#'ndrFa"!s >> s)"a =3.59773965714368 s)"a=0; #i( !r "=1,20 !r n=1,1000*"
s)"a=s)"a+10n ; 'nd #(")=#!(; 'nd p$!#(#) El programita de aqu! arriba utili+a una grfica para representar el tiempo que ha tardado Matlab en sumar distintas sumas parciales de esta serie armnica. E6ul es la suma de la serie armnica infinitaF Lodos sabemos que diverge" esto es" que si vamos sumando ms ms t'rminos las sumas parciales se hacen tan grandes como queramos. Na una manera divertida de pensar en la suma de los t'rminos de una serie. Se puede pensar que tenemos una pulguita que va dando saltitos" cada ve+" en este caso" primero de un metro" luego de medio" luego de una tercera parte" as! sucesivamente. Esto es que en el salto n avan+ar!a una distancia 1On. Kue esta serie diverge significa que si el n$mero de saltos es suficientemente grande nuestra amiga llegar!a de la %utnoma a Madrid" a la Luna" ... llegar!a tan le#os como queramos. DDPero si la calculamos con el ordenador esta suma ser!a finita DD ENas pensado en cul ser!a la sumaF Lal como hemos dicho Matlab est mu adaptado al clculo con vectores matrices" por e#emplo en las siguientes instrucciones >> -=G0 , 0.1 , 1H significa que x es un vector cuas componentes empie+an en 0" se van incrementando de 0.1 en 0.1 terminan en 1. Luego >>==sin(-) es un vector cuas componentes son los senos de las anteriores" >>disp(G-A =A >AH) muestra los traspuestos de estos vectores. El resultado se puede ver como sigue5
>> -=G0,0.1,1H; ==sin(-); >=(!s(-); >> A------------------------------------------------ ------- A >> A - s'n!(-) (!s(-) A, disp(G-A =A >AH) ans = - s'n!(-) (!s(-) ------------------------------------------------ ---------- 0 0 1.00000000000000 0.10000000000000 0.09983341664683 0.99500416527803 0.20000000000000 0.19866933079506 0.98006657784124 0.30000000000000 0.29552020666134 0.95533648912561 0.40000000000000 0.38941834230865 0.92106099400289 0.50000000000000 0.47942553860420 0.87758256189037 0.60000000000000 0.56464247339504 0.82533561490968 0.70000000000000 0.64421768723769 0.76484218728449 0.80000000000000 0.71735609089952 0.69670670934717 0.90000000000000 0.78332690962748 0.62160996827066 1.00000000000000 0.84147098480790 0.54030230586814 En Matlab podemos escribir un con#unto de instrucciones que forman un fichero.m" pero tambi'n podemos utili+ar una function. Na una diferencia entre ambos a que en un fichero.m los datos las variables son como si las hubi'rmos escrito desde la consola. En una funcin las variables son internas" no cambian ni afectan las externas. Por cierto que conviene muchas veces limpiar las variables externas con la instruccin >>($'ar a$$ si no queremos tener clculos confusos. Para limpiar la pantalla usaremos >>($( >n e#emplo de funcin ser!a el programita siguiente" que calcula los =0 primeros t'rminos de la serie exponencial
)n(#i!n GsH=s'ri'(-) #'r"=1; s)"a=1; !r n=1,20 #'r"=#'r"*-0n; s)"a=s)"a+#'r"; 'nd s=s)"a La funcin se llama desde la consola como >>s'ri'(-), Por e#emplo5
>>s'ri'(1) s)"a=2.71828182845905 @esultado que a da todas las cifras decimales correctas del numero e hasta la precisin de Matlat" como se puede comprobar fcilmente. 6on esta funcin podemos comprobar por e#emplo que al sumar una suma alternada afecta en mucho el error de redondeo" a que
>> '-p(-8)-s'ri'(-8) ans = -0.13229825662640 Mientras que
>> 10s'ri'(8)-'-p(-8) ans =3.152568231321777'-008 Grficos con Matlab Pueden verse en los siguientes e#emplos5 >n comando $til en matlab es ginput. 4er &&help gineput -tambi'n gtext/. %ba#o el pequeo programita dibu#a ,x-x<1/sin x" luego sobre la figura" permite tomar . puntos con el ratn" que al final muestra en la consola.
>> =A-*(--1)*sin(-)A; '>p$!#(); G-,=H=%inp)#(6); G-,=H >> &'$p p$!# 4arious line tpes" plot smbols and colors ma be obtained Cith PL*L-P"Q"S/ Chere S is a character string made from one element from an or all the folloCing ? colunms5 elloC . point < solid m magenta o circle 5 dotted c can x x<marR <. dashdot r red ; plus << dashed g green 3 star b blue s square C Chite d diamond R blacR v triangle -doCn/ S triangle -up/ T triangle -left/ & triangle -right/ p pentagram h hexagram 2#r!s '+'"p$!s,
>>G- = >H=p'a/s; >>(!n#!)r(-,=,>,A/A) >>p(!$!r(-,=,>) >>s&adin% in#'rp >>L=p'a/s; >> i%)r' (2); GM,&H=(!n#!)r(L,10); >> ($a.'$(M,&) produce las siguientes figuras5
>> &'$p '$)n Lrigonometric. sin < Sine. sinh < Nperbolic sine. asin < (nverse sine. asinh < (nverse hperbolic sine. cos < 6osine. cosh < Nperbolic cosine. acos < (nverse cosine. acosh < (nverse hperbolic cosine. tan < Langent. tanh < Nperbolic tangent. atan < (nverse tangent. atan= < Aour quadrant inverse tangent. atanh < (nverse hperbolic tangent. sec < Secant. sech < Nperbolic secant. asec < (nverse secant. asech < (nverse hperbolic secant. csc < 6osecant. csch < Nperbolic Exponential. exp < Exponential. log < Batural logarithm. log10 < 6ommon -base 10/ logarithm. log= < 2ase = logarithm and dissect floating point number. poC= < 2ase = poCer and scale floating point number. sqrt < Square root. nextpoC= < Bext higher poCer of =. 6omplex. abs < %bsolute value. angle < Phase angle. complex < 6onstruct complex data from real and imaginar parts. con# < 6omplex con#ugate. imag < 6omplex imaginar part. real < 6omplex real part. unCrap < >nCrap phase angle. isreal < Lrue for real arra. cplxpair < Sort numbers into complex con#ugate pairs. @ounding and remainder. cosecant. acsc < (nverse cosecant. acsch < (nverse hperbolic cosecant. cot < 6otangent. coth < Nperbolic cotangent. acot < (nverse cotangent. acoth < (nverse hperbolic cotangent. fix < @ound toCards +ero. floor < @ound toCards minus infinit. ceil < @ound toCards plus infinit. round < @ound toCards nearest integer. mod < Modulus -signed remainder after division/. rem < @emainder after division. sign < Signum. 4er tambi'n >>&'$p sp'()n (B'ss'$ , %a""a, Air=). >>&'$p ")n >>")n$is# (L'#a d' 3i'"ann, N!$in!"i!s !r#!%!na$'s) (ardi!id', >>'>p!$ar(A1+(!s(#)A ) Otros comandos tiles de matlab:
>> da#' >> (a$'ndar >> ($'ar -, ($'ar a$$ $i"pia $a varia.$' -, $i"pia #!das $as varia.$'s >> ($!s' , ($!s' a$$ (i'rra $a i%)ra a(#)a$, (i'rra #!das $as i%)ras >> a-is(G"in- "a-- "in= "a-=H) 'n()adra i%)ra 'n 's#' "ar(! >> .r'a/ sa$' d' d'n#r! d' )n OiP ! d' )n O8&i$'P >> ($( $i"pia $a pan#a$$a M!n#r!$ M (Q M!n#r!$ L) a(a.a (!n $a '+'()(iQn d' )n (R$()$! d' "a#$a. ('n (as! n'('sari!). Un juego: Vamos a mandar mensajes secretos Xulio 6'sar se comunicaba con sus gobernadores generales con mensa#es codificados. Nac!a corresponder a cada letra del abecedario la tercera siguiente. El mensa#e parec!a una sopa de letras ininteligible. Para decodificar no hab!a ms que proceder al rev's. %qu! tenemos en cuenta que las letras s!mbolos del teclado tienen asignados n$meros enteros del 0 al 1=I" cdigo %S6((. El comando char asigna este n$mero a las letras mientras que rem (p,q) es el resto de dividir p entre q -clase de restos/. El resultado es el siguiente5
S #'-#!=A4' 'n(an#a 's#' ()rs!A #'-#! = 4' 'n(an#a 's#' ()rs! S s'(r'#!=(&ar(r'"(#'-#!+3,128)) s'(r'#! = N&T&DdD8dT&v8&T-)vr S d'(!dii(a=(&ar(r'"(s'(r'#!-3,128)) d'(!dii(a = 4' 'n(an#a 's#' ()rs! >n programita de regalo5 tetris.m Anlisis de una Onda Seno Para poder generar ondas senosoidales que involucren parmetros tales como amplitud, frecuencia, frecuencia de muestreo, tiempo y ngulo de fase, hay que definir la funcin senosoidal. El siguiente es el cuerpo de la funcin. function [x]=senosoidal(amplitud,frecuencia,fm,tiempo,fase) %SENOSOIDA crea una senosoidal % SENOSOIDA(amp,fr,p!,samp,t) crea una senosoidal % amp = amplitud % fr = frecuencia % p! = fase % samp = frecuencia de muestreo % t = tiempo de muestreo % "op#ri$!t (c) %&&' (# Antonio )uintero % *+e,ision- ./. * *Date- %&&'0%&0&1 .2-.%-31 * for n=&-fm4tiempo5. an$ulo=%4pi4frecuencia0fm6 x(n7.)=amplitud4sin((an$ulo4n)7fase)6 % "omo los ,ectores empie8an en ., x arranca una % posici9n despu:s end Para verificar que la funcin senosoidal qued guardada en la carpeta Work, escribir pwd, esta funcin devuelve todo el pat! de la funcin (!"#$%&$'(p)"Work"senosoidal.m* y al escribir dir debe aparecer la funcin senosoidal.m +iempre es importante tener en cuenta el teorema fundamental de muestreo el cual dice que para representar digitalmente una se,al que contiene componentes de frecuencia hasta - ./ es necesario usar una frecuencia de muestreo de al menos 0- muestras por segundo. 1amos ahora a anali/ar dos ondas senosoidales que solo var2an en su frecuencia, las dos se,ales van a tener los siguientes parmetros! una amplitud de 3.), 4333 de frecuencia de muestreo durante 4 segundo y con un ngulo de fase 35 las dos ondas solo se van a diferenciar en sus frecuencias, una es a 663 ./ y la otra es a 664 ./5 se pide! graficar las ondas hasta nyquist y graficar sus correspondientes espectros. 7ota! Para poder representar digitalmente estas se,ales, la frecuencia de muestreo deber2a ser como m2nimo para 663 ./, 883 ./ y para 664 ./, 880 ./, para nuestro e9emplo se esta tomando solo la mitad de la frecuencia de muestreo, la cual es )33 ./, esta frecuencia corresponde a la frecuencia de 7yquist. $ una variable x1 se asigna el resultado de la funcin senosoidal con todos sus parmetros ;; x.=senosoidal(&/<,''&,<&&,.,&)6 $ una variable x2 se asigna el resultado de la funcin senosoidal con todos sus parmetros ;; x%=senosoidal(&/<,''.,<&&,.,&)6 $ una variable x se asigna el resultado de la suma de las dos ondas senosoidales ;; x=x.7x%6 $ una variable xx se asigna el resultado de la multiplicacin de las dos ondas senosoidales ;; xx=x./4x%6 Para poder graficar todas las ondas con sus resultados, se utili/a el comando subplot(cantidad de figuras, posicin, numero de la figura), seguido del comando plot(figura) y un t2tulo para el grfico. ;; su(plot(',.,.),plot(x.),$rid on,8oom,title(=Onda Seno ''& >8=) ;; su(plot(',.,%),plot(x%),$rid on,8oom,title(=Onda Seno ''. >8=) ;; su(plot(',.,3),plot(x),$rid on,8oom,title(=Onda Seno ''& >8 7 Onda Seno ''. >8=) ;; su(plot(',.,'),plot(xx),$rid on,8oom,title(=Onda Seno ''& >8 4 Onda Seno ''. >8=) :rficas de cada onda (663, 664, 663;664, 663<664* &os siguientes son los sonidos que resultaron de la anterior prctica! 663 664 663;664 663<664 El siguiente paso corresponde al anlisis de los espectros de cada una de estas ondas. Primero se asigna a una variable espx el valor absoluto de la transformada rpida de =ourier de la funcin seno a 663 ./ almacenada anteriormente en la variable x1 ;; espx.=a(s(fft(x.))6 +eguidamente se hace el mismo proceso para las otras ondas generadas. ;; espx%=a(s(fft(x%))6 ;; espx=a(s(fft(x))6 ;; espxx=a(s(fft(xx))6 $hora se grafican las respuestas en una sola grfica ;; su(plot(',.,.),plot(espx.),$rid on,8oom,title(=Espectro Onda Seno ''& >8=) ;; su(plot(',.,%),plot(espx%),$rid on,8oom,title(=Espectro Onda Seno ''. >8=) ;; su(plot(',.,3),plot(espx),$rid on,8oom,title(=Espectro de la Onda Seno ''& >8 7 Onda Seno ''. >8=) ;; su(plot(',.,'),plot(espxx),$rid on,8oom,title(=Espectro de la Onda Seno ''& >8 4 Onda Seno ''. >8=) :rficas de los espectros de cada onda (663, 664, 663;664, 663<664* &as grficas e-presan las simetr2as de las energias de todas las ondas. .ay otra manera de graficar los espectros por medio de la funcin stem(varible), esta funcin muestra la figura en forma de barras de tal manera que en algunos casos es ms fcil observar que sucede en la grfica. En la siguiente figura se muestra un /oom hecho en cada grfica con el fin de poder establecer en que valores estn e-actamente los espectro. ;; su(plot(',.,.),stem(espx.),$rid on,8oom,title(=Espectro Onda Seno ''& >8=) ;; su(plot(',.,%),stem(espx%),$rid on,8oom,title(=Espectro Onda Seno ''. >8=) ;; su(plot(',.,3),stem(espx),$rid on,8oom,title(=Espectro de la Onda Seno ''& >8 7 Onda Seno ''. >8=) ;; su(plot(',.,'),stem(espxx),$rid on,8oom,title(=Espectro de la Onda Seno ''& >8 4 Onda Seno ''. >8=) :rficas de los espectros de cada onda (663, 664, 663;664, 663<664* >a con todos estos datos, se podr2a preguntar cul es la frecuencia de anlisis, definida por la frecuencia de muestreo sobre la longitud de la se,al y su intervalo de muestreo, definida a su ve/ como la unidad sobre la frecuencia de muestreo.