Como posso aproximar uma integral incorreta?

13

Eu tenho uma função tal que seja finita e quero aproximar essa integral. R 3 f ( x , y , z ) d Vf(x,y,z)
R3f(x,y,z)dV

Eu estou familiarizado com regras de quadratura e aproximações de integrais de monte carlo, mas vejo algumas dificuldades em implementá-las em um domínio infinito. No caso de Monte Carlo, como se faz uma amostragem de uma região infinita (especialmente se as regiões que contribuem mais significativamente para a integral são desconhecidas)? No caso da quadratura, como encontro os pontos ideais? Devo simplesmente consertar uma região arbitrariamente grande centrada na origem e aplicar regras de quadratura esparsa? Como posso aproximar essa integral?

Paulo
fonte

Respostas:

20

Em uma dimensão, você pode mapear seu intervalo infinito para um intervalo finito usando integração por substituição, por exemplo,

umabf(x)dx=você-1(uma)você-1(b)f(você(t))você(t)dt

Onde é alguma função que vai para o infinito em algum intervalo finito, por exemplo, tan ( x ) :você(x)bronzeado(x)

f(x)dx=2π/2π/2f(tan(t))1cos(2t)+1dt

Você pode usar qualquer rotina regular de quadratura numérica para a integral finita modificada.

A substituição de múltiplas variáveis ​​é um pouco mais complicada, mas é bem descrita aqui .

Pedro
fonte
Isso é muito interessante ... Eu nunca considerei a possibilidade de substituição! Mas a escolha da função tem algum efeito na precisão da aproximação? u(t)
Paul
@ Paul: Sim, definitivamente! A função deve ser o mais suave possível, de modo a manter f ( u ( t ) ) o mais suave possível, permitindo assim uma integração mais precisa. u(t)f(u(t))
Pedro
Isso é verdade, mas o que eu tinha em mente era a taxa na qual u (t) converge para o infinito? Isso também afeta a precisão?
Paul
1
@ Paul: Não sei se entendi sua pergunta corretamente, mas a função precisa terminar no infinito em um ponto ou outro. Se levar algum tempo e aumentar acentuadamente, isso introduzirá alguns gradientes grandes em , o que dificulta a integração e pode afetar a precisão. f(u(t))
Pedro
1
Sua derivada para a tangente estava errada; Eu consertei isso.
JM
11

A maneira padrão de fazer isso é extrair da expressão para um prefator exponencial, transformá-lo em e - x 2 e, em seguida, usar regras de quadratura gaussiana (ou Gauss Kronrod) com isso como peso. Se f é suave, isso geralmente gera excelentes resultados.f(x)ex2f

No , o mesmo funciona com o peso e - | x | 2 , e fórmulas de cubatura apropriadas podem ser encontradas, por exemplo, no livro de Engels, quadratura numérica e cubatura.R3e|x|2

As fórmulas on-line estão em http://nines.cs.kuleuven.be/ecf/

Arnold Neumaier
fonte
2
Isso funciona bem se o seu integrando for aproximadamente exp (-x ^ 2). Se o seu integrando é aproximadamente normal, mas centrado longe da origem, essa abordagem pode funcionar mal.
John D. Cook
1
@ JohnD.Cook: Foi por isso que escrevi '' extrair um prefator exponencial, transformar isso em '', que geralmente envolve uma transformação linear, combinando uma tradução movendo o centro para a origem e rotações e escalas para fazer o O nível define aproximadamente esférico. A função em si pode estar bem longe do normal. e-x2
Arnold Neumaier
7

Para quadratura unidimensional, você pode verificar o livro no Quadpack (um velho dourado, mas ainda muito relevante na quadratura unidimensional) e as técnicas usadas no algoritmo QAGI, um integrador automático para um alcance infinito.

Outra técnica é a fórmula de quadratura de dupla exponencial, bem implementada por Ooura por um intervalo infinito .

Para cubatura, você pode consultar a Enciclopédia de fórmulas de cubatura de Ronald Cools.

GertVdE
fonte
2
Observe que a quadratura exponencial dupla é essencialmente um método de substituição; você faz uma substituição que transforma seu integrante infinito alcance em outro integrante infinita gama cuja taxa é, assim, duplamente exponencial decadência ...
JM
1
@JM Correct. E você faz isso para tirar o melhor proveito da fórmula de somação de Euler-Mclaurin para a regra trapezoidal, assim como a transformação IMT e a transformação TANH. Um artigo agradável na história da DE escrito por um dos fundadores pode ser encontrada aqui
GertVdE
6

f(x)f~(x)f~f

f(x) em toda a linha usando uma função mais simples, por exemplo f~(x)=e-x2p(x) com um polinômio p(x) que interpola f(x)ex2em vários pontos. Existem então fórmulas simples para calcular a integral-f~(x)dx. A escolha dos pontos de interpolação segue uma lógica semelhante à da derivação de quadratura usual.

Wolfgang Bangerth
fonte
4

Se você deseja usar a integração de Monte Carlo, pode começar usando a amostragem importante com um amostrador que aproximadamente se aproxima do seu integrando. Quanto melhor o seu amostrador corresponder ao seu integrando, menor será a variação em suas estimativas integrais. Não importa que o seu domínio seja infinito, desde que seu amostrador tenha o mesmo domínio.

John D. Cook
fonte