Notas Taller MATLAB1
CENTROS, TITULACIONES Y DEPARTAMENTOS
Taller Práctico
Uso de MATLAB para la docencia en Ingeniería Química
y áreas afines
Miguel García Román
Universidad de Granada, 13 de septiembre de 2012
Taller Uso MATLAB en Docencia
1. Introducción y objetivos del taller………………………………………………………
7
2. El entorno de trabajo deMATLAB……………………………………………………..
7
3. Tipos de datos y su introducción en MATLAB…………………………………………
8
4. Operaciones en MATLAB……………………………………………………………….
11
………………………………………………………
11
………………………………………………………………..
12
5. Representaciones gráficas……………………………………………………………….
13
6. Funciones en MATLAB…………………………………………………………………
15
.………………………………………………….
16
…………………………………………………………………….
17
7. Ficheros deprograma y programación en MATLAB…………………………………..
19
…………………………………………….
19
………………………………………………………………
20
8. Interfaces gráficas de usuario (GUI) en MATLAB…………………………………….. 22
Ejemplo 1.
…………………………………………………………….
22
…………………………………………..
26
…………………………………………………………………………
28
…………………………..
33
……………………………………………………………………………….
39
Ejemplo 2.
Taller Uso MATLAB en Docencia
Parte I
Breve repaso deluso de MATLAB
Taller Uso MATLAB en Docencia
1. Introducción y objetivos del taller
2. El entorno de trabajo de MATLAB.
Taller Uso MATLAB en Docencia
3. Tipos de datos y su introducción en MATLAB.
dlmread
Taller Uso MATLAB en Docencia
>> A=[1 2 3]
A =
1
2
3
>> B=[1;2;3]
B =
1
2
3
>> C=[1 2 3;4 5 6]
C =
1
2
3
4
5
6
x=[a:d:z]
linspace
x=linspace(a,b,n)
A(i)
A(i,j)
o A(m:n)
oM(:,n)
o M(m,:)
Taller Uso MATLAB en Docencia
length
size
format
→
>> a=[1.5777889 0.0000005 548129453975]
a =
1.0e+011 *
0.0000
0.0000
5.4813
>> format short e
>> a=[1.5777889 0.0000005 548129453975]
a =
1.5778e+000
5.0000e-007
5.4813e+011
>> format short g
>> a=[1.5777889 0.0000005 548129453975]
a =
1.5778
5e-007
5.4813e+011
Taller Uso MATLAB en Docencia
4. Operacionesen MATLAB
+
−
*
/
\
^
inv
ˈ
det
>> a=15/5
a =
3
>> b=5\15
b =
3
3x 2 y z 10
8 x 3 y 4 z 21
5 x 2 y z 13
3 2 1 x 10
8 3 4 * y 21
5 2
1 z 13
Taller Uso MATLAB en Docencia
>> A=[3 2 -1;8 -3 4;5 2 1];
>> B=[10;21;13];
>> x=inv(A)*B
x =
3.225
-0.7
-1.725
>> x=A\B
x =
3.225
-0.7
-1.725
*
+
^
>> a=[1 2 3];
>> b=5*a
b =
510
15
>> c=a^2
??? Error using ==> mpower
Matrix must be square.
Taller Uso MATLAB en Docencia
>> c=a.^2
c =
1
4
9
5. Representaciones gráficas
plot
plot(x,y,‘especificadores de línea’,‘propiedades’,‘valores’)
x
y
Taller Uso MATLAB en Docencia
plot
-:
-.
r
b
m
g
e
y
+
o
*
.
s
d
w
p
k
h
→
→
>> a=linspace(0,20);
>> b=2*a.^2+1;
>> plot(a,b,'r')
fplot
hold on
hold
offTaller Uso MATLAB en Docencia
900
800
700
600
500
400
300
200
100
0
0
2
4
6
8
6. Funciones en MATLAB
sqrt(x)
exp(x)
abs(x)
log(x)
log10(x)
sin(x)
cos(x)
factorial(x)
fzero
10
12
14
16
18
20
Taller Uso MATLAB en Docencia
quadl
trapz
fminbnd
ode45
function [argumentos de salida] =
nombre_función (argumentos de entrada)
function
Taller Uso MATLAB en Docencia
esg
function y=esg(a,b,c)
%Función que calcula las raíces de una ecuación de 2º grado
y1=(-b+(b^2-4*a*c)^(1/2))/(2*a);
y2=(-b-(b^2-4*a*c)^(1/2))/(2*a);
y=[y1,y2];
esg
y
y1 y2
a b c
esg
Taller Uso MATLAB en Docencia
??? Undefined function or variable 'y'.
function y=isotopo(x)
t=linspace(0,tt);
y=2.^(-t/x);
plot(t,y)
xlabel('t, dias')
ylabel('N/No')
>> tt=1000;
>> isotopo(138);
???Undefined function or variable 'tt'.
Error in ==> isotopo at 2
t=linspace(0,tt);
function y=isotopo(x)
global tt
t=linspace(0,tt);
y=2.^(-t/x);
plot(t,y)
xlabel('t, dias')
ylabel('N/No')
>> global tt
>> tt=1000;
>> isotopo(138);
Taller Uso MATLAB en Docencia
1
0.9
0.8
0.7
N/No
0.6
0.5
0.4
0.3
0.2
0.1
0
0
100
200
300
400
500
t, dias
600
700
800
900
7. Ficheros de programa y...
Regístrate para leer el documento completo.