Actualizado el 21 de Marzo del 2018 (Publicado el 15 de Diciembre del 2017)
750 visualizaciones desde el 15 de Diciembre del 2017
147,0 KB
19 paginas
Creado hace 15a (23/10/2009)
MATLAB
Introducción al MATLAB
Introducción al MATLAB
• MATLAB = MATrix LABoratory
• Es un entorno de computación que presenta
Es un entorno de computación que presenta
facilidades para cálculo matemático y
visualización gráfica
visualización gráfica
• Dispone de toolboxes especializados: Control
Systems, Neural Netword, Optimization, etc.
• En la Ventana de Comandos “Command
En la Ventana de Comandos Command
Windows” se puede trabajar de manera
interactiva
interactiva.
• Pruebe los siguientes comandos:
l
• clock
k
• fix(clock)
• k 2^10
• k = 2^10
• x = rand
• X = fix(rand * 10)
• X = fix(rand
10)
• r = 2 ; sup = pi * r ^ 2
• workspace
• En la Ventana de Comandos “Command
En la Ventana de Comandos Command
Windows” se puede trabajar de manera
interactiva
interactiva.
• Pruebe los siguientes comandos:
l
h
l
d l
i
k D
f h
• clock Devuelve fecha y hora del sistema
• fix(clock) Fecha y hora del sistema con enteros
• k 2^10 2 elevado a la 10
• k = 2^10 2 elevado a la 10
• x = rand un número aleatorio 0 <= x < 1
• X = fix(rand * 10) número entero aleatorio 0 <= X < 10
• X = fix(rand
10) número entero aleatorio 0 <= X < 10
• r = 2 ; sup = pi * r ^ 2 Calcula la superficie de un círculo
de radio 2
• workspace abre la ventana workspace dónde pueden
inspeccionarse las variables actualmente definidas
• Debe observarse que:
• Debe observarse que:
• Las variables se crean automáticamente cuando se
necesitan (no se declaran)
necesitan (no se declaran)
• Matlab hace distinción entre mayúsculas y minúsculas
(x y X son dos variables distintas)
(x y X son dos variables distintas)
• Matlab tiene definida algunas constantes (pi, eps, i)
• La variable ans guarda la respuesta más reciente
La variable ans guarda la respuesta más reciente
• el punto y coma (;) separa comandos consecutivos.
•Pruebe los siguientes comandos:
save nombre_archivo
clear sup
clear all
load nombre_archivo
• Debe observarse que:
• Debe observarse que:
• Las variables se crean automáticamente cuando se
necesitan (no se declaran)
necesitan (no se declaran)
• Matlab hace distinción entre mayúsculas y minúsculas
(x y X son dos variables distintas)
(x y X son dos variables distintas)
• Matlab tiene definida algunas constantes (pi, eps, i)
• La variable ans guarda la respuesta más reciente
La variable ans guarda la respuesta más reciente
• el punto y coma (;) separa comandos consecutivos.
•Pruebe los siguientes comandos:
save nombre_archivo Guarda el Workspace
clear sup Borra del Workspace la variable sup
clear all Borra todas las variables del Workspace
load nombre_archivo Carga el Workspace previamente guardado en el
archivo nombre_archivo
• Nombres de variables :
– Se debe tener cuidado con los nombres de las
variables que se utilizan
variables que se utilizan
– Probar lo siguiente:
juan 5;
juan = 5;
y = juan*pi
– la variable juan oculta la función del mismo
l
nombre. En este caso será útil el comando clear
d
á ú il
l
b
E
• Operaciones con Matrices y vectores:
• Operaciones con Matrices y vectores:
– Para definir matrices se utiliza:
constructor
[ ]
, separador de columnas
; separador de filas
– En lugar de coma (,) puede utilizarse un espacio, y
en lugar de punto y coma (;) puede utilizarse un
en lugar de punto y coma (;) puede utilizarse un
retorno de carro
– Ejemplo:
Ejemplo:
A=[1,2,3; 4,5,6]
o simplemente:
l
A=[1 2 3
4 5 6]
4 5 6]
t
i
• Operaciones con Matrices y vectores:
• Operaciones con Matrices y vectores:
– Pruebe los siguientes comandos
A = [ 1 , 2 , 3 ; 4 , 5 , 6 ]
B = A'
C = A * B
D = B * A
v = [ 1 , 2 , 3 , 4 ]
w = [ 5 ; 6 ; 7 ; 8 ]
x = v * w
Y = w * v
M=[1:10 ; 11:20 ; 21:30]
V=[1:0.3:10]
• Operaciones con Matrices y vectores:
Operaciones con Matrices y vectores:
– Pruebe los siguientes comandos
,
,
,
]
A
B C es la multiplicación de matrices A
A = [ 1 2 3 ; 4 5 6 ] Define la matriz A de 2x3
A = [ 1 , 2 , 3 ; 4 , 5 , 6 ] Define la matriz A de 2x3
B = A' Define B como la matriz transpuesta de A
C = A * B C es la multiplicación de matrices A * B
C
B
D = B * A D es la multiplicación de matrices B * A
v = [ 1 , 2 , 3 , 4 ] Define el vector fila v
w = [ 5 ; 6 ; 7 ; 8 ] Define el vector columna w
x = v * w x es la multiplicación de matrices v * w
Y = w * v Y es la multiplicación de matrices w * v
M=[1:10 ; 11:20 ; 21:30] matriz de 3x10 con elementos
[
del 1 al 30
V=[1:0.3:10] vector con elementos del 1 al 10 cuyas
componentes se forman sumando 0 3 a la anterior
componentes se forman sumando 0.3 a la anterior
• Resolviendo sistemas de ecuaciones lineales
• Resolviendo sistemas de ecuaciones lineales
1.2 x1 + 2.2 x2 = 21.4
7.1 x1 + 0.5 x2 = 39
A = [1 2 2 2 ; 7 1 0 5 ]
A = [1.2 , 2.2 ; 7.1 , 0.5 ]
R = [ 21.4 ; 39 ]
X = inv(A) * R o A\R
X =
X = ans =
ans =
5.0000 5.0000
7.0000
7.0000
• Funciones que devuelven matrices
– eye(4) Forma la matriz unidad de 4x4
– zeros(3,5) Forma una matriz de ceros de 3x5
– ones(3) Forma una matriz de unos de 3x3
– ones(2,4) Idem de tamano 2x4
ones(2,4) Idem de tamano 2x4
– rand(3) forma una matriz de 3x3 de números aleatorios
entre 0 y 1, con distribución uniforme
y
– rand(4,2) Idem de tamano 4x2
– Probar los siguientes comandos:
Probar los siguientes comandos:
A= magic(3) v=[1:10]
size(A) size(v)
length(A) length(v)
sum(A) sum(v)
• Creando matrices con submatrices
– Se puede crear una nueva matriz componiendo
,
como submatrices, matrices definidas
previamente. A modo de ejemplo ejecútense las
siguientes instrucciones:
g
>> A=zeros(2);
>> B=ones(2,3);
o es( ,3);
>> C=[A,B;[1:5]]
C =C
0 0 1 1 1
0
0 0 1 1 1
1
1 2 3 4 5
1
0
1
• Operadores .* ./ .^
– En MATLAB se puede aplicar elemento a elemento los
operadores (* / ^) Para ello se los precede por un punto(.)
» [1 2 3 4]^2
[1 2 3 4]^2
??? Error using ==> ^
Matrix must be square.
» [1 2 3 4].^2
ans =
1 4 9 16
1 4 9 16
» [1 2 3 4]*[1 ‐1 1 ‐1]
??? Error using ==> *
Inner matrix dimensions must agree.
» [1 2 3 4] *[1 ‐1 1 ‐1]
» [1 2 3 4]. [1 1 1 1]
ans =
1 ‐2 3 ‐4
1 2 3 4
• Graficando una función
– Se desea graficar la función f(x)=x.sin(x) en
el intervalo [ 10 10]
el intervalo [‐10,10]
>> x = [‐10 : 0.1 : 10];
>> y = sin(x) * x;
>> y = sin(x) .* x;
>> plot(x,y);
N t Ob
l
Nota: Observe que se ha utilizado el
tili d
h
operador (.*)
• Operadores relacionales
p
<menor que
>mayor que
<=
>=
==
~=
Si una comparación se cumple el resultado es 1 (true),
mientras que si no se cumple es 0 (false).
menor o igual que
mayor o igual que
igual que
distinto que
• Operadores lógicos
&
|
~
and
or
negación lógica
• Cuando los operadores relacionales se aplican
a matrices del mismo tamaño, la comparación
se realiza elemento a elemento
>> A=[1,2;3,4];
>> B=[4 3;3 2];
>> B [4,3;3,2];
>> A==B (== iguales)
ans =
ans =
0 0
1
0
1 0
>> A~=B (~= diferentes)
ans =
ans =
1 1
0
1
0 1
• Si se compara una matriz con un escalar, La
comparación se realiza entre el escalar y cada
elemento de la matriz.
, ; ,
, ; ,
>> A=[1,2,2;2,3,3;4,4,2];
, ];
[ ,
>> A==2
ans =
0 1 1
1
0
1 0 0
0 0 1
0
Sea la siguiente serie binaria: 10111
pasar a las siguientes bases:
b
t
l
i
i
Octal: (base 8)
Hex : (base 16)
Hex : (base 16)
Dec : (base 10)
• bin2dec('10111') 23 ( lo primero es pasar de binario
a decimal)
a decimal)
dec2base(23, 2) 10111 (base 2, es binario)
(base 2, es binario)
• dec2bin(23) 10111
• dec2base(23, 2)
10111
• dec2base(23, 8) 27 (base 8, es octal)
• dec2base(23, 16) 17 (base 16, es hexadecimal)
• dec2hex(23) 17
Comentarios de: Introducción al MATLAB (0)
No hay comentarios