|
|
kompletter Workspace an Funktion übergeben |
|
maleme92 |

Forum-Anfänger
|
 |
Beiträge: 24
|
 |
|
 |
Anmeldedatum: 01.12.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.01.2016, 16:22
Titel: kompletter Workspace an Funktion übergeben
|
 |
Hey,
ich habe eine Funktion, dir mir mithilfe von vielen (im Moment 21) Variablen aus dem Workspace - nennen wir sie f00, f01,f30,f41... etwas berechnet. Nun möchte ich aber nicht andauernd als Übergabeparamter 21 Faktoren hinschreiben.
Wie kann ich der Funktion den kompletten Workspace übergeben, damit diese Variablen direkt da sind?
Danke
|
|
|
|
|
Mmmartina |

Forum-Meister
|
 |
Beiträge: 745
|
 |
|
 |
Anmeldedatum: 30.10.12
|
 |
|
 |
Wohnort: hier
|
 |
|
 |
Version: R2020a
|
 |
|
|
 |
|
Verfasst am: 14.01.2016, 16:44
Titel:
|
 |
Die Variablen in ein Struct packen und diesen übergeben.
Wenn die variablen nur jeweils eine Zahl enthalten, könnte man diese evt. euch sinnvoll in einer Matrix unterbringen.
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
maleme92 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 24
|
 |
|
 |
Anmeldedatum: 01.12.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.01.2016, 16:49
Titel:
|
 |
Die Variablen sind alle vom Typ 1x1 symfun
Wie packe ich sie zusammen, damit meine Funktion noch auf den Variablennamen zugreifen kann und diese dann auswertet?
|
|
|
DSP |

Forum-Meister
|
 |
Beiträge: 2.117
|
 |
|
 |
Anmeldedatum: 28.02.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2014b
|
 |
|
|
 |
|
Verfasst am: 14.01.2016, 18:02
Titel:
|
 |
Hallo,
die Methode für "Faule" wäre wohl zuerst alle Variablen aus dem Workspace mit dem
save
Befehl als *.mat speichern, Namen des Files an die Funktion übergeben und in der Function die Variablen mittels
load
in das lokale Function-workspace zu laden.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.01.2016, 09:50
Titel:
|
 |
Hallo,
das Problem ist, dass man sich durch "Faulheit" letztlich oft mehr Arbeit macht als man sich spart.
Wenn sehr viele Variablen im Workspace sind und übergeben werden müssen, ist das oft ein Zeichen für eine nicht gut strukturierte Anwendung.
Wenn die Variablen f00, f01,f30,f41... sind, dann bietet sich wohl ein sym Array an:
Achtung: in MATLAB beginnt die Indizierung bei 1.
Ansonsten würde ich den Vorschlag von Martina empfehlen. Umsetzung für Variablen a, b, c:
Erstellen der Struktur
Übergeben wird s.
Extrahieren der Variablen:
Grüße,
Harald
|
|
|
|
|
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.
|
|