Skip to content
Volver

Interpolación resolviendo Ax=b

Publicado:  at  04:46 PM
Por Adrian Rodriguez Arzola
Imagen de MateUPRH

Historia de la interpolacion resolviendo Ax=bAx=b

La interpolación mediante la resolución del sistema lineal Ax = b es una técnica que implica encontrar un polinomio que pase por un conjunto de puntos dados. Este enfoque se basa en la formulación de un sistema de ecuaciones lineales donde A es la matriz de coeficientes construida a partir de las coordenadas x de los puntos, x es el vector de coeficientes del polinomio y b es el vector de valores y correspondientes.

Aunque no se atribuye a un único autor, este método ha sido fundamental en el desarrollo del álgebra lineal y la interpolación numérica. Su aplicación es esencial en diversas áreas como la ingeniería, la física y la informática, donde se requiere aproximar funciones o datos discretos mediante polinomios.

Funciones de la interpolacion resolviendo Ax=bAx=b

Interpolación resolviendo Ax=bAx = b

La interpolación es una técnica que nos permite estimar valores intermedios de una función a partir de un conjunto de puntos conocidos. Una forma eficiente de abordar este problema es a través de la resolución del sistema lineal Ax=bAx = b, donde:

✒️ Construcción del Sistema Ax=bAx = b

Dado un conjunto de puntos (x0,y0),(x1,y1),,(xn,yn)(x_0, y_0), (x_1, y_1), \dots, (x_n, y_n), la idea es encontrar un polinomio de grado nn:

P(x)=a0+a1x+a2x2++anxnP(x) = a_0 + a_1x + a_2x^2 + \dots + a_nx^n

Para determinar los coeficientes a0,a1,a2,,ana_0, a_1, a_2, \dots, a_n, se construye un sistema de ecuaciones:

a0+a1x0+a2x02++anx0n=y0a0+a1x1+a2x12++anx1n=y1a0+a1xn+a2xn2++anxnn=yn\begin{aligned} a_0 + a_1x_0 + a_2x_0^2 + \dots + a_nx_0^n &= y_0 \\ a_0 + a_1x_1 + a_2x_1^2 + \dots + a_nx_1^n &= y_1 \\ &\vdots \\ a_0 + a_1x_n + a_2x_n^2 + \dots + a_nx_n^n &= y_n \end{aligned}

Esto se representa en forma matricial como Ax=bAx = b, donde:

Resolución del Sistema

Existen varios métodos para resolver el sistema:

Como resolver Ax=bAx = b en Interpolación

La resolución de un sistema lineal Ax=bAx = b en el contexto de interpolación sigue un procedimiento bien estructurado.

Paso 1: Construcción de la matriz de Vandermonde (A)

La matriz A se forma a partir de los valores xix_i de los puntos conocidos, de la siguiente manera:

A=(1x0x02x0n1x1x12x1n1xnxn2xnn)A = \begin{pmatrix} 1 & x_0 & x_0^2 & \dots & x_0^n \\ 1 & x_1 & x_1^2 & \dots & x_1^n \\ \vdots & \vdots & \vdots & & \vdots \\ 1 & x_n & x_n^2 & \dots & x_n^n \end{pmatrix}

Cada fila representa un punto del conjunto de datos y cada columna una potencia de xx.

Paso 2: Construcción del vector bb

El vector b se compone de los valores yiy_i asociados a cada xix_i:

b=(y0y1yn)b = \begin{pmatrix} y_0 \\ y_1 \\ \vdots \\ y_n \end{pmatrix}

Paso 3: Resolución del sistema

Para obtener los coeficientes del polinomio interpolante, se resuelve el sistema Ax=bAx = b. Los métodos más comunes para esto son:

  1. Eliminación Gaussiana: Reducimos la matriz AA y modificamos bb hasta obtener una forma escalonada.
  2. Gauss-Jordan: Llevamos AA a la matriz identidad y obtenemos directamente los valores de xx.
  3. Descomposición LU: Descomponemos AA en LULU y resolvemos en dos pasos más rápidos.
  4. Inversa de la matriz: Si AA es invertible, simplemente calculamos x=A1bx = A^{-1}b.

Paso 4: Reconstrucción del Polinomio Interpolante

Una vez obtenidos los coeficientes a0,a1,a2,,ana_0, a_1, a_2, \dots, a_n, se forma el polinomio interpolante:

P(x)=a0+a1x+a2x2++anxnP(x) = a_0 + a_1x + a_2x^2 + \dots + a_nx^n

Paso 5: Evaluación del Polinomio

Finalmente, puedes evaluar el polinomio para cualquier valor de xx dentro del intervalo para predecir su valor aproximado.

Ejemplo: Interpolación Resolviendo Ax=bAx = b

Vamos a resolver un ejemplo completo para entender cómo se lleva a cabo el método de interpolación resolviendo un sistema lineal. Supongamos que tenemos los siguientes puntos:

(1,2),(2,3),(3,5)(1, 2), (2, 3), (3, 5)

Paso 1: Construcción de la matriz de Vandermonde (A)

Para tres puntos, necesitamos un polinomio de grado 2 (un grado menos que el número de puntos). La matriz de Vandermonde se construye con las potencias de cada valor de xx:

A=(111212221332)=(111124139)A = \begin{pmatrix} 1 & 1 & 1^2 \\ 1 & 2 & 2^2 \\ 1 & 3 & 3^2 \end{pmatrix} = \begin{pmatrix} 1 & 1 & 1 \\ 1 & 2 & 4 \\ 1 & 3 & 9 \end{pmatrix}

Paso 2: Construcción del vector bb

El vector de términos independientes corresponde a los valores de yy en los puntos dados:

b=(235)b = \begin{pmatrix} 2 \\ 3 \\ 5 \end{pmatrix}

Paso 3: Resolución del sistema Ax=bAx = b

Ahora, tenemos el sistema de ecuaciones lineales en su forma matricial:

(111124139)(a0a1a2)=(235)\begin{pmatrix} 1 & 1 & 1 \\ 1 & 2 & 4 \\ 1 & 3 & 9 \end{pmatrix} \begin{pmatrix} a_0 \\ a_1 \\ a_2 \end{pmatrix} = \begin{pmatrix} 2 \\ 3 \\ 5 \end{pmatrix}

Para resolver este sistema, podemos usar métodos como eliminación Gaussiana o simplemente la inversa de la matriz A1A^{-1}:

x=A1bx = A^{-1}b

Al resolver, obtenemos los coeficientes:

a0=1,a1=0,a2=1a_0 = 1, \quad a_1 = 0, \quad a_2 = 1

Paso 4: Reconstrucción del Polinomio Interpolante

Con los coeficientes encontrados, el polinomio interpolante es:

P(x)=1+0x+1x2=1+x2P(x) = 1 + 0x + 1x^2 = 1 + x^2

Paso 5: Evaluación del Polinomio

Podemos evaluar este polinomio para estimar valores intermedios o verificar los puntos dados:

P(1)=1+12=2,P(2)=1+22=3,P(3)=1+32=5P(1) = 1 + 1^2 = 2, \quad P(2) = 1 + 2^2 = 3, \quad P(3) = 1 + 3^2 = 5

Los valores coinciden con los datos originales, lo que confirma que elz polinomio está correctamente calculado.

Ejemplo en python

# Reimportar librerías y ejecutar el código anterior
import numpy as np
import matplotlib.pyplot as plt

# Puntos dados
x_points = np.array([1, 2, 3])
y_points = np.array([2, 3, 5])

# Matriz de Vandermonde
A = np.vander(x_points, increasing=True)

# Resolviendo el sistema Ax = b
coefficients = np.linalg.solve(A, y_points)

# Definimos el polinomio con los coeficientes encontrados
def P(x):
    return coefficients[0] + coefficients[1] * x + coefficients[2] * x**2

# Valores para graficar
x_vals = np.linspace(0, 4, 100)
y_vals = P(x_vals)

# Graficar
plt.figure(figsize=(6, 4))
plt.plot(x_vals, y_vals, label="Polinomio Interpolante $P(x) = 1 + x^2$", color='blue')
plt.scatter(x_points, y_points, color='red', label="Puntos dados")
plt.title("Interpolación por Resolución de Ax = b")
plt.xlabel("x")
plt.ylabel("P(x)")
plt.grid(True)
plt.legend()
plt.show()
Coeficientes del polinomio interpolante: [ 2.  -0.5  0.5]

Grafica

Texto alternativo

Explicación visual de las reglas de rnterpolacion resolviendo Ax=bAx=b

Interpolación Polinómica - Método Directo - Ejercicio 1 (Canal: Cálculo Numérico y Mucho Más ...)

Conclusión

La interpolación resolviendo Ax=bAx = bAx=b es un enfoque que utiliza sistemas de ecuaciones lineales para determinar los coeficientes de un polinomio interpolante, generalmente en el contexto de interpolación de Lagrange o Newton. Este método es relevante porque permite calcular soluciones exactas de la interpolación de funciones a partir de un conjunto de puntos, lo cual es esencial en el modelado de fenómenos reales.

La importancia de este método radica en que, al resolver sistemas lineales para encontrar el polinomio interpolante, permite una aproximación precisa de funciones en áreas como la ingeniería, la física y la economía, donde la estimación de valores intermedios es crucial (Burden & Faires, 2010).

Burden, R. L., & Faires, J. D. (2010). Numerical Analysis (9th ed.). Brooks/Cole.


Suggest Changes

Post Anterior
Reglas de Integración Numérica (Trapezoidal y Simpson 1/3 y 3/8)
Post Siguiente
Metodo de la inversa