NUMERICO
CON MATLAB
ANALISIS
NUMERICO
Ing. Jacinto Daniel Pinto
5 de junio de 2016
UTH
ANALISIS
NUMERICO
CON MATLAB
Forma de Evaluar
Primer parcial:
1
2
Segundo parcial:
1
2
Examen 10 %
Tareas en clase y tareas para llevar 10 %
Examen 15 %
Tareas en clase y tareas para llevar 20 %
Tercer parcial:
1
2
3
Examen 15 %
Tareas en clase y tareas para llevar 15 %
Proyecto 15 %
Nota: El proyecto describe un evento fsico real en el cual hay una serie
de datos tomados experimentalmente. El evento fsico estudiado debe ser
analizado con un modelo matem
atico y poder predecir la serie de datos
utilizando MATLAB.
UTH
ANALISIS
NUMERICO
CON MATLAB
MATLAB
UTH
ANALISIS
NUMERICO
CON MATLAB
MATLAB
UTH
ANALISIS
NUMERICO
CON MATLAB
% script de Bienvenida
disp(Hola Alumnos)
UTH
ANALISIS
NUMERICO
CON MATLAB
Sentencia if
UTH
ANALISIS
NUMERICO
CON MATLAB
Sentencia if
UTH
ANALISIS
NUMERICO
CON MATLAB
Sentencia if else
UTH
ANALISIS
NUMERICO
CON MATLAB
Sentencia if else
UTH
ANALISIS
NUMERICO
CON MATLAB
Ejercicios
Elabore un Script .m que tenga como entrada un numero y que
calcule el logaritmo natural de ese numero y que imprima el
resultado utilizando cuatro cifras despu
es del punto. En caso
que el numero proporcionado sea un valor negativo que imprima
un mensaje recordandole al usuario que no existe el logaritmo
de n
umeros negativos.
UTH
ANALISIS
NUMERICO
CON MATLAB
Sentencia if elseif
% Este Script le indicara el piso en el cual esta su aula
x=input(Ingrese el numero de aula que aparece en su forma);
if x<100
disp(El aula que consulto se encuentra en el Primer Piso);
elseif x<200
disp(El aula que consulto se encuentra en el Segundo Piso);
elseif x<300
disp(El aula que consulto se encuentra en el tercer Piso);
else
disp(El aula que usted consulto es un laboratorio);
end
UTH
ANALISIS
NUMERICO
CON MATLAB
Ejercicio
Elabore un Script .m que tenga como entrada un car
acter seguido
de un numero.
En donde el car
acter indica el edificio de la Universidad.
a = Edificio de Ingenier
a.
b = Edificio de Asignaturas Generales.
c = Edificio de la Salud.
d = Edificio de Administraci
on
Y el numero indica el piso del edificio.
S
es numero es menor que 100 \ Primer piso.
S
es numero es menor que 200 \ Segundo piso.
S
es numero es menor que 300 \ Tercer piso.
S
el valor de entrada no satisface la entrada de car
acter,
la de numero
o ambas que imprima un mensaje al estudiante
que debe avocarse a las oficinas de registro.
UTH
ANALISIS
NUMERICO
CON MATLAB
while
UTH
ANALISIS
NUMERICO
CON MATLAB
while
case 2
disp(A usted le toca en el Edificio de Matematicas);
if aula <= 100
disp(El aula que consulta se encuentra en el primer piso
elseif aula <= 200
disp(El aula que consulta se encuentra en el segundo piso
elseif aula <= 300
disp(El aula que consulta se encuentra en el tercer piso
else
disp(Consulte en Registro su aula);
end
UTH
ANALISIS
NUMERICO
CON MATLAB
while
case 3
disp(A usted le toca en el Edificio de Ciencias Sociales);
if aula <= 100
disp(El aula que consulta se encuentra en el primer piso)
elseif aula <= 200
disp(El aula que consulta se encuentra en el segundo piso
elseif aula <= 300
disp(El aula que consulta se encuentra en el tercer piso
else
disp(Consulte en Registro su aula);
end
UTH
ANALISIS
NUMERICO
CON MATLAB
while
case 4
disp(A usted le toca en el Edificio de Ciencias de la Salud);
if aula <= 100
disp(El aula que consulta se encuentra en el primer piso)
elseif aula <= 200
disp(El aula que consulta se encuentra en el segundo piso
elseif aula <= 300
disp(El aula que consulta se encuentra en el tercer piso
else
disp(Consulte en Registro su aula);
end
otherwise
disp(La letra que usted a ingresado no corresponde a nin
end
UTH
ANALISIS
NUMERICO
CON MATLAB
for while
MATLAB como en la mayora de los lenguajes de programacion, proporciona sentencias denominadas iterativas que permiten realizar una tarea una
y otra vez hasta que se cumpla una determinada condicion, dicha tarea
viene definida por un conjunto de sentencias agrupadas en un bloque. Las
sentencias iterativas son for, while.
% Este escript calcula el factorial de un numero proporcionado
n= input (Ingrese el numero para el cual desea
saber el factorial);
resultado=1;
for k=1:n
resultado=k*resultado;
end
fprintf(El factorial de %i es %i\n,n,resultado)
UTH
ANALISIS
NUMERICO
CON MATLAB
Metodo de biseccion
En matem
aticas, el metodo de bisecci
on es un algoritmo de b
usqueda de
races que trabaja dividiendo el intervalo a la mitad y seleccionando el
subintervalo que tiene la raz.
Si f es una funci
on continua sobre el intervalo [a, b] y si f (a) f (b) < 0,
entonces f debe tener un cero en (a, b). Dado que f (a)f (b) < 0, la funcion
cambia de signo en el intervalo [a, b] y por lo tanto tiene por lo menos un
cero en el intervalo.
UTH
ANALISIS
NUMERICO
CON MATLAB
Metodo de biseccion
UTH
ANALISIS
NUMERICO
CON MATLAB
Metodo de Newton
En an
alisis numerico, el metodo de Newton (conocido tambien como
el metodo de Newton-Raphson o el metodo de Newton-Fourier) es un
algoritmo eficiente para encontrar aproximaciones de los ceros o
races de una funci
on real.
UTH
f (xn )
f 0 (xn )
(1)
ANALISIS
NUMERICO
CON MATLAB
Metodo de la secante
En an
alisis numerico el metodo de la secante es un metodo para
encontrar los ceros de una funci
on de forma iterativa.
Es una variaci
on del metodo de Newton Raphson donde en vez de
calcular la derivada de la funci
on, se aproxima la pendiente a la recta
que une la funci
on evaluada en el punto de estudio y en el punto de
la iteraci
on anterior. Este metodo es conveniente cuando derivar la
funci
on y evaluarla es demasiado complejo, por lo que el metodo de
Newton no resulta atractivo.
xn+1 = xn
xn xn1
f (xn )
f (xn ) f (xn1 )
UTH
(2)
ANALISIS
NUMERICO
CON MATLAB
fzero
La funci
on f zero puede encontrar la raz de una ecuacion trascendente
f (x) = 0. Su sintaxis es: f zero(f uncion, x0)
Donde f uncion es el nombre de la funci
on cuyas races queremos determinar
y x0 puede ser un valor cercano a la raz es decir, una primera aproximacion.
>>
>>
>>
>>
clear
x=0:0.1:10;
f = @(x)x.*sin(x)-1;
z = fzero(f,1)
UTH
ANALISIS
NUMERICO
CON MATLAB
Graficos en Matlab
1
plot(x,y)
x = 0:0.1:100;
y = x.*sin(x)-1;
plot(x,y)
x = linspace(0,2*pi,50);
y = sin(x);
z = cos(x);
plot(x,y,r, x,z,gx)
UTH
ANALISIS
NUMERICO
CON MATLAB
x
y
z
w
=
=
=
=
linspace(0,2*pi,50);
sin(x);
cos(x);
x.^2;
subplot(2,2,1)
plot(x,y)
subplot(2,2,2)
plot(x,z)
subplot(2,2,3)
plot(x,w)
UTH
ANALISIS
NUMERICO
CON MATLAB
ANALISIS
NUMERICO
CON MATLAB
Ajuste de Curvas
Suponga que tiene una serie de datos tabulados y requiere estudiar alguna
relaci
on entre ellos.
tiempos = [ 1.1
2.1
3.1
4.1
5.1
6.1
7.1
8.1
9.1
10.1];
posiciones = [ 12
22
32
42
61
62
72
82
92
102];
plot( tiempos, posiciones, o );
polyfit(tiempos,posiciones,1) %polyfit(xi,yi,k), donde k es
el grado del polinomio que queremos obtener.
hold on
x=0:0.1:11;
y=A*x+B
plot (x,y) % Los valores de A y B son los de polyfit
UTH
ANALISIS
NUMERICO
CON MATLAB
plot 3D
t = 0:pi/50:10*pi;
x = sin(t);
z = cos(t);
plot3(x,z,t)
UTH
ANALISIS
NUMERICO
CON MATLAB
Mesh
La funci
on mesh dibuja superficies 3D a partir de matrices. El comando
mesh(Z) dibuja los valores de la matriz Z sobre sus coordenadas. Los valores
de Z se muestran como la altura sobre la rejilla xy.
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
figure
mesh(Z)
UTH
ANALISIS
NUMERICO
CON MATLAB
Meshc
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
figure
meshc(Z)
UTH
ANALISIS
NUMERICO
CON MATLAB
Surf
UTH
ANALISIS
NUMERICO
CON MATLAB
Surfc
[x,y] = meshgrid([-2:.2:2]);
Z = x.*exp(-x.^2-y.^2);
surfc(x,y,Z,gradient(Z))
colorbar
UTH
ANALISIS
NUMERICO
CON MATLAB
Surfc
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
surf(X,Y,Z,FaceColor,red,EdgeColor,none)
camlight left;
lighting phong
UTH
ANALISIS
NUMERICO
CON MATLAB
Waterfall
UTH
ANALISIS
NUMERICO
CON MATLAB
contour
x = linspace(-2*pi,2*pi);
y = linspace(0,4*pi);
[X,Y] = meshgrid(x,y);
Z = sin(X)+cos(Y);
figure
contour(X,Y,Z)
UTH
ANALISIS
NUMERICO
CON MATLAB
contour3
x = -2:0.25:2;
[X,Y] = meshgrid(x);
Z = X.*exp(-X.^2-Y.^2);
contour3(X,Y,Z,30)
UTH
ANALISIS
NUMERICO
CON MATLAB
Sphere
[x,y,z] = sphere;
figure
surf(x,y,z)
hold on
surf(x+3,y-2,z) % Centrada en: (3,-2,0)
surf(x,y+1,z-3) % Centrada en: (0,1,-3)
title(Esferas Varias)
xlabel(Este es el eje x)
ylabel(Este es el eje y)
zlabel(Este es el eje z)
UTH
ANALISIS
NUMERICO
CON MATLAB
Cylinder
t = 0:pi/10:2*pi;
figure
[X,Y,Z] = cylinder(2+cos(t));
surf(X,Y,Z)
axis square
UTH
ANALISIS
NUMERICO
CON MATLAB
Cylinder
t = 0:0.1:2*pi;
r = sin(2*t);
[x,y,z] = cylinder(r);
surf(x,y,z);
UTH
ANALISIS
NUMERICO
CON MATLAB
UTH
ANALISIS
NUMERICO
CON MATLAB
Tarea3
La posici
on inicial vertical del cuerpo y0 .
UTH
ANALISIS
NUMERICO
CON MATLAB
UTH