Eine numerische Lösung der Differentialgleichungssätze macht eine Diskretisierung notwendig. Das heißt, daß für jedes Segment ein Gitter bestehen aus Diskretisierungspunkten und deren Nachbarschaftsbeziehungen spezifiziert werden muß (s. Abb. 2.6). Das Ergebnis ist eine Diskretisierung des Simulationsgebiets. Ortsabhängige Größen, sowohl vorgegebene als auch berechnete, werden als Datenfelder, sogenannten verteilten Attributen, segmentweise mittels PIF verwaltet (s. Abschnitt 2.6) und referenzieren das entsprechende Segmentgitter.
Als Variablen numerischer Berechnungen verwendete verteilte Attribute werden als Quantitäten bezeichnet (s. Abschnitt 4). Zusätzlich zu den Attributdaten verwalten Quantitäten Informationen über Beziehungen zu anderen Quantitäten (für Ladungsträger z.B. die entsprechende Potential-Quantität), MINIMOS-NT-interne Maßeinheiten, sinnvolle Maximal- und Minimalwerte und die Position der Variablen innerhalb des gesamten Variablenvektors. Als Identifizierung einer Quantität dient ein Index, der mittels Funktionsaufruf angefordert werden kann (s. Abb. 2.8).
Abbildung 2.8: Eine Potential-Quantität wird angefordert.
Existiert diese Quantität noch nicht, so wird sie automatisch neu
generiert. Der Index iqpot kann im weiteren zur Anforderung der
aktuellen Variablenwerte dieser Quantität verwendet werden
(s. Abb. 2.9). Der Prefix abc soll auf die
grundlegende Bedeutung der Funktionen zur Verwaltung von Quantitäten
hinweisen und dient weiters dazu, Namenskonflikte mit Funktionen
anderer Bibliotheken zu vermeiden.
Abbildung 2.9: Beispiel für die Anforderung der Variablen
einer Elektronenkonzentrations-Quantität und deren Verwendung. Es
wird der von den Elektronen bedingte Anteil der Raumladung berechnet.
Dieser Index wird in der Folge dazu benutzt, die aktuellen Variablenwerte zu ermitteln, die für die Auswertung der Kontrollfunktionen benötigt werden (s. Abb. 2.9).
Die Modelle benötigen unterschiedliche Quantitäten zur Berechnung der Komponenten der Kontrollfunktionen. Die Struktur der Modelle sieht einen Initialisierungsteil und einen Ausführungsteil vor (s. Abschnitt 2.4). Im Initialisierungsteil werden mit der Funktion abcGetQuantityIndex() alle Quantitäten registriert, die für das Modell benötigt werden. Im Ausführungsteil stellt die Funktion abcGetQuantityValues() alle aktuellen Variablenwerte für die Berechnung der Kontrollfunktionen zur Verfügung.