Entwicklerdokumente

Detektornutzung
Analyse und Definition: Simulation der Detektoren

Ergänzende Bemerkungen zum Testzähler von Kay Schützler


Autor: U. Sacklowski
Datum: 24.01.01

Mit dem Testzähler für 0-dimensionale Detektoren wird die Möglichkeit geboten, vom Programm her mit einem 0-dimensionalen Detektor zu arbeiten, ohne dass dieser physisch vorhanden ist!

Voraussetzung:

1. .ini-File
     [Device0]
     Type=Test
     Name=[A-z]+     (z.B. Test)

2. Datei 'testdev.dat' in dem Verzeichnis, aus dem das Programm (develop.exe) gestartet wird.

Die durch den Testzähler angezeigten Werte beziehen sich immer auf den aktuellen Motor, - ausgewählt zum Beispiel innerhalb der 'Manuellen Justage' oder innerhalb des 'Scan-Fensters'. Ausgewählt werden kann jeder Motor aus dem .ini-File.

Die Datei 'test.dat' enthält Zählwerte, wie sie bei der Physik an einem Topographiearbeitsplatz an einer realen Probe gemessen wurden. Dabei hat man dies bei unterschiedlichen Motorstellungen für Beugung fein, Tilt und den Kollimator gemacht. Diese Zählwerte sind nicht unabhängig voneinander, - d.h., das z.B. ein Zählwert an einer Beugung fein - Position für unterschiedliche Tilt-Stellungen unterschiedlich ist. (testdev.dat enthält eine komplexe Intensitätsverteilung über  die drei Motoren.)
Beispiele hierzu:
Tilt: 0,   Collimator: 0,   DF-Maximum bei   -80
Tilt: -30    Collimator: 0,   DF-Maximum bei   -30
D.h., wählt man einen dieser drei Motoren aus, bekommt man real vermessene Werte. Bei den anderen Motoren gibt das Programm fiktive Werte aus.

Die angezeigten Werte sind unabhängig davon, ob Motoren physisch angeschlossen sind, oder nicht. Diesen Sachverhalt beschreibt man im .ini-File im [Motor] - Abschnitt:

Type=TMotor     /* Testmotor, physisch nicht vorhanden */
Type=C-812ISA     /* Motor vom Typ C-812ISA vorhanden */

Der Bezug auf einen speziellen Motor erfolgt über den Name-Parameter. Als Beispiel dazu zwei Motoren in einem .ini-File:

[Motor0]          /* Testmotor für Beugung fein */
Name=DF
Type=TMotor
...
[Motor1]          /* realer Motor für Tilt */
Name=Tilt
Type=C-812ISA
...

(Die Namen für die Motoren sind in motors.cpp vereinbart. Hier zeigt sich, daß für den gleichen Motor unterschiedliche Namen verwendet werden können. Dies hat seine Ursache in den unterschiedlichen Verfahrenswelten Topographie und Diffraktometrie/Reflektometrie. So sind identisch:
DF, Omega, Beugung fein
Tilt, Psi
... usw.)