Está en la página 1de 9

Métodos adaptativos de Cuadratura: Gauss-Legendre

Pero también hay otros dependiendo de los valores de los limites

Integración de funciones:
Dada la función f, se delimita la integral definida de esta función en el intervalo [a,b],

La integral numérica o cuadratura, se refiere al cálculo numérico lo más aproximado posible de esta integral.
Ese cálculo numérico se necesita cuando:

1. La función f(x) solo se conoce en puntos concretos.


2. No se conoce la primitiva de la función f(x).
3. La primitiva no es calculable.
4. Aunque se conozca la primitiva de la función, su cálculo es tan costoso, que es mejor usar un
método aproximado para calcularla.

Para calcular la integral se recurre a una sumatoria de valores de la función en ciertos puntos llamados
nodos, multiplicados por unos coeficientes de ponderación denominados pesos:
Esta sustitución supone cambiar una sumatoria infinita (integral), por una sumatoria finita, por lo que
se generara un error de truncamiento.
Para deducir las fórmulas a utilizar, la función f(x) se sustituye por un polinomio 𝑃𝑛 (𝑥) que interpola
puntos concretos de aquella en el intervalo dado y luego se realiza la integración exacta de ese
polinomio.
Se llama máximo grado de precisión de la fórmula de integración al máximo grado de los polinomios
que son integrados exactamente por dicha formula. La integración numérica es un proceso más estable
y preciso que la derivación numérica.

Cuadratura de Gauss Legendre:


Este procedimiento permite variar la posición de los nodos, para mejorar la precisión del resultado. En
la figura se puede observar cómo se puede tener una mejor aproximación con solo dos nodos haciendo
que no sean los extremos del intervalo.

Siempre se trabaja en un intervalo de integración normalizado: [-1,1].


La fórmula general de la cuadratura de Gauss-Legendre es
𝟏 𝒏

∫ 𝒇(𝒙)𝒅𝒙 = ∑ 𝒘𝒊 𝒇(𝒙𝒊 )
−𝟏 𝒊=𝟏

• Donde los nodos 𝑥𝑖 , son las raíces de los polinomios de Legendre de grado n en el intervalo [-1,1].
• Los coeficientes o pesos 𝑤𝑖 , están tabulados para integrar exactamente polinomios de hasta grado 2n - 1.
• Con n puntos de integración, y n pesos por determinar, se pueden satisfacer 2n condiciones, como por
ejemplo integrar exactamente las 2n primeras potencias de x, desde 𝑥 0 a 𝑥 2𝑛−1 . Con esto el método será de
orden 2n - 1 de precisión pues integrará exactamente cualquier polinomio de dicho grado.

Puntos de Legendre:

Si el Numero de nodos = 2 entonces el polinomio que se necesita es P 2 n=?


Si el número de nodos = 3 entonces el polinomio que se necesita es P 3 n=?
Si el número de nodos = 4 entonces el polinomio que se necesita es P 4 n=?
Si el número de nodos = 5 entonces el polinomio que se necesita es P 5 n=?
P(x)=(1)/(8) (63x^(5)-70x^(3)+15x)

n= Si el Numero de nodos-1

El polinomio de Legendre de grado n se puede obtener por medio de la siguiente formula

Para llegar a la expresión


𝟏 𝒏

∫ 𝒇(𝒙)𝒅𝒙 = ∑ 𝒘𝒊 𝒇(𝒙𝒊 )
−𝟏 𝒊=𝟏
Debemos hallar 𝑤𝑖 con la siguiente formula

Cuál es el polinomio de legendre que nos interesa, recordemos que siempre es el 𝑝𝑛+1.
Podemos iniciar con n=0, encontramos el respectivo polinomio 𝑝𝑛+1 en este caso 𝑝0+1 (𝑥) = 𝑥,
este es el polinomio al que le hallamos las raíces y con el cual hallamos 𝑤𝑘 . Dependiendo de
las raíces que tenga el polinomio 𝑝𝑛+1 , se hallan una 𝑤𝑘 por cada raíz. Por lo general las raíces
que son conjugadas tienen el mismo 𝑤𝑘 .

Ejemplo:
Aproxime la integral

El valor real de la integral es 1.711248784; se necesita para el encontrar el error


Usando Gauss Legendre con 2 nodos.

Como el número de nodos es 2, hallamos 𝑤𝑖 y 𝑥𝑖 con el polinomio de grado 2.


Para trabajar con el polinomio de grado 2 asumimos n=1 para que el polinomio sea 𝑝𝑛+1 = 𝑝2
Buscamos el polinomio correspondiente y le encontramos la primera derivada

1
𝑝2 (𝑥) = 2 (3𝑥 2 − 1) 𝑝2′ (𝑥) = 3𝑥 ajaj
Hallamos 𝑥𝑖 , ósea las raíces del polinomio 𝑝2 (𝑥)

Hay que encontrar las dos raíces, tomar el polinomio de legendre para pn+1=2, igualamos a
cero y despejamos el valor de x
0=1/2(3x2 -1)
entonces 0=(3x2 -1)=
x2=1/3=
x=1/raíz(3)
entonces
x0= -1/raíz(3) y
x1=1/raíz(3)
1 1 1
(3𝑥 2 − 1) = 0 𝑥0 = − , 𝑥1 =
2 √3 √3

Como las raíces son iguales conjugadas entonces van a tener el mismo 𝑤𝑖

Hallamos 𝑤0 con la raiz 𝑥0

𝑤0 = 1
Hallamos 𝑤1 con la raiz 𝑥1

Ahora comprobamos que 𝑤1 = 1


𝑤1 = 1

Teniendo la fórmula 𝑤1 𝑓(𝑥1 ) + 𝑤2 𝑓(𝑥2 ) +. . . + 𝑤𝑛 𝑓(𝑥𝑛 ) reemplazamos

1 1
Para 2 nodos 𝑤0 = 1 𝑤1 = 1 𝑥0 = - 𝑥0 =
√3 √3

1 1
I=1*f(- ) + 1*f( ) = 1.69296345.
√3 √3

Valor real =1.711248784

Para calcular el error se recurre al valor exacto de la integral dado inicialmente, y se aplica la formula
𝒗𝒓𝒆𝒂𝒍 − 𝒗𝒂𝒑𝒓𝒐𝒙𝒊𝒎𝒂𝒅𝒐
𝒆𝒓𝒓𝒐𝒓 = 𝒂𝒃𝒔( ) ∗ 𝟏𝟎𝟎
𝒗𝒓𝒆𝒂𝒍
1.711248784 − 1.69296345
𝑒𝑟𝑟𝑜𝑟 = ∗ 100 = 1.06853744%
1.711248784

Ahora también puede suceder que la integral que tenemos tenga los intervalos [𝒂, 𝒃] ≠ [−𝟏, 𝟏],
para estos casos se hace un cambio de variable de
(𝑏 − 𝑎)𝑡 + (𝑏 + 𝑎) 𝑏−𝑎
𝑥 = , 𝑑𝑥 = 𝑑𝑡
2 2

Entonces la fórmula de cuadratura queda


𝑏 𝑛
𝑏 − 𝑎 (𝑏 − 𝑎)𝑥𝑖 + (𝑏 + 𝑎)
∫ 𝑓(𝑥) 𝑑𝑥 ≈ ∑ 𝑤𝑖 𝑓( )
𝑎 2 2
𝑖=1
1.5 2
Ejemplo 2: Aproximar la integral de ∫1 𝑒 −𝑥 𝑑𝑥 3 nodos. El valor exacto de la integral es 0.1093642608

Hacemos el cambio de variable a [-1, 1]

(1.5 − 1)𝑡 + (1.5 + 1) (0.5)𝑡 + (2.5)


𝑥= 𝑒𝑛 𝑡𝑜𝑛𝑐𝑒𝑠 𝑥 =
2 2

1.5 − 1 0.5 1
𝑑𝑥 = 𝑑𝑡 = = 𝑑𝑡
2 2 4

1.5
−𝑥 2
1 1 −(0.5𝑡 + 2.5)2 1 1 −(𝑥𝑖 + 5)2
∫ 𝑒 𝑑𝑥 = ∫ 𝑒 2 𝑑𝑡 = ∫ 𝑒 4 𝑑𝑡
1 4 −1 4 −1
Como el número de nodos es 3, hallamos 𝑤𝑖 y 𝑥𝑖 con el polinomio de grado 3.
Para trabajar con el polinomio de grado 3 asumimos n=2 para que el polinomio sea 𝑝𝑛+1 = 𝑝3
Buscamos el polinomio correspondiente y le encontramos la primera derivada

1 1
𝑝3 (𝑥) = 2 (5𝑥 3 − 3𝑥) 𝑝3′ (𝑥) = 2 (15𝑥 2 − 3)

Hallamos 𝑥𝑖 , ósea las raíces del polinomio 𝑝3 (𝑥) , igualamos a cero y despejamos el valor de x

Cuanto vale x0 x1 y x2
1 √3 √3
(5𝑥 3 − 3𝑥) = 0 𝑥0 = − , 𝑥1 = 0 , 𝑥2 =
2 √5 √5

Hallamos 𝑤0 𝑤1 𝑤2
Para 3 nodos

1.5
−𝑥 2
1 1 −(0.5𝑡 + 2.5)2 1 1 −(𝑥𝑖 + 5)2
∫ 𝑒 𝑑𝑥 = ∫ 𝑒 2 𝑑𝑡 = ∫ 𝑒 4 𝑑𝑡
1 4 −1 4 −1

√3 2 √3 2
1 5 −(1∗(− 5)+ 5) 5 −(1∗( 5) + 5) 8 −(1∗0 + 5)2
𝐼(𝑓) = [ 𝑒 16 + 𝑒 16 + 𝑒 16 ] = 𝟎. 𝟏𝟎𝟗𝟑𝟔𝟒𝟏𝟗𝟔𝟎
4 9 9 9
Integral exacta =0.1093642608

Inte Apro= 𝟎. 𝟏𝟎𝟗𝟑𝟔𝟒𝟏𝟗𝟔𝟎

Para el ejemplo dos:


0.1093642608 − 0.1093641960
𝑒𝑟𝑟𝑜𝑟 = 𝑎𝑏𝑠( ) ∗ 100 = 0.00005923 %
0.1093642608

También podría gustarte