Maßgeschneiderte Formulare in Software von RP Photonics
Manche unserer Softwareprodukte ermöglichen die Erstellung maßgeschneiderter Formulare (custom forms):
- RP Fiber Power seit Version V6
- RP Resonator seit Version V3
- RP Coating seit Version V3
- RP ProPulse seit Version V3
Das Prinzip
Custom forms sind Formulare, die entsprechend Ihren Bedürfnissen maßgeschneidert werden können. Sie werden nicht in der Software selbst definiert, sondern in Skripten. (Weiter unten finden Sie ein paar Beispiele.) Im Gegensatz zum Quellcode unserer Software kann jeder Benutzer solche Skripte anschauen, modifizieren oder neu erstellen. Dies öffnet sehr interessante Möglichkeiten:
- Manche Benutzer möchten nicht allzu viel Zeit auf technische Details verwenden. Sie können maßgeschneiderte Formulare verwenden, die von anderen gemacht wurden – beispielsweise von ihren Kollegen, oder einfach von RP Photonics im Rahmen des technischen Supports. Für sie ist es extrem einfach, mit der Software zu arbeiten, unter Benutzung nur einer grafischen Benutzeroberfläche: Man füllt einfach die Eingabefelder des Formulars aus, lässt die Berechnung dann ausführen (z. B. mit F8), und schon werden die berechneten Werte im gleichen Formular und/oder in grafischen Diagrammen angezeigt.
- Benutzer, die tiefer einsteigen wollen, können ihre eigenen Formulare erzeugen. Dies ist nicht allzu schwierig – siehe ein Beispiel unten. Für einen einfachen Start können Sie ein geliefertes Formular nehmen und abändern.
Wenn Sie solche Formulare benutzen, werden Sie schnell davon begeistert sein! Sie bieten eine erstaunliche Kombination von Flexibilität und Einfachheit der Benutzung. Vermutlich werden Sie schon bald damit beginnen, eigene Formulare für alle möglichen Anwendungen zu erstellen – womöglich sogar außerhalb des Bereichs der Faseroptik.
Beispiel 1 mit RP Fiber Power: Faserverstärker
Als ein erstes Beispiel wird ein einfaches Formular für Berechnungen an Faserverstärkern mit der Software RP Fiber Power als Demo-Datei geliefert. Wenn man dieses Skript öffnet, geht die Software automatisch in den Modus für maßgeschneiderte Formulare, d. h. sie zeigt das Formular direkt an:
Der “sceen shot” wurde genommen, nachdem F8 gedrückt wurde, sodass die Berechnungen bereits gemacht waren (innerhalb von weniger als einer Sekunde) und die Resultate angezeigt wurden. Die Software kann dann ebenfalls ein oder mehrere Diagramme (hier nicht gezeigt) anzeigen.
Hier können Sie einen Teil des Codes für das obige Formular sehen:
Custom form: -------------------------------------------------------------- $font: "Arial", bold, size = 24 Yb-doped Fiber Amplifier $font: "Courier New", size = 11, space = 2.1 $tabcontrol, size = (620, 0) $tab "Fiber details" Core material: ########################## $input (combobox:"Yb-germanosilicate","Yb-phosphosilicate") fiber$ Yb concentration: ############ Core diameter: ############ $input N_Yb:d6:" / m^3", min = 0, max = 1e30 $input d_co:d6:"m", min = 0, max = 1e-3 Pump mode radius: ############ Fiber length: ############ $input w_p:d6:"m", min = 0, max = 1e-3 $input L_f:d6:"m", min = 0, max = 1000 Signal mode radius: ############ $input w_s:d6:"m", min = 0, max = 1e-3 $tab "Operation parameters" Pump power: ############ at ########## # backward $input P_p_in:d6:"W", min = 0, max = 10, bgcolor = (if P_p_in > 10 then rgb(1, 0.8, 0.8) else white) $input l_p:d6:"(n)m" $input (checkbox) bw_pump Signal input power: ############ at ########## $input P_s_in:d6:"W", min = 0, max = 10 $input l_s:d6:"(n)m" $tabcontrol end --------------------------------------------------------------
Sie können sehen, dass es nicht allzu schwierig ist, ein solches Formular zu erstellen. Sie könnten auch einfach ein paar neue Eingabefelder dazufügen und zusätzliche Dinge berechnet und angezeigt bekommen.
Natürlich werden alle relevanten Details sowohl im PDF-Handbuch als auch im kontextsensitiven Online-Hilfesystem genau erklärt. Wenn Sie irgend ein Problem haben, bekommen Sie Hilfe im Rahmen des technischen Supports.
Mehrere der mit der Software gelieferten Demo-Dateien enthalten solche Formulare. Sie wurden entwickelt für Berechnungen an Faserverstärkern, ausgezogenen Fasern (tapered fibers), aktiv gütegeschalteten Nd:YAG-Lasern, regenerativen Verstärkungen, Erzeugung parabolischer Pulse, etc.
Beispiel 2 mit RP Fiber Power: regenerativer Verstärker
Das folgende Formular ermöglicht Berechnungen an regenerativen Verstärkern; es wird ebenfalls mit der Software als Demo-Datei geliefert. Es benutzt sogenannte tab controls, um eine ziemliche Anzahl von Eingabe- und Ausgabefeldern auf begrenzter Bildschirmfläche unterzubringen.
Beispiel 3 mit RP Resonator: Fokussierung eines Laserstrahls
Hier sehen Sie ein einfaches Formular für die Berechnung der Fokussierung eines Laserstrahls mit ein oder zwei Linsen:
Sie geben einfach die ursprünglichen Strahlparameter ein, ebenfalls die Brennweiten der beiden Linsen und deren Positionen, und die Software berechnet damit die Entwicklung des Strahlradius. Sie kann den Strahl sogar grafisch anzeigen; hier wird ein Bild erzeugt, indem ein benutzerdefinierter mathematischer Ausdruck die Farbe jedes Pixels definiert – in diesem Fall basierend auf einem Gaußschen Strahlprofil mit z-abhängigem Strahlradius.
Beispiel 4 mit RP Resonator: Ringresonator
Dieses Beispiel behandelt einen Ringresonator mit vier Spiegeln und einem Kristall:
Hier wird ein Hintergrundbild verwendet, und die Eingabefelder sind so positioniert worden, dass der Benutzer sofort sieht, zu welchen Armlängen oder Winkeln sie gehören.
Schöne Features von maßgeschneiderten Formularen
Maßgeschneiderte Formulare können jede Menge sehr praktischer Eigenschaften haben, von denen einige im Folgenden kurz beschrieben werden:
- Alle Eingabe-Lehrstelle und Ausgabe Werte können schön formatiert werden, z. B. gerundet auf eine bestimmte Anzahl gültiger Stellen und mit Maßeinheiten. Der Benutzer kann beispielsweise in ein Eingabefeld für eine optische Wellenlänge “1.53u” eingeben, und die Software wird dies in “1530 nm” umwandeln.
- Eingabefelder können so gemacht werden, dass alle Ausgabefelder sofort aktualisiert werden, wenn eine Eingabe geändert wird.
- Es gibt bestimmte Funktionstasten, mit denen man Werte hoch- und herunterfahren kann (mit variabler Schrittweite).
- Mehrere Felder können innerhalb eines Kastens mit einem Rahmen und einer Überschrift platziert werden, oder in einem sogenannten tab control mit mehreren Reitern. (Als Beispiel zeigt das Bild oben die Reiter “Gain medium”, “Pump and signal” und “Resonator”.) Auf diese Weise kann man viele Eingabe- und Ausgabefelder auf begrenzter Bildschirmfläche unterbringen. (Man kann sogar geschachtelte tab controls erzeugen, mehrere Kästen innerhalb eines tab controls, etc.) Es ist aber auch möglich, einfach ein recht langes Formular zu machen, und die Software wird dann das Scrollen darin erlauben.
- Für Eingabewerte gibt es nicht nur die üblichen Textfelder, sondern auch combo boxes und radio buttons (Auswahlfelder), track bars und check boxes.
- Ausgaben können nicht nur über Textfelder erfolgen, sondern auch über farbige Balken, bei denen Länge und Farbe berechnet werden können. Beispielsweise kann ein solcher Balkan grafisch anzeigen, welcher Anteil der Pumpleistung in einem Verstärker in Signalleistung umgewandelt wird, und seine Farbe kann von grün über orange bis rot wechseln, um die Gefahr der Überhitzung der Faser bei hohen Leistungen anzuzeigen.
- Bei Textfeldern kann sowohl die Textfarbe als auch die Hintergrundfarbe berechnet werden. Beispielsweise können Sie die Schrift rot werden lassen, sobald ein Wert eine bestimmte Grenze überschreitet.
- Aus Dateien geladenen Bilder können beliebig in einem Formular platziert werden – z. B. als Hintergrundbild oder um ein Eingabefeld zu illustrieren. Ebenfalls ist es möglich, die Farbe jedes Pixels durch einen mathematischen Ausdruck berechnen zu lassen, der von den Koordinaten x und y abhängt.
- Man kann Schaltflächen erzeugen, mit denen zusätzliche Funktionen erreichbar werden, z. B. das Abspeichern von Daten in einer Datei.
- Es ist möglich, mehrere Sätze von Eingabewerten in Dateien zu speichern und später wieder zu laden. So können sie leicht zwischen verschiedenen Datensätzen wechseln, z. B. für verschiedene Faserverstärker, obwohl Sie weiterhin nur ein einziges Skript und Formular dafür verwenden.
- In Versionen, die ab 2017 gemacht sind, können Sie beliebige Unicode-Zeichen einsetzen; sie werden korrekt angezeigt und korrekt in Dateien gespeichert.
Durch solche Features macht es wirklich Spaß, mit dieser Software zu arbeiten!
Beachten Sie auch, dass diese Formulare in keiner Weise auf die Anwendung für bestimmte Berechnungen begrenzt sind. Die leistungsfähige Skriptsprache unserer Software erlaubt Ihnen, nahezu beliebige Berechnungen damit durchzuführen. Sie mögen deswegen bald anfangen, solche Formulare sogar für Berechnungen völlig außerhalb des Bereichs der Optik oder sogar der Physik zu erstellen.