Nun habe ich aber das Problem das ich das ganze 3 mal machen muss und ich die Daten aus allen 3 Berechnungen zusammen in das Workspace laden muss.
Da aber die Namen der Variablen alle gleich sind würden die sich gegenseitig überschreiben.
Gibt es die Möglichkeit einen "flexiblen" Variablennamen zu erstellen ?
Sprich, ich habe einen Wert der sich bei jeder Berechnung ändert z.B.
Nur weiß ich dann nicht weiter, also wie ich diese dynamischen/flexiblen Namen abspeichern kann bzw. zum abspeichern verwenden kann.
Wenn ich einen Breakpoint nach dieser Stelle setze erscheinen die Variablen nicht im Workspace. Erst wenn ich den Debugging Modus beende. Hat es was zu tun das die Berechnung von einer GUI gestartet wird ?
Hat es was zu tun das die Berechnung von einer GUI gestartet wird ?
Ja, denn du legst die Variablen im Base Workspace, nicht im momentanen Workspace ab. Sehen kannst du die Variablen übrigens trotzdem, indem du in den Base Workspace schaltest.
Empfehlenswert ist das Arbeiten mit assignin aber ohnehin nicht. Abhilfe siehe oben.
Verfasst am: 25.12.2015, 02:39
Titel: Re: Save einer Variable vom WS mit Namensänderung der Varia
Hallo JaSoIstEs,
Die Werte von Daten im Namen einer Variablen zu verstecken ist grundsätzlich eine schlechte Idee. Daten und Programm zu trennen macht Programme flexibel und wartbar.
Nun stehen in Data die Felder "n_BP" und "Tmag". Data kann man auch in ein Struct-Array einlesen. Nun wäre es kein Problem auch 100'000 Messungen zu verwenden oder mehrere Messungen mit dem selben Wert für Tmag.
die Daten sollen später in ein Simulink-Modell eingespeist werden.
Es wird insgesamt 3 Lookuptables geben.
Im Prinzip für jede Temperatur (35, 100, 180) eine.
n und T werden für alle 3 gleich sein lediglich die anderen zwei Daten werden sich für alle drei unterscheiden.
Um hier den User etwas Bedienerfreundliches zu liefern wollte ich das er einfach die 3 Mat-Files in das Workspace zieht ohne vorher eine weitere M-File starten zu müssen um alles zu laden.
In dem Programm jetzt wird selber nichts mehr geladen sondern nur abgespeichert.
Deswegen wollte ich ohne Umwege die Werte einfach schon unbenannt abspeichern. Da sich die 3 Temp. verändern können wollte ich es mit Hilfe von assignin flexibel halte.
Nur vergesse ich leider laufend die richtige Handhabung von assignin da ich es so selten verwende.
matfiles = {Cell Array mit zu ladenden .mat-Dateien} for I = 1:numel(matFiles) load(matFiles{I})% oder alternativ Jans Vorschlag % Durchführen der Simulation z.B. mit sim save(...)% Speichern unter gewünschtem Namen end
Hab das jetzt mittels uigetfile gelöst.
War jetzt der einfachste und schnellste Weg.
Vielen Dank euch beiden.
Ich wünsche euch einen guten Rutsch ins neue Jahr.
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.