Logo Studenta

0 ADICIONAL DEFINITIVO PROGRAMACION APLICADA TRABAJO FINAL - Braulio Luna Díaz

¡Este material tiene más páginas!

Vista previa del material en texto

Trabajo Adicional Programación Aplicada
Programación Aplicada
Aplicación de los conceptos de Programación Aplicada: interpolación polinómica e integración numérica 
Universidad Nacional de Jujuy 
Facultad de Ingeniería
2018
Aplicación de los conceptos de Programación Aplicada: interpolación polinómica e integración numérica. 
Trabajo Adicional presentado como integrador de conceptos de temas vistos durante la cursada de la materia Programación Aplicada, dictada por la Docente Cristina Victoria Ayusa
Universidad Nacional de Jujuy 
Facultad de Ingeniería
Jujuy - Argentina
2018
Introducción
INTRODUCCIÓN
LOS MÉTODOS NUMÉRICOS Y LA EFICIENCIA
Los métodos numéricos son técnicas mediante las cuales es posible formular problemas matemáticos de tal forma que puedan resolverse usando operaciones aritméticas. Estos nos vuelven aptos para entender esquemas numéricos a fin de resolver problemas matemáticos, de ingeniería y científicos, también para entender la amplia la pericia matemática y la comprensión de los principios científicos básicos.
El análisis numérico trata de diseñar métodos para “aproximar” de una manera eficiente las soluciones de problemas expresados matemáticamente.
El objetivo principal del análisis numérico es encontrar soluciones “aproximadas” a problemas complejos utilizando sólo las operaciones más simples de la aritmética. Se requiere de una secuencia de operaciones algebraicas y lógicas que producen la aproximación al problema matemático.
Pueden ser aplicados para resolver procedimientos matemáticos en:
· Cálculo de derivadas
· Integrales
· Ecuaciones diferenciales
· Operaciones con matrices
· Interpolaciones
· Ajuste de curvas
· Polinomios
IMPORTANCIA DE INTEGRACIÓN NUMÉRICA
La integración numérica es de gran importancia en ciencias aplicadas e ingenierıa. Sus aplicaciones van desde cálculo de la capacidad de un pantano a partir de datos topográficos en el ámbito de la ingenierıa civil, hasta la estimación de la fuerza total ejercida por el aire sobre las alas de un avión en ingenierıa aeronáutica. En todas estas aplicaciones el objetivo es calcular una integral definida,
 
con la mayor precisión y el menor coste computacional posibles. A pesar de este amplio rango de aplicaciones, es lıcito preguntarse porque es necesario realizar numéricamente el cálculo de la integral. La respuesta a esta pregunta es muy simple: no siempre es factible calcular analıticamente una integral. Por ejemplo, en muchas aplicaciones se desconoce la expresión analıtica de la función que se debe integrar y solo se conoce su valor en unos puntos {(xi , f(xi)), i = 0, . . . , n}. Es más, existen varios casos en los que, incluso existiendo una expresión analıtica de la integral, es más eficiente realizarla numéricamente.
· En determinadas ocasiones el resultado analıtico de la integral definida es una expresión bastante complicada, como por ejemplo, 
Nótese que calcular repetidamente esta integral puede ser muy caro desde el punto de vista computacional, ya que en la expresión anterior aparece una vez la función logaritmo y dos veces la función arco tangente cuyo coste computacional es muy superior al de una suma o un producto. Además, en las implementaciones numéricas incluso estas funciones se calculan aproximadamente. Por último, se debe observar que las funciones log(x) y arctan(x) pueden estar indeterminadas para ciertos valores de x. Por lo tanto, en estos casos también será preciso desarrollar alguna expresión aproximada al valor exacto de la función.
· A veces el resultado de la integral no admite una representación analıtica que pueda expresarse mediante un número finito de términos, como por ejemplo
Obsérvese que si la serie infinita anterior se aproxima mediante la suma de un número finito de términos también se comete un error de truncamiento que en algunos casos, puede ser muy importante. Por consiguiente, también es necesario desarrollar un método numérico para calcular este tipo de integrales
MÉTODOS COMPUESTOS DE INTEGRACIÓN 
En ocasiones el intervalo de integración tiene una longitud grande, entonces resulta conveniente dividirlo en subintervalos y aproximar cada una por medio de un polinomio.
Método Trapezoidal Compuesto
X
X0 x1
a b 
f(x0)
f(x1)
f(X)
f(x0)
f(x1)
f(X)
f(x2)
f(xn-1)
f(xn)
f(x)
X0 x1 x2 xn-1 xn
a b 
 
Figura. Representación del Método de Trapecio Compuesto 
En vez de aproximar la integral de f(x) en [a,b] por una recta. Conviene dividir [a, b] en n subintervalos y aproximar la integral de f(x) en cada subintervalo por un polinomio de primer grado como muestra la figura.
Aplicamos la fórmula Trapezoidal a cada subintervalo y se obtiene el área del trapezoide de tal manera que la curva de todos ellos nos proporciona el área aproximada bajo la curva f(x).
Donde:
Pi(x): es un polinomio de primer orden, i.e., la recta que pasa por (Xi-1, f(Xi-1)), (Xi, f(Xi)).
Aplicando el método del trapezoide en cada subintervalo:
Que ocurre si todos los intervalos tienen la misma longitud h, i.e., Xi+1 - Xi = hi; i=0, 1,2,…,(n-1).
Método Compuesto de Simpson
Recordemos que para aplicar el método de Simpson se necesita dos subintervalos y como queremos aplicarlo n-veces entonces se debe dividir el intervalo [a, b] en un número de subintervalos igual a 2n.
Veamos gráficamente esto:
Figura. Representación del Método de Simpson Compuesto 
Observamos que cada par de subintervalos sucesivos aproximamos f(x) por medio de un polinomio de segundo orden (parábola) y se integra usando el método de Simpson de tal manera que la suma de las áreas parciales proporcione el área total, es decir:
Donde Pi; i=1,2,…; es el polinomio de grado dos que pasa por tres puntos consecutivos usando el método del Trapezoide.
Donde:
Si h1= h2=…= hn, entonces tenemos:
Luego:
 
INTERPOLACIÓN DE NEWTON ( DIFERENCIAS DIVIDIDAS )
Partiendo de n puntos (x, y), podemos obtener un polinomio de grado n − 1. El método que se utilizara es el de las diferencias divididas para obtener los coeficientes, el cual facilita la tarea de resolver un sistema de ecuaciones usando el cociente de sumas y restas. Dada una colección de n puntos de x y sus imágenes f(x), se pueden calcular los coeficientes del polinomio interpolante utilizando las siguientes expresiones: 
Finalmente, a partir de los valores obtenidos, se pueden obtener dos formas de representar el polinomio: 
Consigna 
CONSIGNA
1) Dada la siguiente tabla de valores correspondiente a mediciones efectuadas en la Laguna Yalca (Pdo. Chascomús), se requiere calcular una estimación del volumen de agua disponible en la misma cuando la cota de la superficie es de 7,97 m, aplicando: a) Regla del Trapecio. b) Fórmula de Simpson
	Cota[m]
	Área[km2]
	7,97
	10,938
	7,27
	5,175
	6,87
	2,588
	6,67
	0,179
	6,62
	0,072
Nota: para obtener intervalos iguales, ajustar una recta a los puntos dados, y después recién proceder al cálculo de volumen.
Resolución en MATLAB 
a) Para estimar el volumen de agua disponible por la Regla del Trapecio primero vamos a encontrar un valor de entre 6.87 y 7.27; y un valor de entre 2.588 y 5.175, que luego nos permita aplicar la regla del trapecio múltiple entre 6.67 y 7.27.
Para ello calculamos la cota intermedia entre 6.87 y 7.27.
Y para calcular el valor de “y” correspondiente a , utilizaremos la Interpolación Polinomial de Newton:
	Cota[m]
	Área[]
	7.97
	10.938
	7.27
	5.175
	7.07
	
	6.87
	2.588
	6.67
	0.179
	6.62
	0.072
Script de Matlab que me permite realizar la Interpolación Polinomial:
%interpolacion de newton
function [yi, p, b]=pol_newton(x,y,xi)
%inicializa variables
n=length(x);
b=zeros(n);
b(:,1)=y(:);
%obtener la tabla de diferenciasfor j=2:n
 for i=1:n-j+1
 b(i,j)=(b(i+1,j-1)-b(i,j-1))/(x(i+j-1)-x(i));
 end
end 
%calcular el dato interpolado
xt=1;
yi=b(1,1);
for j=1:n-1
 xt=xt.*(xi-x(j));
 yi=yi+b(1,j+i)*xt;
end
%construir el polinomio
p=num2str(b(1,1));
xx=x*-1;
for j=2:n
 signo='';
 if b(1,j)>=0
 signo='+';
 end
 xt='';
 for i=1:j-1
 signo2='';
 if xx(i)>=0
 signo2='+';
 end
 xt=strcat(xt,'*(x',signo2,num2str(xx(i)),')');
 end
 p=strcat(p,signo,num2str(b(1,j)),xt);
end
 
A continuación calculamos el valor de “Y” que nos permita aplicar la regla del trapecio múltiple entre 6.87 y 7.27.
Encontramos el valor de 
	Cota[m]
	Área[]
	7.97
	10.938
	7.27
	5.175
	7.07
	 = 5.0113
	6.87
	2.588
	6.67
	0.179
	6.62
	0.072
Aquí encontramos la función genérica:
def = 0.072+2.14*(x-6.62)+39.62*(x-6.62)*(x-6.67)-75.2551*(x-6.62)*(x-6.67)*(x-6.87)+61.9558*(x-6.62)*(x-6.67)*(x-6.87)*(x-7.27)
Guardamos la función en una variable p:
Corroboramos el valor de 
Graficamos la función:
Ahora tenemos los datos que nos permiten aplicar la Regla del Trapecio entre 6.62-6.67; y 7.27-7.97. Y podemos aplicar la Regla del Trapecio Múltiple entre 6.67-7.27
Por Regla del Trapecio:
a) Regla del Trapecio Simple
Solución Analítica = 0.000491515
b) Regla del Trapecio Simple
Solución Analítica = 2.57801
El error es muy grande debido a que no poseemos la función original.
Pero si trabajamos con un h=0.1, obtenemos un error mucho menor (suponiendo que nuestro polinomio se acerca mucho a la función original.
Entonces: 
Script:
%codigo para calcular mediante trapecio múltiple
clc
f=input('Ingrese la funcion \n f(x)=','s');
a=input('ingrese el limite inferior de la integral\n');
b=input('ingrese el limite superior de la integral\n');
n=input('ingrese el numero de intervalos\n');
% f funcion
% a,b intevalo
% n numero partes
disp('Funcion: ');
f
disp(strcat('De [a: ',num2str(a),'Hacia b : ',num2str(b),']'));
g=inline(f);
h=(b-a)/n;
aprox=g(a)+g(b);
for i=1:n-1
x=a+i*h;
aprox=aprox+2*g(x);
end
aprox=(h/2)*aprox;
a=0;
disp(aprox)
c)
El intervalo es calculado mediante la Regla del Trapecio Múltiple, usando MATLAB.
i) Con 
ii) Con 
b) Para estimar el volumen de agua disponible por la Regla de Simpson primero delimitaremos los intervalos para poder aplicar correctamente este método.
	Cota[m]
	Área
	7.97
	10.938
	7.62
	1.6820
	7.27
	5.175
	7.07
	5.0113
	6.87
	2.588
	6.67
	0.179
	6.645
	0.0847
	6.62
	0.072
Script que permite realizar la Integración Numérica con Simpson 3/8:
function ('Bienvenido, este programa usa la regla del Simpson 3/8 para aproximar el valor de una integral definida');
g=input('Ingrese la funcion: ','s');
f=inline(g);
a=input('Ingrese el extremo inferior de la integral');
b=input('Ingrese el extremo superior de la integral');
k=input('Ingrese la cantidad de veces que desea aplicar el método: ');
n=3*k;
h=(b-a)/n;
A=0;
for i=1:k
 A=A+((3*h)/8)*(f(a)+3*f(a+h)+3*f(a+2*h)+f(a+3*h));
 a=a+3*h;
end
 fprintf('El valor aproximado de la integral es: %f', A);
end
- Vamos a calcular con Simpson 3/8 en el intervalo [6.62-6.67]
Solución Analítica = 0.000491515
- Vamos a calcular con Simpson 3/8 en el intervalo [6.67-7.27]
Solución Analítica:
- Vamos a calcular con Simpson 3/8 en el intervalo [7.27-7.97]
Solución Analítica = 2.57801
El error total es:
· Volumen estimado por la Regla del Trapecio: 
· Volumen estimado por la Regla del Simpson 3/8: 
Resolución en EXCEL 
Realizamos una representación gráfica de la curva con los valores que nos proporcionaron como datos, de tal forma que la gráfica queda:
	Cota[m]
	Área[km2]
	7,97
	10,938
	7,27
	5,175
	6,87
	2,588
	6,67
	0,179
	6,62
	0,072
Vamos a interpolar usando Diferencias Divididas para obtener un polinomio del cual podremos calcular valores sin tener un error considerablemente grande y así llegar a una estimación del volumen de agua disponible a través de la regla del Trapecio y Simpson
El polinomio que calculamos es:
P(X)=10,938+8,23*(X-7,97)+1,6*(X-7,97)*(X-7,27)+8,39*(X-7,97)*(X-7,27)*(X-6,87)+61,96*(X-7,97)*(X-7,27)*(X-6,87)*(X-6,67)
Si realizamos la integral del polinomio que da por resultado el volumen de agua disponible el resultado es:
	Cota[m]
	Área[km2]
	
	Cota[m]
	Área[km2]
	7,97
	10,938
	
	7,97
	10,938
	7,27
	5,175
	
	7,27
	5,177
	6,87
	2,588
	
	6,87
	2,589
	6,67
	0,179
	
	6,67
	0,178
	6,62
	0,072
	
	6,62
	0,071
Es mucho más preciso y por lo tanto utilizamos ese polinomio para realizar los cálculos
El valor de h en cada intervalo es:
	Valor de h
	Cota[m]
	Área[km2]
	
	7,97
	10,938
	0,70
	7,27
	5,177
	0,40
	6,87
	2,589
	0,20
	6,67
	0,178
	0,05
	6,62
	0,071
Aplicamos la regla del trapecio para un h=0,135, de tal forma que queda dividido en 10 intervalos y tenemos un resultado más aproximado
	Valor de h
	Cota[m]
	Área[km2]
	
	7,97
	10,938
	0,135
	7,84
	3,774
	0,135
	7,70
	1,572
	0,135
	7,57
	2,112
	0,135
	7,43
	3,671
	0,135
	7,30
	5,018
	0,135
	7,16
	5,416
	0,135
	7,03
	4,622
	0,135
	6,89
	2,887
	0,135
	6,76
	0,957
	0,135
	6,62
	0,071
¡Claramente el gráfico no es como en un principio parecía! Observamos que la curva se comporta de forma polinómica
TRAPECIO MÚLTIPLE
SIMPSON MÚLTIPLE
ENTONCES:
	
	
	UNIDADES
	Resultado cercano al valor original
	4,67773
	Hm^3
	
	
	
	TRAPECIO MÚLTIPLE
	
	I
	4,79695
	Hm^3
	error
	0,11922
	
	SIMPSON MÚLTIPLE
	
	I
	4,68144
	Hm^3
	error
	0,00371
	
Conclusión
En lo que respecta a cálculos, cuando analizamos los resultados obtenidos con MATLAB observamos que el método de Simpson 3/8 nos ofrece un error menor al obtenido por la Regla del Trapecio, es decir, que Simpson 3/8 es más preciso teniendo en cuenta la función obtenida a partir de la Interpolación Polinomial de Newton.
Si analizamos los resultados obtenidos con EXCEL podemos observar de la tabla final, que la regla que mejor expresa los resultados deseados, es la solución por la Regla de Simpson, por la complejidad de la función a resolver, además entre más iteraciones tenga el ejercicio más exacta será su solución, estos métodos se pueden aplicar en infinidades de campos y más poder simularlos en aplicaciones en el área de ingeniería.
Las distintas formas de resolución para encontrar la respuesta a la problemática planteada hace que conozcamos más aplicaciones de los métodos de cálculo que varían en grados de complejidad, así desde un problema sencillo como estimar el área de un objeto, hasta uno más rebuscado en lo que concierne a soluciones en las diversas ciencias y disciplinas que hacen uso de ellos.
En particular, me parece de gran importancia el uso de los métodos numéricos vistos en la cursada de la materia Programación aplicada, estos tienen infinidades de aplicaciones en la vida cotidiana, me resultó muy beneficioso aprender respecto de estos temas e interesante a la vez. 
Los conocimientos proporcionados son de mucha utilidad, inclusive llegué a aplicarlos en otras materias que actualmente estoy cursando, una de ellas es Termodinámica, donde surge la necesidad de aplicar métodos de cálculo debido a la complejidad de las ecuaciones por resolver.
Realizar este trabajo llevó consigo superar varias dificultades, como ellas aprender a utilizar MATLAB y afianzar mis conocimientos en EXCEL.
Finalmente los conceptos interiorizados fueron bien aplicados y en cada momento surgen nuevas ideas de donde implementarlos. Cumpliendo con el objetivo del Trabajo Adicional, superando cada una de las cuestiones y demostrando que los conocimientos están afianzados de tal forma que los puedo aplicar en lo que resta de la carrera y en la vida cotidiana de manera adecuada, concluyo este trabajo que abre puertas hacia el camino de la investigación y el interés personal en seguir aprendiendo más para el día de mañana enfrentar cada una de las problemáticas que surgen en el día a día…
Agradecimientos
Agradezcoa la Docente Cristina Victoria Ayusa por su dedicación en la materia Programación Aplicada y por proveer de las herramientas haciendo que en cada una de las clases se trabaje de forma dinámica y concientizando que los métodos de cálculo tienen un gran campo de aplicaciones, a su vez agradezco la posibilidad de presentar este trabajo integrador de conocimientos que en la situación en la que actualmente me encuentro es de gran ayuda
Melisa Rocío Valdiviezo
Ingeniería Industrial
2018
Universidad Nacional de Jujuy 
Facultad de Ingeniería
1

Continuar navegando