Numerische Integration des Doppelintegrals mit zwei Variablen

Sep 04 2020

Ich versuche, das folgende Doppelintegral numerisch in MATHEMATICA zu integrieren. Diese Frage wurde auch in der Wolfram Community gestellt

wo $Im$ ist der Imaginärteil des Ausdrucks, $i$ ist die imaginäre Zahl, $x$ und $y$ sind Variablen während $a, b, c$ und $Q$ sind Konstanten größer als 0.

Hier ist mein Versuch, dies zu lösen.

a = 3
b = 0.0137
c = 0.0023
Q = 6
NIntegrate[
  Im[Exp[-I x c + b (I x y/(y^a - I x))]]/x, {x, 0, ∞}, {y, 0, Q},
  AccuracyGoal -> 10]

Ist dies die richtige Methode, um die numerische Integration mit mehr als einer Variablen anzuwenden? Ich erhalte eine Fehlermeldung, wenn ich diesen Ausdruck ausführe, der wie folgt lautet

wird für alle Abtastpunkte in der Region \ mit den Grenzen {{[Infinity], 0.}, {0, 6}} auf nicht numerische Werte ausgewertet.

Kann mich bitte jemand anleiten, die Implementierung des oben angegebenen Ausdrucks zu korrigieren?

Antworten

3 Akku14 Sep 05 2020 at 02:57

Complex Erweitern Sie die Funktionen und integrieren Sie sie separat. (Da ich es eilig habe, zeige ich keine Zwischenergebnisse.)

ceRe = ComplexExpand[Re[(I x y)/(y^3 - I x)], 
          TargetFunctions -> {Re, Im}]

ceIm = ComplexExpand[Im[(I x y)/(y^3 - I x)], 
          TargetFunctions -> {Re, Im}]

intRe[x_] = Integrate[ceRe, {y, 0, 6}, Assumptions -> x > 0]

intIm[x_] = Integrate[ceIm, {y, 0, 6}, Assumptions -> x > 0]

ii[x_] = ComplexExpand[Im[Exp[-I x c + b*(intRe[x] + I intIm[x])]]/x, 
TargetFunctions -> {Re, Im}] /. {b -> 137/10000, c -> 23/10000} //
   Simplify[#, x > 0] &

Plot[ii[x], {x, 0, 10000}]

nint = NIntegrate[ii[x], {x, 0, \[Infinity]}, MaxRecursion -> 50]

(*   -0.989098   *)