Hernandez_Hernandez_Practica web de la sesion 11.pptx
1 Entorno
1. Resolución de problemas con MatLab El entorno MatLab 1
Sesión 1: El entorno de MatLab.
Objetivo: Describir el origen y entorno de trabajo de MatLab y el uso de operaciones
aritméticas con escalares y variables.
1.1 Introducción.
El software MatLab es el nombre abreviado de “Matrix Laboratory”. Se desarrolló como un
“Laboratorio de matrices”, para realizar cálculos numéricos con vectores y matrices.
Permite la resolución de problemas sencillos sin escribir un programa y con facilidades de
representación gráfica de los resultados en dos o tres dimensiones. Además incorpora un
lenguaje de programación propio que permite implementar programas complejos de modo
relativamente simple. Actualmente, el software MatLab se usa tanto a nivel académico,
dentro de la universidad, como a nivel de investigación en la industria para la resolución
de complicados problemas científicos o de ingeniería, mediante los comandos apropiados
implementados en MatLAb. Es empleado para el desarrollo de cálculo numérico de
propósito general y resolución de problemas con formulación matricial que aparecen en
álgebra, control, métodos numéricos, estadística y procesado de señales, entre otros.
Matlab aporta, por medio del los paquetes de ampliación o toolboxes (que no se
incorporan en el sistema base sino que se adquieren separadamente), funciones para
resolver problemas específicos como por ejemplo procesado de señales y de imágenes,
diseño de sistemas de control, identificación de sistemas, simulación de sistemas
dinámicos, optimización, redes neuronales, etc.
MatLab se puede arrancar como cualquier otra aplicación de Windows, (haciendo clic dos
veces en el icono correspondiente en el escritorio o por medio del menú Inicio). Al
arrancar MatLab se abre una ventana como se muestra en la Figura:
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
2. Resolución de problemas con MatLab El entorno MatLab 2
1.2 Ventanas principales de MatLab 7.0.
Ventana Descripción
Ventana principal. Ejecuta las
Command Window (Ventana de funciones. (Entrada de variables,
comandos) ejecución de programas, salida de
resultados).
Presenta una historia de todas las
Command History (Historial de funciones introducidas en la ventana de
comandos) comandos y permite copiarlas y
ejecutarlas.
Current Directory (Directorio Muestra archivos y ejecuta operaciones
actual) entre archivos, tales como abrir y
buscar contenido.
Workspace (espacio de trabajo) Provee información acerca de las
variables que son usadas.
What’s New (Productos Math Works) Muestra acceso a herramientas, demos y
documentación instalados.
Figure Window Contiene salidas de comandos gráficos.
Help (Ayuda) Muestra y busca documentación para la
familia completa de productos MatLab.
1.3 Trabajando en la ventana Command Window.
• Es la ventana más importante para comunicarse con MatLab y aquí se ejecutan los
comandos.
• Las instrucciones o comandos a ejecutar se escriben a continuación del prompt
(>>) en donde se posiciona el cursor.
• Algunos comandos pueden ser escritos en la misma línea, escribiendo una coma
(,) entre los comandos y presionando la tecla enter. Los comandos son ejecutados
de izquierda a derecha y se visualizan en la pantalla.
• Si no se desea ver su salida en la pantalla se usa punto y coma (;) entre los
comandos o al final de la línea si se trata de un solo comando.
• No es posible ir a una línea previa en el Command Window para hacer
correcciones, es necesario llamar la línea, corregirla y volverla a ejecutar.
• Un comando previo puede ser llamado estando en el prompt (>>), usando las
teclas ( ) y ( ), entonces se hacen las correcciones y el comando se vuelve a
ejecutar, presionando enter. Las teclas anteriores, también se usan para mover el
orden de los comandos.
• Si un comando o instrucción es demasiado largo y no cabe en una línea, se
escriben puntos suspensivos al final (…), se presiona enter y se continúa
escribiendo en otra línea y así sucesivamente hasta un máximo de 4096 caracteres.
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
3. Resolución de problemas con MatLab El entorno MatLab 3
• Se usa el símbolo de porcentaje (%) al inicio o al final de una línea de un comando
para hacer comentarios sobre el problema y no es ejecutado. En el Command
Window casi no se usa, su aplicación es mayor en la programación.
• Para salir de MatLab, use quit o exit o la forma tradicional por medio de las
instrucciones de Windows.
• El comando clc limpia la ventana de comandos.
• El comando clf borra la figura actual y por tanto limpia la ventana de gráficos.
• El comando clear no afecta a las ventanas, pero si borra todas las variables de la
memoria.
• Para ver algunas de las capacidades de MatLab, usar el comando demo, que inicia
el MatLab Expo, un entorno gráfico de demostración que ilustra algunos tipos de
operaciones que se pueden realizar con MatLab.
• Para abortar un comando en MatLab, mantener presionada la tecla de control y
oprima c (Ctrl+ c). Esto ocasiona una interrupción local dentro del MatLab.
• MatLab utiliza colores para ayudar a escribir las instrucciones. Los paréntesis,
corchetes y llaves se mantienen brevemente iluminados hasta que no finalice la
escritura de su contenido. El comentario con % aparece en color verde. El ! aparece
en color dorado y los errores aparecen en color rojo entre otros.
1.4 Operaciones aritméticas.
La jerarquía de los operadores aritméticos en MatLab es la misma que en el lenguaje de
alto nivel C y se resume en la siguiente tabla:
ESCALAR MATRIZ VECTOR DESCRIPCIÓN
^ ^ .^ Exponenciación
* * .* Multiplicación
/ / . / División hacia la
derecha
. División hacia la
izquierda
+ + + Adición
- - - Sustracción
= [ ] [ ] Para asignar
valores
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
4. Resolución de problemas con MatLab El entorno MatLab 4
El orden de ejecución de los operadores anteriores es primero la exponenciación; segundo
la multiplicación y división (igual prioridad) y tercero la adición y sustracción (igual
prioridad). Si en la expresión hay varias operaciones con la misma prioridad, se ejecutan
primero de izquierda a derecha. El uso de paréntesis puede modificar el orden de los
operadores aritméticos.
1.5 Usando MatLab como una calculadora.
Después de escribir las expresiones y presionando enter se despliega el resultado con la
respuesta por default ans = y en la siguiente línea el resultado.
Ejercicio de práctica 1.1
Haga lo siguiente en la ventana de comandos:
1. >>7+8/2
2. >>(7+8)/2
3. >>4+5/3+2
4. >>5^3/2
5. >>27^(1/3)+32^0.2
6. >>27^1/3+32^0.2
7. >>0.7854–(0.7854)^3/(1*2*)+0.785^5/(1*2*3*4*5)…
-(0.785)^7/(1*2*3*4*5*6*7)
5+3
8.
9 −1
4
9. 2 3 −
5+3
5 2 +1
10.
4 −1
1 2
11. 4 *5
2 3
7
5+6 − 22
12 3
2 3
*
3 3*6
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
5. Resolución de problemas con MatLab El entorno MatLab 5
1.6 Formatos de salida para valores numéricos.
Matlab presenta los resultados con exactitud, pero aunque internamente siempre trabaja
con cálculos exactos para no arrastrar errores de redondeo, pueden habilitarse diferentes
formatos de representación aproximada, que en ocasiones facilitan la interpretación de los
resultados.
Comando Descripción
Se trata del formato por defecto de Matlab.
format short Ofrece los resultados con 4 dígitos
decimales después del punto para números
entre 0.001 y 1000. (Ver short e)
format long Ofrece los resultados con 16 dígitos
decimales en total, para números entre
0.001 y 100. (Ver long e)
format long e Ofrece los resultados con 16 dígitos
decimales en total, mas la potencia de 10
necesaria.
format short e Ofrece los resultados con 4 dígitos
decimales después del punto, mas la
potencia de 10 necesaria.
format long g Ofrece los resultados en formato largo
óptimo con 15 dígitos decimales en total.
format short g Ofrece los resultados en formato corto
óptimo con 5 dígitos decimales en total.
format bank Ofrece los resultados con 2 dígitos
decimales después del punto.
format rat Ofrece los resultados en forma de número
racional aproximado.
format + Ofrece el signo de los resultados (+,-) e
ignora la parte imaginaria de los números
complejos.
format compact Suprime el exceso de líneas de salidas.
Contrasta con loose.
format loose Añade líneas a la salida para que sea más
legible. Contrasta con compact.
format hex Ofrece los resultados en el sistema
hexadecimal.
vpa'operaciones' n Ofrece el resultado de las operaciones con
n dígitos decimales exactos para números
enteros; vpa significa variable precission
arithmetic.
double(x) Retorna el valor de x con doble precisión.
digits (n) Ofrece los resultados con n dígitos
exactos.
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
6. Resolución de problemas con MatLab El entorno MatLab 6
Ejercicio de práctica 1.2
Veamos varias representaciones en diferentes formatos de la división: 257
13
En la ventana de comandos:
>> 257/13 >> format short g;
ans = >>257/13
19.7692 ans =
19.769
>> format long
>>257/13 >> format compact
ans = >> 257/13
19.76923076923077 ans =
19.7692
>> format long e
>>257/13 >> format loose
ans = >> 257/13
1.976923076923077e+001
ans =
>> format long g
>>257/13 19.7692
ans =
19.7692307692308
>> format bank
>> format short e >>257/13
>>257/13 ans =
ans = 19.77
1.9769e+001
>> format hex; 257/13 >> vpa '257/13' 17
ans = ans =
4033c4ec4ec4ec4f 19.769230769230769
>> vpa '257/13' 12 >> digits(25); vpa '257/13'
ans = ans =
19.7692307692 19.76923076923076923076923
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
7. Resolución de problemas con MatLab El entorno MatLab 7
Para diferentes formatos para el número π y el número e:
>> vpa 'pi' 20
ans =
3.1415926535897932385
>> vpa 'pi' 50
ans =
3.1415926535897932384626433832795028841971693993751
>> vpa 'exp(1)' 25
ans =
2.718281828459045235360287
>> vpa 'exp(1)' 55
ans =
2.718281828459045235360287471352662497757247093699959575
>> digits(55); vpa 'exp(1)'
ans =
2.718281828459045235360287471352662497757247093699959575
1.7 Uso de los comandos help y edit para ayuda en línea.
MatLab es un software interactivo, por lo que en cualquier momento que se tenga duda
como utilizar un comando o función se puede recurrir al menú help (ayuda). Esta opción
está disponible en el espacio de trabajo o Command Window. Por ejemplo, para saber qué
hacen y cómo se usan los comandos round y sin(x), escribimos la siguiente sintaxis:
>>help round
ROUND Round towards nearest integer.
ROUND(X) rounds the elements of X to the nearest integers.
See also floor, ceil, fix.
Overloaded functions or methods (ones with the same name in other directories)
help quantizer/round.m
help sym/round.m
Reference page in Help browser
doc round
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
8. Resolución de problemas con MatLab El entorno MatLab 8
Nota: Para saber como los comandos realizan los procesos se escribe edit y a
continuación el nombre del comando o función y MatLab despliega las
instrucciones del programa en cuestión en el área M-File.
1.8 Funciones matemáticas, trigonométricas y de redondeo.
Función Descripción Función Descripción
sqrt(x) Raíz cuadrada sin(x) Seno del ángulo x en radianes
exp(x) Exponencial (ex ) cos(x) Coseno del ángulo x en radianes
abs(x) Valor absoluto tan(x) Tangente de x en radianes
log(x) Logaritmo natural cot(x) Cotangente de x en radianes
log10(x) Logaritmo decimal asin(x) Arco seno de x en radianes
factorial(x) Factorial de x! acos(x) Arco coseno de x en radianes
sinh(x) Seno hiperbólico de x atan(x) Arco tangente de x en radianes
cosh(x) Coseno hiperbólico de x acot(x) Arco cotangente de x en radianes
tanh(x) Tangente hiperbólica de x coth(x) Cotangente hiperbólica de x en
rad
sec(x) Secante de x asec(x) Arco secante de x en radianes
sech(x) Secante hiperbólica de x csc(x) Cosecante de x en radianes
acsc(x) Arco cosecante de x csch(x) Cosecante hiperbólica de x en rad
sind(x) Seno de x en grados asind Arco seno de x en grados
factor(x) Encuentra los factores gcd(x,y) Encuentra el máximo común
primos de x denominador
lcm(x,y) Encuentra el mínimo común rats(x) Representa a x como un
múltiplo de x e y. quebrado
factorial(x) Calcula el valor de factorial primes(x) Encuentra todos los números
de x primos menores que x
round(x) Redondea hacia el entero fix(x) Redondea hacia el entero más
más próximo próximo a 0
ceil(x) Valor entero más próximo floor(x) Valor entero más próximo hacia -
hacia +
Residuo de la división ( 2 Devuelve -1 si x<0; 0 si x=0 y 1 si
rem(x,y) argumentos que no tienen sign(x) x>0. Aplicada a un número
que ser enteros ) complejo, devuelve un vector
unitario en la misma dirección
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
9. Resolución de problemas con MatLab El entorno MatLab 9
Ejercicio de práctica 1.3
Ejecute lo siguiente en MatLab y analice la respuesta:
>>round(17/5) >> factor(12) >> lcm(2,5)
>>floor(-9/4)
>>gcd(10,15) >> lcm(2,10)
>>fix(13/5)
>> floor(-8.6) >>rats(1.5)
>>rem(13,5)
>> ceil(-8.6) >>asin(-1)
>> ceil(11/5)
>>sign(5) >>factorial(6) >>sinh(pi)
>> round(8.6) >>primes(10) >>asinh(1)
>> fix(8.6) >> sin(0) >>sind(90)
>> fix(-8.6) >> cos(pi) >>asind(90)
>> tan(pi)
Ejercicio de práctica 1.4
Calcule:
43
( 4
250 + 23 ) 2
5π 7π
2 tan
π
6
Ln 8
a) 3 b) cos 2
sen +
e ( 45 − 3 )
6 8 7
1.9 Definiendo el nombre de la variable y su asignación.
En MatLab el signo = significa asignación
nombre_variable = un valor numérico o una expression calculada.
El lado derecho se asigna al nombre _ variable del lado izquierdo y aquí solo se pueden
escribir variables.
• El nombre de una variable debe comenzar con una letra y puede tener números y el
guión bajo.
• Se reconocen un máximo de 63 caracteres en el nombre de una variable.
• Matlab si hace diferencia entre las minúsculas y mayúsculas en el nombre de la
variable.
• No se permite el nombre de funciones para definir variables.
• No se requiere definir las variables.
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
10. Resolución de problemas con MatLab El entorno MatLab 10
Comando Descripción
isvarname var Verifica si se permite el nombre de la
variable var
Elabora una lista de los nombres reservados
iskeyword que no se pueden asignar como nombre de
variables
which var Verifica si una variable var es una función
MatLab interna
Ejercicio de práctica 1.4
Realice las siguientes operaciones:
>> X = 15 ab (a + d ) 2
a+
>> X = 3*X – 12 c ab
>> a = 12; ad + cd
>> b = 4; 20 30
>> c = (a-b)+40–a/b*10; +
d x ( d / 2) + a b
>> c (a + b + c + d )
>> x = 0.75;
>> d = sin(x)^2 + cos(x)^2
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García
11. Resolución de problemas con MatLab El entorno MatLab 11
Ejercicio de práctica 1.5
¿Cuál de los siguientes nombres se permiten en MatLab? Haga sus predicciones y luego
compruébelas con los comandos isvarname, iskeyword y wich.
1. test
2. Test
3. if
4. mi-libro
5. mi_libro
6. Esteesunnombremuylargoperoinclusoasisepermite?
7. 1ergrupo
8. grupo_uno
9. zzaAbc
10. z34wAwy?12#
11. sin
12. log
Número Descripción
pi Número π = 3.141592653589...
exp(1) Número e = 2.718281828459...
Inf Infinito
NaN Indeterminación (Not a Number)
realmin Menor número real positivo utilizable
realmax Mayor número real positivo utilizable
>> format long
>> 1/0 >> realmin
Warning: divide by zero. ans =
ans = 2.225073858507201e-308
Inf
>> 0/0 >> realmax
Warning: divide by zero. ans =
ans = 1.797693134862316e+308
NaN
FES- ARAGÓN- UNAM Ing. Luis L. Jiménez García