Está en la página 1de 22

1

“AÑO DE LA UNIVERSALIZACIÓN DE LA SALUD”

UNIVERSIDAD NACIONAL DE TRUJILLO

FACULTAD DE INGENIERÍA - ESCUELA DE INGENIERÍA INDUSTRIAL

TEMA:

BISECCIÓN, FALSA POSICIÓN

CURSO:

MÉTODOS NUMÉRICOS Y COMPUTACIONALES

CICLO:

VI

DOCENTE:

GLORIA IRENE POEMAPE ROJAS

INTEGRANTES:

ARAUJO SALVATIERRA, JENNIFER XIOMARA

CAMPOS CRUZADO, LIDDY YANNELA

QUIROZ NOMBERTO, ANDREA FERNANDA

RELUZ ROJAS, EVELYN VIOLETA

TAFUR LEZAMA, DANIEL ANTONIO

VERCELLI NAJERA, ENZHO RAFAEL

VIGO CHAFLOQUE, CESAR MIGUEL

NOVIEMBRE-2020
2

CONTENIDO
Trabajo 1:.........................................................................................................................................2
I. Ejercicio 2.36 de Antonio Nieves. Pág. 123.............................................................................2
II. Análisis del ejercicio.............................................................................................................3
2.1. Método de bisección.........................................................................................................4
2.1.1. ELEMENTO: HELIO..............................................................................................4
2.1.2. Elemento: HIDRÓGENO.........................................................................................6
2.1.3. Elemento: OXÍGENO..............................................................................................7
2.2. Método de falsa posición..................................................................................................9
2.2.1. Elemento: HELIO......................................................................................................10
2.2.2. Elemento: HIDRÓGENO.......................................................................................11
2.2.3. Elemento: OXÍGENO............................................................................................12
III. Diagrama de flujo:..........................................................................................................13
IV. Programa:.......................................................................................................................14
3

Trabajo 1:

I. Ejercicio 2.36 de Antonio Nieves. Pág. 123

La ecuación de estado de Beattie-Bridgeman en forma virial es:


β γ δ
PV =RT + + 2+ 3
V V V

Donde:
P = presión de atm
T = temperatura en K
V = Volumen moral en L/gmol
R = constante universal de los gases en atm L/(gmolK)
Rc
β = RT β 0 - A0 -
T2
c
γ =−RT β 0 b - A0 a- R B 0
T2
c
δ = R B0b
T2
A0 , B0, a, b, c = constantes particulares para cada gas

Calcule el volumen molar V a 50 atm y 100°C para los siguientes gases:


Gas A0 a B0 b c x 10−4
He 0.0216 0.05984 0.01400 0.000000 0.0040
H2 0.1975 -0.00506 0.02096 -0.43590 0.0504
O2 1.4911 0.02562 0.04624 0.004208 48000

II. Análisis del ejercicio

Se observa la ecuación, es sobre el estado de Beattie Bridgeman en forma virial; tenemos


que hallar la función, tanto la variable dependiente como la independiente. Asimismo, para
conocer las unidades de cada componente, se necesita reemplazar bien y obtener los
resultados.
Función: F(V)= PV^4 - RT*V^3 - β*V^2 - γV-δ=0
4

Tolerancia: 0.01
Tabla 1: Variables halladas

He H2 O2
V V V V
T 373.15 373.15 373.15
P 50 50 50
R 0.08206 0.08206 0.08206
Ao 0.0216 0.1975 1.4911
Bo 0.01400 0.02096 0.04624
β 0.407089644 0.444309612 -0.075202
γ 0.001292544 0.278765472 0.032244
δ 0 -2.713772E-10 5.5E-10
a 0.05984 -0.00506 0.02562
b 0 -0.4359 0.004208
c 0.004 0.0504 4.8000

II.1. Método de bisección


II.1.1. ELEMENTO: HELIO

Tabla 2: Tabulación para el elemento Helio

He
V F(V)
0.5 -0.805005
0.6 -0.281397
0.7 1.301725
0.8 4.540636
0.9 10.15161
1 18.97093

Tabla 3: Iteraciones para el método de bisección


 Primera iteración

TOLERANCIA 0.01
Primera iteración
a 0.6 f(a) -0.281397 -1 1 1
b 0.7 f(b) 1.301725 a c b
c 0.65 f(c) 0.34327
MEP 0.05
EA = …... ER = …...
5

 Segunda iteración

Segunda iteración
a 0.6 f(a) -0.281397 -1 -1 1
b 0.65 f(b) 0.34327 a c b
c 0.625 f(c) -0.006187
MEP 0.025
EA = 0.025 ER = 0.04
 Tercera iteración

Tercera iteración
a 0.625 f(a) -0.006187 -1 1 1
b 0.65 f(b) 0.34327 a c b
c 0.6375 f(c) 0.158704
MEP 0.0125
EA = 0.0125 ER = 0.019608
 Cuarta iteración

Cuarta iteración
a 0.625 f(a) -0.006187 -1 1 1
b 0.6375 f(b) 0.158704 a c b
c 0.63125 f(c) 0.07387
MEP 0.00625
EA = 0.00625 ER = 0.009901

Tabla 4: Resultados

SOLUCION = 0.63125
MEP = 0.00625
Solución exacta = 0.63125+/-0.00625
0.625 0.6375

Tabla 5: Resultados totales

N a c b f(a) f(c) f(b) MEP EA ER

1.30172
1 0.6 0.65 0.7 -0.281397 0.34327 0.05
5

2 0.6 0.625 0.65 -0.281397 -0.006187 0.34327 0.025 0.025 0.04

3 0.625 0.6375 0.65 -0.006187 0.158704 0.34327 0.0125 0.0125 0.019608

0.15870 0.0062 0.0062


4 0.625 0.63125 0.6375 -0.006187 0.07387 0.009901
4 5 5

SOLUCION 0.6312 0.6


6

= 5

Tabla 6: Cifras significativas

ER<=0.5*10^-n 0.00990099 <=0.5*10^(-n)


0.01980198 <=10^-n
-1.703291378 <=-n
1.703291378 >=n
n= 1

II.1.2. Elemento: HIDRÓGENO

Tabla 7: Tabulación para el elemento Hidrógeno

H2
V F(V)
0.5 -9.530463E-01
0.6 -4.612796E-01
0.7 1.08926E+00
0.8 4.294837E+00
0.9 9.871738E+00
1 1.865624E+01

Tabla 8: Iteraciones para el método de bisección


 Primera iteración

TOLERANCIA 0.01
Primera iteración

a 0.6 f(a) -4.612796e-01 -1 1 1


b 0.7 f(b) 1.089256e+00 a c b
c 0.65 f(c) 1.471874e-01
MEP 0.05
EA = …... ER = …...
 Segunda iteración

Segunda iteración

a 0.6 f(a) -4.612796e-01 -1 -1 1


b 0.65 f(b) 1.471874e-01 a c b
c 0.625 f(c) -1.941465e-01
MEP 0.025
EA= 0.025 ER= 0.04
 Tercera iteración
7

Tercera iteración

a 0.625 f(a) -1.941465E-01 -1 -1 1


b 0.65 f(b) 1.471874E-01 a c b
c 0.6375 f(c) -3.331130E-02
MEP 0.0125
EA = 0.0125 ER = 0.019607843
 Cuarta iteración

Cuarta iteración

a 0.6375 f(a) -3.331130E-02 -1 1 1


b 0.65 f(b) 1.471874E-01 a c b
c 0.64375 f(c) 5.440893E-02
MEP 0.00625
EA = 0.00625 ER = 0.009708738

Tabla 9: Resultados

SOLUCION 0.64375
MEP 0.00625
Solución exacta 0.64375+/-0.00625
0.6375 0.65

Tabla 10: Resultados totales

ME
N a c b f(a) f(c) f(b) EA ER
P
1.089256E+0
1 0.6 0.65 0.7 -4.612796E-01 1.471874E-01 0.1
0
2 0.6 0.625 0.65 -4.612796E-01 -1.941465E-01 1.471874E-01 0 0.025 0.04
3 0.625 0.6375 0.65 -1.941465E-01 -3.331130E-02 1.471874E-01 0 0.0125 0.01960784
4 0.6375 0.64375 0.65 -3.331130E-02 5.440893E-02 1.471874E-01 0 0.00625 0.00970874
SOLUCIÓN 0.64375

Tabla 11: Cifras significativas


Cifras significativas

ER <= 0.5*10 ^ -n 0.009708738 <= 0.5*10^-n


0.019417476 <= 10^-n
-1.711807229 <= -n
1.711807229 >= n
n <= 1.7
n= 1
8

II.1.3. Elemento: OXÍGENO


Tabla 12: Tabulación para el elemento Oxígeno

Oxígeno
V F(V)
0.5 -0.699907454
0.6 -0.126342288
0.7 1.516382117
0.8 4.824541627
0.9 10.51441211
1 19.42226943

Tabla 13: Iteraciones para el método de bisección


 Primera iteración

Primera iteración TOLERANCIA = 0.01

a 0.6 f(a) -1.263423E-01 -1 1 1


b 0.7 f(b) 1.516382E+00 a c b
c 0.65 f(c) 5.269203E-01
MEP 0.05
EA= …... ER= …...
 Segunda iteración

Segunda iteración

a 0.6 f(a) -1.263423E-01 -1 1 1


b 0.65 f(b) 5.269203E-01 a c b
c 0.625 f(c) 1.628639E-01
MEP 0.025
EA= 0.025 ER= 0.04
 Tercera iteración

Tercera iteración

a 0.6 f(a) -1.263423E-01 -1 1 1


b 0.625 f(b) 1.628639E-01 a c b
c 0.6125 f(c) 9.453867E-03
MEP 0.0125
EA= 0.0125 ER= 0.020408163

 Cuarta iteración

Cuarta iteración

a 0.6 f(a) -1.263423E-01 -1 -1 1


b 0.6125 f(b) 9.453867E-03 a c b
9

c 0.60625 f(c) -6.057888E-02


MEP 0.00625
EA= 0.00625 ER= 0.010309278

Tabla 14: Resultados

SOLUCIO
0.60625
N
MEP 0.00625
0.60625+/-0.00625
0.6 0.6125

Tabla 15: Resultados totales

N a c b f(a) f(c) f(b) MEP EA ER


1 0.6 0.65 0.7 -1.263423E-01 5.269203E-01 1.516382E+00 0.05    
2 0.6 0.625 0.65 -1.263423E-01 1.628639E-01 5.269203E-01 0.03 0.025 0.04
3 0.6 0.6125 0.625 -1.263423E-01 9.453867E-03 1.628639E-01 0.01 0.0125 0.02040816
4 0.6 0.60625 0.6125 -1.263423E-01 -6.057888E-02 9.453867E-03 0.01 0.00625 0.01030928

Tabla 16: Cifras significativas


Cifras significativas
0.010309278 <= 0.5*10^-n
ER <= 0.5*10^-n 0.020618557 <= 10^-n
-1.685741739 <=- n
1.685741739 >= n
n <= 1.6
n= 1

II.2. Método de falsa posición

Fórmula:

af ( b )−bf (a)
C=
f ( b )−f (a)
Ecuación:
β γ δ
PV =RT + + +
V V2 V3
Función:
F(V)= PV^4 - RT*V^3 - β*V^2 - γV-δ=0
Tolerancia: 0.01
10

DATOS MEDIDA
P Presión atm
T temperatura K
V Volumen molar en L/gmol
R Constante universal de gases atm/gmolK
β RTBo-Ao-Rc/T^2
γ ˗RTBob+Aoa-RBoc/T^2
δ RTBobc/T^2

Ao,Bo,a,b,c= Constantes particulares para cada gas


Calcule el volumen molar Va 50 atm y 100° C para los siguientes gases:

Gas Ao a Bo b c×10^ (-4)


He 0.0216 0.05984 0.014 0 0.004
H2 0.1975 -0.00506 0.02096 -0.4359 0.0504
O2 1.4911 0.02562 0.04624 0.004208 4.8

Tabla 17: Resultados de las variables

He H2 O2
T 373.15 373.15 373.15
P 50 50 50
R 0.08206 0.08206 0.08206
β 0.407089644 0.444309612 -0.07520217
γ 0.001292544 0.278765472 0.03224374
δ 0 -2.71E-10 5.50E-10

II.2.1. Elemento: HELIO

Tabla 18: Tabulación para el elemento Helio

He
V F(V)
0 0
0.1 -0.02982084
0.2 -0.181507607
0.3 -0.458784434
0.4 -0.745375457
0.5 -0.805004808
11

0.6 -0.281396622
0.7 1.301724967
0.8 4.540635825
0.9 10.15161182
1 18.97092881

Figura 1: Gráfica del elemento Helio

Tabla 19: Resultados

ME
N a c b f(a) f© f(b) EA ER f(a)*f(c)
P
- -
0.61777 0.34327 1.30172
1 0.6 0.7 0.28139 0.1 0.09659
4795 0255 4967
6622 509
- -
0.62252 0.34327 0.02 0.00174
2 0.6 0.65 0.28139 0.00618 0.05 0.04
3735 0255 5 0959
6622 6851
- -
0.6 0.62544 0.15870 0.34327 0.02 0.01 0.0196
3 0.65 0.00618 0.00098
25 2604 4119 0255 5 25 0784
6851 1879
- -
0.6 0.62546 0.63 0.07386 0.15870 0.01 0.00 0.0099
4 0.00618 0.00045
25 9011 75 9966 4119 25 625 0099
6851 7022

II.2.2. Elemento: HIDRÓGENO


Tabla 20: Tabulación para el elemento Hidrógeno

H2
V F(V)
0.5 -9.530463E-01
0.6 -4.612796E-01
0.7 1.08926E+00
0.8 4.294837E+00
0.9 9.871738E+00
12

1 1.865624E+01

Figura 2: Gráfica del elemento Hidrógeno

Tabla 21: Resultados generales para el

N a c b f(a) f(c) f(b) ME EA ER f(a)*f(c


P )
1 0.6 6.29749 0.7 - 1.47187 1.089256 0.1     -
7E-01 4.61279 4E-01 E+00 6.78945
6E-01 5E-02
2 0.6 6.37905 0.6 - - 1.471874 0.05 0.025 0.04 8.95558
1E-01 5 4.61279 1.94146 E-01 0E-02
6E-01 5E-01
3 0.62 6.39219 0.6 - - 1.471874 0.02 0.012 0.01960 6.46727
5 7E-01 5 1.94146 3.33113 E-01 5 5 784 2E-03
5E-01 0E-02
4 0.63 6.39806 0.6 - 5.44089 1.471874 0.01 0.006 0.00970 -
75 9E-01 5 3.33113 3E-02 E-01 25 25 874 1.81243
0E-02 2E-03

II.2.3. Elemento: OXÍGENO


Tabla 22: Tabulación para el elemento Oxígeno

He
V F(V)
0.5 -0.699907454
0.6 -0.126342288
0.7 1.516382117
0.8 4.824541627
0.9 10.51441211
1 19.42226943
13

Figura 3: Gráfica para el elemento Oxígeno

Tabla 22: Resultados general para el elemento Oxígeno

ME
N a c b f(a) F(c) f(b) EA ER f(a)*f(c)
P
- -
6.07691 5.26920 1.516382
1 0.6 0.7 1.26342 0.1 6.65723
0E-01 3E-01 E+00
3E-01 1E-02
- -
6.09670 1.62863 5.269203
2 0.6 0.65 1.26342 0.05 0.025 0.04 2.05766
1E-01 9E-01 E-01
3E-01 0E-02
- -
6.10921 0.62 9.45386 1.628639 0.02 0.012 0.02040
3 0.6 1.26342 1.19442
5E-01 5 7E-03 E-01 5 5 816
3E-01 3E-03
- -
6.11629 0.61 9.453867 0.01 0.006 0.01030 7.65367
4 0.6 1.26342 6.05788
8E-01 25 E-03 25 25 928 4E-03
3E-01 8E-02
14

III. Diagrama de flujo:

INICIO

He, H2, O2

a, b
Tol=0.01

f(a), f(b)

NO
f(a)*f(b)<0

SI

C=(a+b) / 2

SI El valor c se
Abs (f(a)*f(c))< Tol aproxima a la
raíz

NO

SI Fin
b=c f(a)*f(c)<0

NO

a=c
15

IV. Programa:

#include<iostream>
#include<conio.h>
#include<cmath>
#include<stdlib.h>

using namespace std;

void tabular(double k, double r);


double f(double x );
double f_hi(double x );
double f_oxigeno(double x );
void calcularHelio();
void calcularHidrogeno();
void calcularOxigeno();

int menu() {
int opcion;
cout << "MENU" << endl;
cout << "1. He" << endl;
cout << "2. H2" << endl;
cout << "3. O2" << endl;
cout << "4. Salir" << endl;
cout << "Opcion: ";
cin >> opcion;
return opcion;
}
16

int main(){
bool salir = false;
while(!salir) {
int opcion = menu();
switch(opcion) {
case 1:
calcularHelio();
break;
case 2:
calcularHidrogeno();
break;
case 3:
calcularOxigeno();
break;
case 4:
salir = true;
break;
}

return 0;
}

void calcularHelio() {
int INTERVALOS;
double k, r, tolerancia, puntomed;
cout<<" CALCULO DE RAICES DE LA FUNCION \n"<<endl;
cout<<" INSERTE EL INTERVALO INICIAL[k;r]: "<<endl;
17

cout<<" k = ";
cin>>k;
cout<<endl;
cout<<" r = ";
cin>>r;

tabular(k, r);
cout<<" UBIQUE UN INTERVALO [k,r] DONDE OCURRA EL CORTE : ";
cout<<"\n k: ";
cin>>k;
cout<<" r: ";
cin>>r;

if(f(k)*f(r)>0){
cout<<"NO es posible aplicar el metodo"<<endl;
cout<<"el tramo escogido NO corta al eje x "<<endl;
}
else{
cout<<" INSERTE LA TOLERANCIA::: ";
cin>>tolerancia;
do{
puntomed=(k+r)/2;
if(abs(f(puntomed)*f(k))<=tolerancia){
cout<<"\t LA RAIZ SERA::: "<<puntomed<<endl;
break;
}
if(f(puntomed)*f(k)>0){
k =puntomed;
} else if (f(puntomed)*f(r)>0){
r = puntomed;
18

}
}while(1);

getch();
}

void calcularHidrogeno() {
int INTERVALOS;
double k, r, tolerancia, puntomed;
cout<<" CALCULO DE RAICES DE LA FUNCION \n"<<endl;
cout<<" INSERTE EL INTERVALO INICIAL[k;r]: "<<endl;

cout<<" k = ";
cin>>k;
cout<<endl;
cout<<" r = ";
cin>>r;

tabular(k, r);
cout<<" UBIQUE UN INTERVALO [k,r] DONDE OCURRA EL CORTE : ";
cout<<"\n k: ";
cin>>k;
cout<<" r: ";
cin>>r;

if(f_hi(k)*f_hi(r)>0){
cout<<"NO es posible aplicar el metodo"<<endl;
19

cout<<"el tramo escogido NO corta al eje x "<<endl;


}
else{
cout<<" INSERTE LA TOLERANCIA::: ";
cin>>tolerancia;
do{
puntomed=(k+r)/2;
if(abs(f_hi(puntomed)*f_hi(k))<=tolerancia){
cout<<"\t LA RAIZ SERA::: "<<puntomed<<endl;
break;
}
if(f_hi(puntomed)*f_hi(k)>0){
k =puntomed;
} else if (f_hi(puntomed)*f_hi(r)>0){
r = puntomed;
}
}while(1);

getch();
}

void calcularOxigeno() {
int INTERVALOS;
double k, r, tolerancia, puntomed;
cout<<" CALCULO DE RAICES DE LA FUNCION \n"<<endl;
cout<<" INSERTE EL INTERVALO INICIAL[k;r]: "<<endl;

cout<<" k = ";
20

cin>>k;
cout<<endl;
cout<<" r = ";
cin>>r;

tabular(k, r);
cout<<" UBIQUE UN INTERVALO [k,r] DONDE OCURRA EL CORTE : ";
cout<<"\n k: ";
cin>>k;
cout<<" r: ";
cin>>r;

if(f_oxigeno(k)*f_oxigeno(r)>0){
cout<<"NO es posible aplicar el metodo"<<endl;
cout<<"el tramo escogido NO corta al eje x "<<endl;
}
else{
cout<<" INSERTE LA TOLERANCIA::: ";
cin>>tolerancia;
do{
puntomed=(k+r)/2;
if(abs(f_oxigeno(puntomed)*f_oxigeno(k))<=tolerancia){
cout<<"\t LA RAIZ SERA::: "<<puntomed<<endl;
break;
}
if(f_oxigeno(puntomed)*f(k)>0){
k =puntomed;
} else if (f_oxigeno(puntomed)*f_oxigeno(r)>0){
r = puntomed;
}
21

}while(1);

getch();
}

#define intervalos 12
void tabular(double k, double r){
int puntos = intervalos + 1;
double tamanio = (r-k)/intervalos;

cout<<"\tx\t|\tf(x)"<<endl;
cout<<"---------------------------------------\n";
for(int i=0; i<puntos; i++){
cout<<"\t"<<k<<"\t|\t"<<f(k)<<endl;
k=k+tamanio;
}
}

double f( double x){


return (pow(x,4)*50) - (pow(x,3) * 30.62069) - (pow (x,2)*0.40709)- (pow(x,1)*0.00129);
; // Función para Helio
}

double f_oxigeno( double x){


return (pow(x,4)*50) - (pow(x,3) * 30.62069) - (pow (x,2)*0.44430) - (pow(x,1)*0.27876) - (-
0.000000000271);
; // Función para Oxigeno
}
22

double f_hi ( double x){


return (pow(x,4)*50) - (pow(x,3) * 30.62069) - (pow (x,2)*(-0.075202))- (pow(x,1)*0.032244)-
0.00000000055 ;
; // Función para Hidrogeno
}}

También podría gustarte