Verfasst am: 23.06.2011, 12:33
Titel: Visualisierung der Newtonverfahrens HILFE
Hallo, ich habe eine leicht dringliche Frage:
Ich soll das Newtonverfahren veranschaulichen.
Veranschaulichen sie die funktionsweise des Newtonverfahrens, indem sie dessen Iterationsfolge graphisch darstellen:
plottens sie dazu die jeweilige Funktion, deren Nullstelle berechnert werden soll und sie nacheinander die Punkte (X0, F(X0)), (X1,0), (X1, F(X1)),...(Xn,0 F(Xn)) bis sie die Nullstelle erreicht haben oder die differenz zwischen Xn und der Nullstelle so klein geworden ist, dass man sie in der Graphischen Darstellung nicht mehr erkennen kann. Wählen sie zur verfanschaulichung des verfahrens folgende Funktionen.
1a)
y=x³-2x+2 , Startwerde X0=0,5 und X0=0
Probieren sie weitere Startwerde ihrer Wahl aus.
Da ich mit Matlab sehr sehr wenig erfahrung habe, würde ich mich freuen, wenn mir irgendwer ein paar tipps zur vorgehensweise geben könnte.
Hier wird dir allerdings niemand deine Hausaufgaben erledigen. Sag uns doch bitte, was du dir schon angeschaut hast, was du schon ausprobiert hast und stelle dann klare Fragen wo Probleme oder Fehlermeldungen auftauchen.
so nun hab ich die x-Werte und die y-Werte in einen jeweiligen Vektor geschrieben und geplottet, es kommt allerdings nur eine Gerade raus. Und wenn ich noch dazu die Nullstellen mit den dazugehörigen Funktionswerten mir anzeigen lasse, dann kommt nur ein komischer Graph raus.
% Iteration beginnend ab i=1 (Startwert)
i=1;
whileabs(fx(x(i)))>eps
x(i+1)=x(i)-(fx(x(i))/f1x(x(i)))
f(i+1)=fx(x(i))
i=i+1;
end min=min(x) max=max(x)
y=fx(min:0.1:max) plot(x,f,'b*-') hold on
plot(min:0.1:max,y,'r-') hold off
hier werden die y-werte von der funktion von dem minimum bis zum maximum der x-werte ausgerechnet, damit man die kurve im diagramm hinterlegen kann.. 0.1 ist die schrittweite
Jetzt hab ich nur noch ein anderes Problem,ich soll alle Input Werte (Startwerte, Funktion, Ableitung, Achsenbegrenzungen, Anzahl der Iterationen) in einem gesonderten function-Unterprogramm zusammen, das Sie gegebenfalls ändern können. Wählen Sie den Maßstab so, dass alle Iterationen zu sehen sind. Erklären Sie mit Hilfe der Grafiken die Funktionsweise des Newtonverfahrens und diskutieren Sie, warum das Newton Verfahren nicht immer konvergiert.
Das fällt auf eine andere Teilaufgabe zurück, nämlich der:
Suchen Sie eine andere Funktion ihrer Wahl, die Sie für die Veranschaulichung des Newton-Verfahrens geeignet halten. Finden Sie je einen Startwert für Konvergenz und je einen für Divergenz?
So, hast du für mich einen Start-Ratschlag?
Also ich bin etwas ratlos....[/i]
oho
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 27.06.2011, 05:44
Titel:
Zu Konvergenz sollt dir doch wiki weiterhelfen. Die erklären, dir das Verhalten ausführlich. Es wird sich da ja auch auf diese funktion von deinem Bsp. bezogen.
Zu deinem Beispiel:
Ich würde einfach ein paar Zeilen noch davor setzen. Dann geht ein Fenster auf bei dem du die Sachen abändern kannst. Wenn du unbedingt 2 files brauchst, dann muss du halt den Zusatzteil in ein 2. files kopieren und darunter den Namen des 1.Files schreiben, dann ruft das 2.Files das erste auf.
Das Newtonverfahren kannst du doch gut mit dem diagramm darstellen. Du musst halt auf den startwert achten.
Übrigens, für die Konvergenz und Divergenz Aufgabe hätte ich eine Idee:
wie wäre es mit y=1/x?
die konvergiert gegen 1, wenn der Startwert 1 ist und divergeirt, wenn x größer oder kleiner als 1 ist ausgenommen der 0. Wäre das eine Beispiel Funktion für Newton?
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.