integración numérica con posible división por 'cero'

9

Estoy tratando de integrar

0 01t2norte+2Exp(αr0 0t)ret

que es una simple transformación de

1X2norteExp(-αr0 0X)reX

usando porque es difícil aproximar numéricamente integrales impropias. Sin embargo, esto lleva al problema de evaluar el nuevo integrando cerca de cero. Será muy fácil obtener el número adecuado de nodos de cuadratura ya que el intervalo es solo de longitud 1 (por lo que el comparable se puede hacer muy pequeño), pero ¿qué tipo de consideraciones debo hacer al integrar cerca de cero? dtt=1Xret

En cierto nivel, creo que simplemente tomar es una buena idea donde es un número pequeño . Sin embargo, ¿qué número debo elegir? ¿Debería ser máquina épsilon? ¿Es la división por máquina épsilon un número bien cuantificado? Además, si la división de mi máquina épsilon (o cerca de ella) da un número increíblemente grande, entonces tomar será aún mayor.ϵexp(1ϵ1t2norte+2Exp(αr0 0t)retϵExp(1ϵ)

¿Cómo debo dar cuenta de esto? ¿Hay alguna manera de tener una integral numérica bien definida de esta función? Si no, ¿cuál es la mejor manera de integrar la función?

drjrm3
fuente
1
¿Has considerado usar Monte Carlo?
Faheem Mitha
Siento que no solucionaría el problema. La integración de Monte Carlo a menudo se reserva para integrales de alta dimensión. Me encontraría exactamente con los mismos problemas con Monte Carlo, simplemente tendría menos control sobre dónde se evalúa mi función.
drjrm3
Puede que tengas razón.
Faheem Mitha
Creo que aún sería bueno tener una respuesta (tal vez a una pregunta separada y más general) que explique cómo se hace la integración numérica cuando la función es divergente en un límite, para el caso general donde no es posible hacer la integral analíticamente. Por otra parte, eso podría encontrarse en Recetas numéricas ...
David Z
@Faheem: "Monte Carlo es un método extremadamente malo; debe usarse solo cuando todos los métodos alternativos son peores". - Alan Sokal
JM

Respuestas:

10

1Xmi-unaX=-1unaXmi-unaX1--1una1mi-unaX=mi-unauna+mi-unauna2=una+1una2mi-una
1Xkmi-unaX=-1unaXkmi-unaX1--kuna1Xk-1mi-unaX=mi-unauna+kuna1Xk-1mi-unaX
yo(k)=mi-unauna+kunayo(k-1)
yo(0 0)=mi-unauna
Matt Knepley
fuente
No tengo ni idea de cómo pasé por alto esto. gracias.
drjrm3
1
Las sustituciones inteligentes y la integración por partes siempre deben ser una de las primeras cosas que haces con integrales rebeldes.
JM
1X2norteExp(-αX)reX asumiendo norte:: ::nonnegint,α>0 0Γ(2norte+1,α)α-2norte-1
Erik P.
En realidad, Mathematica elige representar la respuesta como ExpIntegralE [-2 n, ar]. Si ejecuta FunctionExpand en él, le dará la misma respuesta que Maple.
Searke
1

Echa un vistazo a QUADPACK . Tiene rutinas para la integración sobre dominios (semi) infinitos.

GertVdE
fuente