Logo Espacio Linux Paypal - Acepta pagos con tarjeta en tu negocio      
Portada Manuales Linux Descargas Foros Buscar Mapa del sitio Ayuda BlogEL
   Iniciar sesión | Registrarse    
 
Principal

Patrocinadores

Anuncios



Boletín Espacio Linux
Las novedades del sitio y el mundo Linux en tu email.


Sitios amigos

Blogs de miembros


Directorio de blogs | Registrarse
Los usuario registrados pueden crear su propio blog y escribir comentarios.

Polinomio de interpolación de Lagrange: C++ Linux


Por: zeka
Publicado el: 06-01-2007 @ 03:32 pm


Si tenemos n pares ordenados correspondientes a y como una función de x, siempre es posible unirlos mediante una función polinómica a la cual denominaremos polinomio de interpolación. El procedimiento numérico de Lagrange, que da lugar a un polinomio de grado n-1, es el que nos ocupa para el programa escrito en C++ (*.zip) que se encuentra en este link:

http://blogel.espaciolinux.info/wp-content/archivos/zeka/LAGRANGE.zip

Lo emplearemos para encontrar el polinomio de interpolación de Lagrange (de grado 2) a partir de tres pares ordenados (x, f(x)) que generé usando la ecuación de la parábola:

f(x) = x² + 2x -5

Los valores utilizados fueron los siguientes:

x y


0 -5

1 -2

2 3

Estos valores, conjuntamente con el número de pares ordenados (colocado al inicio), se incluyeron en el archivo datos/datos.in y se introducen desde el programa principal. El algoritmo requiere la cabecera monomio2.h, que incluye unas ligeras modificaciones en la ya conocida monomio.h, para permitir en este caso determinar los desarrollos de (x-x1).( x-x2) ... (x-xn), en lugar de (x+x1).( x+x2) ... (x+xn), para cada i diferente de k. Después de desempaquetar el programa, abrimos una cónsola y nos vamos hacia la carpeta LAGRANGE y lo compilamos con:

g++ lagrange.c++ -o lagrange

La ejecución del mismo (./lagrange [Enter]) produce esta salida:

donde se verifica que los coeficientes del polinomio cuadrático obtenido ajustan perfectamente a la ecuación f(x) = x² + 2x -5 ya referida. Sin embargo, no nos emocionemos tanto por este éxito. Si incluimos, por ejemplo, 10 pares ordenados para los valores experimentales de una variable como función de otra, el polinomio que obtendríamos sería de grado 9 y, aunque pasará por todos los puntos considerados, la gráfica que obtendremos posiblemente se comportará de una manera no deseada fuera de ellos. Existen técnicas de interpolación más poderosas como la de los splines pero, este caso, es válido e interesante como ejercicio de programación.


 

 



Ultima actualización el 04-01-2008 @ 08:27 am




Añadir un comentario
Añadir un comentario
Ver más artículos
Ver más artículos
Journal ©
 



Copyright | Términos de uso | Política de privacidad | Publicidad | Contáctanos | Blog