WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Save Variable unter vorher eingelesenen Namen ?

 

duzid

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.02.2014, 15:22     Titel: Save Variable unter vorher eingelesenen Namen ?
  Antworten mit Zitat      
Hallo Leute,

ich möchte gerne eine bestimmte Matlabvariable in eine Datei mit der Endung .afs speichern. Der Befehl sieht so dazu aus:

Code:

load(name);

%Vektoren zusammen fügen
U = [s,u];


save name.afs U  '-ascii'


Gibt es eine Möglichkeit die vorher eingelesene Variable als Namen für die .afs Datei zu verwenden ?

Hab bereits gelesen, dass ich hierfür den Befehl in Klammern schreiben soll.
Code:


Wie kriege ich das aber hin, dass nur die eine Variable U (diese im ascii Format) und dazu noch die Dateiendung .afs angenommen wird ?

Hoffe hab mich einigermaßen verständlich ausgedrückt ^^

VG


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 06.02.2014, 15:56     Titel:
  Antworten mit Zitat      
Code:
save([name '.asf'],'U','-ascii')

_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.02.2014, 16:09     Titel:
  Antworten mit Zitat      
Danke für die schnelle Antwort !

Matlab hatte die Variable name.mat mit dem Kürzel .mat gespeichert.
Aber nach dem Abschneiden von '.mat' Funktioniert es Super !

Hätte noch ne Kurze Frage, schreibe sie mal in den Thread mit rein. Hoffe das ist ok :s

Im Endeffekt bräuchte ich eine .afs Datei die so in der Art aussieht:


header.begin
file.type = 'afs' ! SIMPACK File Type: Input Function
file.version = 1.0 ! Release
header.end


arrfunc.begin
type = 'y(x)' ! Input Function Type: Univariate Function
name = 'Univariate_Expl' ! Input Function Name
eval.type = 'cubic' ! Cubic Spline Interpolation
eval.par(1) = 1 ! Extrapolation Type: 0/1 = Spline/Linear
eval.par(2) = 1.0000000000E-01 ! Extrapolation: Transition Range [m]
x.unit = 'm' ! Unit x: length [mm]
y.unit = 'm' ! Unit y: force [N]
data.begin
! x y d
0.00 -0.00185729272410393
0.01 -0.00165620025841113
0.02 -0.00165620025841113
0.03 -0.00162908908701256
0.04 -0.00162908908701256
0.05 -0.00162028068235554
usw.
data.end
arrfunc.end

Habe also einen Datei Kopf und Unten noch die Schlussbefehle
Gibt es irgendwie die Möglichkeit den Kopf usw. in diesem Format in ein String zu speichern, sodass Matlab mir gleich die funktionsfähige Datei schreibt ?
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 06.02.2014, 16:23     Titel:
  Antworten mit Zitat      
ja. würde dann aber
Code:
nehmen
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
uzid

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.02.2014, 17:30     Titel:
  Antworten mit Zitat      
Winkow hat Folgendes geschrieben:
ja. würde dann aber
Code:
nehmen



Hmm
aber wie genau soll ich das machen ?

Save erwartet von mir Variablen, welche der Befehl dann in eine Datei schreibt.

Die Ausgabe von fprintf kann ich jedoch in keine Variable schreiben, bekomme nur Zahlen von Matlab für die Variablen geliefert ?


VG
 
uzid

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.02.2014, 18:15     Titel:
  Antworten mit Zitat      
EDIT:

Habe den falschen Befehl verwendet.

Mit

Code:


speichert er die Ausgabe als Variable ab.

Jedoch steht anstannt der Variable im erzeugten Code lauter Zahlen.
Denke das hat was mit dem -ascii Format zu tun ?

Sorry, bin da noch nicht so ganz durchgestiegen :S

VG
 
uzid

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.02.2014, 15:02     Titel:
  Antworten mit Zitat      
Hmm hat keiner ne Idee auf die schnell Leute ?

Ist ziemlich wichtig :s
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.02.2014, 20:57     Titel:
  Antworten mit Zitat      
Hallo uzid,
Du sollst die Variable auch nicht mit »save« speichern, sondern den String in eine mit »fopen« geöffneten Datei mit »fprintf« schreiben.
Private Nachricht senden Benutzer-Profile anzeigen
 
uzid

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.02.2014, 20:45     Titel:
  Antworten mit Zitat      
Sirius3 hat Folgendes geschrieben:
Hallo uzid,
Du sollst die Variable auch nicht mit »save« speichern, sondern den String in eine mit »fopen« geöffneten Datei mit »fprintf« schreiben.



Hallo Sirius3,

danke erstmal für den Tip. Habe es mit der Methode versucht, jedoch wurde im Skript kein Zeilensprung gemacht.
Matlabhilfe --> für Notepad muss es wohl
Code:
heißen.

Jetzt klappt alles Perfekt

Vielen Dank!
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.