Dirac-Delta-Funktion

Mathematische Fragestellungen
positronium
Ehrenmitglied
Ehrenmitglied
Beiträge: 2832
Registriert: 2. Feb 2011, 20:13

Re: Dirac-Delta-Funktion

Beitrag von positronium » 10. Dez 2016, 19:22

Aber noch einmal wegen dem DiracDelta: Mathematica berechnet

Wie könnte man dann einen Dirac-Kamm definieren, der statt bei ganzen Zahlen z.B. bei jedem Drittel wirkt?

skn
erkundet das Forum
erkundet das Forum
Beiträge: 78
Registriert: 26. Okt 2016, 20:10

Re: Dirac-Delta-Funktion

Beitrag von skn » 10. Dez 2016, 21:25

Hallo Positronium,

jetzt bin ich noch verwirrter. Wenn das Punkte im Dreidimensionalen sein sollen, warum verwendest Du keine Drehmatrizen? Weil Du die Zeitpunkte diskret haben möchtest? Aber dann solltest Du keine Differentialgleichungen verwenden, sondern Differenzengleichungen. Möglicherweise brauchst Du auch nicht die Dirac-Funktion sondern das Kronecker-Delta.

Distributionen können heimtückisch sein. Weiter oben wolltest Du z.B.

s3=NDSolve[A'[t]==DiracComb[t]2&&A[0]==0,A,{t,0,10}];

berechnen. Aber A[0]==0 ist undefiniert, weil A an der Stelle 0 gerade springt. NDSolve scheitert deshalb vermutlich.
positronium hat geschrieben:Wie könnte man dann einen Dirac-Kamm definieren, der statt bei ganzen Zahlen z.B. bei jedem Drittel wirkt?
Meinst Du sowas:



Viele Grüße
Steffen

positronium
Ehrenmitglied
Ehrenmitglied
Beiträge: 2832
Registriert: 2. Feb 2011, 20:13

Re: Dirac-Delta-Funktion

Beitrag von positronium » 10. Dez 2016, 22:19

skn hat geschrieben:Wenn das Punkte im Dreidimensionalen sein sollen, warum verwendest Du keine Drehmatrizen?
Zum einen weil Drehmatrizen in 3D bei beliebiger Drehachse sehr unhandlich sind, und bei einer Differentialgleichung nur das Kreuzprodukt der anliegenden Vektoren als momentane Veränderung verwendet werden muss, und zum anderen weil an der Stelle die Wirkung des Feldes ansetzt, also, sobald obige Formel darum erweitert ist.
skn hat geschrieben:Weil Du die Zeitpunkte diskret haben möchtest? Aber dann solltest Du keine Differentialgleichungen verwenden, sondern Differenzengleichungen.
Nein. Auch der drehende Punkt ist Quelle eines Feldes. Das muss kontinuierlich sein.
skn hat geschrieben:Distributionen können heimtückisch sein. Weiter oben wolltest Du z.B.

s3=NDSolve[A'[t]==DiracComb[t]2&&A[0]==0,A,{t,0,10}];

berechnen. Aber A[0]==0 ist undefiniert, weil A an der Stelle 0 gerade springt. NDSolve scheitert deshalb vermutlich.
Es ist zwar richtig, dass der Anfangswert problematisch sein könnte. Es funktioniert aber auch nicht wenn ich z.B. A[0]=0.1 eingebe. Der Support von Wolfram hat das Problem auch mit den Entwicklern diskutiert. Das steht daher meiner Ansicht nach (bin ja kein Mathematiker) ausser Frage.
skn hat geschrieben:
positronium hat geschrieben:Wie könnte man dann einen Dirac-Kamm definieren, der statt bei ganzen Zahlen z.B. bei jedem Drittel wirkt?
Meinst Du sowas:

Ja. Hier habe ich Unsinn geschrieben. Das geht natürlich. Ich muss ja nur die ganze Formel mit 3 multiplizieren. Das Problem liegt an NDSolve, das den Faktor beim t nicht immer gleich behandelt hat. Deshalb hatte ich noch im Hinterkopf, dass ich nicht einfach multiplizieren könne.

skn
erkundet das Forum
erkundet das Forum
Beiträge: 78
Registriert: 26. Okt 2016, 20:10

Re: Dirac-Delta-Funktion

Beitrag von skn » 11. Dez 2016, 16:38

positronium hat geschrieben: Es ist zwar richtig, dass der Anfangswert problematisch sein könnte. Es funktioniert aber auch nicht wenn ich z.B. A[0]=0.1 eingebe. Der Support von Wolfram hat das Problem auch mit den Entwicklern diskutiert. Das steht daher meiner Ansicht nach (bin ja kein Mathematiker) ausser Frage.
Noch mal zurück zu Deinem Beispiel

s1 = NDSolve[A'[t] == DiracComb[t] 2 && A[0] == 0, A, {t, 0, 10}];

Ich habe es mal so gelöst

g[t_, o_] := 1/Sqrt[2 Pi o^2] Exp[-t^2/(2 o^2)]
DiracCombS[t_, o_, n_] := Sum[g[t - i, o], {i, -n, n}]

s2 = NDSolve[A'[t] == DiracCombS[t, 0.05, 10] 2 && A[0] == 0, A, {t, 0, 10}];

Damit läuft dann Animate so wie Du es Dir wohl wünscht.

positronium
Ehrenmitglied
Ehrenmitglied
Beiträge: 2832
Registriert: 2. Feb 2011, 20:13

Re: Dirac-Delta-Funktion

Beitrag von positronium » 11. Dez 2016, 16:53

Danke für den Vorschlag!
Es läuft aber leider nicht sprunghaft, und auch nur zwischen -n und n.
Eine ähnliche Lösung hatte ich mit

Hier läuft es zwar sprunghaft, aber für grosse n ist das nicht mehr berechenbar, und bei n=unendlich funktioniert es in NDSolve wieder nicht.
Vielleicht kaufe ich doch einmal die neue Version, oder versuche eine analytische Lösung zu finden; das wird aber dauern. Vielen Dank derweil!

positronium
Ehrenmitglied
Ehrenmitglied
Beiträge: 2832
Registriert: 2. Feb 2011, 20:13

Re: Dirac-Delta-Funktion

Beitrag von positronium » 29. Jan 2017, 16:50

Jetzt habe ich mir das neueste Mathematica-Update vom Munde abgespart, und siehe da: Es funktioniert.
plot.gif
plot.gif (79.11 KiB) 5071 mal betrachtet

Antworten