Documente Academic
Documente Profesional
Documente Cultură
MODELAMIENTO Y SIMULACIN
DE PROCESOS
GUIA DE PRCTICAS
MATLAB NIVEL 1
Arequipa 2014
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 2 de 55
PRACTICA NRO. 1
INTRODUCCION A MATLAB
FUNDAMENTOS
Caractersticas
Conceptos Bsicos
Ejemplo: 1, -1e5.
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 3 de 55
>, <, >=, <= mayor que, menor que, mayor o igual que,
menor o igual que
== Igual en condicionales
~= desigual en condicionales
Funciones sin (x), cos (x), tan (x) seno, coseno, tangente
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 4 de 55
asin (x), acos (x), tan (x) arco seno, arco coseno, arco
tangente
asinh (x), acosh (x), atanh (x) arco seno hiperblico, arco
coseno hiperblico, etc.
ACTIVIDADES
1. INICIO DE MATLAB
Click en el
icono para crear
un script Click en el
desplegable y
elegir
COMANDOS BASICOS
3. EJEMPLOS
PROGRAMA 1
%------------------------------------------------------
-
% CALCULO DE VOLUMENES. V 1
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de asignacin de variables y disp
%------------------------------------------------------
-
clc
r = 2;
vol = (4/3)*pi*r^3;
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 8 de 55
PROGRAMA 2
%------------------------------------------------------
% CALCULO DE VOLUMENES. V 2
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de input
%------------------------------------------------------
clc
r = input('ingrese el valor del radio = ');
vol = (4/3)*pi*r^3;
disp('volumen de la esfera es =')
disp (vol)
PROGRAMA 3
%------------------------------------------------------
% CALCULO DE VOLUMENES. V 3
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de for
%------------------------------------------------------
clc
for x = 1:5
r = input('ingrese el valor del radio r = ');
vol = (4/3)*pi*r^3;
disp ('para el radio =')
disp(r)
disp ('el volumen de la esfera es = ');
disp (vol)
end
PROGRAMA 4
%------------------------------------------------------
-
% CALCULO DE VOLUMENES. V 4
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de for
%------------------------------------------------------
-
clc
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 9 de 55
for r = 1:5
vol = (4/3)*pi*r^3;
disp ('para el radio =')
disp (r)
disp ('el volumen de la esfera es = ')
disp (vol)
end
PROGRAMA 5
%------------------------------------------------------
-
% CALCULO DE VOLUMENES. V 5
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de if
%------------------------------------------------------
-
clc
for x = 1:5
r = input('ingrese el valor del radio r = ');
if r > 0
vol = (4/3)*pi*r^3;
disp ('volumen de la esfera es = ')
disp (vol)
else
disp(' radio invalido')
end
end
PROGRAMA 6
%------------------------------------------------------
-
% CALCULO DE VOLUMENES. Versin 6
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de while
%------------------------------------------------------
clc
r = 1;
while r < 10
disp (r);
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 10 de 55
PROGRAMA 7
%------------------------------------------------------
-
% CALCULO DE VOLUMENES. V 7
% Autor: Ing. Miguel A. Crdenas Mlaga
% Uso de fprintf
%------------------------------------------------------
-
clc
r = 1;
while r < 10
fprintf('radio % 5.2f',r);
fprintf (' radio muy pequeo. No se
calcular el volumen\n\n')
r = r +1;
end
while r < 20
vol = (4/3)*pi*r^3;
fprintf('para el radio radio % 3.2f',r);
fprintf(' el volumen de la esfera es =
%12.2f\n', vol);
r = r+1;
end
disp ('radio ya no es menor que 20')
4. PROBLEMAS
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 11 de 55
PRACTICA NRO. 2
VECTORES Y MATRICES
FUNDAMENTOS
x = [2, 4, 6, 8, 10];
x = 2: 2:10;
for i = 1:5
x(i) = 2*i;
end
z = [3, 6, 9, 12];
x = [2; 4; 6; 8; 10];
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 13 de 55
ACTIVIDADES
-4 1
c= 8 d= 3
9 2
7 1
Hallar : z=a+b z1 = a b z2 = a.*b z3 = b.^az4
= b./a
3. Dadas la matrices
1 2 3 7 1 9
a= 4 5 6 b= 3 8 6
7 8 9 4 3 5
Hallar m=a+b m1 = a b m2 = a.*b m3 = b ./a
m4 = a*b
Explicar el resultado de min (a), min (b), max (a), max (b)
PRACTICA NRO. 3
FUNCIONES
FUNDAMENTOS
Function f = volesfe(x)
f = 4/3*pi*x^3;
Esta funcin se graba en el archivo volesfe.m
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 17 de 55
ACTIVIDADES
%----Ingreso de nmeros
clc
for i = 1:20;
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 19 de 55
PRACTICA NRO. 4
FUNDAMENTOS
COMANDOS DE GRAFICOS
plot (x, y) Sirve para graficar en un plano con dos variables.
Especifica el tipo y color de lneas y marcas a utilizar en la
curva del grfico.
plot ( x, y ,+r) Grafica los datos con la marca x de color rojo. Ver
Tabla 1
plot (x, y, --b) Grafica los datos con una lnea de guiones de color azul).
Ver Tabla 1
grid on Activa la cuadricula
grid off Desactiva la cuadricula.
title ( titulo) Sirve para colocar un ttulo al grfico
xlabel (x) , ylabel (y)Se utilizan para rotular o poner nombres a los ejes
de las abcisas y de las ordenadas respectivamente.
clf Borra la ventana de grficos
cla Borra las curvas graficadas y redibuja los ejes
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 23 de 55
Texto en Grficos
CURVAS MULTIPLES
x= 0: 0.5: 5;
y = sin (x);
z = cos (x);
plot (x, y, z)
Los colores y tipos de lnea se escogern automticamente; pero tambin
es posible especificar la marca, el color y tipo de lnea segn se necesite
plot (x, y, , x, z, *)
plot (x, y, r, x, z, y)
GRAFICO DE SUPERFICIES
clear, clc
xa = -2:0.5:2;
ya = -2:0.5:2;
[x, y] = meshgrid ( xa, ya);
z = x.*exp (-x.^2 y.^2);
mesh ( x,y,z)
title ('Este es un grfico 3D')
xlabel ('eje x'); ylabel ('eje y'); zlabel('eje
z');
z es una matriz que resulta de efectuar las operaciones entre todos los
valores de x con todos los valores de y
ACTIVIDADES
PRACTICA NRO. 5
ALGEBRA MATRICIAL
FUNDAMENTOS
MATRICES ESPECIALES
C = ones (m,n) devuelve una matriz de tamao m por n con todos sus
elementos iguales a uno.
OPERACIONES MATRICIALES
c i , j a i ,k b k , j
k
I = A*B
ACTIVIDADES
2 1 4 7 8 4 3
A= 3 1 2 B= 2 3 5 x= 4
4 3 1 8 2 6 3
5
y= 6
8
Calcular: x + y, xy A+b
AB
A*B A*x
PRACTICA NRO. 6
LINEALES
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 32 de 55
PRACTICA NRO. 7
METODO DE NEWTON
FUNDAMENTOS
PROGRAMAS
Archivo newton.m
%------------------------------------------------------
--------
% INSTRUCCIONES
% Defina la funcin en:
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 33 de 55
% NOMENCLATURA
% x: Aproximacin inicial
% tol: Tolerancia
% maxite: Nmero mximo de iteraciones
% conta: Contador de iteraciones
% fx: Valor de la funcin en x
% dfx: Derivada de la funcin en x
% xuno: Siguiente valor de x (xi+1)
%------------------------------------------------------
--------
clc
conta = 1;
maxite = 50;
tol = 0.0001;
clc
fprintf('----------------------------------------------
---\n');
fprintf(' METODO DE NEWTON\n')
fprintf('itera x fx dfx
xuno\n');
fprintf('----------------------------------------------
---\n');
fprintf('----------------------------------------------
---\n');
if (conta >= maxite)
fprintf(' EL METODO NO CONVERGE\n');
else
fprintf(' LA RESPUESTA ES:%12.4f\n',x);
end
Archivo ea_nolin.m
% FUNCION ea_nolin.m
% Define la ecuacin a resolver por los mtodos
numricos: Biseccin, Newton, Regula Falsi,
Secante
%------------------------------------------------------
---
function f = ea_nolin(x)
f = x^3+2*x^2+10*x-20;
Archivo deriva.m
% FUNCION deriva.m
% Define a la derivada de la funcin que se resuelve
por el mtodo de Newton
% --------------------------------------
function f = deriva(x)
f = 3*x^2+34*x + 10;
ACTIVIDADES
1.
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 35 de 55
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 36 de 55
PRACTICA NRO. 8
FUNDAMENTOS
PROGRAMAS
Archivo pfijo.m
%
% RESOLUCION DE ECUACIONES ALGEBRAICAS NO LINEALES
% METODO DE PUNTO FIJO
%
% Autor: Ing. Miguel Angel Crdenas Mlaga
%------------------------------------------------------
--------
% INSTRUCCIONES
% Defina la funcion gx en:
% archivo de funcin: gx.m
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 37 de 55
maxite = 50;
tol = 0.0001;
ea = 10;
conta = 0;
clc
x = input('ingrese el valor inicial x= ');
fprintf('----------------------------------------------
---\n');
fprintf(' METODO DE PUNTO FIJO\n')
fprintf('itera x xuno gprima
ea\n');
fprintf('----------------------------------------------
---\n');
fprintf('----------------------------------------------
---\n');
if (conta >= maxite)
fprintf(' EL METODO NO CONVERGE\n');
else
fprintf(' LA RESPUESTA ES:%12.4f\n',x);
end
Archivo gx.m
function f = gx(x)
f = (20 -x^3 -2*x^2)/10;
Archivo gprima.m
function f = gprima(x)
f = (-3*x^2 4*x)/10
ACTIVIDADES
1.
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 39 de 55
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 40 de 55
PRACTICA NRO. 9
METODO DE BISECCION
FUNDAMENTOS
PROGRAMAS
Archivo bis.m
%
% NOMENCLATURA
% xi: Lmite inferior del intervalo
% xs: Lmite superior del intervalo
% xm: Punto medio del intervalo
% tol: Tolerancia
% maxite: Nmero mximo de iteraciones
% conta: Contador de iteraciones
% fxi: Valor de la funcin en xi
% fxs: Valor de la funcin en xs
% fxm: Valor de la funcin en xm
%------------------------------------------------------
-------
clc
maxite = 50;
tol = 0.0001;
fxi=feval('ea_nolin',xi);
fxs=feval('ea_nolin',xs);
conta = 0;
if ( fxi*fxs>0)
fprintf('--------------------------------------------\n');
fprintf(' METODO DE
BISECCION\n')
fprintf('itera xi xs fxi
fxs\n');
fprintf('-----------------------------------------
---\n');
fprintf('%3.0f%10.4f%10.4f%10.4f%10.4f\n',conta,x
i,xs,fxi,fxs);
fprintf('\n El intervalo inicial no contiene a la
raiz \n')
break
end
clc
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 42 de 55
fprintf('----------------------------------------------
---\n');
fprintf(' METODO DE BISECCION\n')
fprintf('itera xi xs xm fxi fxs
fxm\n');
fprintf('----------------------------------------------
---\n');
fprintf('----------------------------------------------
---\n');
if (conta>=maxite)
fprintf(' EL METODO NO CONVERGE\n');
else
fprintf(' LA RESPUESTA ES:%12.4f\n',xm);
end
Archivo ea_nolin.m
% FUNCION ea_nolin.m
% Define la ecuacin a resolver por los mtodos
numricos: Biseccin, Newton, Regula Falsi, Secante
%------------------------------------------------------
---
function f= ea_nolin(x)
f=x^3+2*x^2+10*x-20;
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 43 de 55
ACTIVIDADES
1.
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 44 de 55
PRACTICA NRO. 10
RESOLUCION DE ECUACIONES
FUNDAMENTOS
ACTIVIDADES
1.
Archivo eje1fsolve.m
function f = fun1(x)
f = 3*x -sqrt(x) +x^2*exp(0.2*x)-10;
end
2.
Archivo eje2fsolve.m
function f = fun2(x,a,b)
f = a*x -sqrt(x) +x^2*exp(b*x)-10;
end
3.
Archivo eje3fsolve.m
a = [3,4,5,6];
b = 0.2;
vini = [1,1,1,1];
s = fsolve(@(x) fun3(x, a,b),vini);
s
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 46 de 55
function f = fun3(x,a,b)
f = a.*x + sqrt(x)+x.^2.*exp(b.*x)-10;
end
4.
Archivo eje3fsolve.m
function f= fun4(z,a,b,c,d,g)
x= z(1);
y = z(2);
f(1) = a*x -b*y - exp(c*x);
f(2) = -d*x+g*y-exp(c*y);
end
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 47 de 55
PRACTICA NRO. 11
NO LINEALES
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 48 de 55
PRACTICA NRO. 11
FUNCIONES DE SPLINES
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 49 de 55
PRACTICA NRO. 12
LINEALES
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 50 de 55
PRACTICA NRO. 13
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 51 de 55
PRACTICA NRO. 14
ORDINARIAS
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 52 de 55
PRACTICA NRO. 15
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 53 de 55
PRACTICA NRO. 16
PARCIALES
FUNDAMENTOS
ACTIVIDADES
MSP-Matlab Nivel I M.S. M.A. Crdenas Mlaga Pgina 54 de 55
CONTENIDOS
PRACTICA NRO. 9: