|
|
|
Funktion mit Befehl evalin |
|
| tschucko |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.11.2011, 19:29
Titel: Funktion mit Befehl evalin
|
 |
Hallo,
Um eine Datei mithilfe einer Funktion zu laden und Zugriff auf die in dieser gespeicherte Variable zu habe, habe ich den Befehl evalin verwendet.
also dataname ist eine mat-file in current directory und var ist die in dieser Datei gepspeicherte Variable. var enthält mehrere Spalten. In diesem Fall möchte ich die erste Spalte von var haben.
Problem: Fehlermeldung, dass dataname und var nicht bekannt sind.
Wie lautet der Befehl, wenn ich diese Funktion aufrufen möchte, also damit die Datei dataname.mat geladen wird und wie kann ich auf die var zugreifen, um damit rechnen zu können ?
ich danke euch im Voraus.
Gruß
tschucko
|
|
|
|
|
|
| soad |

Forum-Century
|
 |
Beiträge: 150
|
 |
|
 |
Anmeldedatum: 10.11.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.11.2011, 19:52
Titel:
|
 |
Hi,
ich verstehe nicht ganz, warum du den EVALIN Befehl brauchst? Es sollte doch
ausreichen, sofern du die Funktion richtig aufrufst. Startest du vielleicht mit RUN im Editor?
VAR ist übrigens auch ein MATLAB Befehl, daher wäre ich vorsichtig mit solchen Bezeichnungen.
|
|
|
|
| tschucko |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.11.2011, 20:00
Titel:
|
 |
Hallo,
ich habe auch schon mit dem Befehl load versucht, hat leider auch nicht geklappt, weil ich nicht wusste, wie man die Funktion aufrufen soll, damit die Datei dataname geladen wird und wie ich dann auf die var1 (ich habe mich vertippt) zugreifen kann.
Der Befehl load in einem m.file geht ja ganz einfach, weil man einfach den Speicherort angeben muss aber mit Funktion weiss ich nicht, wie das geht.
Gruß
tschucko
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.11.2011, 21:38
Titel:
|
 |
Hallo tschucko,
Ich verstehe das Problem nicht. Eine Funktion kann man doch in einem M-File speichern.
Variablen per LOAD direkt in den lokalen WorkSpace zu laden ist fehleranfällig, da man nicht kontrollieren kann, ob genutzte Variablen überschrieben werden.
Hilft das weiter?
Gruß, Jan
|
|
|
|
| tschucko |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.11.2011, 06:51
Titel:
|
 |
hallo ,
danke für deine Antwort.
was ich schreiben wollte, war dass in einem Script .....
es hat funktioniert, aber wie kann man den Befehl evalin verwenden, um das gleiche Resultat zu erzielen ?
gruß
tschucko
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 29.11.2011, 10:01
Titel:
|
 |
Hallo tschucko,
Der Unterschied zwischen einem Script und einer Funktion ist, dass letztere mit einer Zeile "function [Output, ...]=Name(Inputs, ...)" startet und einen eigenen WorkSpace besitzt. Im Script werden dagegen alle Variablen mit der Aufrufenden Funktion gemeinsam genutzt.
Am besten läßt man sämtliche Verrenkungen mit EVALIN sein. Sie sind fehleranfällig, kaum zu debuggen und bremsen Matlab massiv aus. Wieso also "ferngesteuert" Funktionen ausführen und Variablen erzeugen, wenn es auch direkt geht?!
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 - 2026
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.
|
|