Vous êtes sur la page 1sur 26

1

Introduccin al MATLAB
La idea de estas notas es tratar de manera general, como es el uso de variables, expresiones y comandos en MATLAB, as como sus caractersticas. Adicionalmente dar una introduccin al uso de los archivos con extensin .m (programas e ecutables por MATLAB! y como traba ar con ellos.

Manejo de variables:
"n MATLAB como en cual#uier otro lengua e de programacin, y$o Asistente Matem%tico, se utili&an variables. Las variables deben tener un nombre seg'n ciertas reglas. "stas reglas son( )* pueden comen&ar con un n'mero, aun#ue si pueden tener n'meros (variable+ es un nombre v%lido!. Las m%yusculas y mnusculas se di,erencian en los nombres de variables. (A y a son dos variables di,erentes! Los nombres de variables no pueden contener operadores ni puntos. ()o es v%lido usar $, -, ., /, ...! 0i se traba a con comple os slo puede utili&arse uno de los nombres i y$o para variables. )o es necesario de,inir el tipo de variable o tama1o (si se usa un vector y despues se expande, no hay problema!

Manejo de expresiones:
2na expresin en MATLAB, puede ser( 2na variable o un n'mero. (e ( variable+, 3! 2n comando aplicado. (e ( norm(A!! 2na expresin matem%tica. (e ( 4/3-variable+! 0i cual#uiera de las anteriores se escribe en la lnea de comandos (55 ! del MATLAB, 6l devolver% el nombre de la variable y su valor (en caso de #ue la expresin tenga nombre, de no tenerlo, MATLAB devolver% Ans 7 resultado!. 2n punto importante #ue se debe resaltar es #ue esto ocurre siempre y cuando la expresin no termine con punto y coma. Al a1adir un punto y coma al ,inal de la expresin MATLAB no imprime su valor en la pantalla, aun#ue si reali&a el c%lculo. (a73/48 de a en a el valor de 9, pero no lo muestra!.

Manejo de comandos:
:ada comando en MATLAB es un archivo con extensin .m, por lo tanto es necesario tener las libreras en #ue se encuentran los comandos #ue se desean utili&ar. Aun#ue la gran mayora de los comandos utili&ados siempre vienen incluidos en las librerias. MATLAB )* distingue entre m%ysuculas y mnusculas en los comandos (a menos #ue se traba e en 2nix! . "l resto de estas notas tratar% cada comando en

2 detalle (los m%s usados!.

Manejo de archivos con extensin .m:


Todos los comandos a #ue se re,ieren estas notas pueden utili&arse directamente desde la lnea de comandos del MATLAB (55 !. 0in embargo la idea es hacer un archivo (con extensin .m! #ue contenga el programa (para poder modi,icarlo, revisarlo, e ecutarlo otra ve&..! ya #ue es m%s venta oso as. Los programas no re#uieren indentacin como en los e emplos #ue he puesto a#ui, sin embargo es recomendable hacerlo por claridad al intentar modi,icar el programa o revisarlo. ;ara traba ar estos archivos, es necesario saber( <ue es( "s un archivo de texto como cual#uier otro donde se encuentra el listado del programa. (slo #ue su extensin no es txt sino m! :omo crear uno( Las ,ormas m%s ,%ciles son( =esde 2nix( con el comando >?pico archivo.m> donde archivo es el nombre del programa. =esde @indoAs( con el )*T";A=, teniendo la precaucin de cambiar el tipo de archivo a >Todos los archivos (-.-!> antes de grabarlo. (de lo contrario el archivo #uedar% con nombre archivo.m.txt y el MATLAB no podr% e ecutarlo,la solucin es #uitar el .txt!. :omo e ecutarlo para obtener los resultados( =esde la linea de comandos de MATLAB se escribe el nombre del archivo (sin el .m!

NOTA :
"l archivo debe #uedar grabado en el mismo directorio #ue MATLAB para poder 0er e ecutado.

!so b"sico de MATLAB


)ormalmente se re#uiere de modelos computacionales con el ,in de resolver problemas de ingeniera. Muchas veces puede ser 'til hacer un programa #ue utilice matrices, comple os, y otras estructuras matem%ticas, pero ,%cil de escribir y revisar. MATLAB es ideal para esto. "stas notas est%n organi&ada de la siguiente ,orma( Beneralidades. :omandos de programacin. :omandos matem%ticos. ;rogramas de e emplo variados.

NOTA:
"n algunos programas se utili&a el comando de MATLAB ( C el cual se utili&a para a1adir un comentario en el programa. "stos comentarios son importantes para #ue otros puedan entender el contenido con mayor ,acilidad.

#eneralidades
"sta es una breve introduccin al mane o de variables, expresiones y archivos con extensin .m (programas e ecutables por MATLAB!, con respecto a su creacin y uso.

$omandos b"sicos de pro%ramacin


;ara la estructura de programacin en MATLAB se re#uiere conocer por lo menos los siguientes comandos( &N' =etermina hasta cual orden llega el e,ecto de i,, ,or, y Ahile. (;ara e emplos de su uso ver i,, Ahile y ,or! I( Deri,ica si se cumple cierta condicin, y de acuerdo a si se cumple o no reali&a la accin #ue se desee. )*IL& Eeali&a una parte del programa mientras se cumpla alguna condicin. (O+ Muy parecido al @hile, pero utili&a un contador, es 'til si se #uiere repetir una parte del programa un n'mero determinado de veces. $L&A+ Borra todas las variables de la memoria. "s recomendable usarlo al principio de todos los programas. (simplemente escriba clear, al comien&o del programa! -LOT 0irve para obtener resultados gr%,icos en 4=. 'I 0irve para escribir texto de salida o vectores. de resultados. IN-!T 0e utili&a para #ue el programa pida valores de variables mientras se e ecuta.

$omandos b"sicos matem"ticos


Lo #ue hace verdaderamente poderoso al MATLAB reali&ar operaciones matem%ticas con elementos como( MAT+I$& Asignacin. Mane o de subndices. *peraciones matem%ticas simples (sumar, restar, multiplicar!. :omandos matem%ticos para matrices (invertir, determinante, valores propios...!. .&$TO+& Asignacin. Mane o de subndices. *peraciones matem%ticas simples (sumar, restar, producto punto!. :omandos matem%ticos para vectores (producto cru&, longitud, normas ...!. N/M&+O +&AL& 0 $OM-L&1O es la ,%cilidad para

Asignacin de valores a variables. )ota importante sobre el uso de las variables i y al traba ar con comple os. *peraciones matem%ticas simples (sumar, restar, multiplicar, potenciacin!. :omandos matem%ticos para reales y comple os (valor absoluto, rai& cuadrada, %ngulo (para traba ar en polares!, norma!. INT&#+AL& '&(INI'A

0e solucionan num6ricamente por medio del comando T+A-2. MO'&LA1& '& La orden I T&MA LIN&AL&

IM!LIN3

Los temas tratados anteriormente son su,icientes para reali&ar programas sencillos y 'tiles. Los comandos disponibles en MATLAB son muchos m%s, pero los tratados a#ui son los m%s ,recuentemenete necesitados. "n caso de ser necesario emplear otras ordenes, es posible >buscar> la solucin por medio de *&L- (todo est% en ingl6s!, la cual lista los temas matem%ticos #ue se pueden emplear (separados en librerias llamadas toolbox!. *&L- 4toolbox5 lista los comandos en la librera y *&L- 4comando5 explica su uso y sint%xis.

$omando I(
Deri,ica si se cumple cierta condicin, y de acuerdo a si se cumple o no reali&a la accin #ue se desee. intaxis: La sintaxis de la orden es( i6 7condicin89 7ordenes :8 4else9 7ordenes ;85 end, =onde las ordenes entre FG son opcionales. (ordenes +! son las ordenes #ue se reali&ar%n si (condicin! se cumple. (ordenes 4! son las ordenes #ue se reali&ar%n si (condicin! )* se cumple. (condicin! ;uede ser( a a a a a a 77 b (veri,ica si a es igual a b! H b 5 b H7 b (veri,ica si a es menor o igual #ue b! 57 b I7 b (veri,ica #ue a y b sean di,erentes!

&jemplo simple de uso: "l siguiente e emplo ilustra el uso de i,( <&jemplo de uso de i6. n=>, i6 n==>9 n <al escribir una expresin sin punto ? coma 6inal9 MATLAB escribe su resultado en pantalla. else9 n=: end, n=;, i6 n==>9 n else9 n=: end, La salida #ue se obtiene con el programa anterior es la siguiente( n 7 n 7 J +

=onde el J proviene de entrar al primer i,, y el uno, de entrar al else del segundo i,.

$omando )*IL&
Eeali&a una parte del programa mientras se cumpla alguna condicin. intaxis: La sintaxis de la orden es( @hile 7condicin89 7ordenes8 end, (ordenes! son las ordenes #ue se reali&ar%n mientras (condicin! se cumpla. (condicin! ;uede ser( a a a a a a 77 b (veri,ica si a es igual a b! H b 5 b H7 b (veri,ica si a es menor o igual #ue b! 57 b I7 b (veri,ica #ue a y b sean di,erentes!

&jemplo simple de uso: "l siguiente e emplo ilustra el uso de Ahile( <&jemplo de uso de @hile. n=>, @hile nA=B9 n <Al escribir el nombre de la variable 7sin punto ? coma8 MATLAB imprime su valor. n=nC:, <&l punto ? coma evita Due MATLAB imprima el nuevo valor de n. end,

La salida #ue se obtiene al e ecutar el programa anterior es( n 7 n 7 n 7 n 7 n 7 n 7 J + 4 3 K 9

$omando (O+
Muy parecido al @hile, pero utili&a un contador, es 'til si se #uiere repetir una parte del programa un n'mero determinado de veces. intaxis: La sintaxis de la orden es( 6or 7contador89 7ordenes8 end, (ordenes! son las ordenes #ue se reali&ar%n hasta #ue (contador! llega a su valor ,inal. (contador! "s de la ,orma( variable = a 49b5 : c =onde( variable es el contador en s. a es el valor inicial del contador (variable!. b es el segundo valor del contador (opcional, si se omite, b7a/+!, su ,uncin es determinar el incremento del contador. c es el valor ,inal del contador (variable!. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de ,or( <&jemplo de uso de 6or. 6or i=>9>.B:;.B9 i <al escribir el nombre de una variable 7sin punto ? coma8 <MATLAB muestra su valor. end, La salida del programa anterior es la siguiente( i7 i7 i7 i7 i7 i7 J J.9 + +.9 4 4.9

$omando -LOT
0irve para obtener resultados gr%,icos en 4=. intaxis : La sintaxis de la orden es( plot7x9 ?8,

x es el vector #ue contiene los valores de x. y es el vector #ue contiene los valores de y, tal #ue el valor de y en la posicin uno del vector corresponde al primer valor del vector x. La gr%,ica se reali&a uniendo una serie de rectas entre los puntos incluidos en los vectores L y M. 0i las curvas #uedan muy mal hechas (se notan las rectas! puede ser necesario disminuir el paso de los vectores (y aumentar el n'mero de puntos. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de plot( <&jemplo de uso de plot. 6or i=:::>:9 x7i8=7iE:8F:>>, ?7i8=x7i8C:, < Or%aniGa en vectores la 6uncin ?=xC: end, plot7x9 ?8, pause, <pausa el computador hasta Due se presione una tecla <esta orden es necesaria cuando se hace m"s de una %r"6ica9 <para poder ver cada una por separado. 0a Due MATLAB las <dibuja en la misma ventana siempre. 7a menos Due se use el <comando (I#!+&8.

$omando 'I 0irve para escribir texto de salida o vectores (y matrices! sin mostrar su nombre. intaxis: La sintaxis de la orden es( disp7H8,

L ;uede ser un vector, una matri& o una cadena de texto. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de disp( <&jemplo de uso de disp. a=4:9 ;9 I9 J5, < !n vector disp7a8, a=4:9 ;, I9 J5, < !na matriG disp7a8, a=KTexto para escribirK, < $adena de texto disp7a8, disp7KTambiLn se puede usar asM.K8, La salida del programa anterior ser%( + 4 3 K + 4 3 K Texto para escribir Tambi6n se puede usar as.

$omando IN-!T
0e utili&a para #ue el programa pida valores de variables mientras se e ecuta. intaxis: La sintaxis de la orden es( variable = input7texto8, variable es un nombre v%lido de variable, en la #ue se #uiere almacenar el valor #ue se pregunta. texto puede ser( 2na variable o, 2na cadena. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de input( <&jemplo de uso de input. a=>, < hace v"lido el nombre de variable a. a=input7KTeclee el valor de a: K8, tex=K$ual es el nuevo valor de aN K, a < Al escribir el nombre de una variable 7sin punto ? coma al 6inal8 < MATLAB muestra su valor. a=input7tex8, a La salida de este programa ser%( Teclee el valor de a( (espera! a7 xxx :ual es el nuevo valor de aN (espera! a7 yyy =onde xxx y yyy son valores introducidos por el usuario en el momento de e ecutar el programa.

10

.&$TO+&

0 MAT+I$&

Asi%nacin de valores ? subMndices: Los vectores y matrices en MATLAB se traba an igual en cuanto a asignacin, por eso se explican untos. ;ero las operaciones posibles, si son di,erentes, y estan separadas ba o los encabe&ados correspondientes. Asi%nacin: La asignacin de variables en MATLAB es sencilla, y los vectores y matrices no son la excepcin. :uando se desea dar el valor a toda una marti& se puede reali&ar directamente de la siguiente ,orma( A=4: ; I J, B O P Q, R > : ;5, A=4:9 ;9 I9 J, B9 O9 P9 Q, R9 >9 :9 ;5, donde + 9 R la matri& escrita arriba es( 4 3 K O P Q J + 4

Las ,ilas se separan por punto y coma y las columnas por espacios o comas. =e lo anterior se ve ,%cilmente #ue un vector ,ila se asigna as( v=4: ; I5, v=4:9 ;9 I5, M un vector columna se asigna as( v=4:, ;, I5, Manejo de subMndices: *tra ,orma de asignar valores a una matri& (o un vector! es por medio de los subindices. "l menor subindice utili&ado por MATLAB es +. M va a1adiendo valores a medida #ue se re#uieran. Los subindidices se escriben entre par6ntesis. ;or e emplo( A7;9 I8=:, Asigna al elemento en la ,ila 4, columna 3 el valor de +. 0i se desea cambiar todo el valor de una ,ila o una columna, es muy sencillo hacerlo con el operador >(> as( A7:9:8=4J B O5, Asigna a la ,ila + el vector FK, 9, OG (cambia la ,ila + por K, 9, O!. As si A era una matri& de 3x3 de ceros, ahora #ueda( K J J 9 J J O J J

Sgualmente a veces se re#uiere traba ar con vectores #ue son una columna o una ,ila de una matri&. "sto se reali&a ,%cilmente guardando este >vector> en un vector , as( v=A7:9:8, Asigna al vector v la primera columna (completa! de la matri& A.

11 Operaciones matem"ticas simples con matrices ? vectores: "sto es algo en lo #ue MATLAB hace las cosas verdaderamente simples, si se tienen dos matrices (o vector y matri&, o dos vectores!, y se #uieren( sumar, multiplicar restar slo es necesario anotar esta operacin normalmente (como se hara con n'meros!. ;or e emplo( 0i se #uieren multiplicar dos matrices A y B y almacenar el resultado en :( $=ASB, (0i se hace entre dos vectores (uno ,ila y el otro columna! el resultado es el producto punto entre los dos! 0i se #uieren sumar restar y almacenar el resultado en :( $=ACB, $=AEB, (0in importar #ue sean matrices o vectores.! $omandos matem"ticos para matrices: Los comandos matem%ticos m%s empleados con matrices son( NO+M :alcula la norma de un vector o matri&. MIN Eetorna el (los! menor (es! componente (s! de un vector o matri&. MAH Eetorna el (los! mayor (es! componente (s! de un vector o matri&. I2& =evuelve las dimensiones de la matri&. &I# :alcula los valores y vectores propios (ortovalores y ortovectores! de la matri&. IN. Snvierte la matri&. (si es posible! '&T :alcula el determinante de la matri&. $omandos matem"ticos para vectores: Los comandos matem%ticos m%s empleados con vectores son( NO+M :alcula la norma de un vector o matri&. MIN Eetorna el (los! menor (es! componente (s! de un vector o matri&. MAH Eetorna el (los! mayor (es! componente (s! de un vector o matri&. $+O :alcula el producto cru& entre vectores. L&N#T* =etermina el n'mero de componentes de un vector.

12

$omando NO+M
:alcula la norma de un vector o matri&. intaxis: La sintaxis de la orden es( Norma = norm7MatriG 49 Tipo58, Los signos FG son para decir #ue Tipo es opcional. Matri& es la matri& o vector al #ue se desea calcular la norma. Tipo es el tipo de norma #ue se desea calcular. Tipo puede ser una de las siguientes( 0i se omite( calcula la norma 4 en un vector es la magnitud del vector 4( calcula la norma 4 in,( calcula la norma in,inito en un vector es el m%ximo valor absoluto en una matri& es la suma m%s grande de las ,ilas. Tay m%s, pero las anteriores son las m%s utili&adas. "n )orma se almacena el valor de la norma calculada. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de norm( (ver orden de programacin =S0;! <&jemplo de uso de norm. A=4: ;, I J5 v=4: ; I J5 disp7K-ara la matriG:K8, n;=norm7A8 ni=norm7A9 in68 disp7K-ara el vector:K8, n;=norm7v8 ni=norm7v9 in68 < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla. Al e ecutar el programa se obtienen como salida los siguientes resultados( A 7 + 3 + 4 K 4 3 K

v 7

;ara la matri&( n4 7 9.KO9J ni 7 P ;ara el vector( n4 7 9.KPP4 ni 7 K

13

$omando MIN
Eetorna el (los! menor (es! componente (s! de un vector o matri&. ;ara el caso de los vectores( retorna el menor valor contenido en sus componentes. "n el caso de una matri& MS) retorna un vector (,ila! #ue contiene el mnimo elemento #ue se encontr en cada una de las columnas (la primera componente del vector tiene el menor elemento en la primera columna de la matri&, y as sucesivamente!. intaxis: La sintaxis de la orden es( MMnimo = min7matriG8, Matri& es la matri& o vector al #ue se desea encontrar la (s! mnima (s! componente (s!. "n Mnimo se retorna (n! el (los! mnimo (s! valor (es! encontrado (s! en la matri& o vector. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de min( <&jemplo de uso de min. A=4: ;, I J5 v=4: ; I J5 M=min7A8 m=min7v8 < MATLAB di6erencia entre m"?usculas ? mMnusculas. < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla.

Al e ecutar el programa anterior se obtiene como salida lo siguiente( A 7 + 3 v 7 + M 7 + m 7 + 4 4 3 K 4 K

14

$omando MAH
Eetorna el (los! mayor (es! componente (s! de un vector o matri&. ;ara el caso de los vectores( retorna el mayor valor contenido en sus componentes. "n el caso de una matri& MAL retorna un vector (,ila! #ue contiene el m%ximo elemento #ue se encontr en cada una de las columnas (la primera componente del vector tiene el mayor elemento en la primera columna de la matri&, y as sucesivamente!. intaxis: La sintaxis de la orden es( M"ximo = max7MatriG8, Matri& es la matri& o vector al #ue se desea encontrar la (s! m%xima (s! componente (s!. "n M%ximo se retorna (n! el (los! m%ximo (s! valor (es! encontrado (s! en la matri& o vector. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de max( <&jemplo de uso de max. A=4: ;, I J5 v=4: ; I J5 M=max7A8 m=max7v8 < MATLAB di6erencia entre m"?usculas ? mMnusculas. < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla.

Al e ecutar el programa anterior se obtiene como salida lo siguiente( A 7 + 3 v 7 + M 7 3 m 7 K K 4 3 K 4 K

15

$omando

I2&

=evuelve el tama1o de la matri& (dimensiones!. intaxis: La sintaxis de la orden es( 4(ilas9 $olumnas5 = siGe7MatriG8, (Los simbolos FG se escriben.! tambi6n( TamaTo = siGe7MatriG8, Matri& es la matri& a la #ue se le desea determinar el tama1o (dimensiones!. "n Uilas se almacena el n'mero de ,ilas. "n :olumnas se almacena el n'mero de columnas. Tama1o es un vector (,ila! en cuyas componentes se almacenan el n'mero de ,ilas y de columnas, siempre en ese orden. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de si&e( <&jemplo de uso de siGe. A=4: ; I, J B O5 ?=siGe7A8 469 c5=siGe7A8, 6 < Al escribir una expresin sin punto ? coma 6inal MATLAB c < muestra el valor por pantalla Al e ecutar el programa se obtiene la siguiente salida( A 7 + K y 7 4 , 7 4 c 7 3 3 4 9 3 O

16

$omando &I#
:alcula los valores y vectores propios (ortovalores y ortovectores! de la matri&. intaxis: La sintaxis de la orden es( 4.ectores9 'ia%onal5 = ei%7MatriG8, (Los simbolos FG se escriben.! tambi6n( .alores = ei%7MatriG8,

Matri& es la matri& (cuadrada! a la #ue se le desea calcular los valores o vectores propios. =iagonal es una matri& diagonal #ue contiene los valores propios de Matri&. Dectores es una matri& en la #ue se devouelven los vectores propios (unitarios! donde cada columna de la matri& Dector es un vector propio de matri&8 tal #ue el primer vector corresponde al primer valor propio y as sucesivamente. Dalores es un vector columna #ue contiene los valores propios de Matri&. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de eig( <&jemplo de uso de ei%. A=4: ;, I J5 ?=ei%7A8 4.9 '5=ei%7A8, . <Al escribir una expresin sin punto ? coma 6inal MATLAB muestra el valor por pantalla ' Al e ecutar el programa se obtiene la siguiente salida( A 7 + 3 y 7 .J.3P43 9.3P43 D 7 .J.Q4KO J.9O9Q = 7 .J.3P43 J J 9.3P43 .J.K+OJ .J.RJRK 4 K

17

$omando IN.
0irve para invertir una matri&. intaxis: La sintaxis de la orden es( matriG: = inv7matriG;8,

matri&4 es la matri& #ue se desea invertir "n matri&+ se almacena la matri& inversa de matri& 4. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de inv( <&jemplo de uso de inv. A=4: ;, I J5 I=inv7A8, I < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla. Al e ecutar el programa se obtiene como salida la matri& #ue se desea invertir (A!, y su inversa (S!. La salida se ve as( A7 + 3 4 K +.JJJJ .J.9JJJ

S7

.4.JJJJ +.9JJJ

$omando '&T
:alcula el determinante de una matri&. intaxis: La sintaxis de la orden es( .alor = det7MatriG8,

Matri& es la matri& (cuadrada! a la #ue se le desea calcular el determinante. Dalor es donde se almacena el valor del determinante. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de det( <&jemplo de uso de det. A=4: ;, I J5 d=det7A8 < Al escribir una expresin sin punto ? coma 6inal MATLAB < muestra en pantalla su valor. Al e ecutar el programa se obtiene la siguiente salida( A 7 + 3 .4 4 K

d 7

18

$omando $+O
:alcula el producto cru& entre dos vectores. intaxis: La sintaxis de la orden es( .ector: = cross7.ector;9 .ector I8,

Dector4 y Dector3 son los vectores a los #ue se les #uiere aplicar el producto cru&. Tanto Dector4 como Dector3 deben ser vectores tridimensionales. Dector+ es el vector (tridimensional! resultante del producto cru& de Dector4 y Dector3. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de cross( <&jemplo de uso de cross. x=4: > >5 ?=4> : >5 G=cross7x9 ?8 < Al escribir una expresin sin punto ? coma 6inal MATLAB < muestra en pantalla su valor. Al e ecutar el programa se obtiene la siguiente salida( x 7 + y 7 & 7 J J + J J + J J

$omando L&N#T*
=etermina el n'mero de componentes de un vector. intaxis: La sintaxis de la orden es( Lon%itud = len%th7.ector8,

Dector es el vector #ue se #uiere medir (n'mero de componentes!. Longitud es el n'mero de componentes de Dector. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de lenght( <&jemplo de uso de len%th. x=4: ; I J B O P5 l=len%th7x8 < Al escribir una expresin sin punto ? coma 6inal MATLAB < muestra en pantalla su valor. Al e ecutar el programa se obtiene la siguiente salida( x 7 l 7 + P 4 3 K 9 O P

19

N/M&+O

+&AL&

0 $OM-L&1O

Asi%nacin de valores a variables: Los n'meros comple os se traba an igual #ue los reales en lo #ue se re,iere a asignacin, a operaciones matem%ticas y a comandos. A continuacin, veamos algunos e emplos para mostrar como se reali&a la asignacin( a=B.;IJP, b=I, c=:C;j, tambi6n( d=:.BJPOC;.QSi, (el uso de i es indi,erente, desde #ue se tenga en cuenta la (aba o!

)ota importante sobre el uso de las variables i y d=B.;IJP, e=I, Operaciones matem"ticas simples: Las operacines simples son las siguientes( 0uma (operador /! Eesta (operador .! Multiplicacin (operador -! =ivisin (operador $! ;otenciacin (operador V! A continuacin hay algunos e emplos para comple os( a=:C;i, b=;Cj, c=aCb c 7 3.JJJJ / 3.JJJJi d=aUb d 7 .+.OKJ+ / J.4J4+i Nota importante sobre el uso de las variables i ? j: =% como resultado(

=% como resultado(

;uede usarse indistintamente las dos variables incorporadas (i ! y MATLAB no pone problema si se usan las dos al tiempo. ;ero si se asignan las variables i y$o en alg'n lugar del programa, esta variable perder% su valor como rai& de .+.

20

;ara clari,icar esto es 'til un e emplo( <Observacin para cuando se trabaja con complejos. i=Q j=R c=;CISj La salida del programa anterior es( i 7 Q 7 R c 7 4R :omo se puede ver si se intentaba representar un comple o con la variable c, no se logr debido a #ue se cambiaron las variables i y . ;or lo tanto, se recomienda #ue si se va a traba ar con comple os en un programa( =e e libres las variables i y (no las utilice en contadores en otros propositos, #ue no sean representar a la rai& de .+.

$omandos matem"ticos para nVmeros 7complejos ? reales8: Los comandos matem%ticos m%s empleados con n'meros son( AB :alcula la norma de un comple o o el valor absoluto de un real. W+T :alcula la rai& cuadrada de un comple o o de un real. AN#L& :alcula el %ngulo de ,ase (en radianes de J a 4-pi! de los elementos comple os de una matri&. (0e puede usar para calcular el %ngulo de ,ase de un solo comple o!.

21

$omando AB
:alcula la norma de un comple o, o el valor absoluto de un real. intaxis: La sintaxis de la orden es( .alor = abs7NVmero8, Dalor es la norma del comple o si ()'mero es comple o! o el valor absoluto de )'mero (si es real!. )'mero puede ser un real o un comple o( 0i es Eeal( calcula el valor absoluto. 0i es :omple o( &jemplo simple de uso: "l siguiente e emplo ilustra el uso de abs( (ver orden de programacin =S0;! <&jemplo de uso de abs. +=E:.;IJ: $=:.BCIj disp7K-ara un real:K8, v=abs7+8 disp7K-ara un complejo:K8, v=abs7$8 < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla. calcula la norma del comple o.

Al e ecutar el programa se obtienen como salida los siguientes resultados( E 7 +.43K+ : 7 +.9JJJ / 3.JJJJi ;ara un real( v 7 +.43K+ ;ara un comple o( v 7 3.39K+

22

$omando

W+T

:alcula la rai& cuadrada de un comple o o de un real. intaxis: La sintaxis de la orden es( .alor = sDrt7NVmero8, "n Dalor se almacena la rai& cuadrada del n'mero. )'mero puede ser un real o un comple o (si es real negativo, el resultado es un comple o!

&jemplo simple de uso: "l siguiente e emplo ilustra el uso de s#rt( <&jemplo de uso de sDrt. +=E:.;IJ: raiG=sDrt7+8 $=:.BCIi raiG=sDrt7$8 < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla.

Al e ecutar el programa se obtienen como salida los siguientes resultados( E 7 .+.43K+ rai& 7 J / +.++JRi : 7 +.9JJJ / 3.JJJJi rai& 7 +.99PR / J.RO4Qi

23

$omando AN#L&
:alcula el %ngulo de ,ase (en radianes! de una matri& (podra #uerer leer sobre matrices! con elementos comple os. 0i la matri& slo tiene un elemento, calcula el %ngulo de ,ase de ese comple o. intaxis: La sintaxis de la orden es( .alor = an%le7MatriG8, Dalor es una matri& #ue almacena el valor del %ngulo de ,ase del comple o (de J a 4-pi! #ue ocupa la misma posicin en Matri& (el %ngulo de ,ase del elemento +,+ lo almacena en la posicin +,+!. Matri& es una matri& (puede tener un solo elemento! cual#uiera con componentes comple as (los reales ,orman parte de los comple os!. &jemplo simple de uso: "l siguiente e emplo ilustra el uso de angle( (ver orden de programacin =S0;! <&jemplo de uso de an%le. $=4: ;i,:CIi ;.ICBi5 c=4:.BCIj5 disp7K-ara la matriG:K8, v=an%le7$8 disp7K-ara un complejo: 7matriG de un solo elemento8K8, v=an%le7c8 < Al escribir una expresin sin punto ? coma al 6inal < MATLAB muestra su valor en pantalla. Al e ecutar el programa se obtienen como salida los siguientes resultados( : 7 +.JJJJ +.JJJJ / 3.JJJJi c 7 +.9JJJ / 3.JJJJi ;ara la matri&( v 7 J +.4KRJ +.9PJQ +.+3RP J / 4.JJJJi 4.3JJJ / 9.JJJJi

;ara un comple o( (matri& de un solo elemento! v 7 +.+JP+

24

$omando T+A-2
:alcula la integral de,inida entre dos lmites de una ,uncin (%rea ba o la curva! representada por uno o dos vectores, como se explica m%s adelante. "l c%lculo de la integral se reali&a num6ricamente, por medio de una aproximacin de la ,uncin a trapecios ("n ning'n momento calcula la integral simblica!. =ebido a #ue el c%lculo de la integral es num6rico, se deben construir vectores >adecuados> para calcular la integral. ;or esta ra&n, es ,undamental aclarar las caractersticas de los vectores, con el ,in de tener un criterio para decidir como construir el vector de ,orma apropiada. (para mayor claridad en el e emplo de esta orden, puede ser necesario leer las secciones sobre U*E y Dectores y matrices!. intaxis: La sintaxis de la orden es( .alor = trapG74.ector95 MatriG8, Los simbolos FG signi,ican #ue Dector es opcional. Matri& puede ser una matri& o un vector. 2na matri& si se desea calcular la integral de,inida para varias ,unciones en el mismo rango (entre los mismos lmites!. 2n vector si se desea calcular la integral para una sla ,uncin (su tama1o tiene relacin con el tama1o de Dector, esta relacin se muestra en detalle en la explicacin de Dector!. Dector es el vector de los valores para los cuales se desea calcular la integral, tal #ue si Matri& es( 2n vector( Matri& y Dector deben ser de la misma longitud (ya sean vectores ,ila, o columna!. A cada valor almacenado en Dector corresponde el valor almacenado en Matri& (con el mismo subndice!. 2na matri&( Dector debe ser un vector columna y Matri& tiene almacenadas las ,unciones por columnas (cada columna7una ,uncin!, Matri& debe tener el mismo n'mero de ,ilas #ue vector. 0i Dector se omite, es e#uivalente a introducir un vector con paso + (por e emplo( FJ, +, 4, 3G!, note #ue la integral no depende de los valores #ue se introducen en Dalor, sino de su paso (ya #ue los valores de la ,uncin en cada punto est%n almacenados en Matri&!, en otras palabras la integral sigue siendo la misma (en valor! si la despla&o hacia un lado y reali&o la integral entre el nuevo par de lmites. Dalor es donde se almacena el valor de la integral (un real si slo se calcul para una ,uncin, y un vector ,ila si se calcul para varias!. W"ntonces como construir vectores >adecuados>N La integral se reali&a aproximando la curva (,uncin! a una serie de rectas, con el ,in de aproximar el %rea ba o la cuva a una serie de trapecios contiguos. ;or lo tanto la aproximacin es buena (>adecuada>! si e,ectivamente la ,uncin se comporta como una recta (aproximadamente! en cada sub.intervalo determinado por el paso y n'mero de puntos #ue se tomen. 2na ,orma emprica de veri,icar #ue los vectores est%n bien construidos es por medio de la orden plot, ya #ue esta ,uncin dibu a los vectores, aproximando la ,uncin de la misma ,orma #ue trapG. ;or lo tanto, si al dibu ar la curva con plot, esta se ve >suave>, los vectores estan bien de,inidos.

25

&jemplo simple de uso: "l siguiente e emplo ilustra el uso de trap&( <&jemplo de uso de trapG. 6or i=:::>>9 x7i9 :8=:CiF;>, < Asina los valores de x entre : ? O en incrementos de >.>B ?7i9 :8=x7i9:8C:, < 'e6ine la 6uncin ?=xC: G7i9 :8=x7i9:8U;C:, < 'e6ine la 6uncin G=xU;C: end, < Los vectores x9 ?9 G se de6inieron como vectores columna arriba9 con < el 6in de demostrar el 6uncionamiento de trapG con varias 6unciones. < estos vectores per6ectamente hubieran podido ser 6ila9 pero hubiera sido m"s < dM6icil armar la matriG. I%ualmente se reDuerMa contruir un Due x 6uera columna. A7:9 :8=?, A7:9 ;8=G, inte%ral=trapG7x9 ?8 inte%ral=trapG7x9 G8 < Normalmente se usarMa un nombre di6erente al de arriba inte%ral=trapG7x9 A8 < Normalmente se usarMa un nombre di6erente al de arriba < Al escribir una expresin sin punto ? coma 6inal MATLAB < muestra en pantalla su valor.

Al e ecutar el programa se obtiene la siguiente salida( integral 7 44.3RQQ integral 7 PO.9OO4 integral 7 44.3RQQ PO.9OO4

26

$omando L IM
Eeali&a una simulacin por medio de variables de estado, de un sistema lineal. Aun#ue lsim reali&a la simulacin por medio de variables de estado discretas, es posible discreti&ar variables continuas por medio de vectores. (Tal ve& sea necesario leer la parte correspondiente a vectores y matrices!. ;or lo tanto si desea reali&ar una simulacin de un sistema lineal, es posible reali&arlo con esta orden, ya sea de variables continuas o discretas.

NOTA :
Los temas tratados anteriormente son su,icientes para reali&ar programas sencillos y 'tiles. Los comandos disponibles en MATLAB son muchos m%s, pero los tratados a#ui son los m%s ,recuentemenete necesitados. "n caso de ser necesario emplear otras ordenes, es posible >buscar> la solucin por medio de help (todo est% en ingl6s!, la cual lista los temas matem%ticos #ue se pueden emplear (separados en librerias llamadas toolbox!. help 4toolbox5 lista los comandos en la librera y help 4comando5 explica su uso y sint%xis.

&l espacio de trabajo:


;ara visuali&ar las variables #ue se han creado en la sesin actual ( . @ho . @hos (in,ormacin m%s amplia!

;ara borrar una variable ( . clear nombreXdeXvariable

;ara borrar todas las variables no permanentes ( . clear ;ara guardar el espacio de traba o ( . save 4nombre.mat5 ( nombre por de,ecto 7 matlab.mat !

;ara recuperar un espacio de traba o previamente almacenado ( . load 4nombre.mat5

Vous aimerez peut-être aussi