Está en la página 1de 8

Introducci´n a MATLAB o Introducci´n o El paquete MATLAB es un sistema interactivo basado en matrices para c´lculos cient´ a ıficos y de ingenier´ El nombre

proviene de MATrix LABoratory. ıa. Este apunte est´ basado en la versi´n 7.1 de MATLAB y su prop´sito es ofrecer una gu´ simple a o o ıa para el uso de MATLAB. Cada uno de los ejemplos ilustran lo que muestra el espacio de trabajo de MATLAB en una sesi´n determinada. Por ejemplo: o >> (2+3*pi)/2 ans = 5.7124 Las respuestas se muestran con 5 cifras significativas, mediante la instrucci´n format puede o cambiarse esta cantidad. Por ejemplo:

>>format long >>(2+3*pi)/2 ans = 5.71238898038469 Esta instrucci´n permite obtener hasta 15 cifras decimales significativas. o Operaciones aritm´ticas e + − ∗ \ ∧ suma resta multiplicaci´n o divisi´n o potencia

Instrucciones de asignaci´n o Mediante el uso de la igualdad se puede asignar un nombre al resultado de la evaluaci´n de o una expresi´n. Por ejemplo: o

>> a=pi*2 a = 6.2832

1

• Gener´ndola mediante declaraciones y funciones.m a Ejemplos: >> b=[1 2 3 4 ] b = 1 2 >> b=1:1:4 b = 1 2 3 4 3 4 >> A=[1 2 3. Se puede trabajar con los elementos de una matriz de las siguientes formas (para el ejemplo anterior): • seleccionando una entrada espec´ ıfica de A: 2 . a • Cre´ndola en un archivo . el computador realiza las o operaciones correspondientes y almacena el resultado bajo el nombre que se le haya asignado a dicha expresi´n. a • Carg´ndola desde un archivo externo. es decir. que todas las variables representan matrices. Existen distintas formas de introducir una matriz en MATLAB: • Ingresando una lista expl´ ıcita con sus elementos. 4 5 6.Cuando se escribe un punto y coma al final de una expresi´n. >> Matrices MATLAB trabaja esencialmente con un solo tipo de objetos: una matriz num´rica rectangular e con entradas posiblemente complejas. mientras que los elementos de la misma fila deben separarse por un espacio en blanco o por una coma. pero no se muestra el resultado en la pantalla. Por ejemplo: o >> a=pi*2. 7 8 9] A = 1 4 7 2 5 8 3 6 9 Los puntos y comas separan las filas de una matriz.

si la matriz es cuadrada. entonces: x = A\b es la soluci´n de Ax = b. lo cual no ocurre en las operaciones matriciales de multiplicaci´n. Estas operaciones pueden realizarse elemento a elemento si se antepone un o punto al s´ ımbolo correspondiente.∧. se factoriza usando la ortogonalizaci´n de Householder con pivoteo de columnas.>> A(2.2:3) ans = 2 3 5 6 • asignando un valor a una entrada espec´ ıfica de A: >> A(2. o x = b/A es la soluci´n de xA = b.2)=1 Operaciones con matrices + − ∗ \ / ∧ suma resta multiplicaci´n o divisi´n izquierda o divisi´n derecha o potencia transpuesta Si A es una matriz inversible y b es una columna./.∗. resta y producto por un escalar se realizan elemento a elemento. La divisi´n o derecha se define a partir de la izquierda por b/A = (A \b ) . . divisi´n y o o potenciaci´n. . por ejemplo: 3 . se factoriza usando eliminaci´n gaussiana.3) ans = 6 • seleccionando una submatriz de A: >> A(1:2. Operaciones que se realizan elemento a elemento Las operaciones matriciales de suma. Si la matriz no es cuadrada. o o con los factores se resuelve Ax = b. es decir: . con los factores se resuelve el o sistema indeterminado o sobredeterminado en el sentido de los m´ ınimos cuadrados. o En la divisi´n izquierda.

log. sqrt.• para calcular el producto AA: >> A=[1 2.A^2 ans = 7 10 15 22 • para elevar al cuadrado cada elemento de A: >> A. sin. tan. floor. cos. 3 4]. Por ejemplo: >> 3*cos(sqrt(4)) ans = -1.^2 ans = 1 9 4 16 Funciones escalares Algunas de ellas son: abs. log10. round. sign. ceil.2484 Funciones vectoriales Algunas de ellas son: max: elemento m´ximo de un vector a min: elemento m´ ınimo de un vector sort: permite ordenar un vector en forma ascendente o descendente sum: permite realizar la suma de los elementos de un vector prod: permite realizar el producto de los elementos de un vector mean: permite realizar el promedio de los elementos de un vector Funciones matriciales Las funciones matriciales m´s utiles son las siguientes: a ´ eye: matriz identidad 4 . exp.

teniendo en cuenta el tama˜o n 5 .1:pi. En la primera l´ ınea se especifica el dominio de las funciones. norma ∞ poly: polinomio caracter´ ıstico qr: factorizaci´n QR o rank: rango size: tama˜o n svd: descomposici´n en valores singulares o Gr´ficos a MATLAB puede generar dibujos bidimensionales y tridimensionales de curvas y superficies. z=sin(x). z). title(’Seno vs Coseno’). y.zeros: matriz de ceros ones: matriz de unos triu: parte triangular superior de una matriz tril: parte triangular inferior de una matriz rand: matriz generada aleatoriamente hilb: matriz de Hilbert chol: factorizaci´n de Cholesky o cond: n´mero de condici´n en la norma 2 u o det: determinante eig: autovalores y autovectores inv: inversa lu: factorizaci´n LU o norm: norma 1. x. y=cos(x). ylabel(’f(x)’). xlabel(’x’). plot(x. La instrucci´n plot permite generar gr´ficos de curvas planas. Por ejemplo: o a >> >> >> >> >> >> >> x=-pi:0. norma 2. norma de Frobenius.

y).y]=meshgrid(x. que corresponden al valor de la relaci´n entre los coeficientes o correspondientes.1. el resultado es una matriz de ceros y unos. Por ejemplo: a >> >> >> >> x=-pi:0. o o Para obtener dibujos tridimensionales de superficies hay que especificar un rect´ngulo del a dominio de la funci´n.[x. z=cos(x+y). La cuarta l´ ınea contiene la instrucci´n para graficar la funci´n. el resultado es 1 o 0 de acuerdo a que la relaci´n sea verdadera o o falsa respectivamente. a==b.1:pi.de paso 0. y=x. ans= 1 0 1 1 1 1 0 0 1 6 . >> >> >> >> a=rand(3). Cuando se aplican a matrices del mismo orden. mediante la instrucci´n meshgrid y luego la instrucci´n mesh para o o o obtener el gr´fico. En las dos l´ ıneas siguientes se definen las funciones. mesh(z) Operadores relacionales == ∼= < > <= >= igual que no igual que menor que mayor que menor o igual que mayor o igual que Operadores l´gicos o < ∼ & | menor que no y o Cuando se aplican a escalares. b=tril(a).

end La siguiente funci´n permite determinar los valores m´ o ınimo y m´ximo de un vector: a function [vMin vMax]=CalcularExtremos(v) vMin=min(v).m: • Archivos de instrucciones • Archivos de funciones Un archivo de instrucciones est´ formado por una sucesi´n de instrucciones de MATLAB. b) c=0. a Un archivo de funciones est´ formado por una sucesi´n de instrucciones de MATLAB que cona o forman funciones espec´ ıficas. if y while de MATLAB operan como en la mayor parte de los lenguajes usuales. las variables son locales. las a o variables son globales y por lo tanto. Archivos . y = eig(A) genera un vector columna conteniendo u los autovalores de A mientras que [U.Estructuras de control Las instrucciones for. for i=1:b c=c+a.m Existen dos tipos de archivos . Tratamiento de matrices mediante archivos de texto El siguiente archivo de instrucciones permite generar un archivo de texto a partir de datos de MATLAB y generar una matriz a partir de un archivo de texto. Una funci´n admite argumentos de o salida simples o m´ltiples. La siguiente funci´n permite calcular el producto de a y b mediante sumas sucesivas: o function c=CalcularProducto(a. Finalizan con end. 7 . D] = eig(A) genera una matriz U cuyas columnas son los autovectores de A y una matriz diagonal D con los autovalores de A en su diagonal. Por ejemplo. cambiar´n los valores del espacio de trabajo. vMax=max(v).

1)=x’. 2)=cos(x).txt’) 8 . AOutput=[].txt’ AOutput -ASCII %Generacion de una matriz a partir de un archivo de texto. en este ejemplo. %Primera columna de la matriz. save ’miArchivo. %Segunda columna de la matriz.5:pi. : indica todas las filas de la segunda columna AOutput(:.%Generacion del archivo de texto x=-pi:0. : indica todas las filas de la primera columna AOutput(:. AInput=[]. %el mismo generado en el paso anterior AInput=load(’miArchivo.