Sie sind auf Seite 1von 8

Pontificia Universidad Católica del Perú

Facultad de Ciencias e Ingeniería


Profesora: Elizabeth Doig

Introducción al paquete MATLAB


MATLAB es un paquete de software matemático basado en matrices. El paquete
consiste de una extensa biblioteca de rutinas numéricas, fácilmente se accede a gráficos
de dos y tres dimensiones, y a un formato de programación alto nivel. El paquete
MATLAB presenta un formato apropiado para modificar y llevar a cabo programas con
facilidad a fin de examinar y ejecutar los algoritmos que se presentan en el análisis
numérico.
Se debe trabajar a través de la introducción del tutorial de MATLAB. Los ejemplos
ilustran la entrada y salida típica de la MATLAB Para encontrar la información
adicional sobre las órdenes, opciones, y ejemplos, se recomienda hacer uso del “help” y
de la Referencia y las Guías de Usuario que acompañan el software.
Las Funciones aritméticas son:

La suma +
La substracción -
La multiplicación *
La División /
Potencia ^
Constantes pi, i, j

Ejemplo: >> (4-3*pi)/3

ans =

-1.8083

Funciones Predefinidas
A continuación se tiene una lista de algunas de las funciones disponibles en MATLAB.
abs(#) cos(#) exp(#) log(#) log10 (#) cosh(#)
sin(#) tan(#) sqrt(#) floor(#) acos(#) tanh(#)

Los siguientes ejemplos ilustran cómo funciones y operaciones aritméticas se pueden


combinar. Las definiciones de otras funciones disponibles pueden ser encontradas
usando la ayuda on-line.

Ejemplo:
>> 2*sin(sqrt(6.9))
ans =
0.9847
El formato predefinido muestra aproximadamente cinco dígitos decimales
significativos. Si se escribe el comando format long mostrará aproximadamente 15
dígitos decimales significativos
Ejemplo: >> format long
>> 2*sin(sqrt(6.9))
ans =
0.98473469768265

Página 1 de 8
Las Instrucciones de asignación
Se asignan los nombres a las variables usando un signo igual, “=”
Ejemplo: >> a =2-floor ( exp (5.6))
a=
-268

Se coloca un punto y coma al final de la expresión para suprimir el cálculo de la


expresión.
Ejemplo: >> b = tan(-8.9); (Nota: b no se muestra)
>> 6 - 5*b^3
ans =
5.0299

Definiendo Funciones
En MATLAB el usuario puede definir una función construyendo un archivo M-file (un
archivo con terminación .m) en el M-file Editor/Debugger. Una vez definida la función,
se llama de la misma manera como el resto de las funciones construidas. En una función
las variables creadas son locales para la misma función.
Ejemplo: Definir la función fun(x) = 1 – x + x3 en un M-file fun.m. En el
Editor/Debugger se debería dar lo siguiente:
function y = fun(x)
= y 1- x + x. ^ 3;

La notación x. es con la finalidad de indicar que es una variable local dentro de la


expresión, ya que se podrían estar empleando letras diferentes para las variables. Esta
función se ha guardado como un M-file denominado fun.m, la que puede mencionarse
en MATLAB con el Command Window de la misma manera como cualquier otra
función.
Ejemplo: >> sin(fun(1))
ans =
0.8415

Una manera útil y eficaz para evaluar las funciones es usar el comando feval. Este
comando requiere que la función se llame como una cadena.
Ejemplo: >> feval('fun',1)
ans =
1

Matrices
Todas las variables en MATLAB son tratadas como matrices o series. Las matrices se
ingresan directamente:
Ejemplo: >> A=[1 2 3 4; 5 6 7 8]
A=
1 2 3 4
5 6 7 8

Se usa el punto y coma para separar las filas de una matriz. Notar que las entradas de la
matriz deben separarse por un espacio. Alternativamente, una matriz se puede ingresar
fila por la fila.

Página 2 de 8
Ejemplo: >> a =[1 2 3
456
7 8 9]

a=

1 2 3
4 5 6
7 8 9

Las matrices se pueden generar usando funciones construidas.


Ejemplo: >>Z = zeros(3, 5); crea una matriz 3 × 5 de ceros
>>X=ones (3, 5); crea una matriz 3 × 5 de unos
>>Y = 0: 0.5: 2 crea el siguiente arreglo 1× 5
Y=
0 0.5000 1.0000 1.5000 2.0000

>>cos (Y) crea una matriz 1× 5 tomando el coseno de cada entrada de Y


ans =
1.0000 0.8776 0.5403 0.0707 - 0.4161
Se pueden manipular las componentes de las matrices de varias maneras

Ejemplo: >> A(2, 3) selecciona una sola entrada de A


ans =
6
>>A(1:2,2:3) selecciona una submatriz de A
ans =
23
56
>>A([1 3], [1 3]) es otra manera de seleccionar una submatriz de A
ans =
13
79
>>A(2, 2) = tan(7.8); asigna un nuevo valor a una entrada de A

Otros comandos adicionales para las matrices se pueden encontrar usando la ayuda on-
line o consultando la documentación que acompaña al software.

Operaciones con Matrices


La suma +
La substracción -
La multiplicación *
Potencia ^
Transpuesta '

Ejemplo: >> B = [1 2; 3 4];


>>C = B' (C es la transpuesta de B)
C=
13

Página 3 de 8
24
>>3*(B*C)^3 (3(B C)3 )
ans =
13080 29568
29568 66840

Operaciones con Arreglos


Una de las características más útiles del paquete MATLAB es el número de funciones
que pueden operar sobre los elementos individuales de una matriz. Esto se demuestra al
aplicar el coseno a las entradas de una matriz de 1 x 5. Las operaciones matriciales de
adición, sustracción y multiplicación escalar pueden operar un elemento por su
elemento correspondiente, pero no las operaciones matriciales de multiplicación,
división y potencia. Estas tres operaciones pueden ser hechas para operar elemento por
elemento precediéndolas con un punto, de la siguiente forma: “ .* ”, “ ./ ”, “ .^ ”. Es
importante entender cómo y cuándo utilizar estas operaciones. Las operaciones de
arreglos son cruciales para la construcción y ejecución eficiente de los programas y
gráficos en MATLAB.

Ejemplos:

>> A = [2 4; 1 2];
>> B = [3 6; 9 12];
>> A*B genera el producto de A×B
ans=
42 60
21 30

>> A.*B genera el producto correspondiente de cada entrada.


ans=
6 24
9 24

Gráficos
MATLAB puede producir trazos de curvas y superficies de 2 y 3 dimensiones.
Opciones y características adicionales de gráficos en MATLAB pueden ser encontrados
en Internet y en la documentación de MATLAB.

El comando PLOT es utilizado para generar gráficos de funciones de 2 dimensiones. El


siguiente ejemplo creará el trazo de los gráficos de las funciones:
y = sin(x)
y

z = cos(x)^2 sobre el intervalo [ -pi, pi ] .

Ejemplo:
>> x = -pi: 0.1: pi;
>> y = sin(x);
>> z = cos(x).^2;
>> plot (x, y, x, z, ’*’)

Página 4 de 8
La primera línea especifica el dominio con un tamaño de salto de 0.1. Las siguientes
dos líneas definen las dos funciones. Notar que en todas las tres primeras líneas se
finaliza con un punto y coma. El punto y coma es necesario para omitir la presentación
de las matrices x, y y z en la pantalla de comandos. La cuarta línea contiene el
comando PLOT que produce el gráfico. Los primeros dos términos en el comando
PLOT, x e y, trazan la función y = sin( x) . El tercer y cuarto términos, x y z ,
producen el trazado de la función z = cos( x). ^ 2 . El último termino, ‘*’, responde a
que la letra ‘*’ esta siendo trazado en cada punto (x, z) donde z = cos( x). ^ 2 .

El paquete MATLAB mostrará la siguiente gráfica:

En la tercera línea el uso de la operación de arreglo “.^ ” es crítico. Primero es hallado


el coseno de cada entrada de la matriz x, y enseguida cada entrada de la matriz cos(x) es
elevada al cuadrado utilizado el comando ‘ .^ ’.

El comando gráfico FPLOT es una alternativa útil al comando PLOT. La forma del
comando es FPLOT(´nombre’, [a, b], n). Este comando crea un trazado de la función
nombre.m utilizando n puntos en el intervalo [a, b]. El número por defecto de n es 25.

Ejemplo:
>> fplot(´senh´, [-1,1]) traza la funcion y= senh(x) sobre [-1,1]

Los comandos PLOT y PLOT3 son útiles para graficar curvas parametrizadas
espacialmente en 2 y 3 dimensiones, respectivamente. Estos comandos son útiles
particularmente en la visualización de las soluciones de ecuaciones diferenciales en 2 y
3 dimensiones.

Ejemplo:
El trazo de la elipse e(x) = (3cos(x), 2sin(x)), donde 0 <= x <= 2*pi, es producido con
los siguientes comandos:

>> x = 0: 0.1 : 2*pi;


>> plot( 3*cos(x), 2*sin(x))

Página 5 de 8
Ejemplo:

El trazo de la curva d(x) = ( 4cos(x), x*x, 1/x ), donde 1<= x <= 2*pi, es producido con
los siguientes comandos:

>> x = 1: 0.1: 2* pi;


>> plot3( 4*cos(x), x.^2, 1./x)

Los trazados de superficies de tres dimensiones son obtenidas especificando un


subconjunto rectangular de dominios de una función con el comando MESHGRID y
luego utilizando los comandos MESH y SURF para obtener el gráfico. Estos gráficos
son útiles en la visualización de las soluciones de las ecuaciones diferenciales parciales.

Ejemplo:
>> t = -pi:0.1:pi;
>> s = t;
>> [ t, s ] = meshgrid(t, s);
>> u = cos (sin ( t + s));
>> mesh (u)

Bucles y Condicionales

Operadores Relacionales:

== Igual a
~= Diferente a
< Menor que
> Mayor que
<= Menor o igual a
>= Mayor o igual a

Operadores Lógicos:

~ No (complemento)
& Y (verdadero si ambos operadores son verdaderos)
| O (verdadero si alguno o ambos operadores son verdaderos)

Valores Booleanos

1 Verdadero
0 Falso

Las sentencias FOR, IF y WHILE en Matlab operan de manera análoga con sus
contrapartes en otros lenguajes de programación. Estas sentencias tienen la siguiente
forma básica:

FOR (variable-bucle = expresión-bucle)


Sentencias ejecutables

Página 6 de 8
END

IF (expresión-lógica)
Sentencias ejecutables
ELSE
Sentencias ejecutables
END

WHILE (expresión-mientras)
Sentencias ejecutables
END

El siguiente ejemplo muestra como utilizar bucles para generar una matriz. El siguiente
archivo fue grabado como un archivo-M llamado aleatorio.m. Escribiendo aleatorio en
la ventana de comandos del MATLAB se genera la matriz B con números aleatorios.
La función rand(a, b) genera números aleatorios entre 0 y 1 en una matriz de
dimensiones (a, b), sin embargo también puede generar un solo numero al considerar el
par (1,1).

Ejemplo:

for i =1:5
for j=1:5
B (i, j) = rand (1, 1);
end;
end;
B

El comando BREAK se utiliza para salir de un bucle.

Ejemplo:

for a=1:50
valor= rand (1, 1)*100;
if valor >=22
break
end:
end;
valor

El comando DISPLAY puede ser utilizado para mostrar texto o una matriz.

Ejemplo:

num=32;
iter=1;
while iter<=3
cal=num*10;
disp ([cal cal^2])
iter=iter+1;

Página 7 de 8
num=num+1;
end;

Programas
Un camino eficiente para la construcción de programas es la utilización de funciones
definidas por el usuario. Estas funciones son grabadas como archivos-M. Estos
programas permiten al usuario especificar los parámetros de entrada y de salida. Estas
funciones son fácilmente llamadas como subrutinas en otros programas. El siguiente
ejemplo permite la conversión del valor de la temperatura en grados Fahrenheit a un
valor en grados Celsius. Escriba la función en el editor del matlab y grábela como un
archivo-M con el nombre conversion.m.

Ejemplo:
function c = conversion(f)
% ingreso - f es la temperatura en grados Fahrenheit
% salida - c es la temperatura en grados Celsius
c = 5*(f-32)/9;

Ahora en la ventana de comandos del MATLAB ingrese c=conversión (0) para ver el
valor del resultado en la variable c. En el caso de escribir c=conversión (0); escriba la
variable c en otra línea y observará el valor obtenido en la variable c.

Conclusión

Las instrucciones descritas previamente permiten al usuario crear y modificar


programas de los diferentes algoritmos en el curso. Cualquier información adicional
puede ser encontrada en Internet.

Página 8 de 8

Das könnte Ihnen auch gefallen