Hi!
hab wieder mal so meine probleme mit den näherungsverfahren!
kann mir vielleicht wer erklären wie das „Adams-Verfahren“ und/oder das „Runge-Kutta-Verfahren“ funktioniert??
Vielleicht wenn es möglich ist anhand des gleichen Beispiels!
Danke
-Gregor
Hi Gregor,
es handelt sich um Verfahren zur numerischen Integration von Differentialgleichungen, z.B. der Form
(1) dx/dt = f(x,t)
Im einfachsten Fall wird die Ableitung auf der linken seite durch
einen endlich Differenzenquotienten approximiert:
(2) dx/dt = [x(t+h)-x(t)]/h
Aus (1) und (2) bekommst Du dann
(3) x(t+h) = x(t) + h f(x(t), t)
dass heisst, wenn Du x zur Zeit t kennst, kannst du x zur Zeit t+h
naeherungsweise ausrechenen, und dann zur Zeit t+2h und dann t+3h usw.
Dieses einfache Verfahren heisst Euler-Verfahren. Es ist im allgemeinen nicht sehr gut, weil die Naeherungsloesungen ziemlich ungenau sind und nach ein paar Schritten fuer viele Differentialgleichungen auch schon vollkommen falsch sein koennen.
Adams-Bashfort, Adams-Bashfort-Moulton, und das Runge-Kutta-Verfahren approximieren i.P. die Ableitung in (2) besser. Man bekommt dann ein Iterationschema aehnlich wie in (3), bei dem aber nicht nur x(t) alleine auf der rechten Seite vorkommt, sondern auch noch Werte fuer x zu frueheren Zeiten. Wenn man die kennt, kann man sich wieder in die Zukunft hangeln. Die genauen Formeln sind ziemlich umstaendlich. Die findest Du in jedem Lehrbuch ueber numerische Mathematik. Z.B. Schwarz: Numerische Mathematik. Teubnerverlag. Oder Press/Flannery/Teukolsky/Vetterling: Numerical recipes in C. Cambridge University press. Letzteres ist auf Englisch und ein Buch mit 1000 nuetzlichen numerischen Routinen fuer alles moegliche. Es gibt dazu fertig implementiertenn C-Code und ganz gute Erklaerungen.
Es gibt auch Softwarepakete fuer C und Fortran, wo entsprechende Routinen drin sind.
Ciao,
T
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]