Wir verstehen leider nicht, was damit gemeint ist, dass wir die Iterationen plotten sollen und leider sieht das, was wir geplottet haben, sehr merkwürdig aus, sind uns auch nicht sicher, ob wir die Aufgabenstellung richtig verstanden haben.
Also haben auch nicht verstanden, was mit Itertaionen plotten gemeint ist.
MaxChuckNorris
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.05.2022, 07:38
Titel:
Im Code oben hat sich ein Fehler eingeschlichen
defaultanswer={'exp(sin(x/2))-x; ','(cos(x/2)*exp(sin(x/2)))/2 - 1;','0','50','0','0.5' };
hier sollte natürlich am Ende 5 stehen, also:
defaultanswer={'exp(sin(x/2))-x; ','(cos(x/2)*exp(sin(x/2)))/2 - 1;','0','50','0','5' }
MaxChuckNorris
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.05.2022, 07:51
Titel:
Ein anderes Problem ist zudem, ich habe 1e^-8, bekomme jedocch immer nur 5 Nachkommastellen raus?
Dann sieht man, wie sich das Verfahren an der Funktion "entlang tastet".
Im Editor werden mehrere Code Analyzer-Warnungen in orange angezeigt. Diese sollte man beheben. Zudem ist eval nicht empfehlenswert. Stattdessen könnte man hier
str2func
verwenden.
Die 5 Nachkommastellen sind eine Frage der Anzeige und haben mit dem gesetzten eps nichts zu tun. Die Anzeige ändern kannst du mit
format
.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
MaxChuckNorris
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.05.2022, 16:43
Titel:
Danke, wenn ich jedoch die Verbesserungen bezüglich der Whileschleife vollziehe, startet das Programm nicht mehr? Und ich wollte eigentlich, dass man so lange iteriert, bis der x wert 10^-8 entspricht. Hier geht das aber durch den y-wert oder?
Habe keine Ahnung von matlab, es ist eigentlich so, dass ich die Aufgaben mit einem Kommilitonen mache, ich übernehme Java und C Aufgaben, er die Matlab Aufgaben (Er ist nur leider krank zurzeit). Verstehe deshalb bei dem Rest nicht genau, wie ich das implementiere
MaxChuckNorris
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.05.2022, 16:46
Titel:
Wobei sorry, habe es nun hinbekommen, also die Ersetzungen der while-schleife, aber ist es hier so, dass der y-wert gegen 10^-8 iteriert wird oder der x wert?
wenn ich jedoch die Verbesserungen bezüglich der Whileschleife vollziehe, startet das Programm nicht mehr?
Bei mir schon. Mit deinen Verbesserungen ist also anscheinend etwas schief gegangen. Was, kann ich dir nur sagen, wenn du deinen aktuellen Code teilst.
Zitat:
Und ich wollte eigentlich, dass man so lange iteriert, bis der x wert 10^-8 entspricht. Hier geht das aber durch den y-wert oder?
Ja, und so läuft nunmal das Newton-Verfahren. Alternativ kannst du iterieren, bis die Änderung des x-Werts < 10^-8 ist. Die Umsetzung ist dann in MATLAB auch nicht viel anders als in C oder Java.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
MaxChuckNorris
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.05.2022, 20:38
Titel:
Danke, konnte das auch ergänzen deine Verbesserung, nun sieht es jedoch so aus, als hätte man 3 Nullstellen und nich tnur eine?
[quote]nun sieht es jedoch so aus, als hätte man 3 Nullstellen und nich tnur eine?/quote]
Für mich nicht. Die rote Kurve kreuzt die Null-Linie einmal, und die Iterationen in blau nähern sich der einen Nullstelle an.
Wo siehst du 3 Nullstellen?
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
chuckynorisi
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 19.05.2022, 01:50
Titel:
Danke, ja passt doch! Aber wie funktioniert das mit dem x-Wert, damit ich 10^-6 Stellen anzeige, habs leider nicht hinbekommen
zum einen kannst du die Anzeige wie gesagt über format anpassen.
Wenn dir die Anpassungsmöglichkeiten von format nicht reichen, kannst du
fprintf
verwenden, z.B.
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
MacChuckNoris
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 19.05.2022, 09:41
Titel:
Danke dir, wir sollen nicht den Code abgeben, nur die Ausgabe. Ich fände es jedoch etwas viel, wenn ich alles, was rauskommt, rauskopiere. Hättwst Du vielleicht eine Empfehlung? Was würdest Du alles von der Ausagbe abgeben, bzw. wie viel und was würdest Du nicht abgeben? Wir sollen die Ergebnise abgeben, also die Iterationen, aber wäre das da nicht zu viel?
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Einstellungen und Berechtigungen
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.