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

Fragen rund um .net-Dateien

 

KaiS
Forum-Century

Forum-Century


Beiträge: 102
Anmeldedatum: 19.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.04.2013, 09:20     Titel: Fragen rund um .net-Dateien
  Antworten mit Zitat      
Hallo zusammen,

folgende Situation:
Ich habe eine Exceltabelle, in der chemische Reaktionen aufgelistet sind.

Nun möchte ich diese chemischen Reaktionen und die dazu gehörigen Reaktiongeschwindigkeitskonstanten aus Excel in Matlab importieren. Das gelingt mir mit dem xlsread-Befehl.

Beispiel:
Code:
[ndata1, text1] = xlsread('test.xlsx', 'Reaktionen', 'A1')
[ndata2, text2] = xlsread('test.xlsx', 'Reaktionen', 'B1')
 


Als Ergebnis kommt dann z.B. heraus:

Code:
ndata1 =

     []


text1 =

    '[c]: 2Na + Cl2 ==> 2NaCl'

ndata2 =

1

text2 =

[]


Nun zu meinem Problem:

Ich möchte nun basierend auf den Informationen, die ich aus Excel importiere, eine .net-Datei erstellen, die automatisch beschrieben wird.

D.h. in unserem Beispiel sollte die .net-Datei folgendermaßen aussehen:

Code:

Substrat:

Na;
Cl2;

Parameter:

k1 = 1

Reaktionen:

rate = k1; {2Na,Cl2} > {NaCl};


D.h. die Überschriften "Substrat", "Parameter" und "Reaktionen" sind fest und alles andere soll dynamisch angepasst werden nach dem oben gezeigten Format.

Hättet ihr irgendeine Ahnung, wie ich das bewerkstelligen könnte bzw. ob das überhaupt möglich ist? Google hat mir leider kaum weitergeholfen, weil ich nicht mal weiß, wie ich in diesem Fall eine .net-Datei generieren kann.

Gibt es sowas ähnliches wie die save()-Funktion mit dem Unterschied, dass ich die Variablen nicht in ein .mat-, sondern .net abspeichern will?

Ich hoffe ihr könnt mir weiterhelfen!

Vielen Dank!

LG
Kai
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 24.04.2013, 10:42     Titel: Re: Fragen rund um .net-Dateien
  Antworten mit Zitat      
Hallo KaiS,

Ich finde eine Menge unterschiedlicher Definitionen für das Format von Files mit der Extension ".net".
Ich gehe sehr davon aus, dass es keine fertige funktion dafür gibt, aber das Format könnte sehr leicht selbst zu implementieren sein.

Zur Zeit ist nicht eindeutig definiert, welche Inputs zur Verfügung stehen und wie genau das erstellte file aussehen soll. Konkrete Ratschläge sind deshalb nicht möglich.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
KaiS
Themenstarter

Forum-Century

Forum-Century


Beiträge: 102
Anmeldedatum: 19.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.04.2013, 19:24     Titel:
  Antworten mit Zitat      
Hi Jan,

als Input für das net-File würde der aus der Exceltabelle besagte String bzw. Zahl, wie in meinem Bsp. dargestellt, dienen.

Mir schwebte dann eigentlich sowas vor, dass ich Matlab den String Zeichen für Zeichen absuchen lassen bis ein gewisses Zeichen kommt (z.B. "==>" für die Trennung von Edukt und Produkt der chem. Reaktion) und dann den Ursprungsstring in zwei getrennte Strings abspeichert und die dann in das net-File geladen werden können.

Ich habe "net matlab extension" gegoogelt und alles was mir Google rausgibt ist http://www.mathworks.com/help/matla.....in-matlab.html#brpcbev-1, was aber auch nicht sagt, wie ich ein .net-File füllen kann.
Wenn du was anderes gefunden hast, könntest du mich bitte darauf hinweisen?

Was ich weiß ist, dass ich mit
Code:
ein .net-File generieren kann.

Vielen Dank!

LG
Kai
Private Nachricht senden Benutzer-Profile anzeigen
 
KaiS
Themenstarter

Forum-Century

Forum-Century


Beiträge: 102
Anmeldedatum: 19.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.04.2013, 07:52     Titel:
  Antworten mit Zitat      
Edit: Ich habe eine Möglichkeit per fprintf gefunden. Näheres später, bin gerade noch unterwegs.

Evtl. schließt sich dann noch eine andere Frage an, aber ich melde mich später nochmal Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 25.04.2013, 09:52     Titel:
  Antworten mit Zitat      
Hallo KaiS,

Zitat:
als Input für das net-File würde der aus der Exceltabelle besagte String bzw. Zahl, wie in meinem Bsp. dargestellt, dienen.

Das erlaubt immer noch keine Antwort. Als Beispiel haben wir:
'[c]: 2Na + Cl2 ==> 2NaCl'
Wir wissen aber nicht, ob es immer mit [x] anfängt, ob danach immer ein Doppelpunkt kommt, ob statt "2Na" auch mal "2 Na" mit Leerezichen kommen kann, ob jede Gleichung ein "==>" enthält, oder ob auch ein "<==" möglich ist, usw. Ein einzelnes Beispiel erlaubt noch nicht das zugrundeliegende Muster zu erkennen.

STRTOK trennt einen String bei einem bestimmten Separator.

Es ist nicht klar, was ein ".net"-File ist. Wie können wir eine Methode zum Schreiben vorschlagen, wenn das Format gar nicht genau definiert ist?

Man kann mit dem EDIT-Befehl jedes beliebige leere File erzeugen, also auch "edit StarWars1.avi", aber das bringt hier gar nichts, weil das File ja leer ist. Benutzen (also in diesem Fall abspielen) kann man das file hinterher nicht.

Also ausser engagiertem Rätseln kann ich bisher keine mögliche Reaktion finden.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
KaiS
Themenstarter

Forum-Century

Forum-Century


Beiträge: 102
Anmeldedatum: 19.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.04.2013, 07:09     Titel:
  Antworten mit Zitat      
Hi Jan,

ja, du hast Recht, ich hätte sagen müssen, dass das von mir gegebene Bsp. auf die Formatierung aller Reaktionsgleichungen zurückschließt.

Im folgenden nun der Code, den ich geschrieben habe und der funktioniert:

Code:
f = fopen('wholecell_reactions.net', 'w');

fprintf(f, '\nreactions: \n');
for n = 1:length(reactions)
    fprintf(f, '%s\n', reactions{n});
end
fclose(f);


Reaction{n} ist hierbei die Zelle, die mir die Funktion xlsread beim Auslesen der Exceldatei ausgibt.

Anschließend an die Funktion xlsread hätte ich noch eine Frage, mache dafür aber übersichtlichkeitswegen einen neuen Thread auf.

Danke!
Private Nachricht senden Benutzer-Profile anzeigen
 
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.