Publicado el 12 de Junio del 2019
554 visualizaciones desde el 12 de Junio del 2019
133,2 KB
5 paginas
Creado hace 10a (01/09/2014)
Lección 2. Tutorial básico de MATLAB:
Guiones y funciones
MIGUEL ANGEL UH ZAPATA1
Análisis Numérico I
Facultad de Matemáticas, UADY
Agosto 2014
1Centro de Investigación en Matemáticas, Unidad Mérida
En lección es acerca de escribir programas en
MATLAB. Una herramienta y algunas técnicas de
depuración son descritos.
Al final debemos de:
Poder escribir un guión básico.
Poder escribir una función con varias en-
tradas y salidas.
Poder depurar nuestro código para no tener
errores.
Análisis Numérico
Guiones y funciones
Los programas en MATLAB tienen dos formas: un guion (script) y una función (function). Ambos
archivos dbden ser guardados con una extensión .m, de manera que estos archivos son llamados
M-files.
1. El editor de MATLAB
Un programa es llamado con su mismo nombre. Los archivos son creados en un editor. Matlab tiene
incluido su propio editor, de manera que no es necesario usar un programa alterno. Este editor resalta
los comandos e indica los posibles errores cometidos automáticamente. Por ahora tu solo necesitas
saber que hay una pequeña cuadro en el marco superior derecho de la ventana del editor. El color de
este cuadro te indica los siguientes mensajes:
El ROJO significa que hay errores de sintaxis.
El NARANJA significa que hay posibilidades de mejorar el código, pero no errores fueron
detectados.
El VERDE significa que no se detectaron errores, advertencias o posibles mejoras.
Naturalmente, nosotros debemos de corregir un programa con un cuadro de color rojo. Sin embargo,
una advertencia es dada si un punto y coma no es usado para poder desplegar un resultado. De manera
que es posible dejar un programa con cuadro naranja.
2. Conjunto de órdenes: Guión
Un guión es básicamente una colección de lineas que pudimos haber escrito de uno en uno en la
ventana principal. Es muy conveniente tener todos estos comandos en un archivo de manera que
pueden ser escritos correctamente gracias al editor y puedan repetirse cálculos invocando más que
pocos comandos.
Ejemplo:
Consideremos el siguiente ejemplo llamado guionraiz.m que contiene
%
Ejemplo de un guion
% Coeficiente de xˆ2 en la ecuación
% Coeficiente de x en la ecuación
a = 3;
b = 2;
c = 1;
r1 = (-b + sqrt(bˆ2 - 4*a*c))/(2*a)
r2 = (-b - sqrt(bˆ2 - 4*a*c))/(2*a)
El programa es llamado bajo su mismo nombre:
>> guionraiz
r1 =
-0.3333 + 0.4714i
r2 =
-0.3333 - 0.4714i
Tutorial de MATLAB
3
Análisis Numérico
Porque los comandos r1 y r2 en el programa no terminan con punto y coma, las cantidades son
desplegadas al mismo tiempo que son calculadas. Notar que el símbolo % aquí es usado para añadir
cualquier comentario en el programa. Estos comentarios pueden estar en cualquier lugar del pro-
grama.
3. Funciones
La otra posibilidad de escribir el programa anterior es mediante una función. Generalmente las fun-
ciones tienen argumentos de entrada y salida, pero no necesariamente tienen que tener una. A contin-
uación el formato estándar de una función en MATLAB:
= ejemplo
nombre
[x, y, z]
...
salidas
function
end
(a, b, c, d)
entradas
Actualmente es posible mostrar donde la función termina mediante el comando end. Es importante
mencionar que el programa de una función debe de tener el mismo nombre del archivo M-file asig-
nado. Es el caso anterior seria ejemplo.m.
Ejemplo:
Consideremos el mismo ejemplo de la sección anterior escrita en dos formas diferentes: la primera
sin ningún entrada y salida como lo haríamos en un guión
%
Función sin entradas y salidas
function funcionraiz
a = 3;
b = 2;
c = 1;
r1 = (-b + sqrt(bˆ2 - 4*a*c))/(2*a)
r2 = (-b - sqrt(bˆ2 - 4*a*c))/(2*a)
end
y la segunda de manera más típica con los coeficientes de la ecuación como entradas y las raíces
como salidas.
%
Función sin entradas y salidas
function [r1,r2] = funcionraiz(a,b,c)
r1 = (-b + sqrt(bˆ2 - 4*a*c))/(2*a)
r2 = (-b - sqrt(bˆ2 - 4*a*c))/(2*a)
end
OBSERVACI ÓN:
Si existe más de dos salidas, entonces las escribimos entre corchetes, pero si tenemos solamente
una la escribimos directamente. Por ejemplo r1 = funcionraiz(a,b,c).
Tutorial de MATLAB
4
Análisis Numérico
4. Comandos de programación
Los comandos de programación usuales están disponibles en MATLAB como por ejemplo: IF, FOR,
WHILE, SWITCH. Aprende más acerca de ellos usando el comando help. A continuación una breve
descripción a cerca de estos.
Como la mayoría de los lenguajes de computadora, MATLAB ofrece una variedad de operadores como
for, while, if, etc. Los operadores de relación en MATLAB son:
== igual
<= menor o igual que
>= mayor o igual que
∼= distinto
<
>
menor que
mayor que
Notar que ”=” se usa en asignaciones mientras que ”==” se usa en una relación. Los operadores
lógicos son: & para y, | para o, ∼ para no.
Ciclo if:
if si expresión
elseif si expresión
for variable = expresión
Ciclo while:
while mientras
...
...
...
...
...
else
end
Ciclo for:
end
end
Ejemplo:
Consideremos el ejemplo de dado dos números x y y desple-
gar si son iguales o no:
if
x==y
disp('son iguales')
else
disp('NO son iguales')
end
Ejemplo:
Consideremos la suma de los primeros 100 números enteros:
sum = 0;
for i=1:100
sum = sum + i;
end
Ejemplo:
Dado un número positivo n, las siguientes afirmaciones cal-
culan las potencias pares de 3 menores que n.
k=0;
while
3ˆk<n
if rem(k,2)==0
disp(3ˆk)
k=k+1;
else
k=k+1;
end
end
Tutorial de MATLAB
5
Comentarios de: Lección 2: Guiones y funciones - Tutorial básico de MATLAB (0)
No hay comentarios