| | | |

Matemática Numérica II

3 Integração

Ajude a manter o site livre, gratuito e sem propagandas. Colabore!

3.5 Quadratura Gauss-Legendre

Quadraturas gaussianas são quadraturas numéricas de máximo grau de exatidão. Especificamente, quadraturas de Gauss-Legendre são quadraturas gaussianas para integrais da forma

I=-11f(x)𝑑x. (3.89)

Vamos começar considerando o problema de determinar a quadratura de Gauss-Legendre de apenas um ponto, i.e.

S=f(x1)ω1. (3.90)

Começamos por exigir a integração exata de polinômios de o grau 0, o que nos leva a

ω1x10=-11x0𝑑x (3.91a)
ω1=x|-11=2. (3.91b)

Agora, exigindo a integração exata de polinômios de grau 1, obtemos

ω1x11=-11x1𝑑x (3.92a)
2x1=x22|-11=0 (3.92b)
x1=0. (3.92c)

Com isso, concluímos que a quadratura de um nodo de maior grau de exatidão para tais integrais é a de nodo x1=0 e peso ω1=2. Observamos que esta é a regra do ponto médio para o intervalo de integração [-1,1].

Seguindo esse raciocínio, ao buscarmos por uma quadratura de n pontos com maior grau de exatidão possível para integrais no intervalo [-1,1], acabamos tendo que resolver um sistema de equações

i=1nxikωi=-11xk𝑑x, (3.93)

para k=0,1,2,,2n-1. I.e., no que temos 2n incógnitas (n nodos e n pesos) a determinar, podemos exigir o grau de exatidão máximo de 2n-1.

O sistema (3.93) é um sistema não linear para os nodos e a determinação de soluções para n grande não é uma tarefa trivial. Alternativamente, veremos que os nodos da quadratura de Gauss-Legendre de n nodos são as raízes do polinômio de Legendre de grau n. Por definição, o polinômio de Legendre de grau n, denotado por Pn(x), satisfaz a seguinte propriedade de ortogonalidade

-11p(x)Pn(x)𝑑x=0, (3.94)

para todo polinômio p(x) de grau menor que n. Com isso, estabelecemos o seguinte resultado.

Teorema 3.5.1.

A quadratura de Gauss-Legendre de n nodos tem as raízes do polinômio de Legendre de grau n como seus nodos e seus pesos são dados por

ωi=-11jij=1nx-xjxi-xjdx. (3.95)
Demonstração.

Sejam x1,x2,,xn as raízes do polinômio de Legendre de grau n. Queremos mostrar que

-11p(x)𝑑x=i=1np(xi)ωi, (3.96)

para todo polinômio p(x) de grau menor ou igual 2n-1. Primeiramente, suponhamos que p(x) seja um polinômio de grau menor que n. Então, tomando sua representação por polinômio de Lagrange nos nodos xi, i=1,2,,n, temos

-11p(x)𝑑x =-11i=1np(xi)jij=1nx-xjxi-xjdx (3.97)
=i=1np(xi)-11jij=1nx-xjxi-xjdx (3.98)
=i=1np(xi)ωi. (3.99)

Isto mostra o resultado para polinômios p(x) de grau menor que n. Agora, suponhamos que p(x) é um polinômio de grau maior ou igual que n e menor ou igual a 2n-1. Dividindo p(x) pelo polinômio de Legendre de grau n, Pn(x), obtemos

p(x)=q(x)Pn(x)+r(x), (3.100)

onde q(x) e r(x) são polinômio de grau menor que n. Ainda, nas raízes x1,x2,,xn temos p(xi)=r(xi) e da ortogonalidade dos polinômios de Legendre (veja, equação (3.94)), temos

-11p(x)𝑑x =-11q(x)Pn(x)+r(x)dx (3.101)
=-11r(x)𝑑x. (3.102)

Agora, do resultado anterior aplicado a r(x), temos

-11p(x)𝑑x=i=1nr(xi)ωi=i=1np(xi)ωi. (3.103)

Isto complete o resultado para polinômios de grau menor ou igual a 2n-1. ∎

Exemplo 3.5.1.

(Gauss-Legendre de 2 pontos.) Considaremos a quadratura de Gauss-Legendre de 2 nodos. Do Teorema 3.5.1, seus nodos são as raízes do polinômio de Legendre de grau 2

P2(x)=32x2-12, (3.104)

as quais são

x1=-33, (3.105a)
x2=33. (3.105b)

Os pesos são, então

ω1 =-11x-x1x2-x1𝑑x (3.106a)
=32[x22+33x]-11 (3.106b)
=1 (3.106c)

e

ω2 =-11x-x2x1-x2𝑑x (3.107a)
=-32[x22-33x]-11 (3.107b)
=1 (3.107c)

Ou seja, a quadratura de Gauss-Legendre de 2 pontos tem o seguinte conjunto de nodos e pesos {(x1=-3/3,ω1=1),(x2=3/3,ω2=1)}. Esta, por sua vez, é exata para polinômios de grau menor ou igual a 3. De fato, verificando para potência de xk temos:

  • k=0:

    -11x0𝑑x=2 (3.108a)
    x10ω1+x20ω2=(-33)0+(33)0=2. (3.108b)
  • k=1:

    -11x1𝑑x=0 (3.109a)
    x11ω1+x21ω2=(-33)1+(33)1=0. (3.109b)
  • k=2:

    -11x2𝑑x=23 (3.110a)
    x12ω1+x22ω2=(-33)2+(33)2=23. (3.110b)
  • k=3:

    -11x3𝑑x=0 (3.111a)
    x13ω1+x23ω2=(-33)3+(33)3=0. (3.111b)
  • k=4:

    -11x4𝑑x=25 (3.112a)
    x14ω1+x24ω2=(-33)4+(33)4=29. (3.112b)
Tabela 3.5: Conjunto de nodos e pesos da quadratura de Gauss-Legendre. Fonte: Wikipedia:Gauss-Legendre Quadrature.
n xi ωi
1 0 2
2 ±33 1
3 0 89
±35 59
4 ±37-2765 18+3036
±37+2765 18-3036
5 0 128225
±135-2107 322+1370900
±135+2107 322-1370900
Exemplo 3.5.2.

Considere o problema de obter uma aproximação para I=-11cos(x)𝑑x usando a quadratura de Gauss-Legendre. Calculemos algumas aproximações com n=1, 2 e 3 pontos:

  • n=1:

    -11cos(x)𝑑x 2cos0 (3.113a)
    =2. (3.113b)
  • n=2:

    -11xe-x2𝑑x cos(-3/3)+cos(-3/3) (3.114a)
    =1,67582. (3.114b)
  • n=3:

    -11xe-x2𝑑x 89cos0+59cos(-3/5)
    +59cos(3/5)=1,68300. (3.115a)

Na Tabela 3.6, temos as aproximações de I com a quadratura de Gauss-Legendre de n=1, 2, 3, 4 e 5 pontos (detonado por I~, bem como, o erro absoluto com respeito ao valor analítico da integral.

Tabela 3.6: Resultados referentes ao Exemplo 3.5.2.
n I~ |I-I~|
1 2.00000 3.2e-01
2 1.67582 7.1e-03
3 1.68300 6.2e-05
4 1.68294 2.8e-07
5 1.68294 7.9e-10
1import numpy as np
2from numpy.polynomial.legendre import leggauss
3
4# integrando
5f = lambda x: np.cos(x)
6# quadratura
7n = 4
8x,w = leggauss(n)
9# aproximação
10S = np.sum(f(x)*w)
11print(f'{n}: S = {S:.5e}')

3.5.1 Intervalos de integração arbitrários

A quadratura de Gauss-Legendre é desenvolvida para aproximar integrais definidas no intervalo [-1,1]. Por sorte, uma integral definida em um intervalo arbitrário [a,b] pode ser reescrita como uma integral no intervalo [-1,1] através de uma mudança de variável apropriada.

Assumindo a mudança de variável

x=b-a2(u+1)+a (3.116)

temos

dx=b-a2du (3.117)

e, portanto,

abf(x)𝑑x=-11f(b-a2(u+1)+a)b-a2𝑑u. (3.118)

Portanto, para computarmos abf(x)𝑑x podemos aplicar a quadratura de Gauss-Legendre na integral definida no [-1,1] dada conforme acima.

Exemplo 3.5.3.

Usemos a quadratura de Gauss-Legendre com 2 pontos para aproximar a integral

01xe-x2𝑑x. (3.119)

Fazendo a mudança de variável x=u/2+1/2, temos

01xe-x2𝑑x=-11(u2+12)e-(u2+12)2𝑑u. (3.120)

Então, aplicando a quadratura temos

01xe-x2𝑑x =(-36+12)e-(-36+12)2
+(36+12)e-(36+12)2 (3.121a)
=3,12754e-1. (3.121b)
1import numpy as np
2from numpy.polynomial.legendre import leggauss
3
4# integral
5a = 0
6b = 1
7f = lambda x: x*np.exp(-x**2)
8# quadratura
9n = 2
10x,w = leggauss(n)
11# mud de var
12x = (b-a)/2*(x+1)+a
13w = (b-a)/2*w
14# aproximação
15S = np.sum(f(x)*w)
16print(f'{n}: S = {S:.5e}')

3.5.2 Exercícios

E. 3.5.1.

Aproxime

-11sen(x+2)-e-x2x2+ln(x+2)𝑑x (3.122)

usando a quadratura de Gauss-Legendre com:

  1. a)

    n=1 ponto.

  2. b)

    n=2 pontos.

  3. c)

    n=3 pontos.

  4. d)

    n=4 pontos.

  5. e)

    n=5 pontos.


a) -2.61712e-1; b) 2.55351e-1; c) 8.97510e-2; d) 1.27411e-1; e) 1.21016e-1.

E. 3.5.2.

Aproxime

01sen(x+2)-e-x2x2+ln(x+2)𝑑x (3.123)

usando a quadratura de Gauss-Legendre com:

  1. a)

    n=1 ponto.

  2. b)

    n=2 pontos.

  3. c)

    n=3 pontos.

  4. d)

    n=4 pontos.

  5. e)

    n=5 pontos.


a) -1.54617e-1; b) -1.50216e-1; c) -1.47026e-1; d) -1.47190e-1; e) -1.47193e-1.

E. 3.5.3.

Aproxime

-11sen(x+2)-e-x2x2+ln(x+2)𝑑x (3.124)

usando a quadratura de Gauss-Legendre com:

  1. a)

    n=5 ponto.

  2. b)

    n=10 pontos.

  3. c)

    n=20 pontos.


a) 1.21016e-1; b) 1.21744e-1; c) 1.21744e-1

E. 3.5.4.

Use uma quadratura de Gauss-Legendre para computar a integral

I=-12xsen(x3)𝑑x (3.125)

com 6 dígitos significativos corretos.


5.93738e-1


Envie seu comentário

Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!

Opcional. Preencha seu nome para que eu possa lhe contatar.
Opcional. Preencha seu e-mail para que eu possa lhe contatar.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a política de uso de dados para mais informações.

Licença Creative Commons
Este texto é disponibilizado nos termos da Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional. Ícones e elementos gráficos podem estar sujeitos a condições adicionais.

Pedro H A Konzen
| | | |