Der Ray-Trace-Algorithmus, der von Hagouel [Hag76] vorgeschlagen wurde, bewegt Punkte der Simulationsgeometrie entlang Trajektorien von Strahlen die durch Materie wandern. Die Ausbreitungsgeschwindigkeit der Wellen kann dabei durch ein skalares Geschwindigkeitsfeld erfolgen. Für die Bewegung der Trajektorie gilt:
wobei ein differentielles Wegelement der Trajektorie und
den
Einheitsvektor entlang dieser Trajektorie darstellen.
beschreibt ein allgemeines skalares Geschwindigkeitsfeld,
ist der zugehörige
Ortsvektor. In Analogie zum Wellenausbreitungsphänomen des Lichtes kann man
sich den Ätzvorgang nun als Wellenausbreitung einer Ätzfront vorstellen,
wobei die Bewegung der zu dieser Ätzfront orthogonal verlaufenden
Ätz-Trajektorien durch die obige Strahlengleichung (Gleichung 2.2)
beschrieben werden kann, indem man das allgemeine Geschwindigkeitsfeld
durch ein Ätzratenfeld
ersetzt:
Nach einfacher Umformung
und Diskretisierung nach dem Wegelement erhält man:
beschreibt nun den Weg, den eine Punkt der Trajektorie zwischen
den Positionen
und
mit einer mittleren Ätzgeschwindigkeit
zurücklegt. Wenn
die dafür benötigte Zeit
ist, wird mit
aus Gleichung 2.5 weiters:
Unter der Annahme, daß die Änderung der Ätzrate zwischen den Punkten
und
klein ist, folgt mit
aus Gleichung 2.7:
Die Gleichung 2.9 beschreibt die Richtungsänderung der
Trajektorie von Punkt nach
in Abhängigkeit des Gradienten der
Ätzrate und kann in dieser Form zur Simulation eines Ätzvorganges
herangezogen werden. Die Ätzrate dieses Ätzprozesses muß
jedoch richtungsunabhängig sein (Gleichung 2.2 und
2.3), wodurch mit diesem Verfahren nur isotrope
Ätzprozesse (chemisches Naßätzen) beschrieben werden können.
Abbildung 2.18 zeigt das Prinzip des Ray-Trace-Algorithmus.
Abbildung 2.18: Der Ray-Trace-Algorithmus.
Der Algorithmus bewegt Punkte der Oberfläche entlang der Trajektorien von Strahlen, die durch ein inhomogenes Geschwindigkeitsfeld wandern. Zu beachten ist, daß jede Trajektorie unhabhängig von allen übrigen Trajektorien ist. Während des Ätzvorganges bewegt sich damit jeder Punkt völlig unabhängig von seinen Nachbarpunkten durch die Geometrie, wobei auch keine Verbindung in Form von Liniensegmenten oder ähnlichem zwischen den Punkten besteht. Der Algorithmus beschreibt daher auch keine vollständige Lösung des Topographieproblems, da am Ende der Simulation nur eine Punktverteilung als Resultat vorliegt, woraus anschließend die aktuelle Simulationsgeometrie rekonstruiert werden muß.