Laboratorio 2 Mejorando el caudal del acueducto con Polinomios
Enviado por ROBERTO ENRIQUE GARCÍA AGUILAR • 13 de Noviembre de 2021 • Tarea • 3.065 Palabras (13 Páginas) • 72 Visitas
[pic 1]
Laboratorio 2
Mejorando el caudal del acueducto con Polinomios
Roberto García
Cátedra: Álgebra 2175855 Docente: Adrián Silva Ulloa Fecha: 12/10/2021 |
1. Introducción
Un problema frecuente en ingeniería a la hora de analizar datos experimentales, es obtener una función que describa el fenómeno para deducir relaciones o constantes empíricas, o simplemente obtener los valores de puntos en los cuales no se ha realizado una medición. La interpolación polinómica de Lagrange resuelve precisamente este problema, a decir, la búsqueda de un polinomio cuya gráfica pase por todos los puntos.
En el presente laboratorio se implementará la interpolación polinómica de Lagrange con el fin de aproximar una función que describa la velocidad del caudal de una tubería para un tramo determinado a partir de un número discreto de puntos o mediciones empíricas.
La implementación de este tipo de análisis numérico por medio de las herramientas polyfit() y polyval() implementadas en Octave/MATLAB, permiten evaluar condiciones de exceso de velocidad de caudal y los efectos en la red luego de implementar correcciones en los tramos identificados basados en el modelo obtenido y así optimizar el funcionamiento de la línea de distribución.
1.2. Objetivos
1.2.1. Objetivo General
● Modelar la velocidad del caudal de un fluido en un tramo de tubería por medio de la interpolación polinómica de Lagrange.
1.2.2. Objetivos Específicos
● Evaluar polinomios analíticamente y por medio de comandos de MATLAB/Octave.
● Interpolar la velocidad del caudal en un tramo de tubería a partir de puntos discretos de medición.
● Evaluar graficar efectos de la disminución de la velocidad del caudal en la red luego de corregir tramos que exceden determinada velocidad.
2. Marco Teórico
2.1. Polinomio
Un polinomio es una expresión que consiste en variables (también llamadas indeterminadas)
y constantes (llamadas coeficientes), la cual involucra operaciones de adición, multiplicación,
y exponenciación a exponentes enteros.
Un polinomio en donde sus coeficientes pertenecen a los números Reales , se definirá como una función[pic 2]
[pic 3]
[pic 4]
donde y son constantes en y se denominan coeficientes del polinomio .[pic 5][pic 6][pic 7][pic 8]
2.2. Interpolación
Dado un conjunto de puntos de datos , los puntos definidos por se denominan puntos de interpolación. Los puntos son los valores de interpolación.[pic 9][pic 10][pic 11][pic 12]
Para interpolar una función , se definen los valores de interpolación de la siguiente manera:[pic 13]
Para puntos de datos , los puntos definidos por son llamados corresponden a los valores de la función como[pic 14][pic 15][pic 16][pic 17][pic 18]
[pic 19]
2.3. Polinomio de Lagrange
Para determinar un polinomio único de grado , que verifica que[pic 20][pic 21]
[pic 22]
El polinomio que cumple con esta igualdad es el polinomio de interpolación de Lagrange, es decir
[pic 23]
donde son polinomios de grado que forman una base de [pic 24][pic 25][pic 26]
[pic 27]
3. Desarrollo
3.1. Actividad 1: Polinomios y polinomio de Lagrange
3.1.1. Obtener polinomio de Lagrange analíticamente:
Sean puntos en el plano, para los 3 puntos[pic 28]
[pic 29]
[pic 30]
[pic 31]
se define un polinomio de Lagrange de grado 3. Se desarrolla analíticamente:[pic 32]
[pic 33]
[pic 34]
[pic 35]
[pic 36]
[pic 37]
[pic 38]
[pic 39]
3.1.2. Grafique los puntos y el polinomio.
Se grafica el polinomio a partir de los coeficientes obtenidos en 3.2.1.
[pic 40]
Figura 1: Solución analítica. Puntos y polinomio interpolador
cx1=[0 5 10]; cy1=[2 21 8]; %puntos (x,y)
x1=-1:0.01:12; %vector lineal x
a=-0.64; b=7; c=2; %coeficientes obtenidos analíticamente
y1=a*x1.^2+b*x1+c; % valores para f(x)
figure(1)
plot(x1,y1, 'r'); hold on
plot(cx1,cy1,'k.', 'MarkerSize', 28)
title([{'\fontsize{16} Solución Analítica',...
'Polinomio de Lagrange (n=2)',''}],'FontAngle', 'italic')
ax = gca; ax.FontSize = 12;
ax.XTick = -1:1:11; ax.YTick = -4:4:25;
xlim([-1.1 11.1]); ylim([-4 25])
xlabel('x','FontSize',14,'FontAngle', 'italic')
ylabel('P(x)','FontSize',14,'FontAngle', 'italic')
legend('ajuste','data')
label = {' 1',' 2',' 3'}; %etiquetas
text(cx1,cy1,label,'VerticalAlignment','bottom',...
'HorizontalAlignment','left')
hold off
...