Viele Jungforscher insbesondere in der Physik sind damit beschäftigt, Messaufbauten zu konzipieren, um spezielle experimentelle Untersuchungen durchzuführen. Häufig haben sie den Vorteil, dass sie bereits bestehende Aufbauten und Messprogramme in ihren Arbeitsgruppen vorfinden. Wenn nicht, kann wertvolle Zeit verlorengehen, ein Konzept zur Aufnahme der gewünschten Daten zu erstellen und apparativ umzusetzen. Die apparative Ausstattung ist meistens schnell zusammengekauft. Was von Grund auf neu erstellt werden muss und in der Regel die meiste Zeit benötigt, ist die Koordination aller Komponenten.
Die Erstellung des Messprogrammes stellte sich als Aspekt mit dem höchsten Zeitaufwand heraus. Das lag und liegt bis heute daran, dass selbst in einem relativ einfachen Programm unendlich viele Fehler aller Art, angefangen von einfachen Programmierfehlern bis hin zu gravierenden logischen Fehlern, auftauchen, die dann nach und nach ausgemerzt werden müssen. Viele kommen erst nach Jahren zum Vorschein. Die nachfolgend gezeigten „Struktogramme“ sind unabhängig von jeder Computersprache, auch wenn ich einige Basic-Anweisungen verwendet habe, und können für jede „Plattform“ übernommen werden, egal ob die Sprache C++, Java, oder sogar Python lautet und auch egal, welches Betriebssystem verwendet wird. Für alle Anweisungen gibt es in allen Sprachen eine Entsprechung. Egal, ob Basic, PHP C++ oder Python: Eine Schleife bleibt eine Schleife und eine logische Abfrage eine eben solche.
Hinweise: Überwiegend habe ich keine „LOOPs“, also Schleifenanweisungen, direkt gekennzeichnet, es sei denn, ich meinte, ohne explizite Erwähnung könnte ich missverstanden werden. Immer dann, wenn z.B. ein „I = 1 to NP“ auftaucht, ist das Durchlaufen des Parameters „I“ von 1, 2, 3 … bis zur Zahl „NP“ gefordert, der Befehl also „NP-mal“ zu wiederholen mit verändertem „I“.
Direkte „Befehle“, z.B. PRINT, GET usw….“, habe ich versucht, durchgängig in Großschrift hervorzuheben. Reine Kommentare sind dagegen kursiv dargestellt
Die Funktion FN(I) sowie Verweise auf SUBROUTINES sollten GROß und fett gedruckt sein. Gewünschte Funktionen der Routinen sind selbsterläuternd.
Wer meint, der Autor eines solchen Skriptes hätte einen „Hau“ sollte unbedingt das Buch: „Querzeit“ des Autoren Uwe R. Frank lesen, erschienen im GRIN-Verlag und in jedem Buchhandel erhältlich.
Prolog
Viele Jungforscher insbesondere in der Physik sind damit beschäftigt, Messaufbauten zu konzipieren, um spezielle experimentelle Untersuchungen durchzuführen. Häufig haben sie den Vorteil, dass sie bereits bestehende Aufbauten und Messprogramme in ihren Arbeitsgruppen vorfinden. Wenn nicht, kann wertvolle Zeit verlorengehen, ein Konzept zur Aufnahme der gewünschten Daten zu erstellen und apparativ umzusetzen. Die apparative Ausstattung ist meistens schnell zusammengekauft. Was von Grund auf neu erstellt werden muss und in der Regel die meiste Zeit benötigt, ist die Koordination aller Komponenten.
Im Rahmen einer „Postdoc“-Tätigkeit an der „University of Connecticut (UCONN)“ habe ich sehr erfolgreich einen Zwei-Photonen Messplatz konzipiert und aufgebaut. Herzstück des Messaufbaues war ein Computer, der sowohl die von mir zu erstellenden Mess- und Auswerteprogramm als auch die interaktive Ansteuerung der mechanischen Komponenten, die Speicherung der erhaltenen Daten etc. zu übernehmen hatte.
Es war eine große Herausforderung, mit dem Apple II – Computer als Herzstück der Messapparatur auskommen zu müssen. Technische Daten: CPU der Baureihe 6502 mit 1 MHz Taktfrequenz; Programmiersprache: BASIC; Hauptspeicher: 64 kB RAM; als Speichermedium fungierten zwei „Floppy-discs“ mit 5 ¼“ Durchmesser; der Monitor zeigte ein grünes Bild. Obwohl ich noch eine A/D-Wandlerkarte und eine CP/M-Erweiterung beisteuerte, war die Leistungsfähigkeit des Rechners für heutige Begriffe und für die zu lösende Aufgabe ausgesprochen mager. Viele Wissenschaftler hätten gar nicht erst mit der Arbeit begonnen. Andererseits ist eine Beschränkung der Möglichkeiten gleichzeitig von Vorteil insofern, als das im Vorfeld genauestens überlegt werden muss, was wirklich notwendig ist und was weggelassen werden kann. Konzentration auf das Wesentliche ist die Folge, was sich auch tatsächlich positiv ausgewirkt hat.
Die Erstellung des Messprogrammes stellte sich als Aspekt mit dem höchsten Zeitaufwand heraus. Das lag und liegt bis heute daran, dass selbst in einem relativ einfachen Programm unendlich viele Fehler aller Art, angefangen von einfachen Programmierfehlern bis hin zu gravierenden logischen Fehlern, auftauchen, die dann nach und nach ausgemerzt werden müssen. Viele kommen erst nach Jahren zum Vorschein.
Der geneigte Leser mag nun glauben, ein Struktogramm, das für ein derart veraltetes System erstellt wurde, sei in der heutigen, modernen Zeit mit unendlich leistungsfähigeren Computern und vorhandenen ausgefeilten Programmen überflüssig, jedenfalls zu nichts Aktuellem zu gebrauchen.
Diese Meinung teile ich nicht! Messaufbauten in der Physik sind noch immer und werden immer „fliegend“ (d.h. nicht permanent und unveränderbar) bleiben; noch immer müssen für neue Anordnungen spezielle Programme geschrieben und sich auf das Wesentliche konzentriert werden. Ich behaupte sogar, aufgrund der äußerst leistungsfähigen Computer und der grenzenlosen Möglichkeiten, die diese Leistungsfähigkeit eröffnet, ist die Wahrscheinlichkeit, sich in der Konzeption eines Messaufbaues zu verlieren, viel höher.
Die Struktogramme für das Messprogramm sind separat unter dem Titel: „Zwei-Photonen-Spektroskopie - Anleitung zur Erstellung eines Messprogramms – Struktogramme“ im GRIN-Verlag veröffentlicht worden. Das vorliegende Büchlein ist einerseits völlig unabhängig vom Inhalt des o.a. Werkes, andererseits resultiert es daraus und kann durchaus im Zusammenhang gelesen werden. Die Verbindung zwischen beiden Programmen besteht im Wesentlichen darin, dass das „Zwei-Photonen-Messprogramm“ die detektierten Emissionen in dem Feld Y(I) und die dazugehörige Energie im Feld X(I) speichert, und die File-Utilities auf genau diese beiden Felder zugreifen.
Die nachfolgend gezeigten „Struktogramme“ sind unabhängig von jeder Computersprache, auch wenn ich einige Basic-Anweisungen verwendet habe, und können für jede „Plattform“ übernommen werden, egal ob die Sprache C++, Java, oder sogar Python lautet und auch egal, welches Betriebssystem verwendet wird. Für alle Anweisungen gibt es in allen Sprachen eine Entsprechung. Egal, ob Basic, PHP C++ oder Python: Eine Schleife bleibt eine Schleife und eine logische Abfrage eine eben solche.
Die File-Utilities sind hilfreich dort, wo keine geeignete Bibliothek vorhanden, zu teuer zu erwerben oder einfach nur nicht eingebunden werden kann. Außerdem demonstrieren sie mit einfachen Mitteln, wie ein „Fit“, also die Anpassung einer theoretisch zu erwartenden Linie an eine real aufgenommene Spektrallinie, erfolgreich und einfach programmiert werden kann.
Ich wünsche viel Erfolg bei der Umsetzung!
[...]
- Quote paper
- Dr. Uwe Sliwczuk (Author), 2016, File Utilities zur Erstellung eigener wissenschaftlicher Auswerteprogramme, Munich, GRIN Verlag, https://www.hausarbeiten.de/document/337790