Obtenção da Fórmula
A fórmula de Gauss para o cálculo de integral numérica ou quadratura gaussiana, como é mais conhecida, é uma fórmula que fornece um resultado bem mais preciso que os métodos anteriores com o mesmo número de pontos.
Na aplicacação da quadratura gaussiana, os pontos não são mais escolhidos pela pessoa que utiliza o método, mas seguem um critério bem definido.
Partindo o problema de se determinar:
\[ I = \int_{a}^{b}{f(x)}dx\]Inicialmente, é alterado o intervalo de integração, passado de \([a, b]\) para \([-1, 1]\). Isto é feito através de troca de variável:
\[x = \frac{1}{2}(b-a)t + \frac{1}{2}(b+a)\] \[f(x) = f\left[\frac{1}{2}(b-a)t + \frac{1}{2}(b+a) \right] \] \[I = \int_{a}^{b}{f(x)}dx = \int_{-1}^{1}{F(t)}dt\]Resultando:
A fórmula de Gauss fornece valores exatos para a integração de polinômios de grau \((2n -1)\), onde \(n\) é o número de pontos.
Para dois pontos, a fórmula de Gauss é:
\[I = \int_{-1}^{1}{F(t)}dt = A_1F(t_1) +A_2F(t_2) \]Onde \(A_1\), \(A_2\), \(t_1\) e \(t_2\) são incógnitas a se determinar e independentes da Função \(F\) escolhida.
Para determinar estas quatros incógnitas são necessárias quatro equações que podem ser obtidas ao se considerar \(F(t)\) = \(t^k\), \(k = 0,1,2,3\). Então:
\[\int_{-1}^{1}{t^k}dt = A_1F(t_1^k) +A_2F(t_2^k)\]Para:
\[ k = 0 \Rightarrow \int_{-1}^{1}{t^0}dt = A_1F(t_1^0) +A_2F(t_2^0) \] \[ k = 1 \Rightarrow \int_{-1}^{1}{t^1}dt = A_1F(t_1^1) +A_2F(t_2^1)\] \[ k = 2 \Rightarrow \int_{-1}^{1}{t^2}dt = A_1F(t_1^2) +A_2F(t_2^2)\] \[ k = 3 \Rightarrow \int_{-1}^{1}{t^3}dt = A_1F(t_1^3) +A_2F(t_2^3)\]Ou ainda:
\[\left\{ \begin{matrix} 2 & A_1 + A_2 \\ 0 & A_1t_1 + A_2t_2 \\ {2}/{3} & A_1t_1^2 + A_2t_2^2 \\ 0 & A_1t_1^3 + A_2t_2^3 \\ \end{matrix} \right.\]Resolvendo o sistema temos:
\[A_1=A_2 = 1\] \[t_1 = -t_2 = \frac{1}{\sqrt{3}}\]Substituindo os valores encontrados, tem-se a fórmula de Gauss para dois pontos:
\[I_G = F(-\frac{1}{\sqrt{3}}) + F(\frac{1}{\sqrt{3}})\]De forma genérica, a fórmula para a quadratura gaussiana é baseada em propriedades dos polinômios de Legendre e definida por:
\[I = \int_{-1}^{1}{F(t)}dt = \sum_{i=1}^{n}{A_iF(t_i)}\]Como os valores de \(A_i\) e \(t_i\) são fixos, os valores para outras quantidades de pontos está disponível na tabela abaixo até \(n=5\):
| Número de Pontos | \(t_i\) | \(A_i\) |
|---|---|---|
| 1 | \(0\) | \(2\) |
| 2 | \( \pm {\frac {1}{\sqrt {3}}} \) | \(1\) |
| 3 | \(0\) | \({\frac {8}{9}} \) |
| \(\pm {\sqrt {\frac {3}{5}}} \) | \({\frac {5}{9}} \) | |
| 4 | \(\pm {\sqrt {{\frac {3}{7}}-{\frac {2}{7}}{\sqrt {\frac {6}{5}}}}} \) | \({\frac {18+{\sqrt {30}}}{36}} \) |
| \(\pm {\sqrt {{\frac {3}{7}}+{\frac {2}{7}}{\sqrt {\frac {6}{5}}}}} \) | \(\frac {18-{\sqrt {30}}}{36} \) | |
| 5 | \(0\) | \({\frac {128}{225}} \) |
| \(\pm {\frac {1}{3}}{\sqrt {5-2{\sqrt {\frac {10}{7}}}}} \) | \({\frac {322+13{\sqrt {70}}}{900}} \) | |
| \(\pm {\frac {1}{3}}{\sqrt {5+2{\sqrt {\frac {10}{7}}}}} \) | \({\frac {322-13{\sqrt {70}}}{900}} \) |
Exemplo
Para exemplificar a resolução, vamos resolver a integral com \(n=3\):
\[\int_{-0.5}^{1}{-\frac{x^4}{e^{cos(x^2)}} + 2} dx\]Inicialmente vamos desenvolver a fórmula genérica aplicada para 3 pontos:
\[I = \int_{-1}^{1}{F(t)}dt = \sum_{i=1}^{3}{A_iF(t_i)} = A_1F(t_1) + A_2F(t_2) + A_3F(t_3)\]Da tabela de valores de \(t_i\) e \(A_i\) vamos utilizar a linha que se refere a valor de \(n=3\):
| Número de Pontos | \(t_i\) | \(A_i\) |
|---|---|---|
| 3 | \(0\) | \({\frac {8}{9}} \) |
| \(\pm {\sqrt {\frac {3}{5}}} \) | \({\frac {5}{9}} \) |
Com isso teremos:
\[ I = \frac {8}{9} F(0) + \frac {5}{9} F(\sqrt {\frac {3}{5}}) + \frac {5}{9} F(-\sqrt {\frac {3}{5}})\]Siga o cálculo de cada parte dessa equação:
Calculando o primeiro conjunto de valores \(A_1F(t_1)\)
Lembrando que:
\[F(t) = \frac{b-a}{2} \times f\left(\frac{b-a}{2}t + \frac{b+a}{2} \right)\]Desenvolvemos o valor de \(F(t_1)\):
\[ F(t_1) = \frac{1-(-0.5)}{2} \times f\left(\frac{1-(-0.5)}{2}t + \frac{1+(-0.5)}{2} \right)= 0.75 \times f\left(0.75t + 0.25 \right) \]Portanto:
\[F(t_1) = 0.75 \times f\left(0.75t + 0.25 \right)\]Desenvolvendo:
\[ F(0) = 0.75 \times f\left(0.75 \times 0 + 0.25 \right) \] \[ F(t_1) = 0.75 f(0.25) \]Substituindo a função \(f\):
\[ F(t_1) = 0.75 \times -\frac{0.25^4}{e^{cos(0.25^2)}} \] \[ F(t_1) = 0.75 \times 1.99856 \] \[ F(t_1) = 1.49892 \]E concluindo o cálculo de \(A_1F(t_1)\):
\[ A_1F(t_1) = 0.888889 \times 1.49892 = 1.33237 \]Calculando o segundo conjunto de valores \(A_2F(t_2)\)
O valor de \(F(t_2)\):
\[ F(-0.774597) = 0.75 \times f\left(0.75 \times -0.774597 + 0.25 \right) \] \[F(t_2) = 0.75 f(0.830948)\] \[ F(t_2) = 0.75 \times -\frac{0.830948^4}{e^{cos(0.830948^2)}} \] \[ F(t_2) = 0.75 \times 1.77947 \] \[ F(t_2) = 1.3346 \]Concluindo o cálculo de \(A_2F(t_2)\):
\[ A_2F(t_2) = 0.555556 \times 1.3346 = 0.741444 \]Calculando o último conjunto de valores \(A_3F(t_3)\)
O valor de \(F(t_3)\):
\[ F(-0.774597) = 0.75 \times f\left(0.75 \times -0.774597 + 0.25 \right) \] \[ F(t_3) = 0.75 f(-0.330948) \] \[ F(t_3) = 0.75 \times -\frac{-0.330948^4}{e^{cos(-0.330948^2)}} \] \[ F(t_3) = 0.75 \times 1.99556 \] \[ F(t_3) = 1.49667 \]Concluindo o cálculo de \(A_3F(t_3)\):
\[ A_3F(t_3) = 0.555556 \times 1.49667 = 0.831483 \]Somando os resultados:
\[ \sum_{i=1}^{3}{A_iF(t_i)} = A_1F(t_1) + A_2F(t_2) + A_3F(t_3) = 1.33237 + 0.741444 + 0.831483 = 2.9053\]Próximo do resultado exato: \(2.90127824988 \)
Dicas de programação em HP PPL
A seguir é apresentado um programa para ler os valores de \(t_i\) e \(A_i\) de uma lista e apresenta os pontos no terminal conforme o número de pontos escolhidos:
EXPORT quadraturaGaussiana()
BEGIN
PRINT();
L1:={
{ {0, 2}
},
{ {1/sqrt(3), 1},
{-1/sqrt(3), 1}
},
{ {0, 8/9},
{sqrt(3/5), 5/9},
{-sqrt(3/5), 5/9}
},
{ {sqrt(3/7-2/7*sqrt(6/5)), (18+sqrt(30))/36},
{-sqrt(3/7-2/7*sqrt(6/5)), (18+sqrt(30))/36},
{sqrt(3/7+2/7*sqrt(6/5)), (18-sqrt(30))/36},
{-sqrt(3/7+2/7*sqrt(6/5)), (18-sqrt(30))/36}
},
{ {0, 128/225},
{1/3*sqrt(5-2*sqrt(10/7)), (322+13*sqrt(70))/900},
{-1/3*sqrt(5-2*sqrt(10/7)), (322+13*sqrt(70))/900},
{1/3*sqrt(5+2*sqrt(10/7)), (322-13*sqrt(70))/900},
{-1/3*sqrt(5+2*sqrt(10/7)), (322-13*sqrt(70))/900}
}
};
LOCAL n:=5; //Escolhe o número de pontos
LOCAL tabela := L1(n); // Obtém os valores para o número de pontos dados
LOCAL tam:= SIZE(tabela); // Tamanho da lista de valores
FOR I FROM 1 TO tam DO
LOCAL v:= tabela(I);
PRINT("t(" + I + ")=" + v(1) + ", A(" + I + ")=" + v(2));
END;
END;
Resolvendo integrais na HP Prime:
Para resolver integrais diretamente na HP podemos fazer através de duas maneiras:
Utilizando o comando gráfico, para isso, clica-se na sequência de botões:

E inserindo os campos:
Ou utilizando diretamente o comando int:
int(x^3-(SQRT(e^x^2))+1,x,0.8,2.2)
Forma mais útil para ser utilizado no modo de programação
Atividade
Calcule o valor da integral abaixo através do método de Quadratura Gaussiana com o número de pontos definido:
-
\[ \int_{-2}^{1.5}{x^5-5x^3+2x^2+5x+2}dx \]
Com \(n = 2\)
-
\[ \int_{-2}^{1.5}{x^5-5x^3+2x^2+5x+2}dx \]
Com \(n = 3\)
-
\[ \int_{-2}^{1.5}{x^5-5x^3+2x^2+5x+2}dx \]
Com \(n = 5\)