Está en la página 1de 27

Métodos numéricos en ingeniería: Desintegración de una sustancia.

PROFESORA: Sánchez Guerrero Margarita María


de Lourdes.

GRUPO: CTG-02.

Maldonado Gutiérrez Rafael


2153034810
Ingeniería Metalúrgica.
Desintegración de una sustancia.

Desintegración de una sustancia.


Contenido.
1. OBJETIVOS....................................................................................................................................... 3
2. INTRODUCCIÓN ............................................................................................................................ 3
1 Ecuaciones diferenciales - método de Euler. ............................................................................... 3
2 Interpolación por diferencias divididas de Newton ....................................................................... 4
3 Método de mínimos cuadrados. ...................................................................................................... 4
4 Diferenciación ................................................................................................................................. 5
5 Integración ...................................................................................................................................... 5
3. PLANTEAMIENTO DEL PROBLEMA ............................................................................................. 6
4. SOLUCIÓN DEL PROBLEMA ........................................................................................................ 6
Solución por Método de Euler. ........................................................................................................... 7
Análisis para el método de Euler..................................................................................................... 7
Solución por interpolación .................................................................................................................. 9
Análisis para el método de interpolación ......................................................................................... 9
Solución por el método de mínimos cuadrados. ............................................................................... 11
Análisis para Método de mínimos cuadrados ................................................................................ 11
Solución por diferenciación .............................................................................................................. 13
Análisis método de diferenciación ................................................................................................. 13
Solución por integración ................................................................................................................... 15
Análisis método de integración ..................................................................................................... 15
5. CÓDIGO ....................................................................................................................................... 17
6. Conclusiones. ............................................................................................................................... 27
7. REFERENCIAS ............................................................................................................................ 27

2
Desintegración de una sustancia.

1. OBJETIVOS.
1. Resolver el problema planteado por al menos tres métodos distintos.

I. Ecuaciones diferenciales-método de Euler.

II. Interpolación.

III. Método de mínimos cuadrados.

IV. Diferenciación.

V. Integración.

VI. Comprobar resultados

2. Obtener la mejor aproximación respecto al valor teórico presentado.

2. INTRODUCCIÓN.
1 Ecuaciones diferenciales - método de Euler.

Este método predice un nuevo valor de 𝑦𝑖+1 sobre un punto x, usando la primera derivada para
extrapolar en forma lineal sobre el intervalo de paso h, esto es:

𝑦𝑖+1 = 𝑦𝑖 + 𝑓(𝑥, 𝑦)ℎ

A esta ecuación se le conoce como el método de Euler. [1]

Un ejemplo de este método:

Sea la ecuación diferencial: 𝑦′ = −20𝑦 + 7𝑒−0.5𝑥

Se necesitan ciertas condiciones iniciales, y(0)=5 & h=0.01 se tiene:

𝑥0 = 0 & 𝑦0 = 5

𝑥1 = 0.01; 𝑦1 = 𝑦0 + ℎ𝑦0´ = 5 + (0.01)(−20(5) + 7𝑒0) = 4.07

𝑥2 = 0.02; 𝑦2 = 𝑦1 + ℎ𝑦1´ = 4.07 + (0.01)(−20(4.07) + 7𝑒−0.005) = 3.32565

Y así sucesivamente.

La exactitud del método de Euler aumente al disminuir el intervalo de paso h, pero es necesario usar
doble precisión en los cálculos para evitar la rápida acumulación de errores por redondeo.

3
Desintegración de una sustancia.

2 Interpolación por diferencias divididas de Newton.


También conocido como método de Newton-Raphson, se supone una función f continua y
derivable dos veces en el intervalo [a, b], se considera el polinomio de Taylor de primer grado
para f(x) alrededor de 𝛼.

Este método es uno de los más utilizados para localizar raíces ya que en general es muy
eficiente y siempre converge para una función polinomial.

Se debe partir de un valor inicial para la raíz: xi, este puede ser cualquier valor, el método
convergirá a la raíz más cercana.

Si se extiende una tangente desde el punto , el punto donde esta tangente cruza al
eje x representa una aproximación mejorada de la raíz. [2]

3 Método de mínimos cuadrados.


Este método ayuda a ajustar una curva con ciertos valores experimentales, lo que permite
predecir con un error bajo como se comportaría dicha función en otros puntos.

[3]

La fórmula general para un polinomio de grado n en donde hay m parejas de datos es:

4
Desintegración de una sustancia.

Al resolver el sistema se obtiene el polinomio.

4 Diferenciación.
Este método nos proporciona aproximaciones a la derivada en un punto, existen variantes en
este método: diferencias hacia atrás, centrales o hacia adelante.

La usada en este caso es la segunda diferencia central.

[4]

5 Integración.

Se puede calcular la aproximación de la integral por medio de distintos métodos, método del
trapecio, Simpson 1/3 y Simpson 3/8. En este caso se usa el de Simpson 1/3.

[5].

5
Desintegración de una sustancia.

3. PLANTEAMIENTO DEL PROBLEMA.


Una determinada sustancia se desintegra según la ecuación 𝑨 = 𝑷𝒆−𝟎.𝟎𝟐𝟒𝟖𝒕 , donde P es
la cantidad inicial en el tiempo t = 0 y A la cantidad resultante después de t años. Si
inicialmente se depositan 500 miligramos de dicha sustancia, ¿cuánto tiempo habrá de
transcurrir para que quede el 20 por ciento de esta?

Se solicita una solución particular, pero se considera un problema general; es decir, se puede
ingresar una ecuación similar en cuanto a estructura, pero con constantes distintas y el
programa aproxima la solución.
Al ser una ecuación exponencial se puede hacer uso de varias herramientas tanto del cálculo
como de estadística para aproximar soluciones que cumplan con la igualdad.

4. SOLUCIÓN DEL PROBLEMA.


Empezamos notando que la gráfica de la ecuación es de carácter exponencial negativo es decir
que se reduce exponencialmente respecto a la variable dependiente que en este caso es y
(cantidad de sustancia) y la variable independiente x que es el tiempo.

Grafica de la función 𝑦(𝑡) = 500𝑒−0.0248𝑥. Donde:

𝑦(𝑡) = 𝐶𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑑𝑒 𝑠𝑢𝑠𝑡𝑎𝑛𝑐𝑖𝑎 𝑑𝑒𝑠𝑝𝑢𝑒𝑠 𝑑𝑒 𝑡 𝑡𝑖𝑒𝑚𝑝𝑜.


𝑥 = 𝑇𝑖𝑒𝑚𝑝𝑜 𝑡𝑟𝑎𝑛𝑠𝑐𝑢𝑟𝑟𝑖𝑑𝑜 𝑒𝑛 𝑎ñ𝑜𝑠.

Y donde 500 es la cantidad inicial, es la intersección con el eje y.

Se considera el intervalo cerrado [0,500] sobre el eje x pues no se pueden considerar cantidades
negativas por la naturaleza del problema.

La solución es dependiente del método utilizado.

6
Desintegración de una sustancia.

Solución por Método de Euler.


Análisis para el método de Euler.
Para este método se requiere de la derivada de la función: 𝑦´(𝑡) = 𝑃(−0.0248)𝑒−0.0248𝑡

El caso particular 𝑦´(𝑡) = −12.4𝑒−0.0248𝑡

𝑡0 = 0; 𝑦1 = 𝑦0 + ℎ𝑦0´ = 𝑦0 + ((𝑏 − 𝑎)/𝑛)(−0.0248(500)𝑒−0.0248(𝑡0))

La idea es hacer que el programa ejecute todas estas aproximaciones de y(t) y que cuando
encuentre una aproximación al valor del residuo lo muestre en pantalla.

El método de Euler nos proporciona una solución a ecuaciones diferenciales ordinarias, por lo
que se plantea el hecho de que la ecuación proporcionada es una ecuación que se resuelve por
medio de ecuaciones diferenciales; entonces al aplicar este método se llega a una solución con
un bajo margen de error.

Es requisito que existan condiciones iniciales:

Intervalo de evaluación: En este caso es el intervalo para el cual la función es positiva, es


decir [0,500].

Valor de 𝒙𝟎: Es el valor de tiempo inicial, este siempre será cero pues se considera que la
desintegración siempre inicia con la sustancia completa.

Valor de 𝒚𝟎:Es el valor que toma la variable dependiente con el valor de tiempo inicial, es decir,
𝒚𝟎 = 𝟓𝟎𝟎𝒆−𝟎.𝟎𝟐𝟒𝟖(𝟎) = 𝟓𝟎𝟎; entonces la condición siempre tendrá el valor de 500.

Numero de particiones: Se recomienda al menos el valor de 𝒚𝟎 para que la aproximación sea


aceptable.

A partir de estas condiciones se ejecuta el proceso para resolver la ecuación diferencial, cuya
solución en determinado punto concuerda con la solución del problema. Ahora es necesario
encontrar esa aproximación entre todas las soluciones encontradas, para ello se consideran las
condiciones iniciales pues se busca un valor para y que se acerque al residuo de sustancia lo
que nos lleva a su respectivo par ordenado, el valor de x=t que es el tiempo que tarda la
sustancia en desintegrarse a ese punto residuo.

El porcentaje de error para este método:

64.89669002 − 64.00
%𝑒 = 𝑥100 = 1.38
64.89669002

7
Desintegración de una sustancia.

A continuación, se presenta una captura del proceso.

8
Desintegración de una sustancia.

Solución por interpolación.


Análisis para el método de interpolación.
Este método requiere de una serie de datos tabulados, se parte de la idea de que la hay:

Se trata de aproximar puntos en base a puntos cercanos a este, la aproximación depende de


que tan cercanos sean esos puntos entre sí por lo que el margen de error depende de este
factor como se puede notar en las siguientes tablas.

Partiendo del supuesto que se tiene una tabla de datos.


Evaluando el punto 150=30%
Por interpolación se obtiene
x y
47.7191
43.5003896 170
Valor teórico
48.5472905 160
48.5472905
51.3292611 140
54.3174858 130 e%=1.705945876

Otra serie probada:


Evaluando el punto 100=20%
Por interpolación se obtiene
x y
68.125048
90 69.14509791
Valor teórico
110 61.05353761
64.8966
120 57.54501434
130 54.31748581 e%=4.97

Se hace uso de la serie de Taylor para encontrar aproximaciones para el punto evaluado, es
bien sabido que la serie de Taylor no es del todo certera para algunas funciones por lo que las
aproximaciones tienen gran variación de error con los valores reales

9
Desintegración de una sustancia.

. A continuación, se presenta una captura del proceso.

10
Desintegración de una sustancia.

Solución por el método de mínimos cuadrados.


Análisis para Método de mínimos cuadrados.
Para el ajuste de curvas para mínimos cuadrados se requiere de un conjunto de pares
ordenados, con ellos se ajusta a un polinomio en este caso de tercer orden para mejorar la
aproximación.

Se obtiene un polinomio de grado tres con una incógnita, esta incógnita resulta ser la
aproximación de años para determinado punto inicial ingresado.

Se consideran valores prueba.

x y
10 390.1799716
20 237.6046358 Valor teórico
64.89669002
30 185.4171401
40 144.692109

El polinomio obtenido es:

−0.000613𝑥3 + 0.1299𝑥2 − 12.0312𝑥 + 498.1080 = 0

Pero nosotros requerimos que esta relación nos de la abscisa por lo que se iguala el polinomio
en la ordenada de ese punto, en este caso es el residuo, es decir 100.

−0.000613𝑥3 + 0.1299𝑥2 − 12.0312𝑥 + 498.1080 = 100

Al resolver esta ecuación de tercer grado se obtiene el valor del tiempo para que solo queden
esos 100 miligramos de sustancia (20%).

X=63.829708

El porcentaje de error para este método:

64.89669002 − 63.829708
%𝑒 = 𝑥100 = 1.64
64.89669002

11
Desintegración de una sustancia.

. A continuación, se presenta una captura del proceso.

12
Desintegración de una sustancia.

Solución por diferenciación.


Análisis método de diferenciación.
La derivada nos proporciona la cantidad de sustancia restante tras t unidades de tiempo, la
velocidad de desintegración es proporcional a la cantidad de material restante. Esto quiere decir
que se desintegra más rápido cuando la sustancia residuo es menor.

𝑦(𝑡) = 500𝑒−0.0248𝑥

𝑦´(𝑡) = 500(−0.0248)𝑒−0.0248𝑥
𝑑𝑦
= 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 ∗ 𝑦(𝑥) Para el caso de esta función la derivada resulta cumplir con esta igualdad.
𝑑𝑥

Se requiere además de una serie de pares ordenados, los cuales se consideran experimentales.

x y
70.896690 86.17414463
67.896690 92.8300299 Valor teórico
64.89669002
61.896690 107.7237615
58.896690 116.0440878

El proceso de solución por diferenciación consiste en obtener la derivada aproximada en el


punto de ordenada=residuo=100.

Una vez obtenida se aprovecha la definición de derivada para obtener el valor de x=t, es decir:
dy
𝑙𝑛 dx 2.479997
ln (− )
𝑥 = 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 ∗ 𝑐𝑎𝑛𝑡𝑖𝑑𝑎𝑑 𝑖𝑛𝑖𝑐𝑖𝑎𝑙 = −12.4 = 64.896730
𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 −0.248
Lo cual nos genera una muy buena aproximación al valor verdadero.

El porcentaje de error para este método:

64.89669002 − 64.896730
%𝑒 = 𝑥100 = 0.0006
64.89669002

13
Desintegración de una sustancia.

. A continuación, se presenta una captura del proceso.

14
Desintegración de una sustancia.

Solución por integración.


Análisis método de integración.

La integral proporciona el área bajo la curva que en este caso representa la cantidad de
sustancia desintegrada hasta el punto x=t.

Se usa el método de Simpson 1/3 para obtener la aproximación de las integrales.

Se calcula la integral completa, la integral definida en todo el intervalo de interés [0,500] por lo
que se requiere de valores experimentales.

X y
0 500
71.4286 85.04485459 Valor teórico
64.89669002
142.8571 14.46529046
214.2857 2.460397048
285.7143 0.418488218
357.1429 0.071180539
428.5714 0.012107107
500 0.002059294354

500
∫ 500𝑒−0.0248𝑥𝑑𝑥
0

Además, se calculan integrales hasta el punto que nos interesa para resolver el problema, pero
como no sabemos el valor se deja como variable.
𝑡 500 500
∫ 500𝑒−0.0248𝑥𝑑𝑥 + ∫ 500𝑒−0.0248𝑥𝑑𝑥 = ∫ 500𝑒−0.0248𝑥𝑑𝑥
0 𝑡 0

La integral total la podemos calcular sin problemas, en tanto las otras dos quedan en términos
de la variable t la cual resuelve el problema; entonces al resolver la ecuación resultante se
obtiene el valor de x que cumple y(x)=100.

El porcentaje de error para este método:

64.89669002 − 64.896688
%𝑒 = 𝑥100 = 0.00000311
64.89669002

15
Desintegración de una sustancia.

A continuación, se presenta una captura del proceso.

16
Desintegración de una sustancia.

5. CÓDIGO.
Código en ANSI C.

#include <stdio.h>
#include <math.h>
#define indice 100

float f(double,double,double);
int main()
{
char respuesta;
double
cantidad=0,residuo=0,opcion1=0,opcion2,opcion,fpr,f2,f3,f4,f5,f6,fd=0,dx,pe=0,integral,integral2
,integral3,lim;
float constante=0,aproximado=0,a,b,h,x0,y0,x1,y1,s;
int menu,j=0,k=0,l=0,i,n,m,z,c;
double x,xs[indice],Fx[indice],F1[indice],F2[indice],F3[indice],aprox;
double e,f1,g,h1,q,R,s1=0,s2=0,raiz,s3,s4;
float xmmc,y,xexp,xsum1,xsum,xmul,ysum,ysum1,X[8],Y[8],M[8][8],r[8],me,p,bmmc,sum;

printf("\n\t\t\tDESINTEGRACION DE UNA SUSTANCIA.\n\n");


do{

printf("\nEste programa calcula el tiempo en años que tarda en desintegrarse determinada


sustancia a tal grado que quede un porcentaje.\n");
printf("\nCual es la cantidad inicial de sustancia?(en mg): ");
scanf("%lf",&cantidad);
printf("\nCual es el porcentaje de sustancia que queda?: ");
scanf("%lf",&residuo);

do{
printf("\n\n\t\tA continuacion seleccione un metodo de calculo.");
printf("\n1.Ecuaciones diferenciales//Metodo de euler.");
printf("\n2.Metodo polinomios de interpolacion .");
printf("\n3.Medodo de minimos cuadrados 3° orden.");
printf("\n4.Metodo de diferenciacion.");
printf("\n5.Metodo de integracion.");
printf("\n6.Metodo para comprobar.");
printf("\nIntroduzca un numero (1-6): ");
scanf("%d",&menu);

17
Desintegración de una sustancia.

switch(menu)
{
case 1://metodo de euler
i=1;
printf("\nSe requiere el intervalo [a,b].");
printf("\n\nEl valor de a: ");
scanf("%f",&a);
printf("\n\nEl valor de b: ");
scanf("%f",&b);
printf("\n\nEl valor de x0: ");
scanf("%f",&x0);

printf("\n\nEl valor de y0: ");


scanf("%f",&y0);

printf("\n\nEl valor de n(Se recomienda el mismo o mayor número de b para mejor precisión):
");
scanf("%d",&n);
printf("\nLa constante de la sustancia: ");
scanf("\%f",&constante);
aproximado=residuo*cantidad/100;
h=(b-a)/n;
s=y0*constante;
printf("\n\t\t\tx|y");
while (i<=n){
y1=y0+(h*s*f(y0,constante,x0));
x1=a+i*h;

printf("\n\nEl resultado es: %f %f\n\n",x1,y1);


x0=x1;
y0=y1;
i=i+1;

if (y1>=aproximado-5&&y1<aproximado+5){
printf("El aproximado es de: %f\n",x1);
opcion1=x1;
}
}//cierrra while i<=n
printf("\nUna aproximacion de años para lograr que solo quede ese %.3lf %% es:%f
\n",residuo,opcion1);

break;

case 2://por interpolacion.

18
Desintegración de una sustancia.

printf("\nCalcular polinomios por interpolacion.\n");


x=residuo*cantidad/100;
printf("\nLa cantiad de sustancia restante es: %f",x);
printf("\nIngrese 4 valores cercanos a %lf para evaluar: ",x);
printf("\n\nIngrese el primer valor: ");
scanf("%lf",&xs[0]);

printf("Ingrese el valor de F(t) en ese punto: ");


scanf("%lf",&Fx[0]);

printf("\n\nIngrese el segundo valor: ");


scanf("%lf",&xs[1]);
printf("Ingrese el valor de F(t) en ese punto: ");
scanf("%lf",&Fx[1]);

printf("\n\nIngrese el tercer valor: ");


scanf("%lf",&xs[2]);
printf("Ingrese el valor de F(t) en ese punto: ");
scanf("%lf",&Fx[2]);

printf("\n\nIngrese el cuarto valor: ");


scanf("%lf",&xs[3]);
printf("Ingrese el valor de F(t) en ese punto: ");
scanf("%lf",&Fx[3]);

for (j=0;j<3;j++){
F1[j]=(Fx[j+1]-Fx[j])/(xs[j+1]);
}

for (k=0;k<2;k++){
F2[k]=(F1[k+1]-F1[k])/(xs[k+2]-xs[0]);
}

for(l=0;l<1;l++){
F3[l]=(F2[l+1]-F2[l])/(xs[l+3]-xs[1]);
}

printf("\n\n x | F(x) ");


printf("\n\tb0:%lf",Fx[0]);
printf("\n\tb1:%lf",F1[0]);
printf("\n\tb2:%lf",F2[0]);
printf("\n\tb3:%lf",F3[0]);

printf("\n\n x | Fx | F1 | F2 | F3");

19
Desintegración de una sustancia.

printf("\n\n%lf|%lf|%lf|%lf|%lf",xs[0],Fx[0],F1[0],F2[0],F3[0]);
printf("\n\n%lf|%lf|%lf|%lf|",xs[1],Fx[1],F1[1],F2[1]);
printf("\n\n%lf|%lf|%lf|",xs[2],Fx[2],F1[2]);
printf("\n\n%lf|%lf|",xs[3],Fx[3]);
aprox=Fx[0]+(F1[0]*(x-xs[0]))+(F2[0]*(x-xs[0])*(x-xs[1]))+(F3[0]*(x-xs[0])*(x-xs[1])*(x-xs[2]));

printf("\n\nEl polinomio de tercer orden (n=3) es:%lf ",aprox);


printf("\nSe requieren aproximadamente %f años para que la sustancia quede en %.2f
%%.",aprox,residuo);
printf("\n\n");
break;

case 3:
aproximado=residuo*cantidad/100;
printf("\nAproximacion por minimos cuadrados.\n");

printf("Ingrese el total de puntos: ");


scanf("%d",&m);
printf("\nIngresar el valor de los puntos x.");

for(i=0;i<m;i++)
{
printf("\nEl punto x%d es: ",i);
scanf("%f",&xmmc);
X[i]=xmmc;
}
printf("\nIngresar los valores y(x)");

for(i=0;i<m;i++)
{
printf("\nEl punto y%d es: ",i);
scanf("%f",&y);
Y[i]=y;
}

n=3;

for(j=0;j<=n;j++)
{
for(k=0;k<=n;k++)
{
xsum=0;
xsum1=0;
xmul=0;

20
Desintegración de una sustancia.

xexp=1;
for(i=0;i<m;i++)
{

if((j+k)==0)
{
xsum1=xsum+1;
xsum=xsum1;
}
else
{ xexp=1;
for(l=1;l<=(j+k);l++)
{
xmul=X[i]*xexp;
xexp=xmul;
}
xsum1=xexp+xsum;
xsum=xsum1;
}
}
M[j][k]=xsum;
}
}

ysum=0;
ysum1=0;
xmul=0;
for(j=0;j<=n;j++)
{
ysum=0;
ysum=0;
xmul=0;
for(i=0;i<m;i++)
{
if(j==0)
{
ysum1=ysum+Y[i];
ysum=ysum1;
}
else
{
xexp=1;
for(l=1;l<=j;l++)
{
xmul=X[i]*xexp;

21
Desintegración de una sustancia.

xexp=xmul;
}
ysum1=(xexp*Y[i])+ysum;
ysum=ysum1;
}
M[j][n+1]=ysum;
}
}

printf("\n\nLa matriz: \n\n");


for(i=0;i<=n;i++)
{
printf("\n");
for(j=0;j<=(n+1);j++)
{
printf("\t %.4f",M[i][j]);
}
}

for(i=0;i<=(n-1);i++)
for(k=i;k<=n;k++)
if(M[k][i]!=0)//pivoteo
{
for(j=(i+1);j<=n;j++)
{
me=M[j][i]/M[i][i];
for(z=0;z<=(n+1);z++)
{
bmmc=M[j][z]-(me*M[i][z]);
M[j][z]=bmmc;
}

if(M[n][n]==0)
{
printf("No existe solución unica");
}
else
{
r[n]=M[n][n+1]/M[n][n];

for(i=(n-1);i>=0;i--)

22
Desintegración de una sustancia.

{
sum=0;// se realiza la sustituacion hacia atras
for(j=(i+1);j<=n;j++)
{
p=M[i][j]*r[j];
sum=sum+p;
}
r[i]=(M[i][n+1]-sum)/M[i][i];
}
}

printf("\n\nLos coeficientes del polinomio son:\n");


for(i=0;i<=n;i++)
{
printf("\nCoeficiente a%d=%.4f\n\n",i,r[i]);
}

printf("\nSe procede a resolver la ecuacion.");


e=r[3];
f1=r[2];
g=r[1];
h1=r[0]-aproximado;

printf("\n %fx^3+(%f)x^2+(%f)x+(%f)=0",e,f1,g,h1);
f1=f1/e;
g=g/e;
h1=h1/e;
//solucion de ecuacion 3° grado
q=((3*g)-(f1*f1))/9;
R=(9*f1*g-27*h1-2*(f1*f1*f1))/54;
raiz=sqrt((q*q*q)+(R*R));
s1=pow(R+raiz,1.0/3);
s2=(R-raiz)*-1;
s3=pow(s2,1.0/3);
s4=s3*-1;
x1=s1+s4-(f1/3);
printf("\nLa aproximacion de años es: %f",x1);
break;

case 4:
printf("Calculo de derivadas, para hacer el calculo se solicitan los datos siguientes: ");
printf("\nCual es la constante de la sustancia?: ");
scanf("%f",&constante);
printf("\n\nDato del intervalo: ");
scanf("%lf",&dx);

23
Desintegración de una sustancia.

aproximado=residuo*cantidad/100;
pe=(log(aproximado/cantidad))/constante;

printf("1. Primera derivada.\n");


opcion=1;
printf("\n\n\t\t\t!Derivacion numerica\n");

if(opcion==1){
printf("\n\nPrimera derivada\n");
printf("\n\t1.Primeras diferencias centrales.");
printf("\n\t2.Segundas diferencias centrales.");
printf("\nElija una opcion: ");
scanf("%lf",&opcion2);

if(opcion2==1){
printf("\n\nValor de F(%f): ",(pe-dx));
scanf("%lf",&f1);
printf("\n\nValor de F(%f): ",pe);
scanf("%lf",&f2);
printf("\n\nValor de F(%f): ",(pe+dx));
scanf("%lf",&f3);
fd=(f3-f1)/(2*dx);

printf("\nLa aproximacion de la primera derivada es: %lf \n",fd);


aprox=log(fd/(cantidad*constante))/constante;
printf("\nLa aproximacion de años es:%lf \n",aprox);

}
else if(opcion2==2){
printf("\n\nValor de F(%f): ",(pe+(2*dx)));
scanf("%lf",&f1);
printf("\n\nValor de F(%f): ",(pe+dx));
scanf("%lf",&f2);
printf("\n\nValor de F(%f): ",(pe-dx));
scanf("%lf",&f3);
printf("\n\nValor de F(%f): ",(pe-(2*dx)));
scanf("%lf",&f4);
fd=(-f1+(8*f2)-(8*f3)+f4)/(12*dx);
system("cls");
printf("\nLa aproximacion de la primera derivada es: %f \n",fd);
aprox=log(fd/(cantidad*constante))/constante;
printf("\nLa aproximacion de años es:%lf \n",aprox);
}
}

24
Desintegración de una sustancia.

else if(opcion2!=1||opcion2!=2){
printf("\nOpcion no valida.");
}//cierra primer if (opcion 1)

//cierre else del if principal

printf("\n");
break;

case 5:

printf("Integracion por Simpson 1/3.");


printf("\n\nEl valor del limite a es:");
scanf("%f",&a);
b=cantidad;
printf("\n\nEl numero de fajas es:");
scanf("%d",&n);
printf("\nLa constante de la sustancia: ");
scanf("%f",&constante);
c=1;
s=a;
dx=(b-a)/n;
fpr=0;f1=0;f2=0;f3=0;f4=0,f5=0;f6=0;
while(s<=b)
{
printf("\n\nIngrese el valor de f(%.4f):",s);
scanf("%lf",&fpr);

if(c==1)
{
f1=fpr;
}
else if (c==(n+1))
{
f2=fpr;
}
else
{
if((c%2)==0)
{
f3=4*fpr;
f4=f3+f4;
}
else
{

25
Desintegración de una sustancia.

f5=2*fpr;
f6=f5+f6;
}
}
s=s+dx;
c=c+1;

}
integral=(dx/3)*(f4+f6+f2+f1);
printf("\n\nLa aproximacion de la integral es %f\n\n",integral);
printf("\n\n");
aproximado=cantidad*residuo/100;
lim=(log(aproximado/cantidad))/constante;
integral2=((cantidad/constante)*exp(constante*lim))-((cantidad/constante)*exp(constante*a));
integral3=((cantidad/constante)*exp(constante*cantidad))-
((cantidad/constante)*exp(constante*lim));

printf("\nLas otras integrales son :%f y %f",integral2,integral3);


printf("\nUna mejor aproximacion de la integral es: %lf",integral2+integral3);
printf("\nLa cantidad aproximada de años es: %f",lim);
break;

case 6:
printf("\nEste metodo es para comprobar");
printf("\nIntroduce la constante de la sustancia: ");
scanf("%f",&constante);

aproximado=log((residuo*cantidad/100)/cantidad)/constante;
printf("\nSe requiere de aproximadamente %f años para que la sustancia se reduzca a %f %%
del inicial.",aproximado,residuo);
break;
default:
printf("\nHa seleccionado una opcion invalida, intente con otra.");
break;

}//cierra switch
}//cierra do secundario
while(menu!=1&&menu!=2&&menu!=3&&menu!=4&&menu!=5&&menu!=6);

//condicion de bucle.
printf("\nDesea intentar de nuevo?(s para si)\n\n");
scanf(" %c",&respuesta);

26
Desintegración de una sustancia.

}//cierra do principal
while(respuesta=='s' || respuesta=='S');

float f(double c,double d,double q){//funcion caso 1,euler


double r;
r=(exp(d*q));
return r;
}

6. Conclusiones.
Los métodos que mejor aproximan la solución al problema son el método por diferenciación y
el método de integración por su carácter de precisión en cuanto a cálculos.

Además la función es fácilmente derivable e integrable lo que permite comprobar los resultados
manualmente.

Este tipo de programas estructurados permiten la resolución de problemas de una manera


rápida y sencilla que de otra manera se convertiría en un proceso largo de completar y tal vez
de entender. Esto agiliza procesos en cualquier tipo de situación laboral por ejemplo.

7. REFERENCIAS.
[1]. Torres Moreno, J. (1993). Métodos numéricos con software en C (1° Edición. ed., Vol. único,
pp. 302-303). México D.F., D.F.: ...

[2] Torres Moreno, J. (1993). Métodos numéricos con software en C (1° Edición. ed., Vol. único,
pp. 288-289). México D.F., D.F.: ...

[3] Sánchez Guerrero, L. Ajuste de curvas. Métodos numéricos. Obtenido 03, 2017, de
http://aniei.org.mx/paginas/uam/CursoMN/curso_mn_13.html

[4] Formulas de diferenciación. Fórmulas de diferenciación. Obtenido 03, 2017, de


https://mnuac.wikispaces.com/file/view/FÓRMULAS+DE+DIFERENCIACIÓN.pdf

[5] Sánchez Guerrero, L. Integración numérica. Métodos numéricos. Obtenido 03, 2017, de
http://aniei.org.mx/paginas/uam/CursoMN/curso_mn_16.html

27

También podría gustarte