LTspice zu Matlab

OP #6520240
Lesenswert?
• ▲
▼
Hallo Leute,

Ich habe einige etwas ausführlichere Simulationen mit LTspice 
durchgeführt und versuche diese nun weiter zu bearbeiten mit Hilfe von 
Matlab. Gewöhnlich ist das kein Problem. Da kann Ich meine Tabelle mit

A= dlmread(Dateiname.txt); laden

und mit

x1=A(:,1);
x2=B(:,1);
y1=A(:,2);
y2=B(:,2);

meine Vektoren bestimmen und meine Messwerte weiter bearbeiten und 
plotten.

Allerdings haben Ich dieses mal mit einem Parameter sleep gearbeitet und 
meine .txt Datei fällt dementsprechend etwas k
omplizierter aus, so das meine vorherige Methode nicht funktioniert. Ich 
hab mal eine der Simulationen angehängt. Jeder der Simulation Runs wird 
dabei untereinander dargestellt. Somit habe Ich nicht eine reine Tabelle 
von der ich die Vektoren erzeugen kann.

1
2
...
100
Step Information: N=2  (Run: 2/10)
1
2
...

Mir ist schon in den Sinn gekommen die .txt Dateien händisch bzw. mit 
Excel vorzubereiten um sie dann in Matlab wie gewohnt weiter zubereiten, 
allerdings ist das jedes Mal sehr zeitaufwendig und Ich habe vor diese 
Simulation noch weitere Male zunutzen.

Daher meine Frage: Wie kann ich meine .txt Datei mit Hilfe von einem 
Matlab Script bearbeiten um sie anschließend wie gewohnt zu plotten.

Mit freundlichen Grüßen und vielen Dank im Voraus
Emil
Angehängte Dateien:
#6520257
Lesenswert?
• ▲
▼
Du kannst unter Matlab die Datei mit fopen(), fgetl(), fscanf(), feof() 
genauso durchgehen, wie in jeder anderen Programmiersprache.

Wenn man das naiv macht (zeilenweise durchgehen und Vektoren füllen), 
ist das sehr langsam. Da ist dlmread() deutlich schneller. Der Trick 
besteht also darin, mit den file-Kommandos jeweils die Zeilen zu finden, 
an denen der Datensatz zuende ist, und dann die Bereiche zu kennen, die 
mit dlmread eingelesen werden.
OP #6520615
Lesenswert?
• ▲
▼
Walter T. schrieb:
> Du kannst unter Matlab die Datei mit fopen(), fgetl(), fscanf(), feof()
> genauso durchgehen, wie in jeder anderen Programmiersprache.
>
> Wenn man das naiv macht (zeilenweise durchgehen und Vektoren füllen),
> ist das sehr langsam. Da ist dlmread() deutlich schneller. Der Trick
> besteht also darin, mit den file-Kommandos jeweils die Zeilen zu finden,
> an denen der Datensatz zuende ist, und dann die Bereiche zu kennen, die
> mit dlmread eingelesen werden.

Programmieren gehört leider nicht zu meinen Stärken, hast du vielleicht 
schon mal ein ähnliches Script geschrieben an dem Ich mich orientieren 
kann ?
LG
OP #6521067
Lesenswert?
• ▲
▼
MrMatlab schrieb:
> Habe ich was überlesen? Warum nicht einfach die LTspice-RAW-Daten
> importieren?
> 
https://de.mathworks.com/matlabcentral/fileexchange/23394-fast-import-of-compressed-binary-raw-files-created-with-ltspice-circuit-simulator

Das Script hatte ich mir auch schon angesehen, bin allerdings immer 
wieder an einer Fehlermeldung gescheitert. Hast du mit dem Script schon 
mal gearbeitet ?
LG

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.