Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MatLab - Comandos Basicos Funciones
MatLab - Comandos Basicos Funciones
1
Contenido del Curso
1. Entorno de MATLAB
2. Comandos Básicos
2
Comandos
Básicos de
MATLAB
3
Entorno de MATLAB
4
Icono de MATLAB
5
Ruta de trabajo Histórico de comandos
Ventana de comando
6
Definiendo una Matriz
Array: Es un conjunto de valores organizados
en filas y columnas, que se les designa un
nombre.
Fila 1
Fila 2
Fila 3
arr(3,2)
arr(7) Fila 4
8
Definiendo una Matriz
Escalar >> 25 Matriz 1x1
Vector Fila >> [3 -4 6] Matriz 1x3
Vector Columna >> [5; 10;-3; 6] Matriz 4x1
5
10
3
6 41
1 2 3 4 5
A= 4
1
10
6
1
11
6
16
2
21
1
2
2 8 1.2 7 9 12 4 17
25 22
A(1:5,5) A(1:end,end)
3 7.2 3 5 8
7 13 1 18
11 23 A(:,5) A(:,end)
A(21:25) A(21:end)’
A(3,1) 4 0 4
0.5 9 4 14 5 19
56 24
A(3) 5 10 15 20 25
5 23 83 13 0 10
A(4:5,2:3)
A([9 14;10 15])
10
Definiendo una Matriz
11
Valores Especiales
• pi: valor hasta 15 dígitos significativos
• i, j: sqrt(-1), número imaginario
• Inf: infinito (división por 0)
• NaN: Not-a-Number (división de cero por cero)
• clock: fecha y hora momentánea en la forma de
un vector fila de 6 elementos conteniendo el
año, mes, día, hora, minuto y segundo
• date: fecha actual en string como 16-Feb-2010
• eps: épsilon es la menor diferencia entre dos
números
• ans: almacena el resultado de una expresión
12
Formato de Números
>> valor = 12.345678901234567;
format short 12.3457
format long 12.34567890123457
format short e 1.2346e+001
format long e 1.234567890123457e+001
format short g 12.346
format long g 12.3456789012346
format rat 1000/81
13
Archivo de Datos
14
Funciones Integradas
• result = function_name( input );
– abs, sign
– log, log10, log2
– exp
– sqrt
– sin, cos, tan
– asin, acos, atan
– max, min
– round, floor, ceil, fix
– mod, rem
• help elfun Ayuda de las funciones matemáticas
elementales
15
Comandos Básicos
16
Funciones para la Manipulación
de Matrices
• transpose (’): Matriz Transpuesta
• rot90: Rotar Matriz 90
• tril: Parte Triangular Inferior de una Matriz
• triu: Parte Triangular Superior de una Matriz
• cross: Vector del producto cruzado
• dot: Vector dot product
• det: Determinante de la Matriz
• inv: Inversa de la Matriz
• eig: Evalúa los eigenvalues y eigenvectors
• rank: Rango de la matriz
17
sum
Suma de los elementos de cada columna de una matriz
2 4
A 5 8
2 0
sum( A) [9 4]
18
Transpuesta ( ’ )
Transpuesta de una matriz
5
10
A
3
6
A transpuesta
A ' 5 10 3 6
19
diag
Extrae la diagonal de uma matriz cuadrada
20
Genera una matriz nxn con
números enteros desde 1
hasta n^2, cuya suma de
magic cada fila y columna es igual.
El orden n debe ser igual o
mayor de 3.
A = magic(4)
>> sum(M)
ans = >> sum(M)
ans =
ans =
16 2 3 13 34 34 34 34
34 34 34 34
>> sum(M')'
5 11 10 8 >> sum(M')'
ans =
ans =
9 7 6 12 34
34
34
34
34
4 14 15 1 34
34
34
>> sum(diag(M))
>> sum(diag(M))
ans =
ans =
34
34
21
fliplr Espejo Horizontal
Espejo horizontal de una matriz
>> A
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
fliplr Espejo Horizontal
>> fliplr(A)
A =
13 2 3 16
8 11 10 5
12 7 6 9
1 14 15 4
flipud Espejo Vertical
Espejo vertical de una matriz
>> A
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
flipud Espejo Vertical
>> flipud(A)
A =
4 15 14 1
9 6 7 12
5 10 11 8
16 3 2 13
Suma de Matrices
2 4 4 14 2 18
5 8 1 8 6 0
2 0 3 10 1 10
26
Indexación de Matrizes
Matriz Bidimensional: A(i,j) es el
elemento de la i-ésima fila, j-ésima
columna
A = 16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
A(2,3) = 11
Indexación de Matrizes
Suma de los Elementos de la 2a fila:
ans =
34
Redimensionamiento Automático
Para la Matriz
A = 16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
Redimensionamiento Automático
>> X = A;
>> X(5,5) = 29
X =
16 3 2 13 0
5 10 11 8 0
9 6 7 12 0
4 15 14 1 0
0 0 0 0 29
El operador ‘:’ (dos puntos)
>> 1:10
ans =
1 2 3 4 5 6 7 8 9 10
>> 1:3:27
ans =
1 4 7 10 13 16 19 22 25
El operador ‘:’ (dos puntos)
>> 60:-7:0
ans =
60 53 46 39 32 25 18 11 4
>> 0:pi/4:pi
ans =
0 0.7854 1.5708 2.3562 3.1416
El operador ‘:’ y Matrices
A(1:m, n):
n) primeros m elementos de la n-ésima
columna
A(:, n):
n) todos los elementos de la n-ésima columna
A(:, end):
end) todos los elementos de la última columna
A(m, 1:n):
1:n) primeros n elementos de la m-ésima fila
A(m, :):
:) todos los elementos de la m-ésima fila
A(end,:):
A(end,:) todos los elementos de la última fila
El operador “:” (dos puntos)
Matriz Bidimensional: A(i,j) es el elemento de la
i-esima fila, j-esima columna
A(1,4) = 13
A(3,2) = 6
34
El operador ‘:’ y Matrices
zeros:
zeros matriz de ceros
ones:
ones matriz de unos
rand:
rand matriz de números aleatórios
con distribución uniforme
randn:
randn matriz de números aleatórios
con distribución normal (Gaussiana)
Funciones de Creación de Matrices
>> Z = zeros(3,5)
Filas Columna
Z =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
Funciones de Creación de Matrices
>> Q = 4*ones(5,5)
Q =
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
Funciones de Creación de Matrices
>> N = rand(2,4)
N =
0.95013 0.60684 0.8913 0.45647
0.23114 0.48598 0.7621 0.018504
+ : suma
- : substracción
/ : división de matrices
* : multiplicación de matrices
^ : potencia de una matriz
inv : inversa de una matriz
Operadores Aritméticos para Matrices
+ : suma
- : substracción
./ : división elemento a elemento
.* : multiplicación elemento a elemento
.^ : potencia elemento a elemento
Aritmética x Algebra Lineal
>>x =find(A==4)
Condición lógica
x=
Indices de los elementos
3 8 con valor igual a 4
>>A(x)
ans= 4 4
47
Comando find
Para encontrar elementos de una matriz
A= 1 14 5
7 1 14
2 10 3
>>x =find(A==14)
Condición lógica
x=
4 Indices de los elementos
8 con valor igual a 14
>>A(x)
ans= 14
14
48
Comando find
Para encontrar elementos de una matriz
A= 1 14 5
7 1 14
2 10 3
49
Comandos round/ ceil / floor
Usados para redondeo
Redondeo
round(1.2)=1
round(1.5)=2
51
Comando plot
x = 0:0.1:10; %variacion del eje x
y = sin(x); %variacion del eje y
plot(x,y) %Grafica x versus y
52
Comando plot
t = 0:0.1:10;
y = sin(t);
plot(t,y)
grid
title('onda seno')
xlabel('eje x')
ylabel('eje y')
53
Comando plot
t = 0:0.1:10;
y1 = sin(t);
y2 = cos(t)
plot(t,y1,t,y2)
grid
title('onda seno y onda coseno')
xlabel('eje x')
ylabel('eje y')
legend('seno', 'coseno')
54
Comando subplot
Syntax: subplot(rows,cols,index)
subplot(rows,cols,index)
»»subplot(2,2,1);
subplot(2,2,1);
»» ……
»»subplot(2,2,2)
subplot(2,2,2)
»» ...
...
»»subplot(2,2,3)
subplot(2,2,3)
»» ...
...
»»subplot(2,2,4)
subplot(2,2,4)
»» ...
...
55
Comando stem
t = 0:0.1:10;
y = sin(t);
stem(t,y1)
grid
title('onda seno')
xlabel('eje x')
ylabel('eje y')
56
Comando min / max
A = [2 -3 6 -8 3]
57
Problema 1
Para la matriz A, Substituir los elementos de las filas 2 a 3 y
columnas 1 a 2 por una matriz cuadrada B, de unos de
orden 2
A=
3 -2 5
5 6 9
-3 5 10
B=
1 1
1 1
58
Problema 1
A =[3 -2 5; 5 6 9; -3 5 10]
B = ones(2,2)
A(2:3,1:2) = B
A=
3 -2 5
1 1 9
1 1 10
59
Problema 2
Determinar el indice de t, donde la función
y=t^2 es minima
t = -10:0.1:10;
y = t.^2;
plot(t,y)
[valor, indice] = min(y)
indice=101
t(indice)= 0
60
Funciones m-file
Abrir un
editor
61
Funciones m-file
Editor para
generar Ventana de
programas con comando
extensión *.m
62
63
Funciones m-file
Para ejecutar el programa
1. Desde el editor presionar la tecla F5
2. Desde la ventana de comando, llamar al archivo
ejemplo.m
Tecla:F5
64
Problema 3
Realizar un programa para construir
una Matriz
A = [3 5; 9 1]
B = [-2 3]
C = [10; 15]
D= 1
65
Funciones escritas por el usuario
66
Funciones escritas por el
usuario
Uso de la
función
67
Problema 4
Para la ecuación
t = 0:0.1:100;
h = 60+2.13*t.^2 - 0.0013*t.^4+0.00003*t.^4.751
68
Problema 4
t = 0:0.1:100;
h = 60 + 2.13*t.^2 - 0.0013*t.^4 + 0.00003*t.^4.751
[valor, indice] = max(h)
t(indice)
z = find(h >= 0)
t(z(end))
plot(t,h),grid
69
Problema 5
Generar 10000 números aleatorios, con
distribución Gaussiana, con valor medio 10 y
desvio padrón 2
>> r = 10 + 2*randn(1,10000)
>> hist(r)
70