Der String-Algorithmus wurde ursprünglich für isotrope Ätzverfahren (chemisches Naßätzen) vorgestellt [Jew77], [Jew79]. Der Bewegungsvektor eines Punktes ist dabei normal auf die zu ätzende Oberfläche gerichtet, die Distanz, um die sich ein Punkt bewegt, ergibt sich aus der Multiplikation von lokaler Ätzrate und Zeitschritt. Später wurde der Algorithmus erweitert, um generellere Topographieverfahren simulieren zu können. Für die Modellierung von Trockenätzprozessen wurden allgemeinere Bewegungsvektoren eingeführt, die sich aus einer Linearkombination von isotropen und anisotropen Teilvektoren zusammensetzen [Rey81]. Abbildung 2.11 zeigt den Unterschied zwischen isotroper und direktionaler Ätzung. Allgemeinere Ätzprozesse werden durch die Vektoraddition einer isotropen und einer oder mehrerer direktionaler Ätzkomponenten beschrieben, wobei die lokalen Ätzraten von den Prozeßbedingungen und der aktuellen Geometrie abhängen.
Als Alternative zur Bewegung der Punkte des Strings wurde vorgeschlagen, die Liniensegmente entlang ihrer Oberflächennormale zu bewegen [Neu79], [Neu80]. Diese Methode wird in der Literatur auch oft als Segment-Algorithmus bezeichnet [Thu91], Abbildung 2.12 zeigt das Prinzip. Jedes Liniensegment des Strings wird entsprechend der lokalen Ätzrate entlang seiner Oberflächennormalen bewegt. Während der Simulation entfernen sich einige Segmente voneinander, in diesen Bereichen müssen neue Segmente eingesetzt werden. In Gebieten, wo Segmente sich überschneiden, werden die Schnittpunkte berechnet und die Segmente entsprechend verkürzt. Der Segment-Algorithmus hat den Vorteil, daß an konvexen Ecken die ursprüngliche Orientierung der Flächen exakt erhalten bleibt. Dies bringt einerseits in der Modelierung richtungsabhängiger Topographieprozesse Vorteile, andererseits kann durch die Wahl eines sehr kleinen Zeitschrittes das Entstehen von Oberflächen-Loops unter Umständen gänzlich verhindert werden. Wie klein der Zeitschritt tatsächlich sein muß, hängt von der Ätzrate, der Segmentlänge und dem Winkel ab, den die beiden Liniensegmente miteinander einschließen. Während der Simulation kann es an konkaven Ecken unter Umständen zu großen Zwischenräumen kommen. Das Einsetzen eines einzigen Liniensegments beschreibt im allgemeinen die aktuelle Ätzfront nur ungenau. Von Tazawa et al. wurde ein verbessertes Verfahren für das Einfügen neuer Segmente vorgeschlagen, das auch stark variierende Ätzraten an konkaven Ecken besser berücksichtigt [Taz92b]. Dabei werden die Positionen virtueller Liniensegmente berechnet (Abbildung 2.13) und am Schnittpunkt dieser Segmente mit der Winkelhalbierenden der bewegten Segmente zusätzlich ein neuer Punkt eingefügt. Die virtuellen Segmente erhält man, indem man sich ein Segment im konkaven Punkt der Initialgeometrie vorstellt, dessen Orientierung sich zwischen den Orientierungen der angrenzenden Segmente verändert.
Abbildung 2.12: Der Segment-Algorithmus; (a) Bewegung der Segmente,
(b) Einfügen neuer Segmente.
Abbildung 2.13: Das Einfügen zusätzlicher Punkte an konkaven Ecken.