Track-Lab
Wie Docking‑Panels Physik‑Datenanalysesoftware anpassungsfähiger machten
Beim Institut für Experimentelle und Angewandte Physik, Tschechische Technische Universität haben Forscher Track-Lab entwickelt - eine neuartige Software für Datenerfassung und ‑analyse. Entwickelt für den effizienten Einsatz in modernen Teilchenphysik-Experimenten (wie am Large Hadron Collider am CERN), ist Track Lab ein flexibles Tool, mit dem Wissenschaftler Daten‑Workflows erstellen, indem sie in der Benutzeroberfläche modulare Elemente wie Filter, Plotter und Dateischreiber grafisch miteinander verbinden. So lassen sich Messungen bereits während der Erfassung bequem visualisieren und in Echtzeit filtern, um knappe Rechenressourcen zu schonen. Ein wichtiger Meilenstein in der Entwicklung von Track Lab war die Integration von KDDockWidgets, eine Docking-Lösung von KDAB, die das Nutzungserlebnis deutlich vielseitiger machte.
Überwindung anfänglicher Herausforderungen
Die zentrale Herausforderung des Teams lag darin, eine akzeptable Balance zwischen Performance und Flexibilität zu finden. Der leitende Entwickler Petr Mánek erklärt: „Die größte Schwierigkeit bestand darin, Analysefunktionen bereitzustellen, die sich gut an die sich wandelnden Bedürfnisse der Benutzer anpassen lassen, ohne die Datenverarbeitungsgeschwindigkeit zu beeinträchtigen.“ Aus diesem Grund waren die frühen Versionen von Track Lab auf einen linearen „Source-to-Sink“-Workflow beschränkt, bei dem jedes Datenverarbeitungselement höchstens einmal verwendet werden konnte. Das hielt die Performance hoch und die Benutzeroberfläche übersichtlich, schränkte aber die möglichen Anwendungen stark ein. Beispielsweise war es nicht ohne weiteres möglich, Daten zu filtern und die Ergebnisse direkt zu visualisieren, ohne eine zusätzliche Datei zu verwenden – ein unnötig umständlicher Umweg.
Um diese Einschränkung zu beheben, überarbeitete das Team den Kern von Track Lab in Version 1.0, der ersten großen öffentlichen Version, komplett und fügte Unterstützung für Daisy-Chaining hinzu. Diese Version führte „Daisy‑Chaining“ ein und erlaubte Workflows in Baumstruktur, mit denen sich deutlich komplexere Topologien abbilden und zahlreiche bisher unerreichbare Anwendungen freischalten ließen. Diese neue Freiheit brachte jedoch eine große UI‑Herausforderung mit sich: die Verwaltung einer sich ständig ändernden Vielzahl interaktiver Panels, die die einzelnen Verarbeitungselemente steuern.
Beispiel für flexibles Window-Docking in Track Lab
Warum KDDockWidgets? Eine moderne Umsetzung einer bekannten Funktion
Um mit der zunehmenden Komplexität und Dynamik der Track‑Lab‑Oberfläche umzugehen, suchten die Entwickler nach einer Lösung, mit der Nutzer Panels im Fenster verschieben und das Layout während der Laufzeit anpassen können. Ein solches Docking‑System, oft als Multiple Document Interface (MDI) bezeichnet, wurde zwar von der zugrunde liegenden Qt‑Widgets‑Bibliothek bereitgestellt, war für Track Lab aber keine Option, da die Software gerade erst auf Qt Quick migriert worden war. Qt Quick löst Qt Widgets in aktuellen Versionen ab, bietet jedoch keinen geeigneten MDI‑Ersatz. Das Team benötigte daher eine moderne, zukunftssichere Lösung. „Wir brauchten ein Docking‑System, das nahtlos mit Qt Quick funktioniert, um Track Lab zukunftssicher zu machen“, betont Petr.
KDDockWidgets erwies sich als ideale Wahl und bot:
- MDI‑ähnliche Flexibilität, um Panels in Gittern oder Tabs anzuordnen.
- Reibungslose, effiziente Interoperabilität mit Qt Quick.
- Robuste Serialisierung, mit der Nutzer komplette Arbeitsbereiche speichern und wiederherstellen können.
Der aktive Entwicklungszyklus und der professionelle Support von KDAB untermauerten diese Entscheidung zusätzlich.
Vorteile für Entwickler und Benutzer
Für die Track‑Lab‑Entwickler bedeutete KDDockWidgets, dass sie kein eigenes Docking‑System bauen mussten – eine Aufgabe, die sie auf mehrere Monate Aufwand geschätzt hatten. Stattdessen konnten sie sich darauf konzentrieren, die Datenverarbeitungsfunktionen ihres Produkts weiter zu verfeinern.
Für Endanwender lieferte die Bibliothek ein rundes Nutzungserlebnis, vergleichbar mit modernen integrierten Entwicklungsumgebungen (IDEs):
- Dynamisches Andocken und Verschieben von Panels für personalisierte Layouts.
- Mühelose Speicherung und Wiederherstellung des Arbeitsbereichs durch Serialisierung.
- Verbesserte Performance, selbst bei Dutzenden aktiver Panels.
„KDDockWidgets verschaffte unseren Nutzern die Raffinesse kommerzieller Werkzeuge, ohne dass wir das Rad neu erfinden mussten“, so Petr.
Datenverarbeitungs-Pipeline für sechs Timepix3-Detektoren bei ATLAS, CERN
Andockbare Panels mit Live-Daten, die bei ATLAS erfasst und mit KDDockWidgets angeordnet wurden
Ein Analyse-Panel-Layout, das die Eigenschaften der erkannten Spuren (Energie vs. Fläche) in einem 2D-Histogramm darstellt.
Ein Analyse-Panel-Layout, das die Fähigkeit von Track Lab demonstriert, Tracks in Echtzeit zu filtern, während die Messung läuft.
Ein Diagnose-Panel-Layout, das die korrekte Reaktion eines Timepix3-Detektors auf Änderungen der Konfigurationsparameter anzeigt.
Ein häufig verwendetes Kalibrierungsfeldlayout, das zum Ausgleich von 65.536 Pixeln eines einzelnen Timepix3-Detektors verwendet wird, damit diese mit ähnlicher Empfindlichkeit gemeinsam messen können.
Ausblick
Durch die Einführung von KDDockWidgets hat Track Lab einen neuen Standard für wissenschaftliche Software dieser Kategorie gesetzt. Forschende können das Programm flexibel für den jeweiligen Einsatzzweck anpassen und behalten dabei die hohe Performance, die moderne Physikforschung erfordert. Für alle, die eine vielseitige, skalierbare Lösung für Datenerfassung und ‑analyse suchen, bietet Track Lab eine überzeugende Plattform – eine, die sich mit den Anforderungen der modernen Wissenschaft weiterentwickelt.

