Integração Numérica

De Física Computacional
Ir para navegação Ir para pesquisar
A integração numérica consiste em achar a aproximação numérica para o valor de S

Integração numérica é um termo amplo que abrange até a integração de equações diferenciais como é discutido em Métodos Computacionais B. Aqui nos referimos exclusivamente ao cálculo numérico da integral definida:

S=∫abf(x)dx

O termo definida, quer dizer que a integral se faz entre limites definidos, no caso a e b.

O interesse de fazer esse cálculo numericamente se deve a:

  1. existência de funções contínuas sem primitiva, o que inviabiliza a conta analítica.
  2. funções descontinuas ou definidas por trechos
  3. funções (ou tabelas) provenientes de experimentos
  4. funções continuas e com primitiva de representação simbólica, porem de difícil avaliação na prática (mais difícil que avaliar a própria função)

Definição

Revisemos o conceito de integral do cálculo: A integral definida de uma função f(x) no intervalo [a, b] se define como:

S=∫abf(x)dx=limN→∞∑i=0Nf(xi)Δx

A integral de f(x) pode ser entendida como a soma de pequenos retângulos de base dx e altura f(x), onde o produto f(x) dx é a área deste retângulo.
A soma de todas estas pequenas áreas, ou áreas infinitesimais, fornece a área total abaixo da curva.
Mais precisamente podemos dizer que a integral acima é o valor limite da soma:

∑i=0Nf(xi)Δx.

onde:

Δx=b−aN

é o comprimento dos pequenos intervalos nos quais dividimos o intervalo (b-a), f(xi) é o valor da função em algum ponto deste intervalo.
Quando N→∞ o valor da soma acima é igual a área abaixo da curva.

A integral também é conhecida como antiderivada:

∫f(x)dx=F(x)⇔dF(x)dx=f(x)

Relembremos porque:

Teorema Fundamental do Cálculo

Se resolvermos a integral acima entre os limites a e b, o resultado pode ser escrito como dependendo só dos extremos:

S=∫abf(x)dx=F(b)−F(a)

Vamos ver agora como se isso for válido, então F(x) é a primitiva procurada.

Calculando a integral entre x e x+Δx:

∫xx+Δxf(x′)dx′=F(x+Δx)−F(x)

Pela definição da integral entre limites definidos podemos escrevê-la como:

∫xx+Δxf(x′)dx′=f(x″)Δx=F(x+Δx)−F(x)

onde x″ é um valor de x entre os extremos do intervalo.

Passando o Δx para a direita e tomando o limite quando ele vai para zero:

limΔx→0f(x″)=limΔx→0F(x+Δx)−F(x)Δx⇒f(x)=ddxF(x)

Demonstramos que a derivada de F(x) resulta ser a função f(x) que queremos integrar. Em outras palavras, o Teorema fundamental do Cálculo diz que resolver uma integral se resume a achar a primitiva, ou seja uma função cuja derivada seja o integrando.

O problema prático é que não todas as funções tem primitiva.. Vejamos então.

Cálculo Numérico

Ilustração da regra do retângulo.
Ilustração da regra do trapézio.
Ilustração da regra de Simpson.

O cálculo numérico de uma integral definida se baseia na própria definição acima. Com a diferença que N é finito. Obviamente quanto maior, melhor.

-Temos que pelos retângulos definidos pelo extremo esquerdo de cada subintervalo:
∫abf(x)dx≈Se=∑i=0N−1f(xi)Δx
-E pelos retângulos definidos pelo extremo direito de cada subintervalo:
∫abf(x)dx≈Sd=∑i=1Nf(xi)Δx
Regra do Trapézio:
∫abf(x)dx≈St=∑i=0N−1f(xi)+f(xi+Δx)2Δx

onde:

xi=a+iΔx,Δx=b−aN

Esta última pode ser reescrita como:

(f(a)+f(b)2+∑i=1N−1f(xi))Δx

O erro de cálculo na Regra do Trapézio é dado por:

erro=−(b−a)312N2f″(ξ),

onde ξ é um número no intervalo entre a e b.

Também pode se verificar que a integral calculada com os trapézios é a média das integrais calculadas com retângulos:

St=(Se+Sd)/2
Regra de Simpson:

Notemos que o método do trapézio é baseado na ideia de passar uma reta por 2 pontos e aproximar a área da função f(x) pela área sob a curva definida pelo trapézio.

A regra de Simpson é uma extensão disto: a ideia é passar uma parábola por três pontos consecutivos e calcular a área definida por ela. Se tivermos apenas 3 pontos, a integral da parábola que passa entre x0,x2 é dada por:


S=∫x0x2f(x)dx≈x2−x06[f(x0)+4f(x0+x22)+f(x2)]


No entanto, para integrarmos sobre toda o intervalo [x1;xn] com boa precisão, é necessário dividi-lo em N intervalos, com N grande (e par!). Assim, é preciso traçar uma parábola a cada três pontos consecutivos e a expressão final da fórmula de Simpson é então a soma da área sob todas as parábolas do intervalo [x0;xn] :


S=∫x0xnf(x)dx≃h3[f(x0)+4f(x1)+2f(x2)+4f(x3)+…+4f(xn−1)+f(xn)],

onde h=(xn−x0)/N .


A dedução da regra de Simpson pode ser encontrada por exemplo em [1].

Programação

A seguir um trecho do programa para cálculo da integral da função f(x) (external function f(x))
entre a e b com N pontos, usando o método dos retângulos pela esquerda:

...
Read*, a, b, N
dx = (b-a)/N;  S=0

Do i = 0, N-1
   x = a + i*dx
   S = S + f(x)
EndDo
Print*, "Integral S=", S*dx
...

Os outros métodos se programam de maneira similar mudando limites (índice do laço)
e/ou tratando de forma diferente os valores das pontas.

Erro associado ao método numérico

O método de integração numérico não retorna o valor exato de uma função, visto que não podemos ter no computador N→∞. O erro aqui discutido estará vinculado ao número de divisões N realizada na função f(x) dentro do intervalo que se quer saber o valor da integral. Assim, o erro é definido como

erro=Int(N)−Int(N−1)Int(N),

onde Int(N) é o valor retornado pelo método numérico utilizado utilizando N divisões e Int(N−1) utilizando N−1 divisões. Note que um teste simples para verificar quando a resposta está convergindo é aumentar N e calcular o erro a cada incremento no seu valor.