Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Matlab 1
Matlab 1
Introduccin a MATLAB
Como funciona
cada variable se supone que es una matriz y no existe ningn requisito para el
dimensionamiento y declaracin de variables. Las dimensiones de la matriz se definen
mediante una lista explcita de elementos o por reglas que se aplican a las
operacionesmatemticas.
Las sentencias de MATLAB estn tpicamente en el formato general de
variable=expresin
(o simplemente expresin), entonces el resultado lo tiene la variable ans
Ejemplo
y = 10*sin(pi/6) 10*sin(pi/6)
El resultado devuelto es un escalar (matriz de 1 por 1) con un valor de 5,0.
Entorno
El entorno principal es la ventana de comandos, en ella cualquier
expresin que tecleemos porducir una respuesta que quedar
almacenada en ans o en una variable.
Todas las variables creadas estan
representadas en el Workspace
Haciendo click se accede a un editor
El histrico de comandos
permite acceder a los comandos ,
bien con un click o con las flechas
Entorno II
Tecleando HELP nombre_de_comando obtendremos ayuda en linea, si no
especificamos tema o comando mostrara todos los items disponibles:
>> help
HELP topics
matlab\general
matlab\ops
matlab\lang
matlab\elmat
matlab\elfun
matlab\specfun
matlab\matfun
matlab\datafun
matlab\polyfun
Entorno III
Para continuar una lnea hay que usar . . . al final de
cada lnea que se quiera continuar.
Los comentarios en MATLAB deben ir precedidos por %.
La orden clear all borra el contenido de todas las variables,
funciones,resulta interesante cuando se depuran
programas.
Entrada/salida
Entorno IV
Guardar variables y matrices
diary graba tanto los comandos introducidos como la salida de
MATLAB, pero no graba los valores de las variables y matrices.
whos elabora un lista de dichas variables, as como de las
dimensiones de la matrices.
save xxx guarda las matrices y variables de esta lista en un archivo
denominado xxx. MATLAB etiqueta estos archivos con una
extensin .mat.
Funciones Matlab
Complex.
abs - Absolute value.
angle - Phase angle.
complex - Construct complex data from real and imaginary parts.
conj - Complex conjugate.
imag - Complex imaginary part.
Rounding and remainder.
fix - Round towards zero.
floor - Round towards minus infinity.
ceil - Round towards plus infinity.
round - Round towards nearest integer.
mod - Modulus (signed remainder after division).
rem - Remainder after
Funciones Matlab
Trigonometric.
sin - Sine.
cos - Cosine.
acos - Inverse cosine.
tan - Tangent.
atan - Inverse tangent.
Exponential.
exp - Exponential.
log - Natural logarithm.
log10 - Common (base 10) logarithm.
log2 - Base 2 logarithm and dissect floating
Matrices
Crear una matriz:
A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]
ones(dimensiones) eye(dimensiones)
A = [12 3
4 5 6]
Matrices especiales
Operadores de Matriz I
Sumar:
sum(A)
A+ 5 (suma 5 a cada elemento)
Multiplicar
A*A Estandard
A.*A Elemento a elemento
A*3 Cada elemento*3
det(A) es el determinante
Transponer e Inversa
A
X = inv(A)
Diagonal
diag(A)
Operadores de Matriz II
Intervalos
1:10
Trigonometricos
0:pi/4:pi
Submatriz:
g = a(1,:), g = a( : , 1:3)
t =0 : 0.02 : 4
El resultado es una variable matricial t con una fila y 201 columnas.
Columns 1 through 7
0
0.0200
0.0400
0.0600
Columns 8 through 14
0.1400
0.1600
0.1800
0.0800
0.1000
0.1200
Ejercicio 1 Matrices
Considere la siguiente matriz:
Se pide:
a) Introducir la matriz A.
b) Obtener los valores de la primera columna
c) Obtener los valores de la segunda fila.
d) Obtener los valores de la segunda y la tercera columna.
e) Obtener la diagonal de A.
f) Obtener una matriz de 2x2 donde todos los elementos sean 1.
g) Obtener una matriz unidad de orden 2x2.
h) Multiplica A por su inversa. qu se obtiene?
Graficos y Matrices
En matlab un gran numero de funciones intentan
traducir la entrada de datos a traves de una matriz.
Las funciones grficas son un ejemplo de ello:
plot (A)
Otras:
bar
Graficos y Matrices
La ventana Grfica contiene muchas opciones que
permiten mejorar el aspecto del grfico
Plot (A)
Grid on
Otras:
xlabel('Sample #')
ylabel('Pounds')
Ejercicio 2
- Crea una matriz b con una fila y valores de 2 a 10 .
- Suma a cada elemento el numero 2
- Dibuja utilizando la funcion bar y pon de ttulo a los
ejes x e y respectivamente : Eje x Eje y
Prueba las funciones:
plot(b,'*')
axis([0 10 0 10])
qu efecto tienen?
Ejercicio 3
- Crea una matriz b con una fila y valores de 2 a 10 .
- Suma a cada elemento el numero 2
- Dibuja utilizando la funcion bar y pon de ttulo a los
ejes x e y respectivamente : Eje x Eje y
Prueba las funciones:
plot(b,'*')
axis([0 10 0 10])
qu efecto tienen?
Grficos II
- plot(x, y): utiliza dos vectores, x e y, de la misma longitud. ste
dibujar los puntos (xi, yi) y los unir mediante rectas continuas.
- Si no se le da vector x plot (i, y(i)).
- Tipo y color de la lnea tercer argumento. por defecto lnea continua
de color negro
Ejemplo:
Ejercicio 4
Sabiendo que ecuacin cinematica del espacio
es :s= so + vo*t + 1/2at^2.
(ojo multiplicacin escalar y ^ escalar .* .^)
1) Crea las matrices de tiempo para calcular el espacio recorrido con
una velocidad inicial de 12, espacio inicial de 5 y aceleracion de 5.5
Representa la curva resultante con t en el eje x y
s en el eje y
2) Hazlo ahora para un movimiento sin aceleracin y representalo en
la misma grfica
Ejercicio 4_1
Sabiendo que la ecuacin del nmero aureo es
switch (metodo)
case {1,2,3}
disp([1,3])
case {4,5,6,7}
disp([4-7])
case {8}
disp([8])
otherwise
disp(< 1 o > 8)
end
Scripts M-Files
Scripts M-Files
Scripts M-Files
Globales y . escalares
Ejercicio 4
Sabiendo que ecuacin cinematica del espacio
es :s= so + vo*t + 1/2at^2.
(ojo multiplicacin escalar y ^ escalar .* .^)
1) Crea las matrices de tiempo para calcular el espacio recorrido con
una velocidad inicial de 12, espacio inicial de 5 y aceleracion de 5.5
Representa la curva resultante con t en el eje x y
s en el eje y
2) Hazlo ahora para un movimiento sin aceleracin y representalo en
la misma grfica
Ejercicio 5
Sabiendo que ecuacin cinematica del espacio
es :s= so + vo*t + 1/2*a*t*t
(ojo multiplicacin escalar .*)
Ejercicio 5_1
Ejercicio 5_1:salida
Ejercicio 6
Crea un vector x de 1 a 5 en intervalos de 0.5
y = 1./(1 + 10*(x-3).^2).*sin(x);
z = 1./(1 + 10*(x-3).^2).*cos(x);
Utiliza plot(x,y,x,z) para representar la salida.
Usando title Nota letras especiales: \beta = \alpha {\gamma 1}\omega'), xlabel ylabel
legend grid on haz un grfico similar a este
Ejercicio 7
Con la orden fill(x,y,color) puede rellenarse con color el polgono
definido por los vectores x e y.
Crea una funcion de seno basado en un vector x uniformemente
espaciado y representalo para que aparezca como el de la figura
(color = b).
Ejercicio 8
Sabiendo que una espiral se define como :
-15
-10
-5
10
15
20
Ejercicio 9
La ventana grfica de MATLAB puede albergar varios
grficos subplot(m,n,k). matriz mn de subventanas, y
realizando el dibujo en la ventana k, contando por filas.
Cree una matriz de 2*2 subventanas y dibuje los 4 ltimos dibujos en
ellas
Ejercicio 10
Crea una espiral en tres dimensiones con el comando
plot3(x,y,z)
x=t*cos(t); y=t*sin(t); z=t; (ojo multiplicacin escalar)
Curva con plot3
50
40
z(t)
30
20
10
0
50
50
0
y(t)
0
-50
-50
x(t)
Superficies
Las rdenes de dibujo 3D ms usuales son:
contour(X,Y,Z,num) Dibuja num curvas de nivel
contourf(X,Y,Z,num) Dibuja y rellena num curvas de nivel
ezcontour(f,dominio) version fcil de contour
mesh(Z) Dibuja la funcin Z (ejes matriciales)
mesh(X,Y,Z) Dibuja la funcin Z (ejes cartesianos)
meshc(Z) mesh + contour (ejes matriciales)
meshc(X,Y,Z) mesh + contour (ejes cartesianos)
surf(Z) Dibujo slido (ejes matriciales)
surf(X,Y,Z) Dibujo slido (ejes cartesianos)
surfc contour + surf
Ver Demo superficies