You are on page 1of 43

Taller de Matlab

Felipe Rubilar
Felipe Toro
firubila@uc.cl
fitoro@uc.cl
Interfaz

Variables definidas

Aquí están los Ventana de comandos. Aquí se


archivos en su escriben y se visualizan
actual carpeta resultados
(importante si
los llaman
después)

Historial de
comandos
Definición de variables

Aparecen las nuevas variables

Creamos dos vectores. Al hacer punto y coma (;) al final de


una operación, no muestra el resultado, pero lo realiza
igualmente (es preferible, sobre todo a la hora de hacer
rutinas con múltiples comandos, escribir punto y coma al
final de cada operación para no saturar la pantalla y
enlentecer el programa).
Operaciones básicas
• Sumar dos vectores (solo si son del mismo largo)
>> a+b
ans =
6 8 10 12

• Producto punto
>> dot(a,b)
ans =
70
Operaciones básicas
• Para multiplicar término a término, agregamos un
punto “.”
>> a.*b
ans =
5 12 21 32

>> a.^2
ans =
1 4 9 16
Operaciones básicas
• Definir una matriz
>> A = [2 3 1 0;-3 4 2 2;-1 0 -1 6]

A=

2 3 1 0
-3 4 2 2
-1 0 -1 6
Operaciones básicas
• Matriz transpuesta:
>> B=A'

B=

2 -3 -1
3 4 0
1 2 -1
0 2 6
Operaciones básicas
• Obtener una fila de la matriz:
>> a2 = A(2,:)
a2 =
-3 4 2 2

• Obtener una columna:


>> a3 = A(:,3)
a3 =
1
2
-1
Operaciones básicas
• Obtener un elemento de la matriz
>> a13 = A(1,3)
a13 =
1

• Hacer una submatriz: X([fila1, fila2, …], [columna1,…])


>> D = A([2,3],[1,2])
D=
-3 4
-1 0
Operaciones básicas
• Invertir una matriz:
>> inv(D)
ans =
0 -1.0000
0.2500 -0.7500
Operaciones básicas
• A la hora de multiplicar matrices, tener
atención a las dimensiones
• Ejemplo:
 =  
Comandos básicos
• Aquí unos comandos útiles a la hora de definir
matrices y vectores:
• a:b=[a:b]=a,a+1,a+2,…,b-1,b
Define un vector de valor mínimo a y valor máximo
b que se completa con una interpolación de a una
unidad.
>> f=3:8
f=
3 4 5 6 7 8
Comandos básicos
• a:b:c=[a:b:c]=a,a+b,a+2b,…,c-2*b,c-b,c]
Similar al anterior con la diferencia de que uno
define el intervalo (en este caso, b) (si “c” no es
múltiplo exacto, llega hasta el valor justo
anterior)
>> g=1:2:8
g=
1 3 5 7
Comandos básicos
• linspace(a,b,c) = c números entre a y b
>> h = linspace(1,6,4)
h=
1.0000 2.6667 4.3333 6.0000
Comandos básicos
• zeros(n) = matriz de nxn de zeros
• zeros(n,m) = matriz de nxm de zeros
• ones(n) o ones(n,m) = lo mismo que zeros, pero
con unos
• eye(n) = identidad de nxn

>> i1 = zeros(2,3)
i1 =
0 0 0
0 0 0
Comandos básicos
• length(a) = número de elementos (en vector,
en el caso de la matriz es el número de
columnas)
• size(a) = vector con el largo de cada dimensión
• size(a,i) = largo de la dimensión “i” (en el caso
de las matrices, 1 para el número de filas, 2
para el número de columnas)
Comandos básicos
• Solución a Ax=B:
A\B = inv(A)*B

A/B = A*inv(B)

• Esto es mucho más eficiente que A*B^-1


Script
• El script es una forma de ejecutar un código
de manera ordenada, en donde los resultados
de las operaciones pueden visualizarse en la
consola principal.
• En él se pueden definir variables, llamar
funciones, etc.
Ejemplo
 

2
2 −1
=
−1 2

= 2100 /
= 5000 
= 200 
10
=  − 
5
Ejemplo
Ejemplo
• Las variables definidas podemos verlas en la
consola principal
Operaciones básicas
• Comando if

if condición
algoritmo
end

• También se puede combinar con “else” y


“elseif”
Operaciones básicas
• Comando for
for índice = vector de valores
algoritmo
end
Ejemplo
• Ejemplo, haremos la siguiente función

   < 3
  = 2 + 1  3 ≤  ≤ 5
−1 !. . 

Para x de 1 a 7.
Ejemplo
Ejemplo
Funciones
• Se pueden definir funciones de tal manera de
repetir un mismo procedimiento dentro del
script. Para las funciones se debe determinar
los parámetros de entrada y de salida. El
nombre del archivo donde se define la función
debe tener el mismo nombre de esta. Las
funciones son una muy buena opción para
acelerar procesos.
Funciones
• Las variables usadas en la función no quedan
guardadas, ni tampoco sobreescribe variables
del mismo nombre. Solo usa las del input y
manda las del output con el nombre que uno
escoja.
Funciones
• Ejemplo:
Una función llamada “rectangulo” que recibe el
ancho y el alto, y devuelve el área, perímetro e
inercia del mismo
Ejemplo
Gráficos
• Para graficar es necesario definir lo valores a
graficar junto con ciertos parámetros de
visualización.
• Comando: plot(vector1,vector2,parámetros)
Gráficos
250
• Ejemplo:
>> x = 0:15; 200

>>y=x.^2;
>> plot(x,y); 150

100

50

0
0 5 10 15
Gráficos
250
• Ejemplo:
>> x = 0:15; 200

>>y=x.^2;
>> plot(x,y,’r’); 150

100

50

0
0 5 10 15
Gráficos
Grafico 1

• Ejemplo: 70

>> x = 0:15; 60

>>y=x.^2; 50

>>plot(x,y,'g') 40
y

xlabel('x') 30

ylabel('y') 20

title('Grafico 1') 10

xlim([2,8]) 0
2 3 4 5 6 7 8
x
Gráficos
>> x=0:0.1:2;
>> y1=x.^2;
>> y2=x.^0.5;
>> figure
subplot(2,1,1)
plot(x,y1,'b');
subplot(2,1,2)
plot(x,y2,'r');
Gráficos
• Para más opciones de gráficos (y de cualquier
comando), ocupen la función “help”
>> help plot
Ejemplo final
• En este ejemplo, usaremos los comandos
mencionados anteriormente intentando
incluir el uso de funciones y gráficos.
• Dibujar la deformada y los diagramas de corte
y momento de la viga siguiente:
Resolución
• Reacciones en los apoyos:
$
# = &
%+$
%
# = &
%+$
Resolución
• Los diagramas de corte y momento son los
siguientes:
#  0<<%
'  =
#  − &  − % % <  < % + $
−# 0<<%
(  =
−# + & % <  < % + $
Resolución
Resolución
Resolución
Diagrama de momentos
3000
Momento [tonf*cm]

2000

1000

0
0 50 100 150 200 250
x [cm]
Diagrama de Corte
20
Corte [tonf]

-20

-40
0 50 100 150 200 250
largo [cm]

You might also like