RP Photonics logo
RP Photonics
Modellierungs-Software
Technische Beratung zu Lasern, nichtlineare Optik, Faseroptik etc.
profitieren Sie vom Wissen und der Erfahrung eines Top-Experten!
Leistungsfähige Simulations- und Design-Software.
Nutzen Sie Computermodelle, um Ihre Laser umfassend zu verstehen!
Erfolg resultiert aus Verständnis – in der Wissenschaft wie in der industriellen Entwicklung.
Die berühmte Encyclopedia of Laser Physics and Technology – online kostenlos verfügbar!
Der ideale Ort, um Anbieter für Photonik-Produkte zu finden.
Anbieter: stellen Sie sicher, dass Ihre Produkte hier gezeigt werden!
für die effiziente Laserentwicklung und Forschung
Diese Seite gibt Ihnen einen Überblick über unsere Softwareprodukte.
RP Fiber Calculator ist ein praktisches Tool für Berechnungen zu optischen Fasern.
RP Fiber Power ist ein extrem flexibles Tool für das Design und die Optimierung für Faserlasern, Verstärkern und auch passiven Fasern.
RP Resonator ist ein besonders flexibles Tool für die Entwicklung von Laserresonatoren.
RP ProPulse kann die Pulsausbreitung in modengekoppelten Lasern und synchron gepumpten OPOs simulieren.
RP Coating ist ein besonders flexibles Designwerkzeug für dielektrische Vielschichtsysteme.
RP Q-switch kann die Entwicklung optischer Leistungen in gütegeschalteten Lasern simulieren.
Die meisten unserer Softwareprodukte bieten eine leistungsfähige Skriptsprache, die Ihnen ein ungewöhnliches Maß von Flexibilität gibt.
Hier erfahren Sie über die Software Lizenzbedingungen, Updates und Upgrades etc.
Kompetente technische Unterstützung ist eine der Schlüsselqualitäten der Software von RP Photonics.
RP Photonics hat Distributoren in verschiedenen Ländern.
Die RP Photonics Software News informieren Sie über aktuelle Entwicklungen und geben den Nutzern interessante Hinweise.
Hier können Sie Anfragen absenden, z. B. betreffend technische Details, Preise und Angebote.
en | de

RP Coating – das Software-Werkzeug für das
Design optischer Vielschichtstrukturen

Beispiel: Ermittlung von Strukturdaten durch Fitten an ein gemessenes Reflektivitätsspektrum

Wenn eine Dünnschichtstruktur hergestellt wird, gibt es meist Unsicherheiten betreffend die Schichtdicken sowie auch ihre Brechungsindizes. Letztere werden von der Packungsdichte des Materials beeinflusst, die von den detaillierten Wachstumsbedingungen abhängt. Ein gemessenes Reflektivitätsspektrum kann verwendet werden, um Informationen über die Struktur zu erhalten und damit die Beschichtungsmaschine zu kalibrieren.

In diesem Beispiel gehen wir davon aus, dass als Teststruktur ein einfacher Bragg-Spiegel mit 6 Schichtpaaren von HfO2 / SiO2 auf einem BK7-Substrat gewachsen wurde, nominell mit λ/4-Schichten für 800 nm:

d_units: nm
l_units: nm
 
N := 6  { number of layer pairs }
 
; Initial (nominal) layer parameters:
d_HfO2 := 800 / 4 / n_HfO2_Jerman(800 nm,7)
x_HfO2 := 7
d_SiO2 := 800 / 4 / n_SiO2_Jerman(800 nm,1.8)
x_SiO2 := 1.6
 
beam from superstrate
substrate: BK7
for j := 1 to N do
begin
* HfO2_Jerman, x = x_HfO2, d = d_HfO2
* SiO2_Jerman, x = x_SiO2, d = d_SiO2
end
superstrate: air

Wir verwenden Brechungsindexdaten von M. Jerman et al., Appl. Opt. 44 (15), 3006 (2005), die von den Packungsdichten in Einheiten von g/cm3 abhängen. (Diese Daten werden mit der Software geliefert.) Die genauen Schichtdicken und Packungsdichten, die man von der Beschichtungsmaschine erhält, sind anfänglich unbekannt und sollten aus den gemessenen Reflektivitätsdaten ermittelt werden.

Das Reflektivitätsspektrum wurde gemessen und in einer Textdatei gespeichert, die pro Zeile eine Wellenlänge und die zugehörige Reflektivität (in Prozent) enthält. Wir lesen diese Datei ein, so dass ihre x/y-Datenpaare gespeichert sind (als “row 1”):

include "Reflectivity.dat"

Nun können wir die Fit-Prozedur durchführen. Als Fit-Variablen verwenden wir die Schichtdicken und die Packungsdichten, wobei wir annehmen, dass diese Parameter für alle Schichtpaare gleich sind. Wir müssen zunächst eine Funktion definieren, die die Strukturdaten entsprechend diesen Parametern setzt. Dann können wir das fit-Kommando aufrufen und schließlich die erhaltenen Werte anzeigen:

set_layer_params(d_HfO2, x_HfO2, d_SiO2, x_SiO2) := 
  for j := 1 to N do
  begin
    set_d(2 * j-1, d_HfO2);
    set_d(2 * j  , d_SiO2);
    set_x(2 * j-1, x_HfO2);
    set_x(2 * j  , x_SiO2);
  end;
 
fit 100 * R(x) to row 1
  with (d_HfO2, x_HfO2, d_SiO2, x_SiO2),
  init set_layer_params(d_HfO2, x_HfO2, d_SiO2, x_SiO2)
 
show "d_HfO2:  ", d_HfO2:f1:"nm"
show "d_SiO2:  ", d_SiO2:f1:"nm"
show "x_HfO2:  ", x_HfO2:f2:"g / cm^3"
show "x_SiO2:  ", x_SiO2:f2:"g / cm^3"

Finally, we display the reflectivity profile:

diagram 1:
 
"Reflectivity Profile"
 
x: 400, 1200
"wavelength (nm)", @x
y: 0, 100
"reflectivity (%)", @y
frame
hx
hy
 
m: points("r")  { show the data points as rectangles }
 
f: 100 * R(x), color = red, width = 3
 
["d_HfO2:  ", d_HfO2:f1:"nm"], 120, 150
["d_SiO2:  ", d_SiO2:f1:"nm"], 120, 200
["x_HfO2:  ", x_HfO2:f2:"g / cm^3"], 120, 250
["x_SiO2:  ", x_SiO2:f2:"g / cm^3"], 120, 300
fitted reflectivity profile of the test structure

Zum Vergleich das Spektrum ohne das Fitten:

reflectivity profile of the test structure without fitting

Dieses Beispiel zeigt, dass es mit RP Coating ziemlich einfach ist, Strukturdaten aus gemessenen Daten zu extrahieren. Die Flexibilität dieser Software erlaubt auch weitere Verfeinerungen:

  • Wenn das Spektrometer die Daten nicht als “comma-separated values” liefert, sondern in einem anderen (womöglich binären) Format liefert, kann man auch solche Dateien mit ein paar Zeilen Skriptcode einlesen.
  • Man könnte die erhaltenen Fit-Daten in beliebigem Format abspeichern, etwa für die direkte Steuerung der Beschichtungsmaschine oder für Dokumentationszwecke.
  • Wenn Reflektivitäten in situ am geheizten Substrat gemessen werden, könnte man automatisch Korrekturen entsprechend der Temperatur anbringen.
  • Man könnte solche Messungen und das Fitten für eine erst teilweise gewachsene Struktur durchführen und dann eine numerische Optimierung für die restlichen Schichten durchführen. Eine solche Schichtdicken­kontrolle kann mit einem hohen Grad von Automatisierung implementiert werden.
arrow