Está en la página 1de 8

Métodos adaptativos de Cuadratura: Gauss-Legendre

Integración de funciones:
Dada la función f, se define 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 Pn (x ) 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 como 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
1 n

∫ f ( x ) dx=∑ wi f (x i)
−1 i=1

 Donde los nodos x i , son las raíces de los polinomios de Legendre de grado n en el intervalo [-1,1].
 Los coeficientes o pesos w i , 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 x 0 a x 2 n−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:

P(x)=(1)/(8) (63x^(5)-70x^(3)+15x)

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

Para llegar a la expresión


1 n

∫ f ( x ) dx=∑ wi f (x i)
−1 i=1

Debemos hallar w i con la siguiente formula


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

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 w i y x i con el polinomio de grado 2.

Para trabajar con el polinomio de grado 2 asumimos n=1 para que el polinomio sea pn+ 1=p 2

Buscamos el polinomio correspondiente y le encontramos la primera derivada

1
p2 ( x ) = (3 x 2−1) p'2 ( x)=3 x
2

Hallamos x i, ósea las raíces del polinomio p2 ( x )

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 x 2−1 )=0 x 0= , x 1=
2 √3 √3
Como las raíces son iguales conjugadas entonces van a tener el mismo w i

Hallamos w 0 con la raiz x 0

w 0=1

Hallamos w 1 con la raiz x 1

Ahora comprobamos que w 1=1

w 1=1

Teniendo la fórmula w 1 f ( x 1)+w 2 f (x 2)+...+ wn f ( x n ) reemplazamos


1 1
Para 2 nodos w 0=1 w 1=1 x 0=¿ - x 0=
√3 √3
1 1
1*f(- ) + 1*f( ) = 1.69296345.
√3 √3
Para calcular el error se recurre al valor exacto de la integral dado inicialmente, y se aplica la formula

v real−v aproximado
error = ∗100
v real
1.711248784−1.69296345
error = ∗100=1.06853744 %
1.711248784

Ahora también puede suceder que la integral que tenemos tenga los intervalos [a , b]≠[−1 ,1], para
estos casos se hace un cambio de variable de
(b−a)t+(b+ a) b−a
x= , dx= dt
2 2

Entonces la fórmula de cuadratura queda


b n
b−a (b−a) xi +(b+a)
∫ f ( x )dx ≈ ∑
2 i=1
wi f (
2
)
a

1.5
2

Ejemplo 2: Aproximar la integral de ∫ e− x dx 3 nodos. El valor exacto de la integral es 0.1093642608


1

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


( 1. 5−1 ) t +(1.5+1) ( 0.5 ) t+(2.5)
x= en tonces x=
2 2

1.5−1 0.5 1
dx= dt = = dt
2 2 4

1.5 1
−x
2
1
∫e dx= ∫ e−¿ ¿ ¿
1 4 −1

Como el número de nodos es 3, hallamos w i y x i con el polinomio de grado 3.

Para trabajar con el polinomio de grado 3 asumimos n=2 para que el polinomio sea pn+ 1=p 3

Buscamos el polinomio correspondiente y le encontramos la primera derivada


1 1
p3 ( x ) = (5 x 3−3 x) p'3 ( x)= (15 x 2−3)
2 2
Hallamos x i, ósea las raíces del polinomio p3 ( x )

1 −√ 3 3
(5 x 3−3 x)=0 x 0= , x 1=0 , x2 = √
2 √5 √5
Hallamos w 0 w1 w2

Para 3 nodos
1.5 1

∫ e− x dx= 14 ∫ e−¿ ¿ ¿
2

1 −1
2 2
3 3
1 5
−(1∗(−
√ 5
)+5)
5
−(1∗(
5 √
)+5 ) 2

8 −(1∗0+5 )
I (f )= [ e 16 + e 16 + e 16 ]=0.1093641959
4 9 9 9

Para el ejemplo dos:

0.1093642608−0.1093641959
error = ∗100=0.000059343%
0.1093642608

Pasos para la programación en Matlab:


1. Pedir al usuario la función a integrar.
2. Pedir al usuario el intervalo en el que se desea integra.
3. Pedir al usuario el numero de nodos.
4. Verificar que el intervalo de integración sea de [-1,1] para poder realizar el método de Gauss Legendre.
5. Si el intervalo no es de [-1,1] aplicar la formula del cambio de variable.
6. Mediante el numero de nodos ingresado, hacer un if con la formula del polinomio de Legendre y en ese
mismo if sacarle las raíces y hallar wi mediante la formula.
7. Usar un if para aplicar la formula que aproxima la integral mediante el número de nodos.
8. Dentro de cada if escribir su respectiva formula.
9. Para el error se le pide al usuario el valor real de la integral o mediante una función de Matlab desarrolla
la integral y usar ese valor para hallar el respectivo error.

También podría gustarte