|
|
Undefined function or variable x, Sekantenmethode |
|
ichLiebeSommer |

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 29.03.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.03.2016, 22:43
Titel: Undefined function or variable x, Sekantenmethode
|
 |
Hallo
bin Matlab- Neuling und sitze seit 3 stunden an dem Beispiel:
ich soll eine Sekantenmethode programmieren, um Nullstellen einer Funktion zu finden.
Hierzu meine Methode (SekantenMeth.m):
und meine Funktion, bei der ich die Nullstellen suchen soll:
wenn ich nun:
SekantenMeth(@sekantensinus, 1, 1)
eingebe kommt das...:
Undefined function or variable 'x'.
Bitte um einfache (!) Erklärung was ich falsch mache, wie gesagt, ich programmiere noch nicht lange mit Matlab...
Lg. Martin
edit winkow: bitte code umgebung benutzen
|
|
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 29.03.2016, 23:11
Titel:
|
 |
die fehlermeldung ist recht eindeutig. er kennt die funktion x nicht.
an der stelle versuchst du die funktion x mit dem argument 0 aufzurufen. x ist aber nicht bekannt anscheinend.
ist übrigens auch keine gülrige matlab syntax. außer sin ist ein array das die matlab funktion sin überlagert ^^ und x ein positiver integer wert.
der code sollte noch so einige fehler aufwerfen. am besten du gehst schritt für schritt mit dem debugger durch und guckst dir das an. f ist zb bei der verwendung auch unbekannt. und in der 2. funktion wird y garnicht zugewisen.
_________________
richtig Fragen
|
|
|
ichLiebeSommer |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 29.03.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.03.2016, 10:03
Titel:
|
 |
Also müsste ich hier die Funktion y aufrufen (sekantensinus)?
bzw., wenn ich dann beim eigentlichen Sekanten-Verfahren die x(n+1) bzw x(n-1) und x(n) verwende, sollte ich das dann nicht gleich als:
y(0) = x (n-1)
y(1) = x (n+1)
anschreiben?
Wäre:
richtig ?
bzw. edit zu 1: wäre
phi (0) =x0;
phi (1) = x1;
richtig?
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 30.03.2016, 10:36
Titel:
|
 |
entweder ist die syntax falsch oder die indizierung. eins von beiden.
ich kann das getting started oder matlab onramp empfehlen wenn du neu in matlab bist. das sollte 90% der fragen beantworten die man als anfänger hat.
_________________
richtig Fragen
|
|
|
ichLiebeSommer |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 29.03.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.03.2016, 10:43
Titel:
|
 |
vielen Dank erstmal. Werde mir das zulegen!
inzwischen gibt mir Matlab keine direkten compiler-Fehlermeldungen mehr.
Wenn ich nun aber die Funktion aufrufe kommt ein neuer Fehler...
Subscript indices must either be real positive integers or
logicals.
Error in SekantenMeth (line 17)
:/ würde mir viel bringen wenn ich zumindest die Sekantenmethode hätte, um anhand der dann die anderen zu verstehen...
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 30.03.2016, 10:51
Titel:
|
 |
hallo
die fehlermeldung ist eindeutig. indizes müssen logisch oder positive integer werte sein.
x(n-1) ist das für n=1 nicht.
ich empfehle wirklich dringed das getting startet oder matlab onramp zu lesen.
_________________
richtig Fragen
|
|
|
ichLiebeSommer |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 29.03.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.03.2016, 11:58
Titel:
|
 |
Vielen Dank Winkow, werd das nochmal korrigieren und testen
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 30.03.2016, 13:20
Titel:
|
 |
Hallo ichLiebeSommer
Zitat: |
Werde mir das zulegen! |
Die "Getting Started" Kapitel sind in der Dokumentation Deiner lokalen Matlab-Installation zu finden. Zum Glück muss man sich das nicht erst kaufen.
Gruß, Jan
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|