DMUG-Archiv 2006

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: Integrationsprobleme

Frank Küster schrieb:
Hallo,

ich habe ein Problem mit Integration in Mathematica; es behauptet, der
Funktionswert sei nicht überall "numerical", aber nur beim Integrieren,
während es den Graphen der Funktion anstandslos zeichnet. Außerdem
stimmt etwas mit dem Ergebnis einer anderen Integration nicht.  Im
Anhang kommt ein entsprechendes Notebook, hier eine Erklärung dafür.

Ich suche eine normierte Form der Abstandsverteilung für die sogenannte
"wormlike chain",

p[r_] = \frac{4 \pi N r^2}
{lc^2 (1 - (r/lc)^2)^{9/2}} *
        \Exp[-\frac{3  lc}
                   {4 lp (1 - (r/lc)^2)}
            ]

Zu bestimmen ist also der Normierungsfaktor N, der Definitionsbereich
ist von 0 bis lc.  Ich habe dazu die Funktion ohne N geschrieben; leider
kann Mathematica sie so nicht integrieren.  Daher habe ich eine
Substitution durchgeführt: u == 1 - (r/lc)^2 und für r eingesetzt.  Die
resultierende Funktion kann Mathematica allgemein (also ohne Angabe von
lc und lp) von 0 bis 1 integrieren (also von r=lc bis 0), wenn man über
Assumptions angibt, dass lc und lp größer Null sind; das Ergebnis ist
länglich, aber relativ simpel.  Soweit so gut, das Ergebnis heisst
NormWorm.
Die erste Überraschung kommt, wenn ich zur Kontrolle
PWorm[r_]=p[r]/NormWorm für konkrete Zahlen (TestWormRule) mit
NIntegrate integriere:

NIntegrate::inum : Integrand ... is not numerical at {r} = {5.1}.

Aber:
In[44]:= PWorm[5.1]/.TestWormRule

Out[44]= 0.466282

Was geht hier vor?
Zum zweiten sieht man am Graphen der Funktion mit bloßem Auge, dass die
Fläche unter der Kurve größer als 1 sein muss (Der Funktionswert ist für
x von 7 bis 9 größer als 1).  Also stimmt das mühevoll ermittelte
Integral nicht.  Woran liegt das nun wieder?

Vielen Dank im Voraus,
Frank
Hallo Frank,

das Notebook enthielt leider einige Fehler.

1.) wenn p[r] von 0 bis lc integriert werden soll, dann muss pSubst[u] von 1 bis 0 (nicht umgekehrt) integriert werden.
2.) es fehlt u' als Faktor im substituierten Integranden.
3.) NIntegrate wird mit PWorm[r_] anstatt PWorm[r] aufgerufen.

Alles Gute,
 Peter

P.S.: korrigierte Version hängt dran.

Attachment: WormNorm.nb
Description: Mathematica Notebook document

Antworten:
Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html