You are on page 1of 6

1.

La siguiente ecuación permite calcular la concentración de un químico en un reactor donde se


tiene una mezcla completa:

c = cent(1 – e^(–0.04t) + c0*e^(–0.04t)

Si la concentración inicial es c0 = 5 y la concentración de entrada es cent = 12, calcule el tiempo


requerido para que c sea el 85% de cent.

2. La concentración de bacterias contaminantes c en un lago disminuye de acuerdo con la


ecuación

c = 75*e^–1.5t + 20*e^–0.075t

Determine el tiempo que se requiere para que la concentración de bacterias se reduzca a 15 con el
uso de a) el método gráfico, y b) el método de Newton-Raphson, con un valor inicial de t = 6 y
criterio de detención de 0.5%. Compruebe los resultados que obtenga.

Solución

1 algoritmo

#include <stdlib.h>

#include <stdio.h>

#include <math.h>

#include <string.h>

#include <conio.h>

#include <time.h>

#define _use_math_defines

double funcion (double t);

double derivadac (double t);

double e= 2.7182;

main()

{
int Nit, i;

double cota,ti,tsol,error;

printf("Metodo de Newton-Raphson\n");

printf("Cota de error maxima: ");

scanf ("%lf",&cota);

printf ("Numero maximo de iteraciones: ");

scanf ("%d",&Nit);

printf ("Punto inicial: ");

scanf ("%lf",&ti);

i = 1; /* Contador de iteraciones */

error = cota + 1 ; /* Para asegurar que error > cota al ppio */

while (i<= Nit && error > cota)

/* Aplicamos formula Newton-Raphson */

tsol = ti - funcion (ti) / derivadac(ti);

error = fabs (tsol-ti);

i++;

/* En la siguiente iteracion xsol es xi */

ti = tsol;

printf ("La solucion es %lf\n", tsol);

printf ("El valor de la funcion es %g\n",funcion(tsol));

printf ("El error alcanzado es %g\n", error);

if (i>=Nit)

printf ("Se ha alcanzado el maximo n. de iteraciones\n");


else

printf ("El n. de iteraciones ha sido %d\n",i);

getch();

double funcion(double t)

double c;

c = 12*(1 - M_E*exp(-0.04*t)) + 5*M_E*exp(-0.04*t);

return (c);

double derivadac(double t)

double cp;

cp = 0.28*e*exp(-0.04*t);

return (cp);

La respuesta es t= 11.525seg
2)

Algoritmo

#include <stdlib.h>

#include <stdio.h>

#include <math.h>

#include <string.h>

#include <conio.h>

#include <time.h>

#define _use_math_defines

double funcion (double t);

double derivadac (double t);

double e= 2.7182;

main()

int Nit, i;

double cota,ti,tsol,error;

printf("Metodo de Newton-Raphson\n");

printf("Cota de error maxima: ");

scanf ("%lf",&cota);

printf ("Numero maximo de iteraciones: ");

scanf ("%d",&Nit);

printf ("Punto inicial: ");

scanf ("%lf",&ti);

i = 1; /* Contador de iteraciones */

error = cota + 1 ; /* Para asegurar que error > cota al ppio */


while (i<= Nit && error > cota)

/* Aplicamos formula Newton-Raphson */

tsol = ti - funcion (ti) / derivadac(ti);

error = fabs (tsol-ti);

i++;

/* En la siguiente iteracion xsol es xi */

ti = tsol;

printf ("La solucion es %lf\n", tsol);

printf ("El valor de la funcion es %g\n",funcion(tsol));

printf ("El error alcanzado es %g\n", error);

if (i>=Nit)

printf ("Se ha alcanzado el maximo n. de iteraciones\n");

else

printf ("El n. de iteraciones ha sido %d\n",i);

getch();

double funcion(double t)

double c;

c = 75*M_E*exp(-1.5*t) + 20*M_E*exp(-0.075*t);

return (c);

double derivadac(double t)

{
double cp;

cp = -112.5*M_E*exp(-1.5*t)-1.5*M_E*exp(-0.075*t);

return (cp);

t= 72.485

You might also like