Intervall-Newton-Verfahren

Neue Frage »

sarihz Auf diesen Beitrag antworten »
Intervall-Newton-Verfahren
Hallo!

Ich bin gerade dabei ein Programm in Matlab zu schreiben. Dabei kann man eine Funktion und ein Intervall eingeben und das Programm gibt mir 5 Schritte des Intervall-Newton-Verfahrens aus.
Dabei habe ich das Problem, dass ich am Anfang gucken möchte, ob es in diesem Intervall überhaupt eine Nullstelle gibt. Also gucke ich quasi ob 0 in f([a,b]) ist. Das ist aber mit "if 0<f(a) || 0>f(b)" nicht getan. Denn nehmen wir z.B. x^2 im Intervall [-1,1], haben wir f([-1,1])=[0,1] und f(a)=1, f(b)=1.
Natürlich gibt es immer Intervallfunktionen, die eine gewöhnliche Funktion verifizieren. Jedoch möchte ich ja, dass der Benutzer eine beliebige Funktion eingeben kann.
Ich hoffe ihr versteht, was ich meine. Ich führe meine Frage auch gerne nochmal genauer aus.

Hoffentlich könnt ihr mir helfen!
tigerbine Auf diesen Beitrag antworten »
RE: Intervall-Newton-Verfahren
Mit einer beliebigen Funktion wird es so einfach nicht gehen. Es ist bei komplizierteren Funktionen ja schon die Kunst, dieses Intervall zu finden, oder eher gesagt die Kunst einen Startwert für Newton zu finden.

Vielleicht ist das hier ja was für dich:
http://www.me-tre.de/seminars/inewton.pdf
sarihz Auf diesen Beitrag antworten »
RE: Intervall-Newton-Verfahren
das dokument hab ich auch schon gefunden, das ist gold wert Augenzwinkern
aber wenn du mal guckst bei den algorithmen, hat er da lediglich geschrieben. hilft mir jetzt nicht so viel weiter

(mY+): LaTex-Fehler editiert.
tigerbine Auf diesen Beitrag antworten »
RE: Intervall-Newton-Verfahren
Was stört dich daran? Und was willst du von uns wissen? Ich schrieb schon, dass es mit einfachen Newton nicht möglich sein wird, deinen Ansprüchen gerecht zu werden. Denn dein Anfang ist das eigentliche Problem bei deiner Fragestellung. Die 5 Iterationen auszurechnen sind eher "geschenkt". Augenzwinkern

Ich werde dir allerdings nicht mit einem Algorithmus dienen können, der deinen Wunsch verwirklicht.
wisili Auf diesen Beitrag antworten »
RE: Intervall-Newton-Verfahren
Eine Lösung könnte dialogisch sein, d.h. das Programm fragt den Benutzer solange
nach den Eingaben a und b, bis f(a)*f(b) < 0 erfüllt ist, d.h. bis die Vorzeichen
der Funktionswerte an den Randstellen verschieden sind.

Sollten dann mehrere Nullstellen dazwischen liegen, findet der Algorithmus (in seiner einfachsten Form)
natürlich nur (irgend) eine Nullstelle, und zwar weder sicher die kleinste noch sicher die grösste).
tigerbine Auf diesen Beitrag antworten »
RE: Intervall-Newton-Verfahren
Das würde mich als Benutzer schnell nerven. Denn die Vorarbeit muss ich dann wo anders machen und kann dann auch gleich ein Intervall eingeben, wo ich weiß, dass die Funktion eine Nullstelle besitzt. Ich würde 2 Prämissen setzen:

1. Man muss ein großes Intervall vorgeben, auf dem man sich für die Existenz von Nullstellen interessiert.

2. DAs Programm gibt dann einen Plot aus

3. Man gibt ein kleines Intervall ein, in dem eine Nullstelle liegt

4. Das Programm berechnet dann die Nullstelle
 
 
wisili Auf diesen Beitrag antworten »
RE: Intervall-Newton-Verfahren
Wenn das Programm einen Plot ausgibt, also hunderte von Werten berechnet,
dann kann es spielend auch gleich selber die für die Nullstellen günstigen Randstellen a,b
finden und dem Newton-Algorithmus übergeben, ohne den geringsten Mehraufwand.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »