DMUG-Archiv 1998

Frühere

 

Chronologischer Index

 

Spätere

Vorherige

 

Thematischer Index

 

Nächste

Re: Problem mit Integrate

> Ich versuche folgendes Integral zu berechnen (Mathematica 3.0.0)
> 
> <<Algebra`ReIm`
> x /: Im[x]=0
> w /: Im[w]=0
> Positive[w] ^= True
> pwt = -((m*(w*Sin[\[Phi]] + 2*k*x*Sin[\[Phi] - \[Psi]]))/(E^((2*x^2)/w^2)*w))
> i1=Integrate[pwt,{x,-Infinity,0}]
> 
> Alle Variablen sind reell, und w ist immer positiv. Trotzdem erhalte ich
> folgendes Ergebnis:
> 
> 1) Fehlermeldung (Integral ... does not converge)
> 
> 2) Das Ergebnis faengt mit "If[ w^2 > 0, ..., ...]" an.
>    Aber ich habe doch extra gesagt, dass w>0 sein soll!
> 
> Ist vielleicht das Package "ReIm" nicht mehr kompatibel zur Version 3?
> Oder wie kann ich sonst dieses "If" loswerden?

Das Paket ReIm.m ist in der Tat veraltet. Für die Vereinfachung von
Ausdrücken mit rellen Variablen gibt es die Funktion ComplexExpand,
für die Angabe von Annahmen über freie Parameter in Integralen die
Option Assumptions.

Aber auch damit gibt is in Version 3.0.0 noch einige Probleme.
Ihr Integral läßt sich lösen, in dem ausmultipliziert und dann Term für
integriert wird:

In[1]:= pwt = -((m*(w*Sin[\[Phi]] + 2*k*x*Sin[\[Phi] - \[Psi]]))/(E^((2*x^2)/w^2)*w));

In[2]:= Integrate[ExpandAll[pwt],{x,-Infinity,0},Assumptions->{w>0}]

        -(w (m Sqrt[2 Pi] Sin[\[Phi]] - 2 k m Sin[\[Phi] - \[Psi]]))
Out[2]= ------------------------------------------------------------
                                     4

(Es sind keine Assumptions für die Integrationsvariable x notwendig,
und w>0 impliziert ja schon, daß w reell ist.)

Ich danke Michael Trott von Wolfram Research, der mich auf den Expand-
Trick hingewiesen hat, der bei komplizierten Integralen Wunder wirken kann.

In Version 3.0.1 wird das Integral ohne solche Kunstgriffe lösbar sein.
Über die Verfügbarkeit und Upgrades auf 3.0.1 informiert Sie Ihr Händler.

Auch die anderen Integrale, die Sie in Ihrer zweiten Mail erwähnt haben
(die ich nicht an die DMUG-Liste weitergeleitet habe), lassen sich so
lösen:

In[5]:= i3 = Integrate[Expand[(a x + b) Exp[-x^2/w^2]],{x,-Infinity,0}]

                            2                     2
               2       -(a w ) + b Sqrt[Pi] Sqrt[w ]
Out[5]= If[Re[w ] > 0, -----------------------------, 
                                     2
 
                 b       a x
>    Integrate[------ + ------, {x, -Infinity, 0}]]
                 2  2     2  2
                x /w     x /w
               E        E


In[6]:= i4 = Integrate[ Expand[(a x + b) Exp[-x^2/w^2]], {x,-Infinity,0}, Assumptions->{w>0}]

        w (b Sqrt[Pi] - a w)
Out[6]= --------------------
                 2


In[7]:= i6 = Integrate[ Expand[(a x + b) Exp[-x^2/w^2]], {x,-Infinity,0}, GenerateConditions->False]

             2                     2
        -(a w ) + b Sqrt[Pi] Sqrt[w ]
Out[7]= -----------------------------
                      2


mit freundlichen Grüßen,

Roman Mäder

-----------------------------------------------------------------------
MathConsult Dr. R. Mäder                   Aryanastrasse 21
Mathematik- und Informatik-Beratung        CH-8704 Herrliberg

T: +41-1-991 6343                          mailto:maeder@XXXXXXX.ch
F: +41-1-991 6345                          http://www.mathconsult.ch
-----------------------------------------------------------------------



Verweise:
Problem mit Integrate
Gerhard Heinzel, 13.05.1997

Frühere

 

Chronologischer Index

 

Spätere

Vorherige

 

Thematischer Index

 

Nächste

DMUG-Archiv, http://www.mathematica.ch/dmug-liste.html; Letzte Änderung: 08.09.2003 20:44