Академический Документы
Профессиональный Документы
Культура Документы
14
Página: http://www.lawebdelprogramador.com/foros/Matlab/
Foro de Matlab: http://www.lawebdelprogramador.com/foros/agregar.php?id=132
Blog personal: http://matlabcaballero.blogspot.com/
Group Facebook: https://www.facebook.com/groups/matlabcaballero/
Página Facebook: https://www.facebook.com/matlabcaballero
Correo: jjcc94@hotmail.com
Skype: josejeremiascaballero
Celular: +51 995757570
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 1
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
1ra semana
Presentación de Matlab. Ambiente Matlab, Help de Matlab, Ejecución de programas
demos de Matlab. Entrada y salida de información en Matlab, almacenamiento de
variables,
Vectores y Matrices: Entrada de datos por el teclado, funciones simbólicas Vectores y
Matrices. Vectores filas y columnas, Reconocimiento de índices de vectores y matrices.
Operaciones de suma de vectores y matrices. Concatenación de vectores y matrices,
operaciones elemento a elemento de vectores y matrices, operaciones de dos puntos con
vectores y matrices, producto escalar, producto vectorial. Multiplicación de matrices.
Matrices especiales. Aplicación de matrices a imágenes.
2da semana
Solución de Sistemas lineales en Matlab, álgebra lineal para matrices.
autovalores de una matriz, normas de una matriz y vectores.
Grafica 2d en Matlab. Nivel básico. Uso de los comandos de Matlab para graficas en
2d. La función plot, plotty, loglog, semilogx, semilogy, legend, explot, añadir graficas
a graficas ya existentes (superposición de graficas), subplot, control de ejes, función
inline, control de ventajas de gráficas, la función
3ra semana
Grafica 3d en Matlab. Nivel Básico. Graficas de curvas en 3 dimensiones, la función
plot3; generación de mallados con la función meshgrid. Graficas de superficies en
coordenadas rectangulares, la utilización de la funciones mesh, meshz, meshc, surf,
surfl, contour, contour3, pcolor, para graficar una superficie en coordenadas
rectangulares.
4ta semana
Funciones Estadísticas. Mediana, Desviación Estándar, Covarianzas, Numero
Aleatorios. Graficas estadísticos, diagrama de sectores, diagrama de Pareto,
histogramas
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 2
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
5ta semana
Calculo Simbólico
Polinomios: Operación con Polinomios, evaluación de polinomios, productos de
polinomios, división de polinomios, derivada de polinomios, integral de polinomios,
fracciones parciales de polinomios, raíces de polinomios,
6ta semana
Introducción a Matlab guide Como entrar al guide de Matlab. Uso de Static Text,
Uso de Edit Text, Uso de get y set en un guide, Uso de Push Button, importación y
exportación de variables en guide. Uso de inspector Programas resueltos a nivel
Matlab Guide.
Uso de Axes, Uso de Panel. Control de colores de los ejes, Control de color de los
Etiquetas..
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 3
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO I
ENTORNO DE MATLAB
Y ARREGLOS DE VECTORES Y MATRICES
1.1 INICIANDOSE EN MATLAB 7.14 (R2012a)
Luego nos va a salir la siguiente ventana.
Current Directory:
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 4
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
Directorio Actual
LA BARRA DE HERRAMIENTAS
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 5
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 6
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
z 1x1 8 double
Borra la variable z de la >> z
memoria Undefined function or variable 'z'.
>> clear z
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 7
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 8
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
V(i) es el elemento de la posición i-ésima El 5to, 1ro y el 6to elemento del vector y
del vector V >> y([5 1 6])
ans =
El 2do elemento del vector y 0.3090 1.0000 0.0000
>> y(2)
ans =
0.9511
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 9
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 10
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 11
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 12
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO II
. . . . . . . .
. ... ( I )
. . . . . . . .
. . . . . . . .
an1 x1 an 2 x2 . . . ann xn bn
Resolver 2 3 4 x1 3 Ax=b
2 x1 3x2 4 x3 3 1 1 1 x 0.5 x=inv(A)*b
2
x1 x2 x3 0.5 4 7 14 x3 2
4 x 7 x 14 x 2
1 2 3 A x b
En Matlab tenemos
>> A=[2 3 -4 ;1 -1 1; 4 -7 14] >> b=[3; -0.5; 2] >> x=A\b
A= b= x=
2 3 -4 3.0000 0.5000
1 -1 1 -0.5000 2.0000
4 -7 14 2.0000 1.0000
>> % con la función linsolve() tenemos >> % con la función mldivide() tenemos
>> x=linsolve(A,b) >> x=mldivide(A,b)
x= x=
0.5000 0.5000
2.0000 2.0000
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 13
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
1.000 1.0000
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 14
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
FUNCIÓN OPERACIÓN
eig(A) Autovalores de la matriz A
jordan(A) Forma canónica de Jordan de la matriz A
1 2 3
EJEMPLOS EN MATLAB A
4 5 6
7 8 9
de todas las cantidades que se obtienen al sumar los módulos de los elementos de cada
fila.
n
d) ||| A |||F | a
i , j 1
ij |2 tr ( AT * A) tr ( A * AT ) es la norma Frobenius
Norma Significado
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 17
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO III
GRÁFICOS BI-DIMENSIONALES (2-D)
MATLAB utiliza un tipo especial de ventanas para realizar las operaciones
gráficas. Ciertos comandos abren una ventana nueva y otros dibujan sobre la ventana
activa, bien sustituyendo lo que hubiera en ella, o bien añadiendo nuevos elementos
gráficos a un dibujo anterior. Todo esto se verá con más detalle en las siguientes
secciones.
plot(X) Representa los puntos (k,Xk ). Si X es una matriz, hace lo mismo para cada
columna de la matriz. Si X es un vector complejo, representa la parte Real de X frente
a Imaginaria de X.
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 18
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO:
>> x=0:pi/200:2*pi;
>> y=sin(x);
>> y1=sqrt(x);
>> plotyy(x,y,x,y1)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 19
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO:
>> x=0:pi/40:2*pi;
>> y=cos(x);
>> plot(x,y,'+') % dibuja la línea con el marcador (+)
>>plot(x,y, 'b+') % dibuja la línea de color azul con el marcador (+)
>>plot(x,y, 'g*:')' %dibuja la línea de color verde con marcador (* ) y estilo de línea (:)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 20
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
funciones orientadas a añadir títulos al gráfico, a cada uno de los ejes, a dibujar una
cuadrícula auxiliar, a introducir texto, etc. Estas funciones son las siguientes:
se dibuja en ordenadas como función de los valores del primer vector de la pareja, que
se representan en abscisas. Si el usuario no decide otra cosa, para las sucesivas líneas se
utilizan colores que son permutaciones cíclicas del azul, verde, rojo, cyan, magenta,
amarillo y negro. Obsérvese bien cómo se dibujan el seno y el coseno en el siguiente:
EJEMPLOS:
>> x=0:pi/25:6*pi;
>> y=sin(x); z=cos(x);
>> plot(x, y, x, z, '--')
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 22
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 23
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
Se puede practicar con este ejemplo añadiendo títulos a cada subplot, así como
rótulos para los ejes. Se puede intentar también cambiar los tipos de línea. Para volver a
la opción por defecto basta teclear el comando:
>> subplot(1,1,1)
5.1.9 CONTROL DE EJES
El comando básico es el comando axis. Por defecto, MATLAB ajusta la escala
de cada uno de los ejes de modo que varíe entre el mínimo y el máximo valor de los
vectores a representar. Este es el llamado modo "auto", o modo automático. Para definir
de modo explícito los valores máximo y mínimo según cada eje, se utiliza el comando:
axis([xmin, xmax, ymin, ymax])
axis('auto') devuelve el escalado de los ejes al valor por defecto.
v=axis devuelve un vector v con los valores [xmin, xmax, ymin, ymax]
axis('ij') utiliza ejes de pantalla, con el origen en la esquina superior
izquierda. y el eje j en dirección vertical descendente
axis('xy') utiliza ejes cartesianos normales, con el origen en la esquina
Inferior izquierda y el eje y vertical ascendente
axis('image') La ventana tendrá las proporciones de la imagen que se desea
representar en ella (por ejemplo la de una imagen bitmap que se
desee importar)
axis('equal') el escalado es igual en ambos ejes
axis('square') la ventana será cuadrada
axis('normal') elimina las restricciones introducidas por 'equal' y 'square'
axis('off') elimina las etiquetas, los números y los ejes
axis('on') restituye las etiquetas, los números y los ejes
EJEMPLO
x=0:pi/40:2*pi; y=sin(x); plot(x,y)
axis([-1 7, -2, 2])
v=axis
axis('ij')
axis('xy')
axis('image')
axis('equal')
axis('square')
axis('normal')
axis('off')
axis('on')
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 24
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
Si se llama a la función figure sin argumentos, se crea una nueva ventana gráfica
con el número consecutivo que le corresponda. El valor de retorno es dicho número.
Por otra parte, el comando figure(n) hace que la ventana n pase a ser la ventana
o figura activa. Si dicha ventana no existe, se crea una nueva ventana con el número
consecutivo que le corresponda La función close cierra la figura activa, mientras que
close(n) cierra la ventana o figura número n.
El comando clf elimina el contenido de la figura activa, es decir, la deja abierta
pero vacía. La función gcf devuelve el número de la figura activa en ese momento.
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 25
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 26
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 27
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 28
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 29
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO IV
GRÁFICOS TRI-DIMENSIONALES (3-D)
Quizás sea ésta una de las características de MATLAB que más admiración
despierta entre los usuarios no técnicos.
Un gráfico de malla tridimensional viene definido por una función z=f(x,y), de
tal forma que los puntos de la superficie se representan sobre una rejilla, resultado de
levantar los valores de z dados por f(x,y) sobre la correspondientes puntos del plano
(x,y).
EJEMPLO
>> x=0:0.5:4, y=1+x.^2, z=log(1+x)
x=
0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000
y=
1.0000 1.2500 2.0000 3.2500 5.0000 7.2500 10.0000 13.2500 17.0000
z=
0 0.4055 0.6931 0.9163 1.0986 1.2528 1.3863 1.5041 1.6094
>> plot3(x,y,z)
>> grid
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 30
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
OBSERVACIÓN.
El vector x=[1 2 3] representa el Eje X y el vector y=[4 5 6 7] representa el Eje Y.
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 31
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO:
4.3.2 COORDENADAS RECTANGULAR,
Graficar el paraboloide z x 2 y 2 en
el dominio rectangular [ -4,4 ]x[ -6,6 ]
En matlab tenemos
4.3.3 meshz(X,Y,Z,C)._Represe
nta el gráfico de malla de la función
z= f(x,y) con una especie de cortina o
telón en la parte inferior.
4.3.4 meshc(X,Y,Z,C)._Representa
el gráfico de malla de la función z=f(x,y)
con el grafico de contorno
correspondiente (curvas de nivel
proyectadas sobre el plano XY).
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 32
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
4.3.5 surf(X,Y,Z)._Representa el
grafico de superficie de la función z=f(x,y),
realizando el dibujo con los colores
especificados en C. El argumento en C se
puede ignorar.
4.3.6 surfl(X,Y,Z,C)._Representa el
grafico de superficie de la función z=f(x,y),
realizando el dibujo sombreado.
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 33
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
4.4.2 contuor(X,Y,Z,n)._Dibuja el
gráfico de contorno (curvas de nivel) para
las coordenadas (X,Y,Z). Usando n líneas
de contorno.
4.4.4 contuor3(X,Y,Z,n)._Dibuja
los gráficos de contorno en 3
dimensiones, con n curvas
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 34
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO:
Graficar el cono z x 2 y 2 en el dominio circular de radio 6 centrado en el origen
de coordenadas.
[r,u]=meshgrid(0:0.25:6,0:pi/30:2*pi);
x=r.*cos(u);
y=r.*sin(u);
z=sqrt(x.^2+y.^2);
surf(x,y,z)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 35
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
x r s en(v) cos(u )
y rsen(v) sen(u ) u [1 , 2 ], v [1 , 2 ]
z r cos(v)
EJEMPLO:
Graficar la esfera z 2 x2 y 2 r 2 , de radio r=6 en coordenadas esféricas,
parametrizando en coordenadas esféricas tenemos
x 6s en(v) cos(u )
y 6sen(v) sen(u ) u [0, 2 ], v [0, ]
z 6 cos(v)
[u,v]=meshgrid(0:pi/20:2*pi,0:pi/20:pi);
x=6*sin(v).*cos(u);
y=6*sin(v).*sin(u);
z=6*cos(v);
surf(x,y,z)
axis('image')
EJEMPLO:
Graficar la siguiente curva paramétrica
x sen(t )
y cos(t ) t [0, 2 ],
z cos(t )
t=0:pi/20:2*pi;
x=sin(t);
y=cos(t);
z=cos(t);
plot3(x,y,z)
grid
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 36
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO:
>>sphere, >> [x,y,z]=sphere(30);
>> axis equal, >>mesh(x,y,z)
EJEMPLO:
>>[x,y,z]=ellipsoid(0,0,0,5,10,20);
>>mesh(x,y,z)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 38
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO V
>> pie3(x)
>> legend('PS','AS','MPP','VA','AP','otros','VL')
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 39
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO:
>> pie3(x,[1 1 1 0 0 0 0 ])
>> legend('PS','AS','MPP','VA','AP','otros','VL')
EJEMPLO:
PARTIDO NUMERO DE ESCAÑOS
Espacio 90 (PS) 228
Asamblea Uruguay (AS) 171
Móv. Participación Popular (MPP) 120
Vertiente Artiguista (VA) 106
Alianza Progresista (AP) 78
Otros 8
Votos al lema (VL) 3
TOTAL 714
Diagrama de Pareto
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 40
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
Diagramas de Barras
Diagramas de Barras
con datos agrupados
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 41
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
5.1.4 HISTOGRAMAS
Para generar histogramas se utiliza el comando hist. Por ejemplo para generar
500 números aleatorios siguiendo la normal N (0,1) . Con la orden hist(x), obtenemos
la figura 1 un histograma con 10 intervalos y con la orden hist(x,N) obtenemos la
figura 2 un histograma con N intervalos.
EJEMPLO:
>> x=randn(500,1);
>>x=randn(500,1); >> hist(x,20)
>> hist(x)
Fig. 1 Fig.2
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 42
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
x=2001:2010;
y=[917 714 618 343 936 125 731 646 833 398];
subplot(2,2,1); area(x,y);
subplot(2,2,2),stairs(x,y);
subplot(2,2,3),stem(x,y);
subplot(2,2,4),errorbar(x,y);
1000 1000
800 800
600 600
400 400
200 200
0 0
2002 2004 2006 2008 2010 2000 2005 2010
1000 3000
800
2500
600
2000
400
1500
200
0 1000
2000 2005 2010 0 5 10 15
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 43
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
90 1.5
4
120 60
1
150 2 30
0.5
180 0 0
-0.5
210 330
-1
240 300
270
-1.5
-1.5 -1 -0.5 0 0.5 1 1.5
90 4
10
120 60
3
150 5 30
2
180 0 1
0
210 330
-1
240 300
270
-2
1 2 3 4 5 6 7 8 9
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 44
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO VI
100
200
300
400
500
600
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 45
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
Filename:
'matlabroot\toolbox\matlab\demos\ngc6543a.jpg'
FileModDate: '01-Oct-1996 16:19:44'
FileSize: 27387
Format: 'jpg'
FormatVersion: ''
Width: 600
Height: 650
BitDepth: 24
ColorType: 'truecolor'
FormatSignature: ''
NumberOfSamples: 3
CodingMethod: 'Huffman'
CodingProcess: 'Sequential'
Comment: {'CREATOR: XV Version 3.00b Rev:
6/15/94 Quality = 75, Smoothing = 0
'}
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 46
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO VII
CALCULO SIMBOLICO
Construcción de objetos simbólicos
Función Salida
syms Crea variables simbólicas
sym Convierte a variables simbólicas
double Convierte a variables numéricas cuando las variables son simbólicas
EJEMPLO
El polinomio p( x) x3 4 x 2 10 lo evaluamos en distintos x
>> y=polyval(p,1) p( x) x3 4 x 2 10
x 1 y=
-5 P(1) 13 4*12 10 5
>> y=polyval(p,2+3i) p( x) x3 4 x 2 10
y=
x 2 3i P(2 3i) (2 3i)3 4*(2 3i) 2 10
-76.0000 +57.0000i
76 57i
>> x=2:1:6;
x (2,3, 4,5,6) >>y= polyval(p,x) x 2 3 4 5 6
y= p( x) 14 53 118 215 350
14 53 118 215 350
>> d=[1 -1 5]
d=
1 -1 5
>> P=conv(p,d)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 47
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
P= P( x) p ( x) d ( x)
1 3 1 10 10 -50 P( x) ( x3 4 x 2 10) ( x 2 x 5)
La cual seria el polinomio siguiente
P( x) x5 3x 4 x 3 10 x 2 10 x 50
>> [Q,R]=deconv(p,d)
Q= ( ) x5
El cociente es Qx
1 5
R= El residuo es R(x) 35
0 0 0 -35
D= N ( x) x 4 2 x3 11x 2 60 x 10
1 -2 11 -10 25
D( x) x 4 2 x3 11x 2 10 x 25
1 -16 54 19
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 49
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
>> syms x y E=
>>E=collect(x^2*y + y*x - x^2 - 2*x, y) [ x + 3, cos(x)]
E= [ sin(x), 4]
(x^2 + x)*y - x^2 - 2*x
>>syms x y >>syms x y z t u
>>E=factor(x^3-y^3) >>f = 1/(1 + x^2); g = sin(y); h = x^t; p =
E= exp(-y/u);
(x - y)*(x^2 + x*y + y^2) >>a = compose(f,g)
a=
1/(sin(y)^2 + 1)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 50
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
EJEMPLO 1
Consideremos el polinomio d ( x) 2 x 2 4 x 1 entonces tendremos el cociente
p( x) x3 4 x 2 10
siguiente
d ( x) 2 x 2 4 x 1
>> d=[2 4 1]; >>P =
>> [R,P,Q]=residue(p,d) -1.7071 p ( x) 1.1781 3.4231
>>R = -0.2929
1.1731 >>Q =
d ( x) x 1.7071 x 0.2929
-3.4231 0.5000 Q( x) 0.5 x 1
1.0000
[p,d] = residue(R,P,Q) Convierte la expansión del fragmento parcial anterior a los
coficientes del polinomio anterior.
[p,d] = residue(R,P,Q) El resultado puede expresarse como
p= 1 3
0.5000 2.0000 -0.0000 -5.0000 x 2 x2 5
p( x) 2
d= sigue
d ( x) 1
1.0000 2.0000 0.5000 x2 2 x
2
EJEMPLO 2
Consideremos el polinomio A( x) 4 x 2 y B( x) x - x - 2 x entonces tendremos
3 2
A( x) 4x 2
el cociente 3 2
B( x) x - x - 2 x
>> A=[4 -2] >> [R,P,Q]=residue(A,B)
A= R= P= Q= A( x) R(1) R(2) R(3)
Q( x )
4 -2 1 2 [] B( x) x P(1) x P(2) x P(3)
-2 -1
>> B 1 0 A( x) 1 2 1
B= 0
1 -1 -2 0 B( x) x 2 x 1 x 0
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 51
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
rref y rrefmovie
clear all x=
syms x1 x2 x3 1/2
1=2*x1+3*x2-4*x3+3; c1=coeffs(e1); C1=c1(end:-1:1); 2
e2=x1-x2+x3-0.5; c2=coeffs(e2); C2=c2(end:-1:1); 1
e3=4*x1-7*x2+14*x3+2; c3=coeffs(e3); C3=c3(end:-1:1);
M=[C1;C2;C3];
x=inv(M(:,1:end-1))*M(:,end)
x=
%%rref y rrefmovie 1/2
clear all 2
syms x1 x2 x3 1
1=2*x1+3*x2-4*x3+3; c1=coeffs(e1); C1=c1(end:-1:1);
e2=x1-x2+x3-0.5; c2=coeffs(e2); C2=c2(end:-1:1);
e3=4*x1-7*x2+14*x3+2; c3=coeffs(e3); C3=c3(end:-1:1);
M=[C1;C2;C3];
x=inv(M(:,1:end-1))*M(:,end)
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 52
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO VIII
INTRODUCCION A SIMULINK
Digitamos la sentencia Simulink en la ventana de comandos de matlab
Librería Simulink
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 53
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 54
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 55
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 56
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
6. Ejecutamos el código, haciendo click clic en la flecha que encuentra parte superior
derecha del archivo.
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 57
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
CAPITULO IX
MATLAB GUIDE
function varargout = electroacustica2_por_caballero(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn',
@electroacustica2_por_caballero_OpeningFcn, ...
'gui_OutputFcn',
@electroacustica2_por_caballero_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function electroacustica2_por_caballero_OpeningFcn(hObject, eventdata,
handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function entrar_a_la_pagina_webdelpromador_Callback(hObject,
eventdata, handles)
web http://www.lawebdelprogramador.com/foros/Matlab/ -browser
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 58
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function hexadecimal_decimal_hexadecimal_OpeningFcn(hObject,
eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout =
hexadecimal_decimal_hexadecimal_OutputFcn(hObject,...
eventdata, handles)
varargout{1} = handles.output;
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 59
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
cadena_hexa1='35 2E A8 D4';
cadena_decimal1='53 46 168 212';
set(handles.text6,'String',cadena_hexa1);
set(handles.text12,'String',cadena_decimal1);
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 60
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
xlswrite('crear_matrices_strings1_jose_caballero.xlsx',datos{i}(1:end),1,colum
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 61
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
nas(i));
end
%importacion desde excel hacia matlab
[num,txt,raw]=xlsread('crear_matrices_strings1_jose_caballero.xlsx');
for i=8:14
set(a(i),'String',raw(:,i-7))
end
handles.output = hObject;
guidata(hObject, handles);
varargout{1} = handles.output;
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 62
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14
MATLAB UICONTROL
function gui_pop_men
close all
hFig = figure(...
'units','pixels',...
'position',[400 300 500 300],...
'menubar','none',...
'name','gui_pop_menu',...
'numbertitle','off',...
'resize','on');
hPopup = uicontrol(...
'Parent',hFig,...
'style','popupmenu',...
'unit','pix',...
'position',[30 60 100 20],...
'fontsize',16,...
'fontweight','bold',...
'string',{'20';'80';'940';'150'},... % imprime
'value',1,...
'Callback',@Popup_Callback);
hOutput = uicontrol(...
'Parent',hFig,...
'Units','characters',...
'BackgroundColor',[1 1 1],...
'FontSize',16,...
'ForegroundColor',[0 0 0],...
'Position',[5 0.5 16 2.5],...
'String','First',...%% visualiza
'value',1,...
'Style','edit');
hOutputb = uicontrol(...
'Parent',hFig,...
'Units','characters',...
'BackgroundColor',[1 1 1],...
'FontSize',16,...
'ForegroundColor',[0 0 0],...
'Position',[25 0.5 16 2.5],...
'String','Second',... %% visualiza
'value',1,...
'Style','edit');
end
______________________________________________________________________
Facultad de Ciencias Matemáticas CEUPSMAT jjcc941@hotmail.com
Pág. 63