Meine Situation.
Ich habe eine Funktion einer komplexen Variablen die durch ein kompliziertes Integral definiert ist. Was mich interessiert, ist der Wert dieser Funktion auf der imaginären Achse. Ich habe numerischen Zugriff auf diese Funktion auf dem folgenden Band: z = ( x , y ) ∈ ( - ∞ , ∞ ) × [ - 1 , 1 ] . Formal ist der integrale Ausdruck außerhalb dieses Bereichs unterschiedlich, und deshalb brauche ich eine analytische Fortsetzung. Um meine Situation in einem Bild zusammenzufassen,
Folgendes weiß ich über auf diesem Band aus numerischen Zahlen:
Es ist gleichzeitig symmetrisch um die imaginäre und die reale Achse.
Es zerfällt auf Null bei .
Es explodiert in der Nähe von . Es könnte ein Pol oder ein Verzweigungspunkt sein, ich weiß es nicht. Ich vermute, dass die Art dieser Singularität (und möglicherweise aller anderen isolierten Singularitäten der analytischen Fortsetzung) von der spezifischen Parametrisierung ξ dieser Funktion abhängt (Einzelheiten siehe Integral unten).
Tatsächlich sieht es beim einem sech 2 ( z ) oder einem 1 / ( 1 + z 2 ) 2 n sehr ähnlich . Hier ist eine Handlung des Realteils:
Meine Frage ist, ob ich angesichts der Menge an Informationen, die ich über die Funktion habe (vollständiger numerischer Zugriff auf diese Funktion in diesem Menüband), eine Möglichkeit habe, eine Annäherung an diese Funktion entlang der imaginären Achse numerisch zu berechnen. Ich benutze übrigens Mathematica.
Der Grund, warum ich mich für die Werte entlang der imaginären Achse interessiere, ist, dass ich die folgende Fourier-Transformation dieser Funktion bewerten muss:
Was ich versucht habe.
Ich habe tatsächlich versucht, das ultimative hochschwingende Integral zu berechnen, Gl. (1). Auswertung von Gl. (1) Für einen einzelnen Wert von 't' dauert die Berechnung einige Stunden. Ich habe bereits einige dieser Integrale durchgeführt und die Ergebnisse sind tatsächlich sinnvoll, aber ich möchte einen alternativen Ansatz.
Ich habe versucht, symbolische Integration ohne Erfolg. Ich habe versucht, den Integranden für Mathematica in eine besser verdauliche Form zu bringen, aber meine Versuche waren nicht erfolgreich.
Das beleidigende Integral.
Das Integral, an dem ich interessiert bin, ist das Folgende:
quelle
Antworten:
Hinweis: Ich bin an dieser Stelle etwas besorgt, dass die Integralwerte, die Mathematica mir gibt, falsch sind. Ich dachte, es funktioniert, weil es in kurzer Zeit ein vernünftig aussehendes Ergebnis liefert, aber es kann sein, dass die Methode, die es zu verwenden versucht, fehlerhaft ist oder dass ich etwas falsch gemacht habe. Es könnte also sein, dass der folgende Code überhaupt nicht funktioniert, ich weiß nicht, sorry.
Anmerkung 2: Es hat mich gestört, also habe ich eine andere Version ( Code hier , Entschuldigung für die Codequalität) mit Julia und GSL geschrieben und sie wird
g
in 2 Sekunden auf dieselbe Antwort ausgewertet , die Mathematica unten gibt. Ich denke, der Code ist wahrscheinlich in Ordnung.Meine bisherigen Erfahrungen mit der numerischen Integration lassen mich glauben, dass die ausgefalleneren mathematischen Methoden manchmal spektakulär hilfreich sein können, aber auch, dass die Bewertung numerischer Fourier-Transformationen und die Integration rationaler und algebraischer Funktionen das A und O numerischer Integrationsalgorithmen sind, so dass dies häufig der Fall ist Machen Sie einfache Fortschritte, indem Sie Algorithmen sorgfältig auswählen und mit ihren Parametern spielen. Dies ist normalerweise die einfachere Option, wenn es schwierig ist zu sehen, wie die mathematische Technik richtig funktioniert.
Ergebnis:
Ich habe Mathematica dazu gebracht, keine Zeit damit zu verbringen, die Integranden symbolisch vorzuverarbeiten, weil es in diesem Fall sowieso nichts Nützliches herausgefunden hätte. Ich sagte ihm auch, dass er speziell eine oszillatorische Quadraturmethode für das zweite Integral verwenden soll.
Meine Vermutung dafür , warum mit Integrationsstrategien (siehe zufällig Hantieren NIntegrateIntegrationStrategies ) funktioniert überhaupt ist , dass manchmal Mathematica versehentlich eine schlechte Strategie automatisch holen könnte, Leistung zu töten, während alles , was ich darum bitten zu tun , zumindest ein wenig sinnvoll , auch wenn suboptimal. Sie können sich auch unter /mathematica/ um Hilfe bemühen . Dort erfahren Sie möglicherweise mehr über die Interna von Mathematica.
quelle
g[t,e0]