¿Cuándo es ventajoso iterar integrales numéricamente?

8

Si hay una integral -dimensional de la forma [ 0 , 1 ] n + 1 f ( x , y )(n+1) normalmente uno evaluaría esto usando una biblioteca de integración multidimensional sobre todo el dominio, [ 0 , 1 ] n + 1 .

[0,1]n+1f(x,y)dnxdy,
[0,1]n+1

¿Pero hay algunas condiciones en las que podría tener sentido realizar la integral sobre separado, usando una cuadratura unidimensional y luego usar la biblioteca de integración multidimensional para evaluar el integrando sobre las otras n coordenadas? [ 0 , 1 ] n g ( x )yn

[0,1]ng(x)dnx,g(x)=01f(x,y)dy.

Esto podría tener sentido, por ejemplo, si es especialmente suave en función de y , pero no x . Pero, ¿qué tan exactamente tiene que ser en este caso? Supuse que casi nunca tiene sentido porque demasiados puntos de evaluación de la cuadratura 1-d se "desperdiciarían", pero no estoy tan seguro de que esto siempre se aplique. ¿Está garantizado por el diseño de los métodos de integración de alta dimensión?fyx

fyxnn4xyquadgky

Si sabe dónde ya se discute esto en la literatura, eso también sería útil.

[0,1]nex1x2xndnx=F({1,,1}n{2,,2}n|1).
n(n1)x1g(x2:n)=(ea1)/aa=x2xn

(n=5)N0.00244N10.00167N14g1.5

1.51.5g=(1ea)/a1.5

xy

Kirill
fuente
2
fy
2
y(n+1)
y1n(n+1)
Ah, perdón por eso. Lo di vuelta en mi cabeza. No puedo decir que conozca una buena regla general aquí, así que alguien más tendrá que tomar esta.
Tyler Olsen

Respuestas:

4

Aclaración: Mi respuesta está específicamente escrita para rutinas de integración adaptativa con control de error determinista como este . Se convierte en discutible para la escasa red y las rutinas de integración basadas en Monte Carlo, cuyo control de errores no se realiza de la manera descrita a continuación.

Un costo significativo de las rutinas automáticas de integración basadas en productos de caja negra y tensor es el control de errores, desde dos aspectos

  1. Evaluaciones de funciones desperdiciadas. Toda la integración adaptativa funciona estimando el integrando y el error utilizando una regla de orden inferior o una partición más gruesa, y repitiendo esto con reglas de orden superior progresivamente o particiones más finas hasta que se cumplan los requisitos de error. Las reglas de integración anidadas permiten reciclar parte del trabajo realizado en los pasos anteriores, pero a menudo no todo.
  2. En un esfuerzo por conservar las evaluaciones de funciones, a menudo se utilizan reglas altamente anidadas como Gauss-Kronrod o Newton-Cotes en los códigos de integración adaptativa. Las reglas de cuadratura anidadas son reglas de cuadratura subóptimas, ya que son considerablemente menos precisas que las reglas óptimas (por ejemplo, Gauss-Legendre y Clenshaw Curtis) para una clase particular de funciones en un orden de cuadratura fija. En otras palabras, las reglas anidadas hacen un uso menos eficiente de las evaluaciones de funciones.

yyf(x,y)yr

|k=1rwkf(x,yk)[0,1]f(x,y)dy|ϵfor all x[0,1]n,
f(x,y)yxrxϵ

g(x)ng(x)

f(x,y)

Para dar un ejemplo de aplicación, este problema exacto surgió para mí en la evaluación de integrales singulares de volumen a volumen en este documento , y mi tratamiento es similar al propuesto anteriormente. Como regla general, siempre es recomendable eliminar tantas dimensiones como sea posible utilizando argumentos analíticos antes de alimentar el problema a través de una rutina de integración de recuadro negro.

Richard Zhang
fuente
y
Mi argumento es simplemente que si asume un método adaptativo con control de error determinista, entonces evaluar algunas dimensiones en forma cerrada (o forma semicerrada) elimina los pasos inevitables que de otro modo se harían numéricamente. Pero su (excelente) ejemplo es uno en el que un método adaptativo determinista nunca se utilizaría en primer lugar.
Richard Zhang
Supongamos que usó un método adaptativo determinista estándar, por ejemplo, ab-initio.mit.edu/wiki/index.php/Cubature , entonces estaría muy, muy sorprendido si no obtiene una aceleración completa del factor al cortar Una de las dimensiones semi-analíticamente.
Richard Zhang
Utilizando Cubature exactamente como sugieres (que es una sugerencia perfectamente razonable) es cómo obtuve la cifra "30 veces más lenta" en mi pregunta en primer lugar, así que me sorprendió (de ahí la pregunta). Solo quise decir el ejemplo de Monte Carlo como algo fácil de analizar, en realidad estoy más interesado en los métodos deterministas.
Kirill
n+1(n+1)