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}})\]

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)\)
\[ A_1F(t_1) = \frac {8}{9} \times F(0) \] \[ A_1F(t_1) = 0.888889 \times F(0) \]

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)\)
\[ A_2F(t_2) = \frac {5}{9} \times F(\sqrt {\frac {3}{5}}) \] \[ A_2F(t_2) = 0.555556 \times F(0.774597) \]

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)\)
\[ A_3F(t_3) = \frac {5}{9} \times F(-\sqrt {\frac {3}{5}}) \] \[ A_3F(t_3) = 0.555556 \times F(-0.774597) \]

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:

Integral

E inserindo os campos:

Integral Integral Integral

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\)