MATLAB
MATrix LABoratory "laboratorio de matrices” es un software
matemático que ofrece un entorno de desarrollo integrado
(IDE) con un lenguaje de programación propio (lenguaje
M). Está disponible para las plataformas Unix, Windows y
Apple Mac OS X.
Aplicaciones: manipulación de matrices, la representación
de datos y funciones, la implementación de algoritmos, la
creación de interfaces de usuario (GUI) y la comunicación
con programas en otros lenguajes y con otros dispositivos
hardware.
CARACTERISTICAS
Cálculos intensivos desde un punto de vista numérico.
Gráficos y visualización avanzada. Lenguaje de alto nivel
basado en vectores, arrays y matrices. Colección muy útil
de funciones de aplicación.
Las poderosas capacidades de cálculo técnico de MATLAB
se ponen a la disposición de los estudiantes en versiones
estudiantiles y en versiones de prueba en:
http://www.mathworks.com
TOOLBOX O CAJAS DE
HERRAMIENTAS
Signal Processing Toolbox, Wavelet Toolbox ,Image
Processing, Neural Network, Fuzzy Logic, Statistics ,
Simulink y el DSP Blockset ,Real-Time Workshop, señales
y Sistemas , Symbolyc Math, Sistemas de Control,
Adquisicion de Imágenes, etc
MATLAB
Edit: Editor se escriben los comandos o
algoritmos
Workspace: Espacio donde permite
observar las variables definidas en el
comando o mediante un algoritmo.
Directorio: donde MATLAB tienes
almacenado tus algoritmos.
Directorio: donde MATLAB tienes
almacenado los algoritmos, programas
Command Window: Espacio donde puede
escribir comandos como: hacer calculos (suma,
resta, ect), desarrollar graficas (figuras) llamar
funciones de ayuda (help).
Help: (F1) Manual de Ayuda para utilizar todos los
recursos que tiene MATLAB
Command History: Espacio donde puede observar los
comando hechos anteriormente. Ademas comandos se
mantienen almacenados a traves del tiempo.
Elementos básicos en MATLAB
• Matriz vacía y Matriz escalar:
• a = []; Define una variable como una
matriz estructura vacía
• a = [4]; a = 4; Define una variable a
como una matriz escalar un valor de 4.
Ejemplo
Comando
; Al terminar el comando con punto y coma, la respuesta no
aparecerá en la ventana de comando, si en la ventana de
Workspace
length(a) : Define la
cantidad de elementos
maximo que tiene un
vector
Almacena los comandos
anteriores
Al terminar el comando sin punto y coma, la respuesta aparecerá en la ventana de
comando. Si define el comando como una variable, la respuesta estará almacenada
como la variable ans
Elementos básicos en Matlab
• Matriz vector (fila y columna)
• Fila a = [ 1,2,3,4,5] o a = [ 1 2 3 4 5];
a=1:5;
• Columna a = [ 1;2;3;4;5]; a=[1:5]’;
• Matriz 2x3 b = [1 2 3;4 5 6];
• Matriz 3x2 c = [1 2;3 4;5 6];
• Funciones : length (a); size(a)
identifican estructura de las matrices
Suma, Resta, Multiplicación, División
Suma y Resta
a = [ 1 2;3 4] ; b = [1 1; 1 1];
c= a + b;
d = a – b;
La estructura de las matrices debe ser
igual
size(c) = size (a) = size (b) = [2 2]
Ejercicio
a(1,1) = 7.9787
7.9787
11.229
a(:,1) = 11.015
13.385
11.183
Ejercicio
7.9787
a(1:2:end,1) = 11.015
11.183
a(3,:) =
11.015 7.9818 12.19 11.156 9.2451
•
•
•
•
Redondeo:
a= 4.566
b=fix(a) valor entero = 4
c=roundn(a,-2), redondeo al decimal
mas próximo 4.57
• d=ceil(a) redondeo al entero próximo
=5
SOLUCION DE SISTEMAS DE ECUACIONES
Ej: La suma de las tres cifras de un numero es
16, la suma de las cifras de las centenas y la
cifra de las decenas es el triplo de la cifra de
las unidades y si al numero se le resta 99,
las cifras se invierten. Hallar el numero.
x+y+z=16
x+y=3z
x+y-3z=0
100x+10y+z-99=100z+10y+x = 99x-99z=99
SOLUCION DE SISTEMAS DE ECUACIONES
Se escribe la matriz a con los coeficientes de x,y,z
a=[1 1 1;1 1 -3;99 0 -99];
Se escribe la matriz b con los coeficientes del termino
independiente de cada ecuacion
>> b=[16;0;99];
Y se calcula la solución
>> s=a\b
5
7
4
Por tanto el numero es 574
Statistics Toolbox
Combina poderosos algoritmos estadísticos con
interfaces gráficas interactivas.
Las Statistics Toolbox le da un rango ancho de
herramientas para realizar cálculos estadísticos.
Proporciona una única mezcla de facilidad gráfica
de uso y programabilidad. Los despliegues gráficos
interactivos le permitieron aplicar métodos
estadísticos fácilmente y de forma consistente,
mientras el lenguaje de MATLAB le permite
fácilmente crear los acostumbrados métodos
estadísticos y de análisis.
•
•
•
•
Estadística Simple
a = 100 *rand(15,1);
[oa,pa]=sort(a); Orden ascendente
[od,pd]=sort(a,’descend’); Orden
descendente
• p=hist(a,5); Histograma
oa =
1.8504
17.6266
23.1139
44.4703
45.6468
48.5982
60.6843
61.5432
73.8207
76.2097
79.1937
82.1407
89.1299
92.1813
95.0129
pa =
8
15
2
10
7
4
3
11
14
6
12
9
5
13
1
mean(a)
var(a)
ans =
59.4148
ans =
823.9171
>> median(a)
ans =
61.5432
>> min(a)
ans =
1.8504
>> max(a)
ans =
95.0129
>> cov(a)
RAICES DE UN POLINOMO
F(X)= X^3+3X^2-2X+1
X=>> A=[1 3 -2 1];
>> roots(A)
ans =
-3.6274
0.3137 + 0.4211i
0.3137 - 0.4211i
Derivada de una función
F(X)= X^3+3X^2-2X+1
syms x
>> f=x^3+3*x^2-2*x+1;
>> diff(f)
ans =
3*x^2+6*x-2
>> diff(f,2)
ans =
6*x+6
Integral de una función
F(X)= X^3+3X^2-2X+1
syms x
>> f=x^3+3*x^2-2*x+1;
>> int(f)
ans =
1/4*x^4+x^3-x^2+x
>> int(f,0,1)
ans =
5/4
Figuras
100
t=0:0.1:10; % tiempo inicial, intervalo, tiempo final
90
Y1=2*t; %Variable de respuesta Y1 Y=2t
80
Y2=t.^2; % Y2= t^2
70
figure(1) % Observar simultaneamente las 2 funciones dentro de una figura
plot(t,Y1,t,Y2) %plot(t,[‘Y1‘Y2’];
grid
60
figure(2) %Observar por separado las figuras
40
subplot(2,1,1)
30
plot(t,Y1);grid;axis([0 10 minmax(Y1)])
20
title(‘Y1 = 2t’) %Titulo de la figura
Y2
50
Y1
10
ylabel(‘Y1’) %Eje de y
xlabel(‘x’) %Eje de y
0
0
1
2
3
4
5
6
7
8
9
10
Figuras
subplot(2,1,2)
plot(t,Y2,’linewidth’,3);grid;axis([0 10 minmax(Y2)]
Y1=2t
20
title(‘Y2 = 2t’) %Titulo de la figura
Y1
ylabel(‘Y1’) %Eje de y
15
10
5
xlabel(‘x’) %Eje de y
0
0
1
2
3
4
5
x
6
7
8
9
10
6
7
8
9
10
Y2=t 2
Y2
100
50
0
0
1
2
3
4
5
x
GRAFICAS EN TRES DIMENSIONES
[X,Y]= meshgrid(linspace(-2,2,100), linspace(-2,2,100));
>> Z=X.*exp(X.^2+Y.^2);
>> surf(X,Y,Z)