Professional Documents
Culture Documents
DICIEMBRE / 2011
VERACRUZ / MXICO
REALIZADO POR: SARMIENTO LPEZ ADAN GABRIEL
ESCUELA:
INSTITUTO TECNOLGICO DE ORIZABA
DICIEMBRE DE 2011
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
DEL AUTOR
Este tutorial fue creado con la intencin de que cualquier persona puede dar sus
primeros pasos en el Software Matlab de la empresa Mathworks. El tutorial tiene
fines educativos y no tiene intenciones de lucro, por lo que es gratuitamente
difundido en la red.
Aunque no conozco a la perfeccin Matlab me di a la tarea de buscar
informacin til sobre los temas ms comunes y bsicos de este Software, de all
trat de presentarlo en una forma amena, con ejemplos prcticos y sin tantos
rodeos para que lo ms pronto posible el lector sea capaz de comenzar a utilizar
Matlab, aunque se puede encontrar en diversas fuentes muchsima ms
informacin sobre este Software y todo lo que es capaz de hacer.
DEDICATORIA
El tutorial esta de dicado a toda persona interesada en aprender lo ms bsico
que el Software Matlab nos ofrece, no solo para ingeniera, sino para las
operaciones matemticas que tanto en la escuela como en la vida diaria nos son
necesarias y que adems el realizarlas manualmente nos consume demasiado
tiempo y con f de erratas.
AGRADECIMIENTOS
Agradezco a mis padres por su apoyo incondicional, a los maestros quienes por
sus peticiones en clculos y programacin, me eh visto obligado a aprender el uso
de este Software y agradecimientos especiales a quien revis este tutorial antes de
ser publicado.
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
VENTANA PRICIPAL
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
OPERADORES ELEMENTALES
Operador
+
*
/
^
sqrt
Utilizacin
Adicin
Sustraccin
Multiplicacin
Divisin
Potenciacin
Raz Cuadrada
Ejemplo:
>> 2+3
>> 2-3
>> 2*3
>> 2/3
>> 2^3
>> sqrt(2)
ans de Matlab
=5
= -1
=6
= 0.6667
=8
= 1.4142
DECLARACIN DE VARIABLES
Las operaciones realizadas anteriormente, al ser ejecutadas despus del prompt (>>)
en el Command Window y al teclear Enter se guardan en el Workspace con el nombre
ans**. Por lo tanto, al escribir ans en el Command Window, recuperamos el valor
de la ltima operacin realizada.
Por ello es muy importante nombrar cada operacin (o serie de ellas) con una
variable, es decir, declarar la variable que posea la operacin. Existen varias reglas para
declararlas:
1.- Debe comenzar con una letra
2.- Admite letras, nmeros y guiones bajos, no admite caracteres especiales.
3.- Diferencia letras maysculas de letras minsculas
4.- No se guardan las variables llamadas i y j, ya que se usan para nmeros
imaginarios.
5.- Se pueden nombrar como las funciones preestablecidas de Matlab, pero dicha
funcin deja de existir, ejemplo >> sen=2, siempre que se escriba seno, se llamara
al nmero 2, mas no a la funcin sen(xx) (funciones vistas posteriormente).
OPERADORES ELEMENTALES CON VARIABLES DECLARADAS
Command Window
>> a=2+3
>> b=2-3
>> c=a*b
>> d=b/c
Work Space
a
b
c
d
ans de Matlab
a= 5
b = -1
c = -5
d = 0.2000
**
ans. Es la variable por default que va guardando las operaciones realizadas en el
Command Window, el cuadrito es el tipo de variable que se guarda, en este caso es un
arreglo (una matriz) en la sig. pgina se habla de arreglos:
REALIZADO POR: SARMIENTO LPEZ ADAN GABRIEL
ESCUELA:
INSTITUTO TECNOLGICO DE ORIZABA
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
ARRAYS (ARREGLOS)
Lenguaje Matlab
a=1
b=[1 2 3]
c=[1; 2; 3]
d=[ 1 2; 3 4]
Utilizacin
Adicin TaT
Sustraccin TaT
Multiplicacin TaT
Divisin TaT
Potenciacin TaT
Ejemplo:
>> a=[ 1 2 ]+[ 3 4 ]
>> b= [ 2 4 ] - [ 3 1 ]
>> c= [ 2 3 ] .* [ 2 4 ]
>> d= [ 4 3 ] ./ [ 2 1 ]
>> e= [ 2 3 4 ] .^3
ans de Matlab
a = 4 6
b = -1 3
c = 4 12
d =2 3
e = 8 27 64
VECTORES COLUMNA
Operador
Utilizacin
Ejemplo:
Adicin TaT
Sustraccin TaT
>> b= [ 2; 4 ] - [ 3; 1 ]
.*
Multiplicacin TaT
./
Divisin TaT
.^
Potenciacin TaT
>> c= [ 2; 3 ] .* [ 2; 4 ]
>> d= [ 4; 3 ] ./ [ 2; 1 ]
>> e= [ 2; 3; 4 ] .^3
ans de Matlab
a = 4
6
b = -1
3
c = 4
12
d =2
3
e=8
27
64
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
MATRICES
Como vimos anteriormente, y al igual que los vectores fila y columna, se utiliza un
punto . Para hacer operaciones trmino a trmino, y tambin aplica para matrices, que
como los anteriores, tambin es un array. Sin Embargo, los operadores bsicos
requieren de ciertas reglas para hacer las operaciones ms comunes.
Operador
+
Regla
La matriz debe tener el
mismo nmero de elementos,
filas y columnas.
La matriz debe tener el
mismo nmero de elementos,
filas y columnas.
La 1ra matriz debe tener el
nm. de columnas igual al
nm. de filas de la 2da matriz
La 1ra matriz debe tener el
nm. de columnas igual al
nm. de filas de la 2da matriz
Debe
ser
una
matriz
cuadrada elevada a un
escalar
Ejemplo:
ans de Matlab
a=
>> a=[ 1 2; 3 4 ] +
2 4
[ 1 2; 3 4 ]
6 8
b=
>> b= [ 3 5; 6 4 ] 2 3
[ 1 2; 3 4 ]
3 0
>> c= [ 2 3 ] * [ 2 3; 4 4 ]
c=
1ra matriz= 1x2
16 18
2da matriz= 2x2
>> d= [ 2 3 ] / [ 2 3; 4 4 ]
d=
1ra matriz= 1x2
1 0
2da matriz= 2x2
e=
>> e= [ 2 3; 4 4 ]^2
16 18
24 28
MATICES PREDEFINIDAS
Matlab contiene funciones que nos dan matrices predefinidas que son usadas
comnmente para que el usuario no tenga la necesidad de escribirlas y son las
siguientes:
Funcin
eye( )
Uso
Matriz identidad
Ejemplo:
>>a=eye(3)
zeros( )
Matriz de ceros
>>b=zeros(3)
ones ( )
Matriz de unos
>> c=ones(3)
ans de Matlab
a= 1 0 0
0 1 0
0 0 1
b= 0 0 0
0 0 0
0 0 0
c= 1 1 1
1 1 1
1 1 1
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
FORMATO DE DATOS
Existen algunas formas de presentar los datos en el Command Window y se
mencionaran los siguientes:
Para ejemplificarlos, ejecutar: >> a=pi
Tipo
format short
format short e
format short g
format long
format long e
format long g
b=vpa(a)
b=rat(a)
Utilizacin
ans de Matlab
Fija 4 decimales
a=3.1416
Notacin cientfica con 4 decimales
a= 3.1416e+000
Notacin cientfica o decimal
a= 3.1416
dependiendo del valor
Fija 15 decimales
a=3.141592653589793
Notacin cientfica con 15 decimales a= 3.141592653589793e+000
Notacin cientfica o decimal
a= 3.14159265358979
dependiendo del valor
Nos da valores decimales siempre
b=3.14159265358979311599
79634685442
Nos da fracciones
b=3 + 1/(7 + 1/(16))
Nota: Para que apliquen los Format deben ejecutarse antes que la variable.
FUNCIONES ELEMENTALES QUE OPERAN DE MODO ESCALAR
Escalar: Cualquier nmero real o complejo
xx (=) cualquier variable con un escalar u operacin entre escalares definidos.
Ejecutar: >> a=1
Funcin
sin(xx)
cos(xx)
tan(xx)
asin(xx)
acos(xx)
atan(xx)
log(xx)
log10(xx)
exp(xx)
sqrt(xx)
real(xx)
imag(xx)
abs(xx)
>> aa=2+3i
Nombre
seno
coseno
tangente
arco seno
arco coseno
arco tangente
logaritmo natural
logaritmo base 10
nm. e elevado a
raz cuadrada
parte real
parte imaginaria
valor absoluto
Ejemplo
b=sin(a)
c=cos(a)
d=tan(a)
e= asin(a)
f=acos(a)
g=atan(a)
h=log(a)
k=log10(a)
l=exp(a)
m=sqrt(a)
n=real(aa)
o=imag(aa)
p=abs(aa)
ans Matlab
b = 0.8415
c = 0.5403
d = 1.5574
e = 1.5708
f=0
g = 0.7854
h=0
k=0
l = 2.7183
m=1
n=2
o=3
p = 3.6056
Nota: Matlab traba con radianes por lo tanto, para transformar radianes a grados
se debe usar el factor 180/pi y de grados a radianes pi/180.
REALIZADO POR: SARMIENTO LPEZ ADAN GABRIEL
ESCUELA:
INSTITUTO TECNOLGICO DE ORIZABA
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
Nombre
Ejemplo
xx'
transpuesta
B = A'
inv(xx)
inversa
C = inv (A)
det(xx)
ans Matlab
2 4
3 5
C = -2.5000 1.5000
2.0000 -1.0000
D = -2
B=
Trabaja con:
Una matriz
cualquiera
Matriz cuadrada
Matriz cuadrada
Qu obtenemos?
Races del polinomio
Ejemplo
a=roots(pol1)
polyval(p,x)
Evala el polinomio
en el valor x
Producto
Divisin, devuelve el
cociente y el resto
b=polyval(pol1,2)
conv(p1,p2)
[c,r]=
deconv(p1,p2)
[z,p,k]=
residue(p1,p2)
polyder(p)
ans Matlab
a = 1.4878
-0.2714+1.7683i
-0.2714-1.7683i
-0.9451
b = 25
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
GRAFICAS 2D
Una de los usos ms comunes para el estudio estadstico de datos es la creacin de
grficos, que permiten visualizar de una manera ms cmoda la tendencia de dichos
datos que la conforman. A continuacin se mencionaran los comandos ms comunes
para la realizacin de grficos.
Funcin
plot(A,B)
plot(A)
plot(A,B, 'cs')
title('texto')
xlabel('texto')
ylabel('texto')
text(x,y, 'texto')
legend('texto')
Qu obtenemos?
Grafico de los vectores A y B.
Grafico del vector A, como abscisas es su ndice.
Grafico con el color c y estilo indicado en s
Titulo del grafico.
Texto en el eje de las abscisas (x).
Texto en el eje de las ordenadas (y).
Texto en las coordenadas (x,y).
Leyenda.
*
v
<
--
s
^
>
-.
d
p
h
+
color
yellow (amarillo)
magenta
cyan
red (rojo)
smbolo
y
m
c
r
color
green (verde)
blue (azul)
white (blanco)
black (negro)
smbolo
g
b
w
k
Ejemplo:
Ejecutar: >>peso=[2 3 5 8]
>>tiempo=[0 1 2 3]
>> plot(tiempo,peso)
>> title('Evolucin del peso con el tiempo')
>> xlabel('Tiempo (segundos)')
>>ylabel('Tiempo (gramos)')
>> text(1.1,3, 'A partir de aqu incremente el peso rpido')
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
>>grid
El comando grid nos genera una malla sobre el grafico, pruebe por usted mismo lo
que hace, solo teclee grid y pulse Enter
Notas:
1.- Para graficar Peso vs Tiempo, ambos vectores deben tener el mismo nmero de
elementos.
2.- Si se desea agregar un segundo grafico sobre la misma ventana se usa el comando:
hold on y de nuevo usar el comando plot con sus respectivos argumentos.
CALCULO SIMBLICO
Expresiones Simblicas. Son cadenas de caracteres representando nmeros,
funciones, operadores y variables. Las variables no requieren valores predefinidos.
Para definir una variable simblica utilizamos el comando syms antes de la o las
variables a definir.
Ejemplo:
Matlab
>>syms x
Ans Matlab
Absolutamente nada
Workspace:
ING. QUIMICA
VERACRUZ/MEXICO
Matlab
>>syms x1 x2
>> fx=2*x1+3*x2
>>gx=5*fx
Ans Matlab
Absolutamente nada
fx = 2*x1^2 + 3*x2
gx = 10*x1^2 + 15*x2
DICIEMBRE / 2011
Workspace:
Obsrvese que todas las variables declaradas anteriormente son guardadas en memoria
como variables simblicas y no poseen ningn valor real, adems de que todas las
operaciones aritmticas utilizadas para variables numricas, tambin pueden ser usadas.
FUNCIONES ELEMENTALES QUE OPERAN SOBRE VARIABLES
SIMBLICAS
xx (=) cualquier variable definida que contenga a su vez variables simblicas
Ejecutar: >> syms x x1 x2
>> gx=5*x1 - 4*x2 - 4
>>fx=7*x^4-2*x^3+4*x^2-5*x
>> hx=3*x1-5*x2+9
Uso
ans Matlab
a = 84*x^2 12*x + 8
m(=) El grado de derivacin, para el ejemplo anterior es la 2da derivada, si
no se coloca ningn numero, Matlab entiende que es la 1ra derivada.
limit(f,n,a)
Limite
b=limit(fx,x,inf)
b = Inf
a(=) valor al que tiende la variable n; inf(=) infinito
int(f,n,li,ls)
Integrar
c=int(fx,x,3,5)
c = 57802/15
li(=)Limite Inferior; ls(=) Limite Superior
subs(f,var,valor)
Sustitucin
d=subs(fx,x,3)
d = 534
f(=) expresin algebraica, var(=) variable a sustituir, valor(=) nuevo valor que toma,
puede ser numero o una variable previamente definida.
[var1,var2,varn]=
Resolver
[x1,x2]=solve(gx,hx) x1 = 56/13
ecuaciones
x2 = 57/13
solve(ec1,ec2,...,ecn)
simultaneas
var1,2,n(=) variables; ec1,2,n(=)ecuaciones; Nota: Num de variables=Num de ecs.
A veces en la solucin de ecuaciones simultaneas pueden contener ms de 1 valor que
resuelva el sistema, por lo tanto, el 1er valor que arroje en una variable, corresponder
al 1er valor que arroje en las otras variables, pudiendo ser estos valores imaginarios. En
caso de que no tenga solucin el sistema, Matlab arrojar var: [12x1 sym] o algn
mensaje similar.
Derivar
Ejemplo
a=diff(fx,2)
Nota: Las reglas de declaracin de variables simblicas, son las mismas que para la
declaracin de las variables numricas.
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
Uso
Rene trminos
iguales
Expandir
operaciones
Factoriza
Ejemplo
a=collect(hx,s)
ans Matlab
a =(3*x - 3*t)*s
+ 3*t*x
expand(xx)
b=expand(hx)
b = 3*s*x - 3*s*t
+ 3*t*x
factor(xx)
c=factor(hx)
c = (-3)*(s*t
s*x - t*x)
simplify(xx)
Simplificar
d=simplify(hx)
d = 3*s*x - 3*s*t
+ 3*t*x
simple(xx)
Simplificar
e=simple(hx)
e = (-3)*(s*t
s*x - t*x)
pretty(xx)
Mejorar
pretty(ix)
2
presentacin
3x +4x-5
Como se puede observar, mejora la vista de una expresin, a como normalmente la
usaramos en la vida real, se usa normalmente para visualizar mejor las fracciones.
El lector se habr dado cuenta que la respuesta de algunos de estos comandos es
semejante entre s, o que adems en ciertos casos, es exactamente igual a la dada con
Matlab, y esto es cierto. La razn es porque las variables que se ejecutan previamente
son muy simples, sin embargo, cuando se trabaja con variables que contienen a su vez
muchas variables simblicas o largas operaciones aritmticas, Matlab no siempre nos
muestra en pantalla la solucin buscada, y, en el caso de los imaginarios, usualmente no
hace las operaciones, para este tipo de casos se usa el comando expand obsrvese el
siguiente ejemplo:
Ejecutar: >>syms x >>fx=5*x-3i >>gx=5*x+3i >>hx=fx*gx
Resultado en el Work Space: hx = (5*x - 3*i)*(5*x + 3*i). este resultado
es correcto?
La respuesta es:
Si.- Obviamente una multiplicacin es igual a la misma multiplicacin.
No.- Ya que se esperaba que como trminos conjugados, se eliminaran los imaginarios,
con los cuales no se puede trabajar en muchos casos con nmeros imaginarios adems
de que Matlab no hizo nada en este caso.
REALIZADO POR: SARMIENTO LPEZ ADAN GABRIEL
ESCUELA:
INSTITUTO TECNOLGICO DE ORIZABA
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
ING. QUIMICA
VERACRUZ/MEXICO
DICIEMBRE / 2011
CONCLUSIONES
Matlab es un software matemtico muy potente que nos permite realizar cualquier
operacin matemtica de manera sencilla, siempre y cuando conozcamos las funciones
o comandos necesarios para realizarlas. Por ello, se espera que el lector siga estudiando
este Software ya que el tutorial no toca todos los temas o gama de opciones que Matlab
puede hacer, tal como el caso de grficos 3D o programacin, por ejemplo.
El conocimiento de este Software da una gran satisfaccin, ya que facilita en gran
manera las peticiones que como ingenieros nos son requeridas, en mi caso escolarmente,
pero tambin pueden ser tiles en el mbito laboral.
BIBLIOGRAFIA
Javier Garca de Jaln, Jos Ignacio Rodrguez, Jess Vidal. Aprenda Matlab 7.0
como si estuviera en primero. Universidad Politcnica de Madrid. 2005.
DUDAS Y SUGERENCIAS
Email: adan_gabriel@hotmail.com
ING. QUIMICA
VERACRUZ/MEXICO