Está en la página 1de 13

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

FACULTAD DE QUÍMICA E INGENIERÍA QUÍMICA


ESCUELA PROFESIONAL DE INGENIERÍA QUÍMICA - CURSO: MÉTODOS NUMÉRICOS

Laboratorio 1: Tarea Grupal

Grupo 2

N° Integrantes: AP – AM – Nombres.
1 Perez Millan, Josmel Isaias
2 Paiva Sota, Mandy Marian
3 Rosado Martinez, María Elena
4 Alvarado León, Jean José

Resolver de manera grupal los siguientes problemas del Libro de Métodos Numéricos
[Chapra/Canale]

1.- Prob: 4.3


2.- Prob: 4.4
3.- Prob: 4.8

Responder los siguientes items para cada Problema:


● Realizar un diagrama de flujo
● Lenguaje de programación en pseudocódigo
● Programa y resultados de corrida
● Interpretación del problema.
EJERCICIO 4.3

Repita los cálculos del problema 4.2 pero ahora usando la ecuación de la serie de Maclaurin para 𝑠𝑒𝑛 𝑥

𝑥3 𝑥5 𝑥7
𝑠𝑒𝑛 𝑥 = 𝑥 − + − …
3! 5! 7!
Para evaluar en el 𝑠𝑒𝑛 (𝜋/4)
Solución:
En primer lugar, la ecuación que se emplea para determinar el criterio de error que asegura que un resultado
sea correcto en al menos dos cifras significativas es:

𝜀𝑠 = (0.5 × 102−𝑛 )%

𝜀𝑠 = (0.5 × 102−2 )% = 0.5%


Por lo tanto, se agregan términos hasta que 𝜀𝑎 sea inferior a este valor.
Valor verdadero:

𝑠𝑒𝑛 (𝜋/4) = √2/2 = 0.70710678 …


Orden cero:
𝜋
𝑠𝑒𝑛 𝑥 = 𝑥 = = 0.785398 …
4
Error relativo porcentual verdadero:
𝑒𝑟𝑟𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜
𝜀𝑡 = | × 100%|
𝑣𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜

0.707107 − 0.785398
𝜀𝑡 = | × 100%|
0.707107

𝜀𝑡 = 11.072%

Primer orden:
𝜋 3
𝑥 3 𝜋 (4 )
𝑠𝑒𝑛 𝑥 = 𝑥 − = − = 0.704652 …
3! 4 3!
Error relativo porcentual verdadero:
0.707107 − 0.704652
𝜀𝑡 = | × 100%|
0.707107
𝜀𝑡 = 0.347%
Estimación aproximada del error:
0.704652 − 0.785398
𝜀𝑎 = | × 100%|
0.704652
𝜀𝑎 = 11.459%
Segundo orden:
𝜋 3 𝜋 5
𝑥 3 𝑥 5 𝜋 (4 ) ( )
𝑠𝑒𝑛 𝑥 = 𝑥 − + = − + 4 = 0.707143 …
3! 5! 4 3! 5!
Error relativo porcentual verdadero:
0.707107 − 0.707143
𝜀𝑡 = | × 100%|
0.707107
𝜀𝑡 = 0.005%
Estimación aproximada del error:
0.707143 − 0.704652
𝜀𝑎 = | × 100%|
0.707143
𝜀𝑎 = 0.352%

Dado que el error aproximado es inferior al 0.5%, el cálculo puede finalizarse.

Términos Resultados 𝜺𝒕 (%) 𝜺𝒂 (%)


1 0.785398 11.072 -
2 0.704652 0.347 11.459
3 0.707143 0.005 0.352

Pseudocódigo:
Inicio
clear('all');
clc;
Definir
x=pi/4
terminos=3
aprox_seno=0
datoexacto=sin(x)
Para n=0:terminos-1
aprox_seno=aprox_seno+((-1)^n)*((x^(2*n+1))/factorial(2*n+1));
et=abs((datoexacto-aprox_seno)/datoexacto)*100;
Escribir ('\n en el orden: %5.6f\n',n);
Escribir ('\n el seno aproximado es: %5.6f\n',aprox_seno);
Escribir ('\n el error relativo porcentual es: %5.6f\n\n',et);
Fin
Diagrama de flujo:

Programación en Matlab:
clear('all');
clc;
x=pi/4;
terminos=3;
aprox_seno=0;
datoexacto=sin(x);
for n=0:terminos-1
aprox_seno=aprox_seno+((-1)^n)*((x^(2*n+1))/factorial(2*n+1));
et=abs((datoexacto-aprox_seno)/datoexacto)*100;
fprintf('\n en el orden: %5.6f\n',n);
fprintf('\n el seno aproximado es: %5.6f\n',aprox_seno);
fprintf('\n el error relativo porcentual es: %5.6f\n\n',et);
end
Prueba de escritorio en Matlab:
EJERCICIO 4.4

Empleando la expansión de Taylor desde orden cero hasta orden 3 para producir 𝑓(2) si:

𝑓(𝑥) = 25𝑥 3 − 6𝑥 2 + 7𝑥 − 88
Usando como punto base 𝑥 = 1. Calcule el error relativo porcentual verdadero para cada aproximación.
Solución:
Según el Teorema de Taylor tenemos:

Para orden cero:


𝑃0 = 𝑓(1)

𝑃0 (𝑥) = 25𝑥 3 − 6𝑥 2 + 7𝑥 − 88
𝐸𝑟𝑟𝑜𝑟 = 160,784%
𝑃0 (2) = −62

Para primer orden:


𝑃1 (𝑥) = 𝑓(1) + 𝑓 ′ (1). (𝑥 − 1)
𝑃1 (𝑥) = −62 + 70. (𝑥 − 1)
𝑃1 (𝑥) = 70𝑥 − 132
𝑃1 (2) = 8 𝐸𝑟𝑟𝑜𝑟 = 92.1568%

Para segundo orden:


𝑓 ′ ′(1). (𝑥 − 1)2
𝑃2 (𝑥) = 𝑃1 (𝑥) +
2!
138. (𝑥 − 1)2
𝑃2 (𝑥) = 70𝑥 − 132 +
2
𝑃2 (𝑥) = 69𝑥 2 − 68𝑥 − 63
𝐸𝑟𝑟𝑜𝑟 = 24.5098%
𝑃2 (2) = 77

Para tercer orden:


𝑓 ′ ′(1). (𝑥 − 1)2 𝑓 ′ ′(1). (𝑥 − 1)3
𝑃3 (𝑥) = 𝑓(1) + 𝑓 ′ (1). (𝑥 − 1) + +
2! 3!
𝑓 ′ ′(1). (𝑥 − 1)3
𝑃3 (𝑥) = 𝑃2 (𝑥) +
3!
150. (𝑥 − 1)3
𝑃3 (𝑥) = 69𝑥 2 − 68𝑥 − 63 +
6
𝑃3 (𝑥) = 25𝑥 3 − 6𝑥 2 + 7𝑥 − 88
𝐸𝑟𝑟𝑜𝑟 = 0%
𝑃3 (2) = 102

Para producir 𝑓(2):


𝑓(𝑥) = 25𝑥 3 − 6𝑥 2 + 7𝑥 − 88
𝑓(2) = 102
Notamos que para el polinomio de orden 3 en la serie de Taylor es la misma que la función original,
corroboremos con esos datos nuestra programación en Matlab.

Pseudocódigo:
Proceso tarea
Definir n como Real
Escribir “ingrese el orden de n”
Leer n
2←x
102←vv
Si n=0 entonces
-62←P0
((vv-P0)/vv)*100←E
Escribir “valor aproximado es P0”
Sino si n=1 entonces
P0+70*(x-1) ←P1
((vv-P0)/vv)*100←E
Escribir “valor aproximado es P1”
Sino si n=2 entonces
P1+69*((x-1)^2) ←P2
((vv-P0)/vv)*100←E
Escribir “valor aproximado es P2”
Sino si n=3 entonces
P2+25*((x-1)^3)) ←P3
((vv-P0)/vv)*100←E
Escribir “valor aproximado es P3”
Sino
Escribir “n puede ser 0,1,2,3”
Fin si
Fin si
Fin si
Fin si
Fin si
Escribir “vv”
Escribir “E”
Fin
Diagrama de flujo:
Programación en Matlab:

n=input('ingrese el orden: ');


fprintf('\n')
x=2;
fprintf('con x=2\n\n')
vv=102;
if n==0
P0=-62;
E=((vv-P0)/vv)*100;
fprintf('valor aproximado es %5.6f\n',P0)
elseif n==1
P1=-62+(70*(x-1));
E=((vv-P1)/vv)*100;
fprintf('valor aproximado es %5.6f\n',P1)
elseif n==2
P2=-62+(70*(x-1))+(69*((x-1)^2));
E=((vv-P2)/vv)*100;
fprintf('valor aproximado es %5.6f\n',P2)
elseif n==3
P3=-62+(70*(x-1))+(69*((x-1)^2))+(25*((x-1)^3));
E=((vv-P3)/vv)*100;
fprintf('valor aproximado es %5.6f\n',P3)
else
printf('recuerde n puede ser 0,1,2,3')
end
fprintf('valor verdadero es %5.6f\n',vv)
fprintf('error relativo porcentual verdadero es %5.6f\n',E)

Prueba de escritorio en
Matlab
EJERCICIO 4.8

Recuerde que la velocidad de caída del paracaidista puede calcularse con [ecuación (1.10)]
𝑔𝑚 𝑐
𝑣(𝑡) = (1 − 𝑒 −( ⁄𝑚)𝑡 )
𝑐
Use un análisis de error de primer orden para estimar el error de v para t = 6, si g = 9.8 y m = 50, pero c = 12.5
± 2.
Solución:
La velocidad del paracaidista respecto a la resistencia del aire viene dada por la siguiente ecuación diferencial.
𝑐⁄ )𝑡 𝑐⁄ )𝑡
𝑑𝑣 𝑐𝑔𝑡𝑒 −( 𝑚 − 𝑔𝑚(1 − 𝑒 −( 𝑚 )
=
𝑑𝑐 𝑐2
12.5⁄ )6 12.5⁄ )6
𝑑𝑣 (12.5)(9.8)(6)𝑒 −( 50 − (9.8)(50)(1 − 𝑒 −( 50 )
=
𝑑𝑐 12.52
𝑑𝑣
= −1,38666
𝑑𝑐
Sabemos:
𝑑𝑣
∆𝑉(𝑐) = | | ∆𝑐̃
𝑑𝑐
∆𝑉(𝑐) = |−1,38666|(2)
∆𝑉(𝑐) = 2,77332
La velocidad del paracaidista respecto a un tiempo de 6 segundos:
(9.8)(50) 12.5
𝑣(𝑡) = (1 − 𝑒 −( ⁄50)6 )
12.5
𝑣(6) = 30,45329 𝑚/𝑠
En conclusión, obtenemos la velocidad del paracaidista con su respectivo margen de error.
𝑣(6) = 30,4533 𝑚/𝑠 ± 2,7733

Pseudocódigo:
Proceso prueba
Definir t, dc como Entero
Definir g, m, c como Real
Escribir “ingrese la masa”
Escribir “ingrese el tiempo dado”
Escribir “ingrese el coeficiente de resistencia”
Escribir “Margen de error del coeficiente de resistencia”
Leer dc
9,8←g
12.5←c
g*m/c*(1-exp(-c/m*t))←v
Escribir 'La velocidad con respecto al tiempo establecido es v”
Si dc=2 entonces
(c*g*t*(exp((-c/m)*t))-(g*m*(1-exp((-c/m)*t))))/(c^2) ←dvdc
abs(dvdc)*dc←df
Escribir “El valor de la incertidumbre es df”
Fin si
“La velocidad en el tiempo de t + " seg es "+ v + "m/s, con un margen de error del " + df←rpta
Escribir “rpta”
Fin

Diagrama de flujo:
Programación en Matlab:

%Un paracaidista con una masa de 50kg salta del globo.


%Aplique la ecuación para calcular la velocidad.
%v=g*m/c*(1-exp(-c/m*t))
clear
clc
g=9.8;%Aceleración de la gravedad
m=input('Ingrese la masa en kg: ');
c=12.5;%Coeficiente de resistencia del aire
t=input('Ingrese un tiempo dado en segundos: ');
dc=input('Margen error del coeficiente de resistencia: ');
v=g*m/c*(1-exp(-c/m*t));
fprintf('La velocidad con respecto al tiempo establecido en
m/s es %5.6f\n',v)
if dc==2
dvdc=(c*g*t*(exp((-c/m)*t))-(g*m*(1-exp((-c/m)*t))))/(c^2);
df=abs(dvdc)*dc;
fprintf('El valor de la incertidumbre es %5.6f\n', df)
end
rpta="La velocidad en el tiempo de "+ t + " seg es "+ v +
"m/s, con un margen de error del " + df;
disp(rpta)

Prueba de escritorio en Matlab

También podría gustarte