|
|
Vektor zwischen Funktionen übergeben |
|
littleforest |

Forum-Newbie
|
 |
Beiträge: 6
|
 |
|
 |
Anmeldedatum: 03.01.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: MATLAB 7.4.0 (R2007a)
|
 |
|
|
 |
|
Verfasst am: 03.01.2011, 14:57
Titel: Vektor zwischen Funktionen übergeben
|
 |
Hallo zusammen,
ich habe eine Frage bezüglich der Übergabe von Werten zwischen Funktionen. In meinem m-file berechne ich in einer Funktion Werte, welche ich zu einem Vektor zusammen fasse. Auf den Vektor möchte ich in einer anderen Funktion in diesem m-file zurückgreifen.
Wenn ich versuche, den Vektor anzusprechen, kommt die Fehlermeldung "undefined function". Der Vektor ist nur lokal gültig. Wie kann ich ihn an die zweite Funktion übergeben?
Vielen Dank und ein gesundes Jahr 2011
|
|
|
|
|
FearTheFear |

Forum-Anfänger
|
 |
Beiträge: 15
|
 |
|
 |
Anmeldedatum: 22.11.10
|
 |
|
 |
Wohnort: Magdeburg
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.01.2011, 16:40
Titel:
|
 |
Hallo!
Wenn du mehrere Funktionen in einem m File hast, dann musst du die Funktionen die nach der 1. Funktion folgen irgendwo aufrufen. Das geht so
[a,b,c]=NameDerUnterfunktion(x,y,z)
In der eckigen Klammer stehen die Werte die du aus der Unterfunktion zurückhaben möchtest (kann auch leer sein). In den runden Klammern steht das, was du in deine Unterfunktion reingibst. Hier muss dein Vektor stehen.
Gruß, Laura
|
|
|
littleforest |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 6
|
 |
|
 |
Anmeldedatum: 03.01.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: MATLAB 7.4.0 (R2007a)
|
 |
|
|
 |
|
Verfasst am: 03.01.2011, 17:16
Titel:
|
 |
Hallo Laura,
danke für den Tipp. Leider funktioniert es bei mir nicht. Bei den Funktionen handelt es sich um automatisch generierte Funktionen bei der Erstellung einer GUI. Über einen Button lasse ich drei Werte berechnen, die ich zu einem Vektor zusammenführe. Eine Callback Funktion soll diesen Vektor aufnehmen. Habe es probeweise mit einem Wert ,X genannt, versucht und so in die function eingefügt:
Code zeigt nur Ausschnitt.
Bringt Fehlermeldung: Input argument "X" is undefined.
Danke
Björn
|
|
|
_Peter_ |

Moderator
|
 |
Beiträge: 537
|
 |
|
 |
Anmeldedatum: 08.12.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.10, 2010a
|
 |
|
|
 |
|
Verfasst am: 03.01.2011, 17:32
Titel:
|
 |
|
|
littleforest |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 6
|
 |
|
 |
Anmeldedatum: 03.01.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: MATLAB 7.4.0 (R2007a)
|
 |
|
|
 |
|
Verfasst am: 04.01.2011, 10:13
Titel:
|
 |
Hallo,
funktioniert leider auch nicht. Eine Fehlermeldung für Parameter "handles" wird angezeigt.
Versuche es über einen anderen Weg, außer ihr habt noch Vorschläge.
Danke
Björn
|
|
|
_Peter_ |

Moderator
|
 |
Beiträge: 537
|
 |
|
 |
Anmeldedatum: 08.12.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.10, 2010a
|
 |
|
|
 |
|
Verfasst am: 04.01.2011, 11:42
Titel:
|
 |
Wie sieht denn der Funktionsaufruf aus?
_________________
Gruß
Peter
_________________
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht? Oder der MATLAB Hilfe?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 04.01.2011, 11:47
Titel:
|
 |
Hallo,
am einfachsten ist es, den Vektor X in der Funktion, in der er erstellt wird, in das Feld Userdata eines Elements der GUI zu schreiben
Wenn der Vektor X gebraucht wird, holt man ihn sich genauso wieder raus:
Alternativ setappdata/getappdata.
Das bezieht sich natürlich nur auf GUIs.
Grüße,
Harald
|
|
|
littleforest |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 6
|
 |
|
 |
Anmeldedatum: 03.01.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: MATLAB 7.4.0 (R2007a)
|
 |
|
|
 |
|
Verfasst am: 04.01.2011, 11:49
Titel:
|
 |
Hallo,
der Vektor wird in
berechnet. Diese Funktionsbezeichnung wurde GUI erstellt. Die Funktion greift auf viele handles-Objekte zu.
Einen Funktionsaufruf dieser Funktion in der Zielfunktion klappt nicht.
Danke Björn
|
|
|
_Peter_ |

Moderator
|
 |
Beiträge: 537
|
 |
|
 |
Anmeldedatum: 08.12.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.10, 2010a
|
 |
|
|
 |
|
Verfasst am: 04.01.2011, 11:53
Titel:
|
 |
Ach das mit der GUI hatte ich wohl überlesen.
GUI ist nicht so mein Gebiet.
Aber guck dir mal den Post von Harald an, das sieht genau nachdem aus was du brauchst.
_________________
Gruß
Peter
_________________
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht? Oder der MATLAB Hilfe?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
|
|
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.
|
|