SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Downloaden Sie, um offline zu lesen
Bedienungsanleitung zum OSSI-Programm

                                Georg Michel


1     Einleitung
OSSI ist die Abk¨rzung f¨r Optical Systems Simulation Interpreter. Es ist
                   u        u
ein Interpreter f¨r eine Skriptsprache, mit der quasi-optische Systeme im Mil-
                 u
limeterwellenbereich beschrieben, synthetisiert und simuliert werden k¨nnen.
                                                                        o
Es handelt sich bei OSSI um eine objektorientierte Erweiterung der uni-
versellen Skriptsprache Tcl/Tk. Damit stehen dem Anwender alle Konstrukte
f¨r allgemeine Programmieraufgaben zur Verf¨gung, inklusive der M¨glichkeit,
 u                                             u                      o
grafische Benutzeroberfl¨chen zu erstellen. Details hierzu sind in [1] zu finden.
                          a
Tcl/Tk ist urspr¨nglich f¨r die prozedurale nicht f¨r die objektorientierte
                   u        u                          u
Programmierweise entwickelt worden. Deshalb wurde eine Erweiterung na-
mens objectify f¨r Tcl/Tk verwendet, die es gestattet, Klassen in C++ zu
                 u
definieren und Instanzen dieser Klassen in Tcl/Tk einzubinden. Eine genaue
Beschreibung der objectify-Erweiterung ist in der Man-Page zu objectify zu
finden (siehe [2]).
In OSSI wird nur eine einzige Klasse namens apertur definiert, die – wie
ihr Name schon sagt – eine Apertur im dreidimensionalen Raum darstellt.
Dabei handelt es sich um eine ebene Apertur, deren Parameter als Elemente
(“slots” in der objectify-Terminologie) der Klasse apertur definiert sind. Es
kann sich bei einer solchen Apertur um einen flachen Spiegel, eine Blende
(z.B. Gyrotronfenster) oder eine Beobachtungs- bzw. Quellebene handeln.
OSSI ist nur ein Baukasten, um quasi-optische Probleme zu l¨sen. Es ist
                                                                   o
kein eigenst¨ndiges Programm, das fertige L¨sungen liefert. Es liegt in der
            a                                   o
Hand des Anwenders, was mit diesem Baukasten gebaut wird. Prinzipiell
kann der Quellcode zu Rate gezogen werden bzw. gegebenenfalls erweitert
werden. In den folgenden beiden Abschnitten werden die Elemente (“slots”)
und Methoden der Klasse apertur n¨her beschrieben.
                                     a


2     Beschreibung der Klasse apertur
2.1    Elemente bzw. Slots
Die Klasse Apertur hat zwei zweidimensionale Datenfelder, die nur uber    ¨
Methoden zug¨nglich sind. Das erste ist reell und heißt amp, es dient der Spe-
             a
icherung von reellen Gr¨ßen wie Amplituden, Leistungsdichten, Phasenkor-
                       o


                                      1
rektoren o.¨. Was im konkreten Fall im Feld amp steht, h¨ngt von den vorher
           a                                              a
aufgerufenen Methoden ab.
Das zweite große Feld ist komplex und heißt ap, es speichert die komplexe
Feldverteilung auf der jeweiligen Apertur unter der Annahme, daß die Zeit-
abh¨ngigkeit ejωt ist.
    a
Einige Elemente sind f¨r alle Instanzen von apertur gleich. So wird bei der
                       u
Erzeugung einer Instanz die Dimension der o.g. Felder ben¨tigt. Andere
                                                                o
Gr¨ßen, die bei der Erzeugung einer Instanz bekannt sein m¨ssen, sind die
   o                                                           u
verwendete Wellenl¨nge und die Ausdehnung der Aperturen. Deshalb wer-
                    a
den beim Erzeugen einer Instanz f¨nf Tcl-Variablen als Elemente (slots) in
                                    u
die Instanz aufgenommen, die vor der Erzeugung eines Objekts definiert sein
m¨ssen. Es handelt sich hierbei um nx, ny, xm, ym, lambda. Die ersten bei-
  u
den geben die Dimension der Felder ap und amp in x und y an. Sie m¨ssen u
Zweierpotenzen sein, da f¨r Feldprojektionen die FFT zum Einsatz kommt.
                          u
Die Parameter xm und ym geben die halbe Breite und H¨he aller noch zu
                                                            o
erzeugenden Aperturen an (sozusagen den “Radius” des Rechtecks in x und
y) und lambda ist die Wellenl¨nge in Millimetern. Wenn diese f¨nf Variablen
                              a                                 u
definiert sind, kann man Objekte mittels “apertur objektname” erzeugen.
Ist ein Objekt erzeugt, so sollten zun¨cht den Elementen Werte zugewiesen
                                      a
werden, die die Lage und Orientierung der Apertur beschreiben. Die Lage
der Apertur im globalen Koordinatensystem wird durch die slots (xks, yks,
zks). Jede Apertur hat ein lokales Koordinatensystem rl , dessen Orientierung
zun¨chst mit dem globalen Koordinatensystem rg ubereinstimmt. Die Ori-
    a                                              ¨
entierung der Apertur wird durch die Dyade Dm bestimmt, es gilt

                      rg = Dm · rl + (xks, yks, zks)T .

Die Dyade Dm ist zun¨chst die Einheitsdyade und nicht direkt aus Tcl/Tk
                       a
zug¨nglich. Sie wird durch Methoden, die im n¨chsten Abschnitt beschrieben
   a                                          a
sind, mit Werten belegt.
Zwei weitere wichtige Slots sind phi und rcos. Sie bezeichnen den Einfall-
swinkel des paraxialen Mikrowellenstrahls bzw. seinen Richtungskosinus gegen¨ber
                                                                            u
der Apertur. Sie werden zur Berechnung der Phasenverschiebung bei der
Anwendung von d¨nnen Linsen bzw. flachen Spiegeln auf das Feld in ap
                   u
ben¨tigt.
    o
Alle Winkel in OSSI werden im Bogenmaß gemessen, phi==0 und rcos==1
bedeuten senkrechten Einfall. Beide Slots m¨ssen g¨ltige Werte haben, wenn
                                            u      u
Operationen durchgef¨hrt werden, die sich auf flache Spiegel bzw. d¨nne
                      u                                                u
Linsen beziehen.




                                     2
2.2     Methoden
2.2.1   mkdm phix phiy phiz str
Diese Methode legt die Orientierung der Apertur im globalen Koordinaten-
system fest und belegt Dm mit Werten. Der Parameter phi[xyz] legt den
Drehwinkel um die jeweilige Achse des globalen Koordinatensstems fest. Der
String str ist eine Kombination aus den Buchstaben x, y und z und gibt die
Reihenfolge der Drehungen an.

2.2.2   dreh phix phiy phiz str
Diese Methode hat die gleiche Sysntax wie mkdm, dient jedoch der inkre-
mentellen Drehung der Apertur, d.h. es wird ausgehend von der aktuellen
Dyade Dm weitergedreht. Wenn Dm die Einheitsmatrix ist (z.B bei Pro-
grammbeginn), dann sind dreh und mkdm identisch.

2.2.3   rotz phiz
Diese Methode dreht die Apertur um ihre lokale z-Achse um phiz rad.

2.2.4   gherm rampl iampl ordx ordy w0x w0y z0x z0y
Diese Methode berechnet das Feld eines Gauß-Hermite Strahls. Die Param-
eter rampl und iampl geben den Real- und Imagin¨rteil der Amplitude an.
                                                 a
ordx und ordy sind die Ordnung des Hermite-Polynoms in x und y. w0x und
w0y sind die Waist in x un y. z0x und z0y ist die Position der Waist in x
und y relativ zur Apertur. Der Gauß-Hermite-Strahl steht immer senkrecht
und mittig auf der Apertur, gekippte und versetzte Strahlen k¨nnen mit-
                                                              o
tles Drehung und Verschiebung der Apertur und Projektion auf eine andere
Apertur erzeugt werden.

2.2.5   gherma rampl iampl ordx ordy w0x w0y z0x z0y
Diese Methode entspricht gherm mit dem Unterschied, daß das erzeugte Feld
zum bereits vorhandenen hinzuaddiert wird.

2.2.6   proj target
Diese Methode propagiert das Feld (im Element ap) der Apertur, auf der die
Methode ausgef¨hrt wird, auf die Apertur target. Dabei muß das Skalarpro-
              u
dukt der Normalen der Apertur (ex × ey ), auf der die Methode ausgef¨hrt
                                                                     u



                                    3
wird, und der Zielapertur positiv sein, d.h. sie m¨ssen in den gleichen Hal-
                                                   u
braum zeigen. Wenn die Zielapertur im Sinne ihrer Normalen vor der Apertur
liegt, auf der die Methode ausgef¨hrt wird, erfolgt eine Vorw¨rtspropagation
                                 u                           a
des Strahls zur Zielapertur, anderenfalls eine R¨ckw¨rtspropagation. Nach
                                                  u    a
dem Aufruf der Methode ist das Array ap der Zielapertur mit dem propagierten
Feld belegt.

2.2.7    plampsh a xmin xmax ymin ymax
Diese Methode plottet den Betrag des Datenfeldes amp, falls a==1 bzw. ap
anderenfalls uber x und y in Millimeter in einem Bereich, der von xmin,
             ¨
xmax, ymin und ymax begrenzt wird. Es erscheint ein Eingabeprompt des
Numerikprogramms Yorick (siehe [3]). Hier k¨nnen Grafikdateien, ASCII-
                                             o
und Bin¨rdaten geschrieben werden, eine Umrechnung in dB u.¨. vorgenom-
       a                                                     a
men werden. Die Yorick-Arrays x, y und z beinhalten die lokalen x- und
y-Koordinaten sowie den Betrag des Feldes amp bzw. ap. Das Kommando
hcps,"bild" schreibt z.B. eine Postscriptdatei bild.ps des aktuell sicht-
baren Bildes. Wenn am Eingabeprompt nur Return gedr¨ckt wird, l¨uft das
                                                     u           a
OSSI-Skript weiter.

2.2.8    plampc a xmin xmax ymin ymax
Diese Methode entspricht plampsh mit dem Unterschied, daß Betrag (Kon-
turlinien) und Phase (Farbe) in ap dargestellt werden. Wenn a==1 wird die
in amp stehende statt der tats¨chlichen Phase verwendet. Das Yorick-Array z
                              a
hat hier drei Dimensionen. Die dritte Dimenstion kann den Index 1 (Betrag)
oder 2 (Phase) haben.

2.2.9    wapertur filename
Diese Methode schreibt den Inhalt des Feldes ap im Bin¨rformat in die Datei
                                                      a
filename.

2.2.10    rapertur filename
Diese Methode liest den Inhalt des Feldes ap von der Datei filename im
Bin¨rformat.
   a

2.2.11    arapertur filename
Diese Methode liest den Inhalt des Feldes ap von der Datei filename im
Bin¨rformat und addiert ihn zum beretis vorhandenen Inhalt des Feldes ap.
   a


                                    4
2.2.12   mkspieg filename xsource ysource zsource xthis ythis zthis
         xtarget ytarget ztarget
Diese Methode setzt die Elemente Dm , xks, yks, zks, phi und rcos so, daß die
Apertur einen flachen Spiegel bei (xthis, ythis, zthis) repr¨sentiert, der
                                                               a
einen Strahl, der von (xsource, ysource, zsource) kommt, nach (xtarget,
ytarget, ztarget) reflektiert. filename muß auf .bin enden. Wenn eine
Datei diesen Namens im aktuellen Verzeichnis existiert, dann wird angenom-
men, daß sie mit wamplitude geschrieben wurde und in das Feld amp als
Phasenkorrektor eingelesen. Nach dem Aufruf dieser Methode zeigt der Nor-
malenvektor der Apertur, auf der die Methode ausgef¨hrt wird, vom Quellpunkt
                                                    u
weg. D.h. eine Projektion vom Quellpunkt zu dieser Apertur ergibt eine
Vorw¨rtsprojektion und eine Projektion von der Zielapertur zu dieser Aper-
      a
tur eine R¨ckw¨rtsprojektion (jeweils unter der Maßgabe, daß das Skalarpro-
          u     a
dukt der beiden Normalenvektoren positiv ist, s.o.).

2.2.13   toggle
Diese Methode dreht die Apertur um 180◦ um ihre eigene y-Achse unter
Beibehaltung der Feldbelegung im globalen Koordinatensystem. Der Sinn
besteht darin, den Normalenvektor der Apertur in seine Gegenrichtung zeigen
zu lassen, damit im Falle eines flachen Spiegels nach einer Vorw¨rtsprojektion
                                                               a
von einer Quellapertur und eventueller Anwendung eines Phasenkorrektors
eine weitere Vorw¨rtsprojektion zur nachfolgenden Zielapertur erfolgen kann.
                  a
Im Falle einer d¨nnen Linse oder bloßen Beobachtungsebene ist toggle nicht
                u
anzuwenden.

2.2.14   mkell rx ry
Diese Methode berechnet einen flachen (d.h. phi und rcos m¨ssen gesetzt
                                                            u
sein) elliptischen Spiegel mit den Kr¨mmungsradien rx und ry in x- und y-
                                     u
Richtung und legt den korrespondierenden Phasenkorrektor in amp ab. Der
entsprechende Ellipsoid hat im lokalen Koordinatensystem in der x-z-Ebene
immer einen kreisf¨rmigen Querschnitt.
                    o

2.2.15   mktor rx ry
Diese Methode berechnet einen flachen (d.h. phi und rcos m¨ssen gesetzt sein)
                                                          u
toroidalen Spiegel mit den großen und kleinen Radien (nicht Kr¨mmungsradien)
                                                              u
rx und ry in x- und y-Richtung und legt den korrespondierenden Phasenko-
rrektor in amp ab. Der gr¨ßere der beiden Radien wird automatisch zum
                            o
großen Radius des Torus gemacht.

                                     5
2.2.16    brille xmin xmax ymin ymax
Diese Methode nimmt an, daß das Datenfeld amp mit einem g¨ltigen Phasenko-
                                                         u
rrektor belegt ist und wendent ihn auf das in ap stehende Feld an. Fel-
danteile außerhalb des Rechtecks, das durch xmin, xmax, ymin und ymax
beschrieben wird, werden abgeschnitten (spillover).

2.2.17    mkamp
Diese Methode schreibt den Betrag des Feldes in ap in das Array amp.

2.2.18    mkph
Diese Methode schreibt die Phase des Feldes in ap in das Array amp.

2.2.19    mkphk
Diese Methode erzeugt einen Phasenkorrektor. Dazu wird erwartet, daß im
Array amp die Istphase des einfallenden Feldes gespeichert ist und im Array
ap die Sollphase, mit der das Feld den Spiegel verl¨sst. Bei Verlassen der
                                                    a
Methode hat das Feld im Array ap die Phase des Phasenkorrektors.

2.2.20    mkquell l1 l2 rc
Diese Methode bereitet die Berechnung der Abstrahlung eines helikalen Launch-
ers in Verbindung mit einem nachgeschalteten quasi-elliptischen Spiegel vor.
Hierzu muß ez,local in Richtung vecex,gobal , sowie ey,local in Richtung ez,global . Da
der quasi-elliptische Spiegel im optischen Sinne ein tiefer Spiegel ist (entspr.
dicke Linse), werden hier die geometrischen Dimensionen des Spiegels im
Array amp abgespeichert. Die Berechnung dieser Daten geschieht unter der
Annahme, daß der Launcher auf der z-Achse des Gyrotrons liegt, wobei die
Mitte des gedachten, oder falls er nicht gekr¨pft ist, tats¨chlichen Cuts bei
                                                    o            a
zgyrotron = 0 liegt.
Die Apertur muß bei Aufruf dieser Methode o.g. Orientierung haben. Die
yglobal -Position muß 0 sein, die zglobal -Position h¨ngt vom jeweiligen Brillouin-
                                                      a
winkel und der Tiefe des quasi-elliptischen Spiegels ab. Die xglobal -Position
muß so gelegt werden, daß sie kleiner als der kleinste xglobal -Wert des quasi-
elliptischen Spiegels. Letzterer befindet sich in der xglobal > 0 Halbebene.
Die xglobal -Position wird bei der Berechnung der benutzt, um die lokale H¨he       o
des Spiegels auf der Apertur zu berechnen. D.h. nach dem Aufruf dieser
Funktion d¨rfen Position und Orientierung nicht mehr ver¨ndert werden.
              u                                                    a



                                         6
Die Parameter l1, l2, rc bezeichnen die Parameter l1 und l2 des quasi-
elliptischen Spiegels ([4], S. 30), rc ist der Kaustikraduis der Hauptmode im
Hohlleiter.

2.2.21   dendeeps xmin xmax ymin ymax nxm nym xmino xmaxo ymino ymaxo
         fnam a cm ph0 phv samp steig
Diese Methode berechnet nach vorherigem Aufruf von mkquell bzw. entsprechen-
der Belegung des Arrays amp mit einer geometrischen Spiegelkontur das ab-
strahlende Feld des (quasi-elliptischen) Spiegels auf der ebenden Apertur auf
der diese Methode aufgerufen wird. Die Orientierung muß dabei die gleiche
sein wie beim Aufruf von mquell.
xmin, xmax, ymin, ymax sind die Bregrenzung des (quasi-elliptischen) Spiegels
in lokalen Koordinaten. Diese Begrenzung sollte so klein wie m¨glich (Rechen-
                                                               o
zeit) und so groß wie n¨tig (Erfassung des gesamten Feldes) gew¨hlt wer-
                         o                                           a
den. nxm, nym sind die Anzahl der Abtastpunkte auf diesem Rechteck. Bei
der Wahl der Abtastpunkte sollte auf die Einhaltung des Abtasttheorems
geachtet werden.
xmino, xmaxo, ymino, ymaxo sind die Begrenzung des Rechtecks in lokalen
Koordinaten, auf dem das vom (quasi-elliptischen) Spiegel zur¨ckgeworfene
                                                                 u
Feld erwartet wird. F¨r die Gr¨ße gilt hier gleiches wie f¨r die Begrenzung
                      u          o                          u
auf dem Spiegel selbst. fnam ist ein String, der den Dateinamen des Output-
files des Pretterebnerschen Programms zur Berechnung der Modenmischung
im Hohlleiter angibt.
a ist der Radius des Hohlleiters am Beginn des Launchers. cm ist die Mitte des
Cuts und ph0 die azimutale Position (im Bogenmaß) des Cuts in Prettereb-
nerschen Koordinaten. phv ist die Verdrehung des Launchers im Bogenmaß
gegen¨ber der kanonischen Position (Cut auf negativer ygyrotron -Achse.
       u
samp gibt die normierte Abtastrate an. Wenn samp gleich 1 ist, so wird
bei λ/2 abgetastet, bei 0 ist die Abtastung unendlich dicht. Werte um 0,2
sind sinnvoll.steig gibt die Steigung des Tapers an (gleicher Wert wie im
Pretterebner-Programm).
Nach dem Aufruf von dendeeps sollte toggle aufgerufen werden, um das
Feld zur n¨chsten Apertur propagieren zu k¨nnen. Danach sollte man das
            a                                  o
Feld zun¨chst mittels wapertur abspeichern, um die aufwendige Berech-
          a
nung der Abstrahlung bei der Optimierung der restlichen Spiegel nicht erneut
durchf¨hren zu m¨ssen.
        u          u




                                     7
2.2.22   dendeepsold xmin xmax ymin ymax nxm nym xmino xmaxo ymino
         ymaxo fnam a cm ph0 phv samp steig
Diese Methode ist ¨quivalent zu dendeeps. Sie benutzt keine Bornapproxima-
                  a
tion und ist deshalb etwas schneller, aber ungenauer. F¨r samp sind Werten
                                                       u
um 0.7 sinnvoll.

2.2.23   maske xmin xmax ymin ymax
Diese Methode erwartet eine Leistungsverteilung im Array amp. Es wird ein
Ergebnis als String zur¨ckgegeben, der das Verh¨ltnis der Leistung inner-
                       u                          a
halb des Rechtecks (z.B. Spiegel) zur Gesamtleistung ausgibt. Man kann das
Ergebnis mit der Tcl-Funktion puts ausgeben, Beispiel: puts stdout [ap6
maske -80 100 -60 70].

2.2.24   leifenst r
Diese Methode berechnet die Leistungsverteilung im Array ap und gibt die
anteilige Leistung in einer kreisf¨rmigen Apertur als String zur¨ck, r ist dabei
                                  o                             u
der Radius des Fensters. Die Ausgabe kann wie bei maske erfolgen.

2.2.25   doit xmin xmax ymin ymax p1 p2 sx sy
Diese Methode erwartet, daß die Phase des Feldes in ap (z.B. mit mkphk
erzeugt) einen Phasenkorrektor repr¨sentiert, der in eine Spiegeloberfl¨che
                                      a                                  a
verwandelt werden soll. xmin, xmax, ymin, ymax begrenzen dabei ein Rechteck,
das so groß wie n¨tig (Beugungsverluste) und so klein wie m¨glich (Genauigkeit
                  o                                        o
der Abrollverfahrens) ist. Das Abrollen der Phase geschieht nach der Meth-
ode aus [4], S. 73. Nach dem Abrollen wird zur Erh¨hung der Genauigkeit das
                                                   o
Abrollergebnis auf den exakten Phasenwert gezwungen, wo die Feldamplitude
gr¨ßer als umax ∗p2 ist. An Stellen, wo die Amplitude kleiner als umax ∗p1 ist,
  o
bleibt das Abrollergebnis wie es ist. An den Stellen zwischen p1 und p2 gibt
es eine Zwischenl¨sung. sx und sy sind Kr¨mmungswerte, mit denen der
                    o                         u
Spiegel vor dem Abrollen ”vorgespannt” werden kann, sie sind meist Null.
Am Ende steht die Spiegelober߬che als abgerollte Phase im Array amp.
                                  a

2.2.26   mincurv xmin xmax ymin ymax rmin
Diese Methode verringert die Kr¨mmung einer im Array amp stehenden
                                     u
abgerollten Phase an Stellen, wo der Kr¨mmungsradius kleiner als rmin ist
                                           u
(siehe [4] S. 77). Sie muß wiederholt aufgerufen werden, bis kein Kr¨mmungsradius
                                                                    u
kleiner als rmin im Bereich xmin, xmax, ymin, ymax gefunden wird. Bei


                                       8
Aufruf dieser Methode muß der Slot rcos richtig gesetzt sein, um Phasen in
geometrische L¨ngen umrechnen zu k¨nnen.
               a                    o

2.2.27   wampascwo fnam xmin xmax ymin ymax nx ny geom
Diese Methode schreibt eine Spiegelober߬che im Array amp in globalen
                                                a
Koordinaten in eine ASCII-Datei. fnam ist ein String, der den Dateinamen
angibt. xmin, xmax, ymin, ymax, nx, ny beschreiben ein Rechteck incl.
Anzahl der Abtastpunkte in x und y. Wenn geom 1 ist (Normalfall), so wird
die tats¨chliche Spiegeloberfl¨che in mm in die Datei geschrieben. Hierzu
        a                       a
muß der Slot rcos richtig gesetzt sein. Wenn geom 0 ist, so wird das Phasen-
maß (Gangunterschied) auf dem Spiegel in globale Koordinaten umgerech-
net, was wenig sinnf¨llig ist. Sinnvoll ist dies nur bei der verwandten Methode
                    a
wampascii, die bei gleichem Parametersatz die Spiegelober߬che bzw. den
                                                                   a
Gangunterschied in lokalen Koordinaten ausrechnet.

2.2.28   wampcad fnam z0 xmin xmax ymin ymax nx ny
Diese Methode ist verwandt zu wampascwo aber schreibt eine AutoCAD-
kompatible Datei. Der Parameter geom entf¨llt (es wird immer die Oberfl¨che
                                         a                            a
in mm geschrieben), daf¨r gibt es den Parameter z0, der den z-Nullpunkt
                           u
des Koordinatensystems festlegt. Wenn z0 gleich Null ist, so liegt der Ur-
sprung in der Mitte des Vlasov-Cuts. Wenn z0 gr¨ßer Null ist, so liegt der
                                                  o
Koordinatenursprung um z0 tiefer (Richtung Kathode). Auch hier muß der
Slot rcos richtig gesetzt sein.


References
[1] Brent B. Welch et al., Practical Programming in Tcl & Tk, Prentice Hall,
    2003

[2] Im OSSI-directory man -l objectify.1 eintippen.

[3] Dokumentation zum Yorick-Programm

[4] Feldprofilanalyse und -synthese im Millimeterwellenbereich, Wis-
    senschaftlicher Bericht FZKA 6216, Forschungszentrum Karlsruhe, 1998




                                      9

Weitere ähnliche Inhalte

Andere mochten auch

Auf Horchstation im Internet - Social Media Monitoring richtig gemacht
Auf Horchstation im Internet - Social Media Monitoring richtig gemachtAuf Horchstation im Internet - Social Media Monitoring richtig gemacht
Auf Horchstation im Internet - Social Media Monitoring richtig gemachtBernhard Steimel
 
Hybrid TV Umsatzprognose 2010-15
Hybrid TV Umsatzprognose 2010-15Hybrid TV Umsatzprognose 2010-15
Hybrid TV Umsatzprognose 2010-15Bernhard Steimel
 
Zubehör
ZubehörZubehör
ZubehörSirHerp
 
Berlintest
BerlintestBerlintest
Berlintestpenarlag
 
Social Media Plattformen: Wo mache ich was?
Social Media Plattformen: Wo mache ich was?Social Media Plattformen: Wo mache ich was?
Social Media Plattformen: Wo mache ich was?Constance Richter
 
NEWS - Die jungen Netzwerker
NEWS - Die jungen NetzwerkerNEWS - Die jungen Netzwerker
NEWS - Die jungen NetzwerkerMarco Wegleiter
 
DESIGNERDOCK-Award 2010
DESIGNERDOCK-Award 2010DESIGNERDOCK-Award 2010
DESIGNERDOCK-Award 2010DESIGNERDOCK
 
Orru sustainable use_of_estonian_peat_reserves_and_environmenta_challenges
Orru sustainable use_of_estonian_peat_reserves_and_environmenta_challengesOrru sustainable use_of_estonian_peat_reserves_and_environmenta_challenges
Orru sustainable use_of_estonian_peat_reserves_and_environmenta_challengesIngo Valgma
 
Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...
Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...
Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...TEAMKBX
 
Irreführende Werbung durch gekaufte Freunde?
Irreführende Werbung durch gekaufte Freunde?Irreführende Werbung durch gekaufte Freunde?
Irreführende Werbung durch gekaufte Freunde?DESIGNERDOCK
 
Turnerabende 2010
Turnerabende 2010Turnerabende 2010
Turnerabende 2010guest8824b0
 

Andere mochten auch (15)

Auf Horchstation im Internet - Social Media Monitoring richtig gemacht
Auf Horchstation im Internet - Social Media Monitoring richtig gemachtAuf Horchstation im Internet - Social Media Monitoring richtig gemacht
Auf Horchstation im Internet - Social Media Monitoring richtig gemacht
 
RadWegeRaum - Sustainable intermodal mobility
RadWegeRaum - Sustainable intermodal mobility RadWegeRaum - Sustainable intermodal mobility
RadWegeRaum - Sustainable intermodal mobility
 
Hybrid TV Umsatzprognose 2010-15
Hybrid TV Umsatzprognose 2010-15Hybrid TV Umsatzprognose 2010-15
Hybrid TV Umsatzprognose 2010-15
 
Zubehör
ZubehörZubehör
Zubehör
 
Berlintest
BerlintestBerlintest
Berlintest
 
Social Media Plattformen: Wo mache ich was?
Social Media Plattformen: Wo mache ich was?Social Media Plattformen: Wo mache ich was?
Social Media Plattformen: Wo mache ich was?
 
NEWS - Die jungen Netzwerker
NEWS - Die jungen NetzwerkerNEWS - Die jungen Netzwerker
NEWS - Die jungen Netzwerker
 
Regulationsbiologischer Hintergrund der Wirkung von Body-Waves und Ernährungs...
Regulationsbiologischer Hintergrund der Wirkung von Body-Waves und Ernährungs...Regulationsbiologischer Hintergrund der Wirkung von Body-Waves und Ernährungs...
Regulationsbiologischer Hintergrund der Wirkung von Body-Waves und Ernährungs...
 
DESIGNERDOCK-Award 2010
DESIGNERDOCK-Award 2010DESIGNERDOCK-Award 2010
DESIGNERDOCK-Award 2010
 
Wo Austausch entsteht
Wo Austausch entstehtWo Austausch entsteht
Wo Austausch entsteht
 
Orru sustainable use_of_estonian_peat_reserves_and_environmenta_challenges
Orru sustainable use_of_estonian_peat_reserves_and_environmenta_challengesOrru sustainable use_of_estonian_peat_reserves_and_environmenta_challenges
Orru sustainable use_of_estonian_peat_reserves_and_environmenta_challenges
 
Quick Pick
Quick PickQuick Pick
Quick Pick
 
Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...
Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...
Socialmedia: Strategie, Setup, Campaign, Evaluation zur Fête de la Musique Be...
 
Irreführende Werbung durch gekaufte Freunde?
Irreführende Werbung durch gekaufte Freunde?Irreführende Werbung durch gekaufte Freunde?
Irreführende Werbung durch gekaufte Freunde?
 
Turnerabende 2010
Turnerabende 2010Turnerabende 2010
Turnerabende 2010
 

Manual

  • 1. Bedienungsanleitung zum OSSI-Programm Georg Michel 1 Einleitung OSSI ist die Abk¨rzung f¨r Optical Systems Simulation Interpreter. Es ist u u ein Interpreter f¨r eine Skriptsprache, mit der quasi-optische Systeme im Mil- u limeterwellenbereich beschrieben, synthetisiert und simuliert werden k¨nnen. o Es handelt sich bei OSSI um eine objektorientierte Erweiterung der uni- versellen Skriptsprache Tcl/Tk. Damit stehen dem Anwender alle Konstrukte f¨r allgemeine Programmieraufgaben zur Verf¨gung, inklusive der M¨glichkeit, u u o grafische Benutzeroberfl¨chen zu erstellen. Details hierzu sind in [1] zu finden. a Tcl/Tk ist urspr¨nglich f¨r die prozedurale nicht f¨r die objektorientierte u u u Programmierweise entwickelt worden. Deshalb wurde eine Erweiterung na- mens objectify f¨r Tcl/Tk verwendet, die es gestattet, Klassen in C++ zu u definieren und Instanzen dieser Klassen in Tcl/Tk einzubinden. Eine genaue Beschreibung der objectify-Erweiterung ist in der Man-Page zu objectify zu finden (siehe [2]). In OSSI wird nur eine einzige Klasse namens apertur definiert, die – wie ihr Name schon sagt – eine Apertur im dreidimensionalen Raum darstellt. Dabei handelt es sich um eine ebene Apertur, deren Parameter als Elemente (“slots” in der objectify-Terminologie) der Klasse apertur definiert sind. Es kann sich bei einer solchen Apertur um einen flachen Spiegel, eine Blende (z.B. Gyrotronfenster) oder eine Beobachtungs- bzw. Quellebene handeln. OSSI ist nur ein Baukasten, um quasi-optische Probleme zu l¨sen. Es ist o kein eigenst¨ndiges Programm, das fertige L¨sungen liefert. Es liegt in der a o Hand des Anwenders, was mit diesem Baukasten gebaut wird. Prinzipiell kann der Quellcode zu Rate gezogen werden bzw. gegebenenfalls erweitert werden. In den folgenden beiden Abschnitten werden die Elemente (“slots”) und Methoden der Klasse apertur n¨her beschrieben. a 2 Beschreibung der Klasse apertur 2.1 Elemente bzw. Slots Die Klasse Apertur hat zwei zweidimensionale Datenfelder, die nur uber ¨ Methoden zug¨nglich sind. Das erste ist reell und heißt amp, es dient der Spe- a icherung von reellen Gr¨ßen wie Amplituden, Leistungsdichten, Phasenkor- o 1
  • 2. rektoren o.¨. Was im konkreten Fall im Feld amp steht, h¨ngt von den vorher a a aufgerufenen Methoden ab. Das zweite große Feld ist komplex und heißt ap, es speichert die komplexe Feldverteilung auf der jeweiligen Apertur unter der Annahme, daß die Zeit- abh¨ngigkeit ejωt ist. a Einige Elemente sind f¨r alle Instanzen von apertur gleich. So wird bei der u Erzeugung einer Instanz die Dimension der o.g. Felder ben¨tigt. Andere o Gr¨ßen, die bei der Erzeugung einer Instanz bekannt sein m¨ssen, sind die o u verwendete Wellenl¨nge und die Ausdehnung der Aperturen. Deshalb wer- a den beim Erzeugen einer Instanz f¨nf Tcl-Variablen als Elemente (slots) in u die Instanz aufgenommen, die vor der Erzeugung eines Objekts definiert sein m¨ssen. Es handelt sich hierbei um nx, ny, xm, ym, lambda. Die ersten bei- u den geben die Dimension der Felder ap und amp in x und y an. Sie m¨ssen u Zweierpotenzen sein, da f¨r Feldprojektionen die FFT zum Einsatz kommt. u Die Parameter xm und ym geben die halbe Breite und H¨he aller noch zu o erzeugenden Aperturen an (sozusagen den “Radius” des Rechtecks in x und y) und lambda ist die Wellenl¨nge in Millimetern. Wenn diese f¨nf Variablen a u definiert sind, kann man Objekte mittels “apertur objektname” erzeugen. Ist ein Objekt erzeugt, so sollten zun¨cht den Elementen Werte zugewiesen a werden, die die Lage und Orientierung der Apertur beschreiben. Die Lage der Apertur im globalen Koordinatensystem wird durch die slots (xks, yks, zks). Jede Apertur hat ein lokales Koordinatensystem rl , dessen Orientierung zun¨chst mit dem globalen Koordinatensystem rg ubereinstimmt. Die Ori- a ¨ entierung der Apertur wird durch die Dyade Dm bestimmt, es gilt rg = Dm · rl + (xks, yks, zks)T . Die Dyade Dm ist zun¨chst die Einheitsdyade und nicht direkt aus Tcl/Tk a zug¨nglich. Sie wird durch Methoden, die im n¨chsten Abschnitt beschrieben a a sind, mit Werten belegt. Zwei weitere wichtige Slots sind phi und rcos. Sie bezeichnen den Einfall- swinkel des paraxialen Mikrowellenstrahls bzw. seinen Richtungskosinus gegen¨ber u der Apertur. Sie werden zur Berechnung der Phasenverschiebung bei der Anwendung von d¨nnen Linsen bzw. flachen Spiegeln auf das Feld in ap u ben¨tigt. o Alle Winkel in OSSI werden im Bogenmaß gemessen, phi==0 und rcos==1 bedeuten senkrechten Einfall. Beide Slots m¨ssen g¨ltige Werte haben, wenn u u Operationen durchgef¨hrt werden, die sich auf flache Spiegel bzw. d¨nne u u Linsen beziehen. 2
  • 3. 2.2 Methoden 2.2.1 mkdm phix phiy phiz str Diese Methode legt die Orientierung der Apertur im globalen Koordinaten- system fest und belegt Dm mit Werten. Der Parameter phi[xyz] legt den Drehwinkel um die jeweilige Achse des globalen Koordinatensstems fest. Der String str ist eine Kombination aus den Buchstaben x, y und z und gibt die Reihenfolge der Drehungen an. 2.2.2 dreh phix phiy phiz str Diese Methode hat die gleiche Sysntax wie mkdm, dient jedoch der inkre- mentellen Drehung der Apertur, d.h. es wird ausgehend von der aktuellen Dyade Dm weitergedreht. Wenn Dm die Einheitsmatrix ist (z.B bei Pro- grammbeginn), dann sind dreh und mkdm identisch. 2.2.3 rotz phiz Diese Methode dreht die Apertur um ihre lokale z-Achse um phiz rad. 2.2.4 gherm rampl iampl ordx ordy w0x w0y z0x z0y Diese Methode berechnet das Feld eines Gauß-Hermite Strahls. Die Param- eter rampl und iampl geben den Real- und Imagin¨rteil der Amplitude an. a ordx und ordy sind die Ordnung des Hermite-Polynoms in x und y. w0x und w0y sind die Waist in x un y. z0x und z0y ist die Position der Waist in x und y relativ zur Apertur. Der Gauß-Hermite-Strahl steht immer senkrecht und mittig auf der Apertur, gekippte und versetzte Strahlen k¨nnen mit- o tles Drehung und Verschiebung der Apertur und Projektion auf eine andere Apertur erzeugt werden. 2.2.5 gherma rampl iampl ordx ordy w0x w0y z0x z0y Diese Methode entspricht gherm mit dem Unterschied, daß das erzeugte Feld zum bereits vorhandenen hinzuaddiert wird. 2.2.6 proj target Diese Methode propagiert das Feld (im Element ap) der Apertur, auf der die Methode ausgef¨hrt wird, auf die Apertur target. Dabei muß das Skalarpro- u dukt der Normalen der Apertur (ex × ey ), auf der die Methode ausgef¨hrt u 3
  • 4. wird, und der Zielapertur positiv sein, d.h. sie m¨ssen in den gleichen Hal- u braum zeigen. Wenn die Zielapertur im Sinne ihrer Normalen vor der Apertur liegt, auf der die Methode ausgef¨hrt wird, erfolgt eine Vorw¨rtspropagation u a des Strahls zur Zielapertur, anderenfalls eine R¨ckw¨rtspropagation. Nach u a dem Aufruf der Methode ist das Array ap der Zielapertur mit dem propagierten Feld belegt. 2.2.7 plampsh a xmin xmax ymin ymax Diese Methode plottet den Betrag des Datenfeldes amp, falls a==1 bzw. ap anderenfalls uber x und y in Millimeter in einem Bereich, der von xmin, ¨ xmax, ymin und ymax begrenzt wird. Es erscheint ein Eingabeprompt des Numerikprogramms Yorick (siehe [3]). Hier k¨nnen Grafikdateien, ASCII- o und Bin¨rdaten geschrieben werden, eine Umrechnung in dB u.¨. vorgenom- a a men werden. Die Yorick-Arrays x, y und z beinhalten die lokalen x- und y-Koordinaten sowie den Betrag des Feldes amp bzw. ap. Das Kommando hcps,"bild" schreibt z.B. eine Postscriptdatei bild.ps des aktuell sicht- baren Bildes. Wenn am Eingabeprompt nur Return gedr¨ckt wird, l¨uft das u a OSSI-Skript weiter. 2.2.8 plampc a xmin xmax ymin ymax Diese Methode entspricht plampsh mit dem Unterschied, daß Betrag (Kon- turlinien) und Phase (Farbe) in ap dargestellt werden. Wenn a==1 wird die in amp stehende statt der tats¨chlichen Phase verwendet. Das Yorick-Array z a hat hier drei Dimensionen. Die dritte Dimenstion kann den Index 1 (Betrag) oder 2 (Phase) haben. 2.2.9 wapertur filename Diese Methode schreibt den Inhalt des Feldes ap im Bin¨rformat in die Datei a filename. 2.2.10 rapertur filename Diese Methode liest den Inhalt des Feldes ap von der Datei filename im Bin¨rformat. a 2.2.11 arapertur filename Diese Methode liest den Inhalt des Feldes ap von der Datei filename im Bin¨rformat und addiert ihn zum beretis vorhandenen Inhalt des Feldes ap. a 4
  • 5. 2.2.12 mkspieg filename xsource ysource zsource xthis ythis zthis xtarget ytarget ztarget Diese Methode setzt die Elemente Dm , xks, yks, zks, phi und rcos so, daß die Apertur einen flachen Spiegel bei (xthis, ythis, zthis) repr¨sentiert, der a einen Strahl, der von (xsource, ysource, zsource) kommt, nach (xtarget, ytarget, ztarget) reflektiert. filename muß auf .bin enden. Wenn eine Datei diesen Namens im aktuellen Verzeichnis existiert, dann wird angenom- men, daß sie mit wamplitude geschrieben wurde und in das Feld amp als Phasenkorrektor eingelesen. Nach dem Aufruf dieser Methode zeigt der Nor- malenvektor der Apertur, auf der die Methode ausgef¨hrt wird, vom Quellpunkt u weg. D.h. eine Projektion vom Quellpunkt zu dieser Apertur ergibt eine Vorw¨rtsprojektion und eine Projektion von der Zielapertur zu dieser Aper- a tur eine R¨ckw¨rtsprojektion (jeweils unter der Maßgabe, daß das Skalarpro- u a dukt der beiden Normalenvektoren positiv ist, s.o.). 2.2.13 toggle Diese Methode dreht die Apertur um 180◦ um ihre eigene y-Achse unter Beibehaltung der Feldbelegung im globalen Koordinatensystem. Der Sinn besteht darin, den Normalenvektor der Apertur in seine Gegenrichtung zeigen zu lassen, damit im Falle eines flachen Spiegels nach einer Vorw¨rtsprojektion a von einer Quellapertur und eventueller Anwendung eines Phasenkorrektors eine weitere Vorw¨rtsprojektion zur nachfolgenden Zielapertur erfolgen kann. a Im Falle einer d¨nnen Linse oder bloßen Beobachtungsebene ist toggle nicht u anzuwenden. 2.2.14 mkell rx ry Diese Methode berechnet einen flachen (d.h. phi und rcos m¨ssen gesetzt u sein) elliptischen Spiegel mit den Kr¨mmungsradien rx und ry in x- und y- u Richtung und legt den korrespondierenden Phasenkorrektor in amp ab. Der entsprechende Ellipsoid hat im lokalen Koordinatensystem in der x-z-Ebene immer einen kreisf¨rmigen Querschnitt. o 2.2.15 mktor rx ry Diese Methode berechnet einen flachen (d.h. phi und rcos m¨ssen gesetzt sein) u toroidalen Spiegel mit den großen und kleinen Radien (nicht Kr¨mmungsradien) u rx und ry in x- und y-Richtung und legt den korrespondierenden Phasenko- rrektor in amp ab. Der gr¨ßere der beiden Radien wird automatisch zum o großen Radius des Torus gemacht. 5
  • 6. 2.2.16 brille xmin xmax ymin ymax Diese Methode nimmt an, daß das Datenfeld amp mit einem g¨ltigen Phasenko- u rrektor belegt ist und wendent ihn auf das in ap stehende Feld an. Fel- danteile außerhalb des Rechtecks, das durch xmin, xmax, ymin und ymax beschrieben wird, werden abgeschnitten (spillover). 2.2.17 mkamp Diese Methode schreibt den Betrag des Feldes in ap in das Array amp. 2.2.18 mkph Diese Methode schreibt die Phase des Feldes in ap in das Array amp. 2.2.19 mkphk Diese Methode erzeugt einen Phasenkorrektor. Dazu wird erwartet, daß im Array amp die Istphase des einfallenden Feldes gespeichert ist und im Array ap die Sollphase, mit der das Feld den Spiegel verl¨sst. Bei Verlassen der a Methode hat das Feld im Array ap die Phase des Phasenkorrektors. 2.2.20 mkquell l1 l2 rc Diese Methode bereitet die Berechnung der Abstrahlung eines helikalen Launch- ers in Verbindung mit einem nachgeschalteten quasi-elliptischen Spiegel vor. Hierzu muß ez,local in Richtung vecex,gobal , sowie ey,local in Richtung ez,global . Da der quasi-elliptische Spiegel im optischen Sinne ein tiefer Spiegel ist (entspr. dicke Linse), werden hier die geometrischen Dimensionen des Spiegels im Array amp abgespeichert. Die Berechnung dieser Daten geschieht unter der Annahme, daß der Launcher auf der z-Achse des Gyrotrons liegt, wobei die Mitte des gedachten, oder falls er nicht gekr¨pft ist, tats¨chlichen Cuts bei o a zgyrotron = 0 liegt. Die Apertur muß bei Aufruf dieser Methode o.g. Orientierung haben. Die yglobal -Position muß 0 sein, die zglobal -Position h¨ngt vom jeweiligen Brillouin- a winkel und der Tiefe des quasi-elliptischen Spiegels ab. Die xglobal -Position muß so gelegt werden, daß sie kleiner als der kleinste xglobal -Wert des quasi- elliptischen Spiegels. Letzterer befindet sich in der xglobal > 0 Halbebene. Die xglobal -Position wird bei der Berechnung der benutzt, um die lokale H¨he o des Spiegels auf der Apertur zu berechnen. D.h. nach dem Aufruf dieser Funktion d¨rfen Position und Orientierung nicht mehr ver¨ndert werden. u a 6
  • 7. Die Parameter l1, l2, rc bezeichnen die Parameter l1 und l2 des quasi- elliptischen Spiegels ([4], S. 30), rc ist der Kaustikraduis der Hauptmode im Hohlleiter. 2.2.21 dendeeps xmin xmax ymin ymax nxm nym xmino xmaxo ymino ymaxo fnam a cm ph0 phv samp steig Diese Methode berechnet nach vorherigem Aufruf von mkquell bzw. entsprechen- der Belegung des Arrays amp mit einer geometrischen Spiegelkontur das ab- strahlende Feld des (quasi-elliptischen) Spiegels auf der ebenden Apertur auf der diese Methode aufgerufen wird. Die Orientierung muß dabei die gleiche sein wie beim Aufruf von mquell. xmin, xmax, ymin, ymax sind die Bregrenzung des (quasi-elliptischen) Spiegels in lokalen Koordinaten. Diese Begrenzung sollte so klein wie m¨glich (Rechen- o zeit) und so groß wie n¨tig (Erfassung des gesamten Feldes) gew¨hlt wer- o a den. nxm, nym sind die Anzahl der Abtastpunkte auf diesem Rechteck. Bei der Wahl der Abtastpunkte sollte auf die Einhaltung des Abtasttheorems geachtet werden. xmino, xmaxo, ymino, ymaxo sind die Begrenzung des Rechtecks in lokalen Koordinaten, auf dem das vom (quasi-elliptischen) Spiegel zur¨ckgeworfene u Feld erwartet wird. F¨r die Gr¨ße gilt hier gleiches wie f¨r die Begrenzung u o u auf dem Spiegel selbst. fnam ist ein String, der den Dateinamen des Output- files des Pretterebnerschen Programms zur Berechnung der Modenmischung im Hohlleiter angibt. a ist der Radius des Hohlleiters am Beginn des Launchers. cm ist die Mitte des Cuts und ph0 die azimutale Position (im Bogenmaß) des Cuts in Prettereb- nerschen Koordinaten. phv ist die Verdrehung des Launchers im Bogenmaß gegen¨ber der kanonischen Position (Cut auf negativer ygyrotron -Achse. u samp gibt die normierte Abtastrate an. Wenn samp gleich 1 ist, so wird bei λ/2 abgetastet, bei 0 ist die Abtastung unendlich dicht. Werte um 0,2 sind sinnvoll.steig gibt die Steigung des Tapers an (gleicher Wert wie im Pretterebner-Programm). Nach dem Aufruf von dendeeps sollte toggle aufgerufen werden, um das Feld zur n¨chsten Apertur propagieren zu k¨nnen. Danach sollte man das a o Feld zun¨chst mittels wapertur abspeichern, um die aufwendige Berech- a nung der Abstrahlung bei der Optimierung der restlichen Spiegel nicht erneut durchf¨hren zu m¨ssen. u u 7
  • 8. 2.2.22 dendeepsold xmin xmax ymin ymax nxm nym xmino xmaxo ymino ymaxo fnam a cm ph0 phv samp steig Diese Methode ist ¨quivalent zu dendeeps. Sie benutzt keine Bornapproxima- a tion und ist deshalb etwas schneller, aber ungenauer. F¨r samp sind Werten u um 0.7 sinnvoll. 2.2.23 maske xmin xmax ymin ymax Diese Methode erwartet eine Leistungsverteilung im Array amp. Es wird ein Ergebnis als String zur¨ckgegeben, der das Verh¨ltnis der Leistung inner- u a halb des Rechtecks (z.B. Spiegel) zur Gesamtleistung ausgibt. Man kann das Ergebnis mit der Tcl-Funktion puts ausgeben, Beispiel: puts stdout [ap6 maske -80 100 -60 70]. 2.2.24 leifenst r Diese Methode berechnet die Leistungsverteilung im Array ap und gibt die anteilige Leistung in einer kreisf¨rmigen Apertur als String zur¨ck, r ist dabei o u der Radius des Fensters. Die Ausgabe kann wie bei maske erfolgen. 2.2.25 doit xmin xmax ymin ymax p1 p2 sx sy Diese Methode erwartet, daß die Phase des Feldes in ap (z.B. mit mkphk erzeugt) einen Phasenkorrektor repr¨sentiert, der in eine Spiegeloberfl¨che a a verwandelt werden soll. xmin, xmax, ymin, ymax begrenzen dabei ein Rechteck, das so groß wie n¨tig (Beugungsverluste) und so klein wie m¨glich (Genauigkeit o o der Abrollverfahrens) ist. Das Abrollen der Phase geschieht nach der Meth- ode aus [4], S. 73. Nach dem Abrollen wird zur Erh¨hung der Genauigkeit das o Abrollergebnis auf den exakten Phasenwert gezwungen, wo die Feldamplitude gr¨ßer als umax ∗p2 ist. An Stellen, wo die Amplitude kleiner als umax ∗p1 ist, o bleibt das Abrollergebnis wie es ist. An den Stellen zwischen p1 und p2 gibt es eine Zwischenl¨sung. sx und sy sind Kr¨mmungswerte, mit denen der o u Spiegel vor dem Abrollen ”vorgespannt” werden kann, sie sind meist Null. Am Ende steht die Spiegeloberfl¨che als abgerollte Phase im Array amp. a 2.2.26 mincurv xmin xmax ymin ymax rmin Diese Methode verringert die Kr¨mmung einer im Array amp stehenden u abgerollten Phase an Stellen, wo der Kr¨mmungsradius kleiner als rmin ist u (siehe [4] S. 77). Sie muß wiederholt aufgerufen werden, bis kein Kr¨mmungsradius u kleiner als rmin im Bereich xmin, xmax, ymin, ymax gefunden wird. Bei 8
  • 9. Aufruf dieser Methode muß der Slot rcos richtig gesetzt sein, um Phasen in geometrische L¨ngen umrechnen zu k¨nnen. a o 2.2.27 wampascwo fnam xmin xmax ymin ymax nx ny geom Diese Methode schreibt eine Spiegeloberfl¨che im Array amp in globalen a Koordinaten in eine ASCII-Datei. fnam ist ein String, der den Dateinamen angibt. xmin, xmax, ymin, ymax, nx, ny beschreiben ein Rechteck incl. Anzahl der Abtastpunkte in x und y. Wenn geom 1 ist (Normalfall), so wird die tats¨chliche Spiegeloberfl¨che in mm in die Datei geschrieben. Hierzu a a muß der Slot rcos richtig gesetzt sein. Wenn geom 0 ist, so wird das Phasen- maß (Gangunterschied) auf dem Spiegel in globale Koordinaten umgerech- net, was wenig sinnf¨llig ist. Sinnvoll ist dies nur bei der verwandten Methode a wampascii, die bei gleichem Parametersatz die Spiegeloberfl¨che bzw. den a Gangunterschied in lokalen Koordinaten ausrechnet. 2.2.28 wampcad fnam z0 xmin xmax ymin ymax nx ny Diese Methode ist verwandt zu wampascwo aber schreibt eine AutoCAD- kompatible Datei. Der Parameter geom entf¨llt (es wird immer die Oberfl¨che a a in mm geschrieben), daf¨r gibt es den Parameter z0, der den z-Nullpunkt u des Koordinatensystems festlegt. Wenn z0 gleich Null ist, so liegt der Ur- sprung in der Mitte des Vlasov-Cuts. Wenn z0 gr¨ßer Null ist, so liegt der o Koordinatenursprung um z0 tiefer (Richtung Kathode). Auch hier muß der Slot rcos richtig gesetzt sein. References [1] Brent B. Welch et al., Practical Programming in Tcl & Tk, Prentice Hall, 2003 [2] Im OSSI-directory man -l objectify.1 eintippen. [3] Dokumentation zum Yorick-Programm [4] Feldprofilanalyse und -synthese im Millimeterwellenbereich, Wis- senschaftlicher Bericht FZKA 6216, Forschungszentrum Karlsruhe, 1998 9