Inhaltsverzeichnis
Infodatei
Grundidee: Infodatei (vergleichbar der bisherigen „Liesmich“-Dateien für andere Experimentarten), in der zu einer Messung gehörende zusätzliche (und wichtige) Informationen gespeichert werden.
Ziel: Einlesbarkeit der Datei in die TA-Toolbox. Die Informationen werden den zugehörigen Datensatz übernommen.
Fernziel: Import in ein (datenbankgestütztes) Laborinformationssystem.
<note important>Aktuell (2012-10-22) befindet sich diese Spezifikation eines Datenformates noch in der aktiven Entwicklung und Diskussion. Deshalb können sich alle Angaben jederzeit ohne Vorwarnung grundlegend ändern.</note>
<note tip>Die in diese Datei zu integrierenden Parameter orientieren sich nicht zuletzt an der Spezifikation des TA-Toolboxformates.</note>
Letzte Änderungen
- 2012-10-22: v0.2e
- Neues Feld „Experiment“ im Block „GENERAL“
- Neues Feld „Purpose“ im Block „GENERAL“
- Neues Feld „Buffer“ im Block „SAMPLE“
- 2012-03-31: v0.2d
- Neues Feld „Shot repetition rate“ im Block „GENERAL“
- Feldinhalte können sich über mehrere Zeilen erstrecken1)
- 2012-01-23: v0.2c
- Feld „Aperture“ im Block „SPECTROGRAPH“ aufgeteilt in „Aperture front“ und „Aperture back“
- 2012-01-21: v0.2b
- Neues Feld „Aperture“ im Block „SPECTROGRAPH“
- 2012-01-18: v0.2a
- Neues Feld „Software“ im Block „GENERAL“
- Neues Feld „Runs“ im Block „TIME PROFILES“
Kriterien für das Dateiformat
- maschinenlesbar und vom Menschen lesbar („human readable“)
- Reintext (ASCII)
- eindeutige Identifizierbarkeit des Dateiformats
- durch eine Kennung in der ersten oder zweiten Zeile
Allgemeine Formatbeschreibung
Für Ungeduldige gibt's Beispiele der Umsetzung weiter unten.
Hier folgt zunächst einmal die allgemeine Formatbeschreibung.
- Format
- Das grundsätzliche Dateiformat ist ASCII (7-bit)
- Durch die Beschränkung auf die 7-bit-ASCII-Zeichentabelle wird die Kompatibilität über Betriebssystemgrenzen hinaus gewährleistet.
- Das bedeutet gleichzeitig: keine Umlaute und andere Sonderzeichen.
- Dateiname und Endung
- Die Dateiendung ist „.info“.
- Der Dateiname ist identisch mit dem Grundnamen der zugehörigen Datendateien.2)
- Die erste Zeile der Datei ist für eine Kennung reserviert.
- ermöglicht die eindeutige Erkennung des Dateiformates beim Parsen
- wird durch eine Leerzeile vom Rest der Datei abgetrennt
- sollte eine Versionsnummer beinhalten.
- Feldbezeichner
- Werte
- Werte stehen immer hinter einem Feldbezeichner
- Innerhalb eines Blockes werden die Werte alle soweit eingerückt, daß sie bündig miteinander abschließen. D.h. der längste Feldbezeichner definiert die Einrückung der Werte.
- Werte dürfen Sonderzeichen5) und Doppelpunkte enthalten
- NEW Werte können sich über mehrere Zeilen erstrecken. In diesem Fall muß jede neue Zeile mit einem „Whitespace character“ (Leerzeichen, Tabulator, …) beginnen.
- Verwendung von Doppelpunkten
- Doppelpunkte dienen lediglich der Trennung von Feldbezeichnern und Werten
- An allen anderen Stellen (nach einem zusätzlichen Bezeichner, nach einer Blocküberschrift) sind Doppelpunkte verboten. Einzige Ausnahme (s.o.) sind Feldwerte.
- Doppelpunkte werden intern beim Parsen dazu verwendet, die entsprechenden Feldbezeichner und Werte voneinander zu trennen (in Matlab:
regexp
mit Optionsplit
).
- Die Infodatei ist in Blöcke unterteilt
- Blöcke werden durch den Blocknamen in Großbuchstaben eingeleitet
- Alle Bezeichner und alle Beschriftungen innerhalb der Datei sind aus Gründen der Internationalität in englischer Sprache zu halten.
- Blöcke und Felder können optional sein, solange aus den Werten bestimmter (obligatorischer?) Felder („Schalter“) auf die (Nicht-)Existenz dieser Felder und/oder Blöcke geschlossen werden kann.
- Gibt es zu einem Feld keine Werte, aber trotzdem gute Gründe, das Feld nicht zu entfernen6), wird „N/A“ als Wert gesetzt.
- zu den Blöcken:
- Jeder Block beginnt mit einer Überschrift (Blockbezeichner) in Großbuchstaben.
- Jeder Block wird durch eine Leerzeile vom vorangegangenen Inhalt der Datei abgetrennt.
- Innerhalb der Blöcke finden sich Schlüssel-Wert-Paare aus einem Feldbezeichner, gefolgt von einem entsprechenden Wert
Beschreibung der einzelnen Blöcke
Nachfolgend werden die einzelnen Blöcke einer Meta-Datei beschrieben. Ein Beispiel der Umsetzung folgt weiter unten.
Neben der Kennung gibt es aktuell folgende Blöcke:
- GENERAL
- SAMPLE
- TRANSIENT
- SPECTROGRAPH
- DETECTION
- RECORDER
- PUMP
- PROBE
- TEMPERATURE
- MFE
- TIME PROFILES
- COMMENT
GENERAL
Der Block „GENERAL“ besteht aus einigen Grundinformationen zur Messung.
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Filename | Dateiname |
Date | Datum |
Time start | Uhrzeit, zu der mit der Messung begonnen wurde |
Time end | Uhrzeit, zu der die Messung beendet wurde |
Operator | Name der/des Messenden |
Label | Kurze, möglichst eindeutige Bezeichnung der Messung Für die Auflistung (u.a.) in Matlab |
Experiment | Art des Experiments |
Purpose | Sinn und Zweck des Experiments |
Spectrometer | Kurze, möglichst eindeutige Bezeichnung des verwendeten Spektrometers |
Software | Name der für die Messung verwendeten Software inkl. Versionsnummer |
Runs | Anzahl der Durchläufe |
Shot repetition rate | Schußwiederholrate des Experimentes |
Anmerkungen
- Filename
- Im Falle von einer Datei pro Zeitkurve (Ox) der Dateigrundname; der eigentliche Name für die jeweilige Datei steht dann gesondert in einem eigenen Block.
- Spectrometer
- Im Falle von Fr wäre das sowas wie „LP920-K“, in Oxford vermutlich eher „Eigenbau“ (bzw. eine vernünftige englische Entsprechung dafür)
- Dieser Wert ist einer der „Schalter“, die für eine entsprechende Verarbeitung der weiteren Infodatei sorgen und die darüber entscheiden, welche (zusätzlichen) Blöcke in der Datei stehen (können).
SAMPLE
Im Block „SAMPLE“ werden die wichtigsten Informationen zur Probe zusammengefaßt.
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Name | möglichst eindeutiger und kurzer Name der Probe |
Description | Details zur Probe |
Buffer | Details zum verwendeten Puffer |
Preparation | Details zur Präparation |
Cuvette | verwendete Küvette Hier wird sinnvollerweise der konkrete Typ inkl. Hersteller angegeben |
TRANSIENT
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Points | Zahl der Punkte einer Zeitkurve |
Trigger position | Position des Triggerimpulses (Index) |
Length | Länge der Zeitkurve |
SPECTROGRAPH
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Type | Typ des Spektrographen |
Model | Modellbezeichnung des Spektrographen |
Aperture front | Blendenöffnung (Eingangsblende) |
Aperture back | Blendenöffnung (Austrittsblende) |
DETECTION
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Type | Typ des Detektors (PMT, CCD) |
Model | Modellbezeichnung des Detektors |
Power supply | Netzteil des Detektors |
RECORDER
Der Block „RECORDER“ faßt alle (idealerweise direkt vom Gerät auslesbaren) Parameter des Transientenrekorders (meist ein Oszilloskop) zusammen.
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Averages | Zahl der Mittelungen pro Zeitkurve (aka „Schuß pro Punkt“) |
Sensitivity | Empfindlichkeit des Einganges |
Bandwidth | Bandbreite |
Time base | Zeitbasis |
Coupling | Kopplungsmodus |
Impedance | Eingangswiderstand |
Time constant | Zeitkonstante der Detektion, wird u.a. durch den Eingangswiderstand bestimmt |
Model | Typenbezeichnung des verwendeten Transientenrekorders |
PUMP
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Type | Typ der zur Anregung verwendeten Lichtquelle (Laser, …) |
Model | Modellbezeichnung der Anregungslichtquelle |
Wavelength | Wellenlänge der Anregungslichtquelle |
Power | Lichtleistung des Anregungsstrahls |
Repetition rate | Wiederholrate des Anregungsstrahls |
Tunable type | Typ der verwendeten durchstimmbaren Lichtquelle (OPO oder Farbstofflaser) |
Tunable model | Modellbezeichnung der verwendeten durchstimmbaren Lichtquelle |
Tunable dye | Im Falle eines Farbstofflasers: Bezeichnung des verwendeten Farbstoffs |
PROBE
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Type | Typ der zur Abfrage verwendeten Lichtquelle |
Model | Modellbezeichnung der Abfrage-Lichtquelle |
Wavelength start | Startwert der Wellenlängenachse |
Wavelength stop | Endwert der Wellenlängenachse |
Wavelength step | Schrittweite der Wellenlängenachse |
Wavelength sequence | Richtung, in der gemessen wurde (up/down/stochastic) |
Power | Leistung des Abfrage-Lichtstrahls |
Filter | verwendete/r Filter (kommaseparierte Liste) |
Background | verwendete Hintergrundkorrekturen (none/lamp/fluorescence) |
Anmerkungen
- Wavelength start/stop
- Das sind jeweils die Endpunkte der Wellenlängenachse.
- Im Falle der Messung in Richtung kürzerer Wellenlängen ist „start“ natürlich der größere Wert.
- Matlab sollte das beim Einlesen berücksichtigen und die Daten entsprechend konvertieren.
TEMPERATURE
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Temperature | Temperatur mit Einheit |
Controller | verwendete Temperatursteuereinheit |
Cryostat | verwendeter Kryostat |
Cryogen | verwendetes Kühlmittel (H2O, LN2, LHe) |
MFE
Die Felder im Einzelnen:
Feldname | Beschreibung |
---|---|
Field | Magnetfeld (mit Einheit) |
Coil type | Typ der verwendeten Spulen |
Coil model | Modellbezeichnung der verwendeten Spulen |
Power supply | verwendetes Netzteil |
Gaussmeter | verwendetes Gaussmeter |
TIME PROFILES
Dieser Block ist nur dann von Belang, wenn - wie in Oxford - alle Zeitkurven einzeln (und manuell) aufgenommen und in jeweils eine eigene Datei gespeichert werden. Da während der Messung der einzelnen Zeitkurven u.a. Filter gewechselt werden, gibt es für jede dieser Zeitkurven spezifische Informationen.
Die Felder im Einzelnen, jeweils für eine Zeitkurve:
Feldname | Beschreibung |
---|---|
Filename | Dateiname |
Wavelength | Wellenlänge, bei der gemessen wurde |
Averages | Zahl der Mittelungen pro Zeitkurve |
Runs | Zahl der unabhängigen Messungen pro Zeitkurve |
Filter | verwendete Filter kommaseparierte Liste |
Anmerkungen
- Wellenlänge
- Das ist die tatsächliche Wellenlänge, bei der gemessen wurde, auch wenn aus dem Dateinamen etwas anderes hervorzugehen scheint.7)
- Filter
- Mehrere Filter können gleichzeitig in Benutzung sein.
- Im Falle mehrerer Filter eine kommaseparierte Liste von Filterbezeichnungen
- Filter werden durch ein einheitliches Bezeichnungsschema gekennzeichnet:
XX###
XX
steht für den Filtertyp: LP - long pass; SP - short pass; BP - band pass###
steht für die charakteristische/nominale Wellenlänge des Filters- Im Falle von BP lautet das Schema:
BP###-###
(mit Anfangs- und Endwellenlänge des Bandes)
COMMENT
Solange der Kommentar am Ende der jeweiligen Datei steht, kann hier als Freitext alles angegeben werden, was nützlich und/oder sinnvoll erscheint.
Beispiele
Nachfolgend das Beispiel einer Infodatei für TA-Messungen mit der vollständigen Anzahl von (möglichen) Feldern und Blöcken. Je nach Einsatzgebiet können manche Felder und/oder Blöcke wegfallen.
Weiter unten folgen dann noch spezifische Beispiele für einzelne Einsatzgebiete.
TA Info file - v. 0.2d (2012-03-31) GENERAL Filename: Date: Time start: Time end: Operator: Label: Spectrometer: Software: Runs: Shot repetition rate: SAMPLE Name: Description: Preparation: Cuvette: TRANSIENT Points: Trigger position: Length: SPECTROGRAPH Type: Model: Aperture front: Aperture back: DETECTION Type: Model: Power supply: Impedance: Time constant: RECORDER Model: Averages: Sensitivity: Bandwidth: Time base: Coupling: PUMP Type: Model: Wavelength: Power: Repetition rate: Tunable type: Tunable model: Tunable dye: PROBE Type: Model: Wavelength start: Wavelength stop: Wavelength step: Wavelength sequence: Power: Filter: Background: TEMPERATURE Temperature: Controller: Cryostat: Cryogen: MFE Field: Coil type: Coil model: Power supply: Gaussmeter: TIME PROFILES Scan 1 Filename: Wavelength: Averages: Runs: Filter: Scan 2 Filename: Wavelength: Averages: Runs: Filter: COMMENT
Beispieldatei für Freiburg
- ta-freiburg.info
TA Info file - v. 0.2d (2012-03-31) GENERAL Filename: test Date: 20xx-xx-xx Time start: 00:00:00 Time end: 00:00:00 Operator: A. Kabelschacht Label: Testprobe Spectrometer: LP920-K Software: L900, Version 6.9.1 Runs: 1 Shot repetition rate: 0.0625 Hz SAMPLE Name: FAD Description: FAD in Puffer Preparation: Cuvette: TRANSIENT Points: 2000 Trigger position: 341 Length: 10 us SPECTROGRAPH Type: Czerny-Turner with Triple Grating Turret Model: standard Aperture front: Aperture back: DETECTION Type: PMT Model: standard Power supply: standard Impedance: 50 Ohm Time constant: RECORDER Model: Averages: 10 Sensitivity: Bandwidth: 1.0 Time base: 5 ns Coupling: PUMP Type: Laser Model: Wavelength: 460 nm Power: Repetition rate: 10 Hz Tunable type: OPO Tunable model: PROBE Type: Lamp Model: standard Wavelength start: 385 nm Wavelength stop: 655 nm Wavelength step: 10 nm Wavelength sequence: up Power: Filter: Background: lamp TEMPERATURE Temperature: 285 K Controller: Cryostat: none Cryogen: H2O COMMENT Und hier gibt's ein bisschen Freitextkommentar - aber bitte OHNE Umlaute und andere Sonderzeichen!
Beispieldatei für Oxford
- ta-oxford.info
TA Info file - v. 0.2d (2012-03-31) GENERAL Filename: test Date: 20xx-xx-xx Time start: 00:00:00 Time end: 00:00:00 Operator: A. Kabelschacht Label: Test sample Spectrometer: Oxford CRY Lab Software: Slow20111104 Runs: 1 Shot repetition rate: 1/20 Hz SAMPLE Name: FAD Description: FAD in buffer Preparation: Cuvette: Hellma QS 10.00 TRANSIENT Points: 25000 Trigger position: 2500 Length: 50 us SPECTROGRAPH Type: Ebert-Fastie Model: Oriel 77250 Aperture front: Aperture back: DETECTION Type: PMT Model: Hamamatsu R928 Power supply: Brandenburg 476R Impedance: 500 Ohm Time constant: 50 ns RECORDER Model: Iwatsu-LeCroy LT342L 500 MHz Averages: 1 Sensitivity: 5.0 mV Bandwidth: 500 MHz Time base: 5.0 us Coupling: DC PUMP Type: Laser Model: Continuum Surelite-1 Wavelength: 450 nm Power: 3 mJ Repetition rate: 10 Hz Tunable type: Dye Tunable model: Sirah Cobra Tunable dye: Coumarin-450 PROBE Type: Lamp Model: Oriel 66021 Wavelength start: 370 nm Wavelength stop: 650 nm Wavelength step: 10 nm Wavelength sequence: 530-650,530-370 Power: Filter: LP390,LP500 Background: TEMPERATURE Temperature: Controller: Oxford ITC-503S Cryostat: Oxford Instruments Cryogen: LN2 MFE Field: 22 mT Coil type: Helmholtz Coil model: Power supply: Gaussmeter: TIME PROFILES Scan 1 Filename: Wavelength: Averages: Runs: Filter: Scan 2 Filename: Wavelength: Averages: Runs: Filter: COMMENT
struct
) verwendet werden.