8.4 Der Gleichungslöser



next up previous contents
Next: 8.4.1 Die Skalierung des Up: 8 Der Aufbau und Previous: 8.3.4 Die Schritte beim

8.4 Der Gleichungslöser

Zum Lösen des Gleichungssystems der inneren Systemmatrix aus Bild 8.2 wird ein dreistufiger Ablauf, bestehend aus Skalierer, Präkonditionierer und dem eigentlichen Gleichungslöser, ausgeführt.

Als Gleichungslöser wird das iterative Schema BiCGStab (bi-conjugate gradients stabilized) von H. VAN DER VORST verwendet [78]. Dieses Verfahren repräsentiert den aktuellen Stand der Gleichungslösung für Systeme von verkoppelten Halbleitergleichungen. Die Entwicklung neuer Varianten von Gleichungslösern schreitet jedoch in raschem Tempo voran, und so wird es sich wahrscheinlich bald als vorteilhaft erweisen, modifizierte Versionen aus der Familie der CG-Algorithmen oder einer anderen Algorithmenfamilie zu verwenden [79].

Wegen der schlechten Kondition der Halbleitergleichungen ist es unbedingt notwendig, einen guten Präkonditionierer zu verwenden. Die besten Erfolge werden derzeit mit Präkonditionierern nach Y. SAAD erzielt, die inkomplette Faktorisierung unter Vernachlässigung kleiner Elemente, ILUT (incomplete LU factorization with threshold pivoting), durchführen [63][35]. Dabei wird eine Links-Rechts-Zerlegung der Matrix berechnet, wobei allerdings nicht alle Matrixelemente in der Faktorisierung weiterverwendet werden. Dadurch werden die beiden Dreiecksmatrizen nicht voll gefüllt, sondern bleiben spärlich besetzt.

Mit zwei Parametern, die die maximal erlaubten zusätzlichen Einträge pro Matrixzeile und die Toleranzschwelle spezifizieren, unter der Matrixelemente nicht weiter verwendet werden, läßt sich das Verhalten des Präkonditionierers beeinflussen. Je voller die faktorisierte Matrix wird, umso besser ist die Kondition des resultierenden Problems für den Gleichungslöser und umso weniger Iterationen braucht dieser, um das Gleichungssystem zu lösen. Eine vollere Matrix bedeutet aber auch, daß der Aufwand des Präkonditionierers steigt, daß mehr Speicherplatz benötigt wird und daß eine Matrix-Vektor-Multiplikation im Gleichungslöser länger dauert.

Der Erfolg der Präkonditionierung hängt wesentlich von der Strategie ab, mit der entschieden wird, ob ein Eintrag in der faktorisierten Matrix weiterverwendet wird. Die Gleichungssysteme der Halbleitergleichungen enthalten unterschiedliche Variablen mit unterschiedlichen Wertebereichen und unterschiedlich starkem Einfluß auf die Gleichungen, in denen sie enthalten sind. Durch Änderung der Grundskalierung der Größen im Simulator werden die Gewichte der einzelnen Größen gegeneinander verschoben. Es zeigt sich, daß eine gute Grundskalierung der Variablen im Simulator wichtig ist für die Kondition des Gleichungssystems, daß diese aber nicht immer ausreicht.





next up previous contents
Next: 8.4.1 Die Skalierung des Up: 8 Der Aufbau und Previous: 8.3.4 Die Schritte beim



Martin Stiftinger
Fri Oct 21 18:22:52 MET 1994