DE10150914C1 - Verfahren zur strukturellen Analyse und Korrektur eines mittels einer Computersprache beschriebenen Differentialgleichungssystems - Google Patents
Verfahren zur strukturellen Analyse und Korrektur eines mittels einer Computersprache beschriebenen DifferentialgleichungssystemsInfo
- Publication number
- DE10150914C1 DE10150914C1 DE10150914A DE10150914A DE10150914C1 DE 10150914 C1 DE10150914 C1 DE 10150914C1 DE 10150914 A DE10150914 A DE 10150914A DE 10150914 A DE10150914 A DE 10150914A DE 10150914 C1 DE10150914 C1 DE 10150914C1
- Authority
- DE
- Germany
- Prior art keywords
- nodes
- bipartite graph
- node
- equation
- partition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
- G06F17/13—Differential equations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Operations Research (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Eine Beschreibung eines physikalischen Systems liegt in Form von Gleichungen, insbesondere von Differentialgleichungen, als Computerprogramm auf einem Computersystem vor. Mit dem erfindungsgemäßen Verfahren werden geeignete Bipartite Graphen (16) zur Untersuchung der Lösbarkeit der Gleichungen erzeugt. Durch Betrachtung dieser Bipartiten Graphen (16) sind fehlerhafte Beschreibungen feststellbar und gegebenenfalls korrigierbar.
Description
Die Erfindung betrifft ein Verfahren zur Analyse und zur Kor
rektur eines mittels einer Computersprache beschriebenen Dif
ferentialgleichungssystems. Verschiedene, beliebig umfangrei
che, technische bzw. physikalische Systeme insbesondere elek
trische Schaltungen, die durch eine Vielzahl von Gleichungen
insbesondere durch Differentialgleichungen beschreibbar sind,
werden häufig durch Verwendung von Hardwarebeschreibungsspra
chen auf einem Computersystem simuliert.
Dabei kommen Simulatoren zum Einsatz, die das Gleichungssystem
eines real vorliegenden technischen bzw. physikalischen Sy
stems lösen. Solche Simulatoren liegen als Computerprogramme
vor und verwenden gängige numerische Verfahren. Bei der Analy
se elektrischer Systeme sind die gängigsten Verfahren die DC-
Analyse sowie die TR-Analyse. Bei der DC-Analyse handelt es
sich um eine Gleichstromanalyse zum Finden eines Arbeitspunk
tes des elektrischen Systems im eingeschwungenen Zustand. Die
TR-Analyse stellt eine transiente Analyse zur Zeitsimulation
des Systems dar.
Fehlerhafte Beschreibungen eines technischen bzw. physikali
schen Systems weisen häufig singuläre Matrizen auf. Dies führt
in der Regel zu einem Fehler bei der betreffenden Analyse,
insbesondere zu einem Konvergenzversagen oder zu einem Simula
tionsabbruch.
Eine manuelle Detektion der Position solcher Fehler innerhalb
der Beschreibung des technischen bzw. physikalischen Systems
sowie eine manuelle Korrektur der Beschreibung des technischen
bzw. physikalischen Systems gestalten sich sehr zeitaufwendig
und in Abhängigkeit der Größe und der Dimension des zugrunde
liegenden Gleichungssystems sogar als unmöglich.
Marktübliche Simulatoren bieten dem Anwender keinerlei Unter
stützung bei der Charakterisierung oder beim Auffinden solcher
Fehler in der Beschreibung des physikalischen Systems. Weiter
hin sind im Stand der Technik keine marktüblichen Simulatoren
bekannt, die Regularisierungsroutinen zur Korrektur von in ei
ner Computersprache beschriebenen Differentialgleichungssy
stems verwenden.
Im Stand der Technik (vgl. Literaturangabe am Schluss der Beschreibung) sind strukturelle Diagnoseverfahren be
kannt, die zur Analyse von Fehlern in Gleichungssytemen insbe
sondere in Differentialgleichungssystemen einen Bipartiten
Graphen benutzen, der die Besetztheit der Systemmatrix reprä
sentiert. Solche Diagnoseverfahren werden zur Korrektur von
Fehlern in Differentialgleichungssystemen bisher nicht einge
setzt.
Es ist Aufgabe der Erfindung, ein Verfahren bereitzustellen,
mit dem Fehler in einer Beschreibung eines physikalischen Sy
stems zuverlässig erkannt und innerhalb der Beschreibung des
physikalischen Systems eindeutig bestimmt werden können. Dabei sollen
mögliche Korrekturen für solche Fehler
innerhalb der Beschreibung des physikalischen Systems
durch das Computerprogramm automatisch gemacht werden.
Diese Aufgabe wird gelöst durch den Gegenstand des
Anspruchs 1. Vorteilhafte Weiterbildungen ergeben sich aus
den abhängigen Ansprüchen.
Bei dem Verfahren gemäß der Erfindung wird ein Modell bzw. eine Beschreibung ei
nes realen physikalischen Systems betrachtet.
Die Beschreibung dieses realen physikalischen Systems liegt in
Form eines Computerprogramms vor, welches das Verhalten des
Systems in Form eines Gleichungssystems oder Differentialglei
chungssystems beschreibt. Dieses Computerprogramm liegt auf
einem Computersystem vor. Die dabei zum Einsatz kommenden Pro
grammiersprachen sind häufig durch Spracheigenschaften bei
spielsweise durch Sichtbarkeitsbereiche bzw. Gültigkeitsberei
che von Deklarationen geprägt.
In dem in einer Programmiersprache vorliegenden Computerpro
gramm wird das zugrundeliegende reale physikalische System
durch ein Gleichungssystem beschrieben, das aus expliziten und
aus strukturellen Gleichungen sowie aus Gleichungen besteht,
welche die dynamischen Größen wie z. B. die zeitlichen Ablei
tungen einer Größe des Gleichungssystems charakterisieren.
Das erfindungsgemäße Verfahren verwendet zwei Bipartite Gra
phen zur Behandlung des Gleichungssystems des zugrundeliegen
den physikalischen Systems.
Die Bipartiten Graphen sind unter Verwendung der Informationen
des Gleichungssystems aufstellbar und berücksichtigen die
Sichtbarkeitsbereiche bzw. die Gültigkeitsbereiche der der Be
schreibung zugrundeliegenden Computersprache. Eine Definition
der Sichtbarkeitsbereiche einer Computersprache ist in Doku
ment [1] enthalten.
Ein Bipartiter Graph ist durch eine Vielzahl von Knoten und
Kanten gekennzeichnet. Dabei gliedern sich die Knoten des Bi
partiten Graphen in zwei Partitionen. Jede Kante verbindet ge
nau einen Knoten der ersten Partition mit genau einem weiteren
Knoten der zweiten Partition. Eine solche Verbindung zweier
Knoten mittels einer Kante besagt, daß zwischen den beiden
Knoten eine Beziehung ausgebildet ist, insbesondere daß eine
durch den zweiten Knoten dargestellte Unbekannte in der durch
den zweiten Knoten dargestellten Gleichung enthalten ist.
Da bestimmte Gleichungen des Gleichungssystems des realen phy
sikalischen Systems nicht explizit in der Computersprache for
muliert sind, gehören diese keinem Sichtbarkeitsbereich der
zugrundeliegenden Computersprache an.
Die Sichtbarkeitsbereiche des Bipartiten Graphen entsprechen
den Sichtbarkeitsbereichen der zugrundeliegenden Computerspra
che. Dabei bilden die Sichtbarkeitsbereiche des Bipartiten
Graphen jeweils eine Menge von Knoten des Bipartiten Graphen,
die eine Unbekannte oder eine Gleichung in der zugrundeliegen
den Computersprache darstellen, die einem Sichtbarkeitsbereich
der zugrundeliegenden Computersprache angehören. Die Kanten
des Bipartiten Graphen sind dadurch gekennzeichnet, daß sie
entweder innerhalb eines oder zwischen mehreren Sichtbarkeits
bereichen angeordnet sind.
Bei einem Matching handelt es sich um eine Menge unabhängiger
Kanten eines Bipartiten Graphen, bei der jeder Knoten mit ei
ner Kante inzident ist. Ein Knoten wird als gematcht bezeich
net, wenn eine Kante, die einem Matching angehört, an ihm an
setzt. Ein maximales Matching innerhalb eines Bipartiten Graphen
ist dann gegeben, wenn die Anzahl der gematchten Knoten
innerhalb des Bipartiten Graphen maximal ausgebildet ist.
In dem ersten Schritt des erfindungsgemäßen Verfahrens werden
die Gleichungen klassifiziert. Hierbei werden drei Typen von
Gleichungen unterschieden. Der erste Gleichungstyp, die expli
ziten Gleichungen, entsprechen den im Computerprogramm zur Be
schreibung des physikalischen Systems verwendeten Gleichungen.
Der zweite Gleichungstyp, die strukturellen Gleichungen des
Differentialgleichungssystems, stellen die Erhaltungsgleichun
gen des physikalischen Systems dar. Der dritte Gleichungstyp
entspricht denjenigen Gleichungen des Gleichungssystems, wel
che die dynamischen Größen des physikalischen Systems be
schreiben. Diese Gleichungen lassen sich unter bestimmten Be
dingungen modifizieren und dienen der strukturellen Regulari
sierung des Differentialgleichungssystems des erfindungsgemä
ßen Verfahrens. Dieser Gleichungstyp wird im folgenden als mo
difizierbare Gleichung bezeichnet.
Ausgehend von einem solchen Gleichungssystem wird nun ein er
ster Bipartiter Graph erzeugt. Für jede Gleichung des Glei
chungssystems wird ein Knoten der ersten Partition, für jede
Unbekannte des Gleichungssystems wird je ein Knoten der zwei
ten Partition des ersten Bipartiten Graphen aufgestellt. Für
jede Unbekannte, die in einer entsprechenden Gleichung enthal
ten ist, werden die betreffenden Knoten mittels einer Kante
verbunden.
Beim Aufstellen des ersten Bipartiten Graphen werden die
Sichtbarkeitsbereiche der zugrundeliegenden Computersprache
berücksichtigt, indem die Knoten denjenigen Sichtbarkeitsbe
reichen im Bipartiten Graphen zugeordnet werden, die den
Sichtbarkeitsbereichen der zugrundeliegenden Unbekannten und
Gleichungen in der Computersprache entsprechen.
Die Knoten der strukturellen Gleichungen, die in der Regel Un
bekannte mehrerer Sichtbarkeitsbereiche aufweisen, werden au
ßerhalb der Sichtbarkeitsbereiche des Bipartiten Graphen ange
ordnet.
Im nächsten Schritt des erfindungsgemäßen Verfahrens werden
die Knoten und Kanten der strukturellen Gleichungen aus dem
ersten Bipartiten Graphen entfernt. Für den so veränderten er
sten Bipartiten Graphen wird ein maximales Matching bestimmt.
Hierbei kommen Standard-Matching-Algorithmen zum Einsatz.
Gemäß einer Ausführungsform können auch die Zusammenhangskom
ponenten des veränderten ersten Bipartiten Graphen betrachtet
werden. Eine Definition von Zusammenhangskomponenten ist in
Dokument [3] gegeben.
Ausgehend von dem ersten Bipartiten Graphen erfolgt nun die
Erstellung eines zweiten Bipartiten Graphen.
Das erfindungsgemäße Verfahren verwendet den ersten Bipartiten
Graphen und die Eigenschaften des maximalen Matchings des ver
änderten ersten Bipartiten Graphen, um einen zweiten Biparti
ten Graphen aufzustellen, der zur Korrektur bzw. zur Regulari
sierung des zugrundeliegenden Gleichungssystems dient.
Die erste Partition dieses zweiten Bipartiten Graphen besteht
aus Knoten, die Mengen ermittelter modifizierbarer Gleichungs
knoten des ersten Bipartiten Graphen zusammenfassen und aus
den strukturellen Gleichungsknoten.
Die zweite Partition des zweiten Bipartiten Graphen wird aus
Knoten gebildet, die Mengen ermittelter Unbekanntenknoten des
ersten Bipartiten Graphen zusammenfassen.
Wie bei dem ersten Bipartiten Graphen, so werden auch bei dem
zweiten Bipartiten Graphen die Sichtbarkeitsbereiche berück
sichtigt und auf den zweiten Bipartiten Graphen übertragen.
Die Sichtbarkeitsbereiche des zweiten Bipartiten Graphen ent
sprechen den Sichtbarkeitsbereichen des ersten Bipartiten Gra
phen.
Für jeden ungematchten Knoten des ersten Bipartiten Graphen,
der einer modifizierbaren Gleichung entspricht, wird je ein
Knoten in demjenigen Sichtbarkeitsbereich des zweiten Biparti
ten Graphen eingefügt, in dem der entsprechende Knoten des er
sten Bipartiten Graphen enthalten ist. Solche Knoten gehören
der ersten Partition des zweiten Bipartiten Graphen an und
werden gemäß einer Ausführungsform im folgenden als Selector-
Quantity-Knoten bezeichnet.
Für jeden ungematchten Knoten im ersten Bipartiten Graphen,
der einer Unbekannten entspricht, wird je ein Knoten im zwei
ten Bipartiten Graphen eingefügt. Dieser Knoten wird in demje
nigen Sichtbarkeitsbereich angeordnet, in dem der entsprechen
de Knoten des ersten Bipartiten Graphen enthalten ist. Solche
Knoten gehören der zweiten Partition des zweiten Bipartiten
Graphen an und werden gemäß einer Ausführungsform im folgenden
als Break-Quantity-Knoten bezeichnet.
Zusätzlich werden weitere modifizierbare Gleichungsknoten so
wie weitere Unbekannten-Knoten des ersten Bipartiten Graphen
ermittelt und den Selector-Quantity-Knoten bzw. den Break-
Quantity-Knoten des zweiten Bipartiten Graphen hinzugefügt.
Dabei werden alternierende Pfade verwendet.
Ein alternierender Pfad ist in einem Bipartiten Graphen dann
gegeben, wenn ein zusammenhängender Pfad von Kanten abwech
selnd einem Matching angehört.
Im Anschluß an das Erzeugen von Selector-Quantity-Knoten im
zweiten Bipartiten Graphen für ungematchte Knoten des ersten
Bipartiten Graphen erfolgt das Ermitteln weiterer modifizier
barer Gleichungsknoten, die den entsprechenden Selector-
Quantity-Knoten der ersten Partition des zweiten Bipartiten
Graphen hinzugefügt werden. Dabei wird von dem ungematchten
und der modifizierbaren Gleichung im ersten Bipartiten Graphen
entsprechenden Knoten des Selector-Quantity-Knoten ausgegangen
und alle Knoten, die modifizierbare Gleichungen repräsentieren
und die über alternierende Pfade erreichbar sind, dem Selec
tor-Quantity-Knoten der ersten Partition des zweiten Biparti
ten Graphen hinzugefügt.
Des weiteren werden weitere Unbekannten-Knoten ermittelt, die
den entsprechenden Break-Quantity-Knoten der zweiten Partition
des zweiten Bipartiten Graphen hinzugefügt werden. Dabei wird
ausgehend von demjenigen ungematchten Knoten des Break-
Quantity-Knotens, welcher der Unbekannten im ersten Bipartiten
Graphen entspricht, unter Verfolgung von alternierenden Pfaden
je ein weiterer Unbekannten-Knoten des ersten Bipartiten Gra
phen dem Break-Quantity-Knoten des zweiten Bipartiten Graphen
hinzugefügt.
Durch diese Ausführungsform der Erfindung können einfach und
zuverlässig mehrere gültige Alternativknoten des ersten Bipar
titen Graphen über alternierende Pfade bestimmt werden. Diese
Alternativknoten werden zusammen mit den ursprünglich gefunde
nen Knoten jeweils durch einen Knoten des zweiten Bipartiten
Graphen zusammengefaßt.
Im nächsten Schritt werden die Kanten von gematchten, modifi
zierbaren Gleichungsknoten des ersten Bipartiten Graphen aus
gewählt und aus dem ersten Bipartiten Graphen gelöscht.
Der so reduzierte erste Bipartite Graph weist nun einen unge
matchten modifizierbaren Gleichungsknoten sowie einen zusätz
lichen ungematchten Unbekanntenknoten auf.
Für den durch das Löschen der matchenden Kante entstandenen
ungematchten, modifizierbaren Gleichungsknoten wird nun gemäß
einer Ausführungsform ein Selector-Quantity-Knoten in der er
sten Partition des zweiten Bipartiten Graphen erzeugt. Der
Sichtbarkeitsbereich dieses Selector-Quantity-Knotens ent
spricht dem Sichtbarkeitsbereich des ausgewählten ungematchten
Gleichungsknotens des ersten Bipartiten Graphen.
Ausgehend von dem ungematchten Unbekanntenknoten, der zuvor
durch das Löschen der matchenden Kante entstanden ist, ist ei
ne weitere Menge von Unbekannten-Knoten zu bestimmen, die
durch einen gemäß einer Ausführungsform bezeichneten Break-
Quantity-Knoten in der zweiten Partition des zweiten Biparti
ten Graphen repräsentiert wird. Der Sichtbarkeitsbereich die
ses Break-Quantity-Knotens entspricht dem Sichtbarkeitsbereich
des ungematchten Unbekanntenknotens des ersten Bipartiten Gra
phen.
Dieser neu bestimmte Break-Quantity-Knoten weist den unge
matchten Unbekanntenknotens, der zuvor durch das Löschen der
matchenden Kante entstanden ist, sowie diejenigen Unbekanntenknoten
auf, die von diesem ungematchten Unbekanntenknoten aus
über alternierende Pfade erreichbar sind.
Durch diesen Schritt werden dem erfindungsgemäßen Verfahren
zusätzliche Freiheitsgrade für die Regularisierung gegeben.
Der Schritt des Einfügens der Break-Quantity-Knoten kann auch
vor dem Schritt des Einfügens der Selector-Quantity-Knoten er
folgen.
Die Schritte
- - des Bestimmens der ungematchten, einer modifizierbaren Gleichung entsprechenden Knoten des ersten Bipartiten Gra phen,
- - des Erzeugens je eines Selector-Quantity-Knotens der er sten Partition des zweiten Bipartiten Graphen für jeden im vorigen Schritt bestimmten Knoten,
- - des Ermittelns weiterer Knoten im ersten Bipartiten Gra phen, die einer modifizierbaren Gleichung entsprechen, un ter Verfolgung von alternierenden Pfaden und
- - des Hinzufügens der im vorigen Schritt ermittelten Knoten des ersten Bipartiten Graphen zu den zuvor erzeugten Se lector-Quantity-Knoten der ersten Partition des zweiten Bipartiten Graphen
bilden einen ersten Abschnitt des erfindungsgemäßen Verfah
rens.
Die Schritte
- - des Bestimmens der ungematchten, einer Unbekannten ent sprechenden Knoten des ersten Bipartiten Graphen,
- - des Erzeugens je eines Break-Quantity-Knotens der zweiten Partition des zweiten Bipartiten Graphen für jeden im vo rigen Schritt bestimmten Knoten,
- - des Ermittelns weiterer Knoten im ersten Bipartiten Gra phen, die einer Unbekannten entsprechen, unter Verfolgung von alternierenden Pfaden, ausgehend von den zuvor be stimmten Knoten und
- - des Hinzufügens der im vorigen Schritt ermittelten Knoten des ersten Bipartiten Graphen zu den zuvor erzeugten Break-Quantity-Knoten des zweiten Bipartiten Graphen
bilden einen zweiten Abschnitt des erfindungsgemäßen Verfah
rens.
Die Schritte
- - des Bestimmens der gematchten, einer modifizierbaren Glei chung entsprechenden Knoten des ersten Bipartiten Graphen,
- - des Löschens der matchenden Kante der im vorigen Schritt bestimmten Knoten,
- - des Erzeugens je eines Selector-Quantity-Knotens der er sten Partition des zweiten Bipartiten Graphen für die zu vor bestimmten Knoten des ersten Bipartiten Graphen,
- - des Erzeugens je eines Break-Quantity-Knotens der zweiten Partition des zweiten Bipartiten Graphen für jeden unge matchten, einer Unbekannten im ersten Bipartiten Graphen entsprechenden Knoten, der durch das Löschen der matchen den Kante entstanden ist,
- - des Ermittelns weiterer Knoten im ersten Bipartiten Gra phen, die einer Unbekannten entsprechen, unter Verfolgung von alternierenden Pfaden, ausgehend von den ungematchten, einer Unbekannten im ersten Bipartiten Graphen entspre chenden Knoten und
- - des Hinzufügens der im vorigen Schritt ermittelten Knoten des ersten Bipartiten Graphen zu den vorher erzeugten Kno ten des zweiten Bipartiten Graphen
stellen einen dritten Abschnitt des erfindungsgemäßen Verfah
rens dar.
Die Abfolge dieser drei Abschnitte innerhalb des erfindungsge
mäßen Verfahrens kann beliebig vorgesehen werden. Beispiels
weise können die Schritte des zweiten Abschnitts zuerst, die
Schritte des dritten Abschnitts daran anschließend und die
Schritte des ersten Abschnitts zuletzt ausgeführt werden.
In einem nächsten Schritt des erfindungsgemäßen Verfahrens
wird für jede strukturelle Gleichung je ein Knoten in der er
sten Partition des zweiten Bipartiten Graphen eingefügt. Diese
Knoten befinden sich außerhalb der Sichtbarkeitsbereiche des
zweiten Bipartiten Graphen.
Nun werden die Knoten der ersten Partition mit den Knoten der
zweiten Partition mittels Kanten verbunden, wenn sie im je
weils gleichen Sichtbarkeitsbereich angeordnet sind.
Der Schritt des Verbindens der Knoten der ersten Partition
mittels Kanten mit den Knoten der zweiten Partition kann auch
vor dem Schritt des Einfügens je eines Knotens für jede struk
turelle Gleichung in der ersten Partition des zweiten Biparti
ten Graphen ausgeführt werden.
Anschließend werden Knoten der strukturellen Gleichungen durch
Kanten mit Break-Quantity-Knoten der zweiten Partition verbun
den, wenn eine der durch den Break-Quantity-Knoten dargestell
ten Unbekannten in der jeweils betreffenden strukturellen
Gleichung enthalten ist.
Für den so erzeugten vollständigen zweiten Bipartiten Graphen
wird nun ein maximales Matching bestimmt. Hierbei kommen Stan
dard-Matching-Algorithmen zum Einsatz. Handelt es sich bei
diesem maximalen Matching des zweiten Bipartiten Graphen um
ein perfektes Matching, so ist das Gleichungssystem regulari
sierbar. Ein perfektes Matching ist ein Matching, bei dem alle
Knoten gematcht sind.
Die Kanten des perfekten Matchings des zweiten Bipartiten Gra
phen repräsentieren die möglichen zur Regularisierung benötig
ten Sprachkonstrukte. Unter Regularisierung wird dabei die
Transformation des unlösbaren Gleichungssystems in ein lösba
res Gleichungssystem verstanden.
Kann kein perfektes Matching im zweiten Bipartiten Graphen ge
funden werden, so ist die Beschreibung des physikalischen Sy
stems nicht allein durch Änderungen der modifizierbaren Glei
chungen regularisierbar. In diesem Falle liefert das erfin
dungsgemäße Verfahren analog bekannter Verfahren die Unbekann
ten und Gleichungen, welche die strukturelle Unlösbarkeit des
Gleichungssystems verursachen.
Kann ein perfektes Matching im zweiten Bipartiten Graphen ge
funden werden, so wird im nächsten Schritt des erfindungsgemä
ßen Verfahrens eine Bestimmung derjenigen Kanten vorgenommen,
die dem perfekten Matching angehören und die sich zwischen den
Break-Quantity-Knoten der zweiten Partition und den Selector-
Quantity-Knoten der ersten Partition des zweiten Bipartiten
Graphen befinden.
Für jede im vorherigen Schritt bestimmte Kante wird nun fol
gendermaßen vorgegangen:
Für eine aus der Menge der Unbekanntenknoten des betreffenden Break-Quantity-Knotens ausgewählte Unbekannte wird nun ein Wert festgesetzt. Dieser Wert kann insbesondere durch einen Benutzer in Interaktion mit dem Computerprogramm vorgegeben werden.
Für eine aus der Menge der Unbekanntenknoten des betreffenden Break-Quantity-Knotens ausgewählte Unbekannte wird nun ein Wert festgesetzt. Dieser Wert kann insbesondere durch einen Benutzer in Interaktion mit dem Computerprogramm vorgegeben werden.
Die aus der Menge der modifizierbaren Gleichungsknoten des zu
gehörigen Selector-Quantity-Knotens ausgewählte, modifizierba
re Gleichung des Gleichungssystems wird nun in der Beschrei
bung des physikalischen Systems insbesondere im Quellcode des
Computerprogramms verbessert.
Dabei wird die aus dem Selector-Quantity-Knoten ausgewählte,
modifizierbare Gleichung durch eine Gleichung ersetzt, welche
die ausgewählte Unbekannte des im vorigen Schritt bestimmten
Break-Quantity-Knotens sowie den im vorigen Schritt für diese
Unbekannte bestimmten Wert aufweist.
Die zuletzt genannten Schritte werden für jede weitere Kante
des perfekten Matchings wiederholt, die sich zwischen den
Break-Quantity-Knoten der zweiten Partition und den Selector-
Quantity-Knoten der ersten Partition des zweiten Bipartiten
Graphen befindet. Bei der Wiederholung dieser erfindungsgemä
ßen Schritte werden die jeweils zuvor ausgewählten modifizier
baren Gleichungen sowie die jeweils zuvor ausgewählten Unbe
kannten berücksichtigt.
Der Schritt des Auswählens einer modifizierbaren Gleichung aus
den Knoten der ersten Partition des zweiten Bipartiten Gra
phen, die durch die zuvor bestimmten Kanten des perfekten Mat
chings verbunden sind, kann auch nach dem Schritt des Auswäh
lens einer Unbekannten aus den Knoten der zweiten Partition
des zweiten Bipartiten Graphen, die durch die zuvor bestimmten
Kanten des perfekten Matchings verbunden sind, oder nach dem
Schritt des Festlegens eines numerischen Werts für die im vo
rigen Schritt ausgewählte Unbekannte ausgeführt werden.
Die Korrektur der Beschreibung des physikalischen Systems wird
abschließend durch Hinzufügen, durch Ändern oder durch Entfer
nen von speziellen Sprachkonstrukten, welche die Modifikation
der modifizierbaren Gleichungen ermöglichen, im Computerpro
gramm vorgenommen.
Diese Sprachkonstrukte werden gemäß einer Ausführungsform als
Break Statements bezeichnet und werden durch das erfindungsge
mäße Verfahren an der entsprechenden Stelle im Computerpro
gramm eingefügt, verändert oder entfernt.
Dabei sind auch andere Sprachkonstrukte zur Ergänzung und Kor
rektur der Beschreibung des physikalischen Systems vorsehbar.
Durch die derart vorgenommene Korrektur wird das Gleichungssy
stem regularisiert. Das bedeutet, daß die strukturelle Lösbar
keit des Gleichungssystems durch die so vorgenommene Verände
rung gegeben ist.
Gemäß einem Grundgedanken der Erfindung sind strukturell un
lösbare Systeme von Gleichungen insbesondere Differentialglei
chungen von physikalischen Systemen diagnostizierbar und durch
das Ändern von speziellen Gleichungen gegebenenfalls korri
gierbar bzw. strukturell regularisierbar.
Gemäß einem weiteren Grundgedanken berücksichtigt das erfin
dungsgemäße Verfahren Spracheigenschaften der zur Beschreibung
des zugrundeliegenden physikalischen Systems eingesetzten Pro
grammiersprache. Dadurch ist ein geeigneter Bipartiter Graph
aufstellbar, mit dem das Gleichungssystems, welches das zu
grundeliegende physikalische System beschreibt, gegebenenfalls
korrigiert bzw. strukturell regularisiert werden kann.
Das erfindungsgemäße Verfahren unterscheidet im Unterschied zu
den herkömmlichen strukturellen Verfahren die Art der Knoten
des Bipartiten Graphen in Knoten von expliziten Gleichungen,
in Knoten von strukturellen Gleichungen und in Knoten von
Gleichungen, die sich durch explizite Sprachkonstrukte modifi
zieren lassen.
Durch Anwendung der Matching-Algorithmen auf geeignete Bipar
tite Graphen wird gewährleistet, daß die Regularisierungsvor
schläge zu einem strukturell lösbaren System führen.
Somit stellt das erfindungsgemäße Verfahren eine vorteilhafte
Möglichkeit zur Analyse und Korrektur von Gleichungssystemen
zur Verfügung, wie sie zur Beschreibung beliebiger physikali
scher Systeme dienen.
Mittels des erfindungsgemäßen Verfahrens können Beschreibungen
von physikalischen Systemen falls möglich sehr gezielt korri
giert werden.
Bei dem erfindungsgemäßen Verfahren handelt es sich um ein
schnelles strukturelles Verfahren, das effiziente Matching-
Algorithmen nutzt.
Ferner kann das erfindungsgemäße Verfahren eine mögliche Kor
rektur der Beschreibung des physikalischen Systems insbesonde
re des Quellcodes bzw. des Computerprogramms, welches das phy
sikalische System beschreibt, automatisch durchführen.
Gemäß einer Ausführungsform der Erfindung liegt das betrachte
te physikalische System als elektrische Schaltung vor. Diese
weist ein oder mehrere miteinander verbundene Schaltungselemente
auf. Das erfindungsgemäße Verfahren kommt bei der Analy
se und Korrektur von Abbildern von elektrischen Schaltungen
besonders vorteilhaft zum Einsatz.
Eine weitere Ausführungsform der Erfindung sieht vor, daß das
Computerprogramm, das als Beschreibung des physikalischen Sy
stems auf dem Computersystem eingesetzt wird, in einer Hardwa
rebeschreibungssprache vorliegt. Hierbei kommen analoge und
Mixed-Signal-Hardwarebeschreibungssprachen insbesondere die
Hardwarebeschreibungssprachen "VHDL-AMS" oder "Verilog AMS"
zum Einsatz.
Solche Hardwarebeschreibungssprachen ermöglichen es, beliebige
physikalische Vorgänge in Form von Gleichungen zu modellieren.
Die Hardwarebeschreibungssprache stellt dabei nur eine beding
te Einschränkung bei der Beschreibung von physikalischen Sy
stemen auf einem solchen Computerprogramm dar, so daß das be
schriebene Verhalten von physikalischen Systemen zu unlösbaren
Gleichungssystemen führen kann.
Durch das erfindungsgemäße Verfahren wird die Möglichkeit der
Regularisierung, die durch die Sprachkonstrukte der Hardware
beschreibungssprache gegeben ist, vorteilhaft ausgenutzt. Das
erfindungsgemäße Verfahren unterstützt besonders vorteilhaft
Eigenschaften der zugrundeliegenden Hardwarebeschreibungsspra
che. Dabei werden eventuelle Einschränkungen der Hardwarebe
schreibungssprache wie beispielsweise Sichtbarkeitsbereiche
berücksichtigt.
Die Hardwarebeschreibungssprache "VHDL-AMS" stellt eine beson
ders umfangreiche und besonders flexible Bibliothek von vorde
finierten Sprachkonstrukten zur Verfügung, die bei der Verwen
dung für das erfindungsgemäße Verfahren besonders vorteilhaft
zum Einsatz kommen. Eine zusammenfassende Darstellung der
Sprachkonstrukte der Hardwarebeschreibungssprache "VHDL-AMS"
ist in [2] enthalten.
Die Erfindung ist auch in einem Computerprogramm zur Ausfüh
rung eines Verfahrens zur Analyse und zur Korrektur einer Be
schreibung eines physikalischen Systems verwirklicht.
Das Computerprogramm ist dabei so ausgebildet, daß nach Einga
be der Beschreibung des physikalischen Systems ein erfindungs
gemäßes Verfahren in einer oben beschriebenen Ausführungsform
durchführbar ist. Dabei ist als Ergebnis des Verfahrens eine
Aussage darüber treffbar, ob die Beschreibung des zugrundelie
genden physikalischen Systems durch Ergänzen oder Ändern von
Sprachkonstrukten verbesserbar ist. Idealerweise läßt sich die
Beschreibung des zugrundeliegenden Gleichungssystems durch
Hinzufügen oder durch Ändern von bestimmten Sprachkonstrukten
regularisieren. Ist das der Beschreibung zugrundeliegende
Gleichungssystem nicht regularisierbar, erfolgt analog bekann
ter Verfahren eine detaillierte Ausgabe der Gleichungen und
Unbekannten, die strukturelle Verletzungen aufweisen.
Durch das auf dem Computersystem verwirklichte Verfahren kann
die Beschreibung des physikalischen Systems besonders vorteil
haft analysiert und gegebenenfalls korrigiert werden.
Die Erfindung betrifft außerdem ein Computerprogramm, das auf
einem Speichermedium enthalten ist, das in einem Computerspei
cher abgelegt ist, das in einem Direktzugriffsspeicher enthal
ten ist oder das auf einem elektrischen Trägersignal übertra
gen wird.
Weiterhin betrifft die Erfindung einen Datenträger mit einem
solchen Computerprogramm sowie ein Verfahren bei dem ein sol
ches Computerprogramm aus einem elektrischen Datennetz, wie
beispielsweise aus dem Internet, auf einen an das Datennetz
angeschlossenen Computer heruntergeladen wird.
Die Erfindung ist in den Figuren anhand eines Ausführungsbei
spiels näher veranschaulicht.
Fig. 1 zeigt eine schematische Darstellung einer Regel
strecke 1 mit einer Sinusquelle 2, mit einem Inte
grator 3 und mit einem Ausgangssignal 4 gemäß einem
Ausführungsbeispiel,
Fig. 2 zeigt ein Listing eines Sinusquellenquellcodes 5 der
in Fig. 1 gezeigten Sinusquelle 2 gemäß dem Ausfüh
rungsbeispiel,
Fig. 3 zeigt ein Listing eines Integratorquellcodes 6 des
in Fig. 1 gezeigten Integrators 3 gemäß dem Ausfüh
rungsbeispiel,
Fig. 4 zeigt ein Listing eines Regelstreckenquellcodes 7
der in Fig. 1 gezeigten Regelstrecke 1 gemäß dem
Ausführungsbeispiel,
Fig. 5 zeigt eine Regelstreckenmatrix 8 der in Fig. 1 ge
zeigten Regelstrecke 1 gemäß dem Ausführungsbei
spiel,
Fig. 6 zeigt einen ersten Bipartiten Graphen 9 der Regel
streckenmatrix 8 gemäß dem Ausführungsbeispiel,
Fig. 7 zeigt eine Sichtbarkeitsbereiche- und Glei
chungstypendarstellung 16 des ersten Bipartiten Gra
phen 9 gemäß dem Ausführungsbeispiel,
Fig. 8 zeigt eine Zusammenhangskomponentendarstellung 20
einer Regelstreckenmatrix 8 gemäß dem Ausführungs
beispiel,
Fig. 9 zeigt eine Break-Quantity- und Selector-Quantity-
Listendarstellung 21 des ersten Bipartiten Graphen 9
gemäß dem Ausführungsbeispiel,
Fig. 10 zeigt einen aus der Break-Quantity- und Selector-
Quantity-Listendarstellung 21 sowie aus dem ersten
strukturellen Gleichungsknoten 10, aus dem zweiten
strukturellen Gleichungsknoten 11 und aus dem drit
ten strukturellen Gleichungsknoten 12 erstellten
zweiten Bipartiten Graphen 22 gemäß dem Ausführungs
beispiel,
Fig. 11 zeigt ein perfektes Matching 23 des zweiten Biparti
ten Graphen 22 gemäß dem Ausführungsbeispiel,
Fig. 12 zeigt ein Simulationslauflisting 24 zur Analyse und
Korrektur des Sinusquellenquellcodes 5, des Integra
torquellcodes 6 und des Regelstreckenquellcodes 7
gemäß dem Ausführungsbeispiel,
Fig. 13 zeigt einen durch die Ausführung des erfindungsgemä
ßen Verfahrens auf dem Computerprogramm erzeugten
regularisierten Integratorquellcode 25, der den in
Fig. 3 gezeigten Integratorquellcode 6 ersetzt, ge
mäß dem Ausführungsbeispiel,
Fig. 14 zeigt eine mit dem in Fig. 13 ermittelten "Break
Statement" regularisierte Regelstreckenmatrix 26,
welche die in Fig. 5 gezeigte Regelstreckenmatrix 8
ersetzt, gemäß einem Ausführungsbeispiel,
Fig. 15 zeigt eine graphische Simulationsdarstellung 27 mit
einem Integratoreingangsspannungsverlauf 28 und mit
einem Integratorausgangsspannungsverlauf 29 gemäß
dem Ausführungsbeispiel.
Fig. 1 zeigt eine schematische Darstellung einer Regelstrec
ke 1 mit einer Sinusquelle 2, mit einem Integrator 3 und mit
einem Ausgangssignal 4 gemäß einem Ausführungsbeispiel.
Die Sinusquelle 2 ist als Wechselspannungsquelle ausgebildet
und mit dem Integrator 3 verbunden. Die von der Sinusquelle 2
erzeugte Wechselspannung wird dem Integrator 3 zur Verarbei
tung zugeführt. Dieser Integrator 3 integriert die von der Si
nusquelle 2 erzeugte Wechselspannung über die Zeit. Der cosi
nus-förmige Verlauf der vom Integrator 3 erzeugten Wech
selspannung wird als Ausgangssignal 4 der Regelstrecke 1 aus
gegeben.
Nachfolgend wird ein Abbild der Regelstrecke 1, der Sinusquel
le 2 und des Integrators 3 unter Verwendung einer Programmier
sprache auf einem Computersystem erzeugt. Dazu wird die Hard
warebeschreibungssprache "VHDL-AMS" verwendet.
Fig. 2 zeigt ein Listing eines Sinusquellenquellcodes 5 der
in Fig. 1 gezeigten Sinusquelle 2 gemäß dem Ausführungsbei
spiel.
Mittels des in der Hardwarebeschreibungssprache "VDHL-AMS"
vorliegenden Sinusquellenquellcodes 5 wird das Verhalten der
Sinusquelle 2 beschrieben.
In der Zeile 1 ist die "Entity" mit dem Namen "Sinus" dekla
riert. In der Zeile 2 ist die Ausgangsgröße "sout" deklariert.
Dabei werden die "VHDL-AMS"-Sprachkonstrukte "Port Declarati
on" und "Interface Quantity Declaration" verwendet. Zeile 3
beendet die Deklaration der "Entity Sinus".
Die Zeilen 4 bis 7 beschreiben das tatsächliche Verhalten der
Sinusquelle 2. In "VHDL-AMS" wird das Verhalten einer Einheit
innerhalb einer sogenannten "Architecture Declaration" be
schrieben. Dementsprechend deklariert die vierte Zeile die
"Architecture" mit dem Namen "Behave" mit Bezug auf die vor
hergehende "Entity"-Deklaration "Sinus". Die fünfte Zeile
stellt den Beginn der Verhaltensbeschreibung der Sinusquelle 2
dar. In der sechsten Zeile wird die in Zeile 2 deklarierte
Ausgangsgröße "sout" in Form einer Gleichung durch eine sinus
förmige Schwingung beschrieben. Hierzu wird das "VHDL-AMS"-
Sprachkonstrukt "Simple Simultaneous Statement" verwendet.
Bei der Gleichung E1 handelt es sich um eine erste explizite
Gleichung. Die Zeile 7 bildet das Ende der Verhaltensbeschrei
bung der Sinusquelle 2.
Fig. 3 zeigt ein Listing eines Integratorquellcodes 6 des in
Fig. 1 gezeigten Integrators 3 gemäß dem Ausführungsbeispiel.
Die Zeilen 1 bis 4 des Integratorquellcodes 6 definieren das
Klemmenverhalten des Integrators 3. Zeile 1 deklariert die
"Entity" mit dem Namen "Integrator". In der Zeile 2 wird die
Eingangsgröße "inp" und in der Zeile 3 die Ausgangsgröße
"outp" deklariert. Zeile 4 beendet die Deklaration der "Entity
Integrator".
Die Verhaltensbeschreibung des Integrators 3 innerhalb des In
tegratorquellcodes 6 erfolgt analog dem Sinusquellen
quellcode 5 innerhalb einer "Architecture" in den Zeilen 5
bis 8. In der Zeile 5 wird die "Architecture" mit dem Namen
"Behave" mit Bezug auf die vorhergehende "Entity"-Deklaration
"Integrator" deklariert. Die Zeile 6 markiert den Beginn der
Verhaltensbeschreibung des Integrators 3. In Zeile 7 wird in
Form einer Gleichung bzw. eines "Simple Simultaneous Statement"
die in Zeile 2 deklarierte Eingangsgröße "inp" mit der
in Zeile 3 deklarierten Ausgangsgröße "outp" in ein differen
tielles Verhältnis gesetzt, das die integrierende Wirkung des
Integrators 3 definiert.
Bei der Gleichung E2 handelt es sich um die zweite explizite
Gleichung. Die Ableitung einer Systemgröße nach der Zeit wird
in "VHDL-AMS" durch das Sprachkonstrukt "DOT" ermöglicht. In
der Zeile 8 ist das Ende der Verhaltensbeschreibung des Inte
grators 3 erreicht.
Fig. 4 zeigt ein Listing eines Regelstreckenquellcodes 7 der
in Fig. 1 gezeigten Regelstrecke 1 gemäß dem Ausführungsbei
spiel.
Bei dem Regelstreckenquellcode 7 handelt es sich um eine Top-
Level-Beschreibung, in der die beiden Komponenten der Regel
strecke 1, und zwar die Sinusquelle 2 durch den Sinusquellen
quellcode 5 sowie der Integrator 3 durch den Integrator
quellcode 6 instantiiert werden. Dementsprechend erfolgt die
Zusammenschaltung der Sinusquelle 2 und des Integrators 3 in
einer dritten "VHDL-AMS"-Beschreibung, dem Regelstrecken
quellcode 7. Das "VHDL-AMS"-Modell ist hierarchisch aufgebaut.
In Fig. 4 erfolgt die Deklaration der "Entity" mit dem Namen
"Beispiel" in den Zeilen 1 und 2. Innerhalb der "Architecture
Declaration" in den Zeilen 3 bis 11 erfolgt die Zusammenschal
tung der Sinusquelle 2 und des Integrators 3. Die Zeile 3 de
klariert die "Architecture" mit dem Namen "Struct" mit Bezug
auf die vorhergehende "Entity"-Deklaration "Beispiel". In der
Zeile 4 erfolgt die Deklaration der lokalen Variablen "input",
"output", die zur Verschaltung der Sinusquelle 2 mit dem Inte
grator 3 benötigt werden. Hierbei wird das "VHDL-AMS"-
Sprachkonstrukt "Free Quantity Declaration" verwendet. Die
Zeile 5 stellt den Beginn der strukturellen Beschreibung des
Regelstreckenquellcodes 7 dar. In den Zeilen 6 und 7 wird die
Sinusquelle 2 instantiiert und mit dem Label "SRC" gekenn
zeichnet. Zur Instanziierung von Komponenten ist in "VHDL-AMS"
das Sprachkonstrukt "Component Instantiation Statement" vorge
sehen. Mittels des in Zeile 7 enthaltenen Sprachkonstrukts,
dem "Port Map Aspect" wird die Ausgangsvariable "sout" des Si
nusquellenquellcodes 5 mit der im Regelstreckenquellcode 7 lo
kal deklarierten Variable "input" gleichgesetzt. Der Sprach
konstrukt "Port Map Aspect" ist als Teil des "VHDL-AMS"-
Sprachkonstrukts "Component Instantiation Statement" vorgese
hen.
S1: sout = input
Bei der Gleichung S1 handelt es sich um eine erste strukturel
le Gleichung. In den Zeilen 9 und 10 des in Fig. 4 gezeigten
Regelstreckenquellcodes 7 wird der Integrator 3 instantiiert
und mit dem Label "Int" gekennzeichnet. In Zeile 10 wird mit
tels des "Port Map Aspect" die Eingangsvariable "inp" des In
tegrators 3 mit der lokalen Variable "input" des Regelstrec
kenquellcodes 7 gleichgesetzt.
S2: inp = input
Bei der Gleichung S2 handelt es sich um die zweite strukturel
le Gleichung des vorliegenden Ausführungsbeispiels.
Weiterhin wird in Zeile 10 durch den Sprachkonstrukt "Port Map
Aspect" die Ausgangsvariable des Integrators 3 "outp" mit der
lokal deklarierten Variable "output" gleichgesetzt.
S3: outp = output
Bei der Gleichung S3 handelt es sich um die dritte strukturel
le Gleichung des vorliegenden Ausführungsbeispiels. In der
elften Zeile des Regelstreckenquellcodes 7 ist die strukturel
le Beschreibung beendet.
Zusätzlich wird eine Gleichung aufgestellt, welche die zeitli
che Ableitung der Ausgangsvariablen des Integrators 3 "out
p'dot" enthält. Diese Gleichung lautet:
Die Regelstrecke 1 wird im Ruhezustand betrachtet. Dementspre
chend wird die zeitliche Ableitung der Ausgangsvariable des
Integrators 3 auf Null gesetzt. Die Gleichung nimmt folgende
Form an:
A1: outp'dot = 0.0
Fig. 5 zeigt eine Regelstreckenmatrix 8 der in Fig. 1 ge
zeigten Regelstrecke 1 gemäß dem Ausführungsbeispiel.
Das Gleichungssystem gliedert sich in die strukturellen Glei
chungen S1, S2, S3, in die expliziten Gleichungen E1, E2 und
in die Gleichung A1, die das Verhalten der dynamischen Größe
"outp" des Integrators 3 bestimmt. Dieses Gleichungssystem ist
vorgesehen zur Bestimmung des Ruhezustands der Regelstrecke 1
und ist in der Form A.u = b darstellbar. Dabei handelt es sich
bei A um die Koeffizientenmatrix, bei u um den Unbekanntenvek
tor und bei b um den Vektor der Absolutglieder. Der Unbekann
tenvektor u gliedert sich in Fig. 5 in die Unbekannten "in
put", "output", "sout", "inp", "outp" und "outp'dot".
Die Spalten 2 und 5 der Regelstreckenmatrix 8 weisen nur je
einen Wert auf. Somit ist die Regelstreckenmatrix 8 singulär.
Dementsprechend ist das Gleichungssystem A.u = b zur Bestimmung
des Ruhezustands der Regelstrecke 1 unlösbar ausgebildet.
Bei dem erfindungsgemäßen Verfahren wird überprüft, ob durch
eine Modifikation der die zeitliche Ableitung der Regelstrec
ke 1 berücksichtigenden Gleichung A1 die Regelstreckenmatrix 8
derart verbessert werden kann, daß sie lösbar ist.
Zu diesem Zweck stellen analoge Hardwarebeschreibungssprachen
spezielle Sprachkonstrukte zur Verfügung, mit denen die Glei
chungen zur Bestimmung der zeitlichen Ableitungen modifiziert
werden können. Bei der im Ausführungsbeispiel verwendeten
Hardwarebeschreibungssprache "VHDL-AMS" wird ein solches
Sprachkonstrukt, nämlich das "Break Statement" verwendet, um
die Regelstreckenmatrix 8 zu regularisieren. Im Ausführungs
beispiel wird solch ein "Break Statement" hinzugefügt, um die
unlösbare Regelstreckenmatrix 8 in eine lösbare Regelstrecken
matrix zu transformieren.
Fig. 6 zeigt einen ersten Bipartiten Graphen 9 der Regel
streckenmatrix 8 gemäß dem Ausführungsbeispiel.
Der erste Bipartite Graph 9 gliedert sich in eine Menge von in
Fig. 6 kreisförmig dargestellten Knoten und in eine Menge von
in Fig. 6 als Verbindungslinien zwischen den einzelnen Knoten
dargestellten Kanten.
Die in Fig. 6 auf der linken Seite dargestellten Knoten stel
len die ersten Partition des ersten Bipartiten Graphen 9 dar.
Jeder Knoten der ersten Partition des ersten Bipartiten Gra
phen 9 steht für eine Zeile der Regelstreckenmatrix 8 bzw. für
eine Gleichung des der Regelstreckenmatrix 8 zugrundeliegenden
Gleichungssystems. Dementsprechend gliedert sich die erste
Partition des ersten Bipartiten Graphen 9 in einen ersten
strukturellen Gleichungsknoten 10, in einen zweiten struktu
rellen Gleichungsknoten 11, in einen dritten strukturellen
Gleichungsknoten 12, in einen ersten expliziten Gleichungskno
ten 13, in einen zweiten expliziten Gleichungsknoten 14 sowie
in einen zeitlichen Ableitungsgleichungsknoten 15.
Die auf der rechten Seite der Fig. 6 kreisförmig dargestell
ten Knoten repräsentieren die zweite Partition des ersten Bi
partiten Graphen 9. Diese zweite Partition des ersten Biparti
ten Graphen 9 weist die Spalten der Regelstreckenmatrix 8 bzw.
die Unbekannten des der Regelstreckenmatrix 8 zugrundeliegen
den Gleichungssystems auf. Dementsprechend gliedert sich die
zweite Partition des ersten Bipartiten Graphen 9 im Ausfüh
rungsbeispiel in die Variablen "input", "output", "sout",
"inp", "outp", "outp'dot".
Die in Fig. 6 gezeigten Kanten sagen aus, welche Unbekannte
in welchen Gleichungen des der Regelstreckenmatrix 8 zugrunde
liegenden Gleichungssystems enthalten sind. Enthält die
Koeffizientenmatrix A der Regelstreckenmatrix 8 an der Positi
on mit der Reihe i und mit der Spalte j einen von Null ver
schiedenen Eintrag, so enthält der erste Bipartite Graph 9 ei
ne Kante (vxi, vyj).
In Fig. 6 weist der erste strukturelle Gleichungsknoten 10
eine erste Kante zu der Unbekannten "input" und eine weitere
Kante zu der Unbekannten "sout" auf. Der erste strukturelle
Gleichungsknoten 10 befindet sich an der ersten Stelle der er
sten Partition des ersten Bipartiten Graphen 9. Die Unbekannte
"sout" befindet sich an der dritten Stelle der zweiten Parti
tion des ersten Bipartiten Graphen 9. Dementsprechend ist an
der dieser Kante zugehörigen Position in der Regelstreckenma
trix 8 ein von Null verschiedener Wert enthalten. Dabei han
delt es sich um den Wert "-1" an der Position der ersten Zeile
und der dritten Spalte innerhalb der Koeffizientenmatrix A der
Regelstreckenmatrix 8 in Fig. 5.
Der zweite strukturelle Gleichungsknoten 11 weist eine erste
Kante zu der Unbekannten "input" sowie eine zweite Kante zu
der Unbekannten "inp" auf. Der dritte strukturelle Gleichungs
knoten 12 ist durch eine Kante mit der Unbekannten "output"
und durch eine weitere Kante mit der Unbekannten "outp" ver
bunden. Der erste explizite Gleichungsknoten 13 ist mittels
einer Kante mit der Unbekannten "sout" verbunden. Der zweite
explizite Gleichungsknoten 14 ist durch eine Kante mit der Un
bekannten "inp" sowie durch eine weitere Kante mit der Unbe
kannten "outp'dot" verbunden. Der zeitliche Ableitungsglei
chungsknoten 15 weist eine gemeinsame Kante mit der Unbekann
ten "outp'dot" auf.
Fig. 7 zeigt eine Sichtbarkeitsbereiche- und Gleichungstypen
darstellung 16 des ersten Bipartiten Graphen 9 gemäß dem Aus
führungsbeispiel.
Die Sichtbarkeitsbereiche- und Gleichungstypendarstellung 16
des ersten Bipartiten Graphen 9 ordnet die Knoten der Gleichungen
und die Knoten der Unbekannten des ersten Bipartiten
Graphen 9 auf drei verschiedenen Ebenen an und stellt zusätz
lich einen ersten Sichtbarkeitsbereiche 17, einen zweiten
Sichtbarkeitsbereich 18 und einen dritten Sichtbarkeitsbe
reich 19 dar. Diese Sichtbarkeitsbereiche sind in Fig. 7 ho
rizontal nebeneinander angeordnet und durch Quadrate darge
stellt.
Auf der obersten der drei Ebenen sind der erste strukturelle
Gleichungsknoten 10, der zweite strukturelle Gleichungskno
ten 11 und der dritte strukturelle Gleichungsknoten 12 ange
ordnet. Auf der mittleren der drei Ebenen sind der erste ex
plizite Gleichungsknoten 13 und der zweite explizite Glei
chungsknoten 14 angeordnet. Der zeitliche Ableitungsglei
chungsknoten 15 liegt auf der untersten der drei Ebenen vor.
Der erste Sichtbarkeitsbereich 17 enthält die Knoten der Unbe
kannten "input" und "output". Der zweite Sichtbarkeitsbe
reich 18 weist den ersten expliziten Gleichungsknoten 13 sowie
den Knoten der Unbekannten "sout" auf. Der dritte Sichtbar
keitsbereich 19 beinhaltet den zweiten expliziten Gleichungs
knoten 14, den zeitlichen Ableitungsgleichungsknoten 15 sowie
die Knoten der Unbekannten "outp", "inp" und "outp'dot".
Der erste Sichtbarkeitsbereich 17 entspricht dem Sichtbar
keitsbereich des Regelstreckenquellcodes 7, der die Zusammen
schaltung der Sinusquelle 2 und des Integrators 3 vornimmt.
Der zweite Sichtbarkeitsbereich 18 entspricht dem Sichtbar
keitsbereich des Sinusquellenquellcodes 5. Der dritte Sicht
barkeitsbereich 19 entspricht dem Integratorquellcode 6.
In der Regel enthalten strukturelle Gleichungen Unbekannte aus
verschiedenen Sichtbarkeitsbereichen. Im vorliegenden Ausführungsbeispiel
enthält die erste strukturelle Gleichung 10 Un
bekannte aus dem ersten Sichtbarkeitsbereich 17 und aus dem
zweiten Sichtbarkeitsbereich 18. Die zweite strukturelle Glei
chung 11 sowie die dritte strukturelle Gleichung 12 weisen je
weils Unbekannte aus dem ersten Sichtbarkeitsbereich 17 sowie
aus dem dritten Sichtbarkeitsbereich 19 auf.
Fig. 8 zeigt eine Zusammenhangskomponentendarstellung 20 ei
ner Regelstreckenmatrix 8 gemäß dem Ausführungsbeispiel.
Die Zusammenhangskomponentendarstellung 20 zeigt die Zusammen
hangskomponenten des ersten Bipartiten Graphen 9, aus dem die
Kanten zu dem ersten strukturellen Gleichungsknoten 10, zu dem
zweiten strukturellen Gleichungsknoten 11 und zu dem dritten
strukturellen Gleichungsknoten 12 entfernt wurden.
Der erste Sichtbarkeitsbereich 17, der zweite Sichtbarkeitsbe
reich 18 und der dritte Sichtbarkeitsbereich 19 entsprechen
jeweils den Sichtbarkeitsbereichen der in Fig. 7 dargestell
ten Sichtbarkeitsbereiche- und Gleichungstypendarstellung 16
des ersten Bipartiten Graphen 9.
Des weiteren sind die Kanten zwischen der ersten expliziten
Gleichung 13 und der Unbekannten "sout", zwischen der zweiten
expliziten Gleichung 14 und der Unbekannten "inp" und zwischen
der zeitlichen Ableitungsgleichung 15 und der Unbekannten
"outp'dot" in Fig. 8 fett dargestellt. Diese fett dargestell
ten Kanten entsprechen einem maximalen Matching innerhalb je
der der Zusammenhangskomponenten des modifizierten ersten Bi
partiten Graphen 9.
Fig. 9 zeigt eine Break-Quantity- und Selector-Quantity-
Listendarstellung 21 des ersten Bipartiten Graphen 9 gemäß dem
Ausführungsbeispiel.
Die Break-Quantity- und Selector-Quantity-Listendarstellung 21
gliedert sich in den ersten Sichtbarkeitsbereich 17, in den
zweiten Sichtbarkeitsbereich 18 und in den dritten Sichtbar
keitsbereich 19.
Der erste Sichtbarkeitsbereich 17 weist eine Break-Quantity-
Liste bzw. "BQ-List" mit der Unbekannten "input" sowie eine
weitere Break-Quantity-Liste mit der Unbekannten "output" auf.
Der zweite Sichtbarkeitsbereich 18 in Fig. 9 enthält keiner
lei Break-Quantity- oder Selector-Quantity-Listen.
Der dritte Sichtbarkeitsbereich 19 weist eine Break-Quantity-
Liste mit der Unbekannten "outp", eine weitere Break-Quantity-
Liste mit den Unbekannten "outp'dot" und "inp" sowie eine Se
lector-Quantity-Liste bzw. "SQ-List" mit der durch "A1" ge
kennzeichneten zeitlichen Ableitungsgleichung 15 auf.
Bei der Selector-Quantity-Liste handelt es sich um eine Aufli
stung spezieller modifizierbarer Gleichungsknoten des jeweili
gen Sichtbarkeitsbereichs.
Ein Knoten ist gematcht, wenn er mit einer Kante eines Mat
chings verbunden ist.
In den Selector-Quantity-Listen werden die modifizierbaren
Gleichungsknoten zusammengefaßt. Bei der Bestimmung der modi
fizierbaren Gleichungsknoten werden zunächst die ungematchten
modifizierbaren Gleichungsknoten der Zusammenhangskomponenten
gesucht und anschließend Selector-Quantity-Listen für diese
ungematchten modifizierbaren Gleichungsknoten gebildet.
Im vorliegenden Ausführungsbeispiel ist kein ungematchter mo
difizierbarer Gleichungsknoten vorhanden. Demnach kann zu
nächst noch keine Selector-Quantity-Liste erzeugt werden.
Bei der Break-Quantity-Liste handelt es sich um eine Zusammen
fassung der ungematchten Unbekanntenknoten und derjenigen ge
matchten Unbekanntenknoten, die über alternierende Pfade er
reicht werden können.
Die Break-Quantity-Liste wird ausgehend von einem ungematchten
Unbekanntenknoten aufgebaut. Dabei werden alternierende Pfade
zur Bestimmung weiterer Unbekanntenknoten verwendet.
Im vorliegenden Ausführungsbeispiel werden ausgehend von den
ungematchten Unbekanntenknoten die Break-Quantity-Liste mit
der Unbekannten "input" sowie die Break-Quantity-Liste mit der
Unbekannten "output" in dem ersten Sichtbarkeitsbereich 17 so
wie die Break-Quantity-Liste mit der Unbekannten "outp" in dem
dritten Sichtbarkeitsbereich 19 erstellt.
Zu den so erstellten Break-Quantity-Listen gibt es im Ausfüh
rungsbeispiel keine alternierenden Pfade bzw. keine Alterna
tivknoten.
Neben den ungematchten modifizierbaren Gleichungsknoten der
Zusammenhangskomponentendarstellung 20 werden auch die ge
matchten modifizierbaren Gleichungsknoten betrachtet. Durch
Löschen der matchenden Kante eines solchen gematchten Glei
chungsknotens entsteht ein ungematchter modifizierbarer Glei
chungsknoten sowie ein ungematchter Unbekanntenknoten.
Ausgehend von diesem ungematchten Unbekanntenknoten kann durch
Verfolgen eines alternierenden Pfads eine Break-Quantity-Liste
erstellt werden. Der jetzt ungematchte modifizierbare Glei
chungsknoten wird als einziges Element einer Selector-
Quantity-Liste hinzugefügt.
Durch die derartige Fortführung des erfindungsgemäßen Verfah
rens wird im vorliegenden Ausführungsbeispiel diejenige Kante
gelöscht, die den zeitlichen Ableitungsgleichungsknoten 15 mit
dem Unbekanntenknoten "outp'dot" verbindet.
Dementsprechend wird aus dem gematchten zeitlichen Ableitungs
gleichungsknoten 15 ein ungematchter Knoten. Dieser jetzt un
gematchte zeitliche Ableitungsgleichungsknoten 15 wird als
einziges Element der Selector-Quantity-Liste des dritten
Sichtbarkeitsbereichs 19 hinzugefügt.
Aus dem vorher gematchten Unbekanntenknoten "outp'dot" wird
ein ungematchter Unbekanntenknoten. Ausgehend von diesem unge
matchten Unbekanntenknoten wird eine weitere Break-Quantity-
Liste mit den Unbekannten "outp'dot" und "inp" durch Verfol
gung des alternierenden Pfades (outp'dot, E2, inp) erstellt.
Die so erzeugte Break-Quantity-Liste ist in dem dritten Sicht
barkeitsbereich 19 in Fig. 9 dargestellt.
Im zweiten Sichtbarkeitsbereich 18 sind weder ungematchte Un
bekanntenknoten noch modifizierbare Gleichungsknoten vorhan
den. Dementsprechend werden im zweiten Sichtbarkeitsbereich 18
weder eine Selector-Quantity-Liste noch eine Break-Quantity-
Liste erstellt.
Fig. 10 zeigt einen aus der Break-Quantity- und Selector-
Quantity-Listendarstellung 21 sowie aus dem ersten strukturel
len Gleichungsknoten 10, aus dem zweiten strukturellen Glei
chungsknoten 11 und aus dem dritten strukturellen Gleichungs
knoten 12 erstellten zweiten Bipartiten Graphen 22 gemäß dem
Ausführungsbeispiel.
Der zweite Bipartite Graph 22 stimmt hinsichtlich des ersten
Sichtbarkeitsbereichs 17 und des dritten Sichtbarkeitsbereichs
19 mit der Break-Quantity- und der Selector-Quantity-Listen
darstellung 21 überein.
Der zweite Sichtbarkeitsbereich 18 beinhaltet weder eine
Break-Quantity-Liste noch eine Selector-Quantity-Liste. Somit
muß der leere zweite Sichtbarkeitsbereich 18 bei dem zweiten
Bipartiten Graphen 22 nicht berücksichtigt werden.
Dem zweiten Bipartiten Graphen 22 wird der erste strukturelle
Gleichungsknoten 10, der zweite strukturelle Gleichungsknoten
11 sowie der dritte strukturelle Gleichungsknoten 12 hinzuge
fügt.
Die Selector-Quantity-Liste, der erste strukturelle Glei
chungsknoten 10, der zweite strukturelle Gleichungsknoten 11
und der dritte strukturelle Gleichungsknoten 12 bilden die er
ste Partition des zweiten Bipartiten Graphen 22. Die Break-
Quantity-Listen bilden die zweite Partition des zweiten Bipar
titen Graphen 22.
Die Elemente der ersten Partition und der zweiten Partition
des zweiten Bipartiten Graphen 22 werden nun durch Kanten mit
einander verbunden. Dabei werden Kanten zwischen denjenigen
Selector-Quantity-Listen und denjenigen Break-Quantity-Listen
vorgesehen, die im gleichen Sichtbarkeitsbereich liegen. Wei
terhin werden Kanten zwischen strukturellen Gleichungsknoten
und denjenigen Break-Quantity-Listen vorgesehen, die Unbekann
te der jeweiligen strukturellen Gleichungen aufweisen.
Die Break-Quantity-Liste mit der Unbekannten "outp", die
Break-Quantity-Liste mit den Unbekannten "outp'dot" und "inp"
liegen ebenso wie die Selector-Quantity-Liste "A1" im dritten
Sichtbarkeitsbereich. Somit wird die Selector-Quantity-Liste
"A1" durch je eine Kante mit den genannten Break-Quantity-
Listen verbunden.
Die erste strukturelle Gleichung S1 weist die Unbekannte "in
put" auf. Dementsprechend wird der erste strukturelle Glei
chungsknoten 10 durch eine Kante mit der Break-Quantity-Liste
"input" verbunden. Die zweite strukturelle Gleichung S2 weist
sowohl die Unbekannte "inp" als auch die Unbekannte "input"
auf. Dementsprechend wird der zweite strukturelle Gleichungs
knoten 11 durch je eine Kante mit der Break-Quantity-Liste
"input" und mit der Break-Quantity-Liste "outp'dot, inp" ver
bunden. Die dritte strukturelle Gleichung S3 weist die beiden
Unbekannten "outp" und "output" auf. Somit werden Kanten zwi
schen dem dritten strukturelle Gleichungsknoten 12 und den
Break-Quantity-Listen "output" und "outp" eingefügt.
Fig. 11 zeigt ein perfektes Matching 23 des zweiten Biparti
ten Graphen 22 gemäß dem Ausführungsbeispiel. Das perfekte
Matching 23 ist durch die fett dargestellten Kanten illu
striert.
Ausgehend von dem in Fig. 10 gezeigten zweiten Bipartiten
Graphen 22 wird mittels Standard-Matching-Algorithmen ein per
fektes Matching 23 gesucht. Da für den zweiten Bipartiten Graphen
22 ein perfektes Matching 23 gefunden werden kann, ist
das dem zweiten Bipartiten Graphen 22 zugrundeliegende Glei
chungssystem durch "VHDL-AMS"-Sprachkonstrukte regularisier
bar. Solche "VHDL-AMS"-Sprachkonstrukte heißen "Break State
ments".
Solche "Break Statements" werden aus denjenigen Kanten des
perfekten Matchings bestimmt, die zwischen einer Selector-
Quantity-Liste und einer Break-Quantity-Liste angeordnet sind.
Die Kanten des perfekten Matchings zwischen den strukturellen
Gleichungen und den Break-Quantity-Listen haben keinen Einfluß
auf die Bestimmung von zur Regularisierung benötigten Break
Statements.
Für den zweiten Bipartiten Graphen 22 liegt ein solches per
fektes Matching 23 vor.
Die Selector-Quantity-Liste "A1" ist mit einer Kante des per
fekten Matchings mit der Break-Quantity-Liste "outp" verbun
den. Somit wird aus dieser Kante des perfekten Matchings für
die zeitliche Ableitungsgleichung A1 das folgende Break State
ment bestimmt:
Break Statement:
Selector-Quantity OUTP (zeitliche Ableitungsgleichung A1)
Break-Quantity OUTP
Break Statement:
Selector-Quantity OUTP (zeitliche Ableitungsgleichung A1)
Break-Quantity OUTP
Dies bedeutet, daß die zeitliche Ableitungsgleichung A1 durch
eine Gleichung, die sich aus der Unbekannten "outp" sowie aus
einem durch einen Benutzer festgelegten Absolutwert zusammen
setzt, ersetzt wird.
Fig. 12 zeigt ein Simulationslauflisting 24 zur Analyse und
Korrektur des Sinusquellenquellcodes 5, des Integrator
quellcodes 6 und des Regelstreckenquellcodes 7 gemäß dem Aus
führungsbeispiel.
Das erfindungsgemäße Verfahren zur Analyse und Korrektur eines
Modells eines physikalischen Systems wird im Ausführungsbei
spiel für die Regelstrecke 1 auf dem Computersystem durchge
führt.
Dabei erfolgt die Durchführung der in den Fig. 5 bis 11 ge
zeigten Verfahrensschritte mittels eines zur Ausführung dieser
Verfahrensschritte erstellten Computerprogramms. Das Simulati
onslauflisting 24 dokumentiert den Ablauf des erfindungsgemä
ßen Verfahrens zur Analyse und Korrektur des Modells der Re
gelstrecke 1 auf dem Computersystem. Dabei liegt das Modell
der Regelstrecke 1 in Form des Sinusquellenquellcodes 5, des
Integratorquellcodes 6 sowie des Regelstreckenquellcodes 7
vor.
Die Zeilen des Simulationslauflistings 24 sind aufsteigend
durchnumeriert. In den Zeilen 1 bis 4 sind Informationen über
die Anordnung der Regelstreckenmatrix 8 auf dem Computersystem
und Informationen über das verwendete Computerprogramm enthal
ten.
In den Zeilen 5 bis 10 des Simulationslauflistings 24 ist der
Start der Simulation der Regelstrecke 1 dokumentiert. Dabei
wird in Zeile 5 der Regelstreckenquellcode 7 geladen, in Zeile
7 eine Standardanalyse zugrundegelegt, in Zeile 8 festge
stellt, daß das System nicht DC-lösbar ist und in Zeile 9 kon
statiert, daß die Simulation aufgrund des Vorliegens einer
singulären Matrix abgebrochen wird.
In den Zeilen 11 bis 21 erfolgt die Ausführung des in den
Fig. 6 bis 11 gezeigten erfindungsgemäßen Verfahrens.
In den Zeilen 22 bis 29 wird festgestellt, daß ein Break
Statement gefunden wurde, und daß ein Absolutwert für die Un
bekannte "outp" durch den Benutzer eingelesen wird.
In Zeile 30 erfolgt das Einlesen dieses Absolutwerts für die
Unbekannte "outp". Der im Ausführungsbeispiel durch den Benut
zer eingegebene Wert für diese Unbekannte beträgt: "4,0e-7".
In Zeile 31 ist die Analyse des Modells der Regelstrecke 1 ab
geschlossen.
In den Zeilen 32 bis 35 erfolgt eine Abfrage durch das Compu
terprogramm, ob die so geänderte Beschreibung der Regelstrec
ke 1 kompiliert und gespeichert werden soll.
Fig. 13 zeigt einen durch die Ausführung des erfindungsgemä
ßen Verfahrens auf dem Computerprogramm erzeugten regulari
sierten Integratorquellcode 25, der den in Fig. 3 gezeigten
Integratorquellcode 6 ersetzt, gemäß dem Ausführungsbeispiel.
Der regularisierte Integratorquellcode 25 entspricht dem in
Fig. 3 gezeigten Integratorquellcode 6 mit dem Unterschied,
daß die "Architecture" mit dem Bezug auf die "Entity"-
Deklaration "Integrator" in Zeile 1 sieben Zeilen umfaßt und
den Namen "BEHAVE_BA1" trägt.
Im Anschluß an die Zeile 7 ist das durch das Computerprogramm
unter Verwendung des durch den Benutzer eingegebenen Absolut
werts erzeugte "Break Statement" in den Zeilen 8 bis 10 eingefügt.
In den Zeilen 8 und 9 ist der Hinweis aufgeführt, daß
die Zeilen 8 bis 10 durch das Computerprogramm "Break Analy
ser" zu dem in Zeile 9 aufgeführten Datum und Zeitpunkt er
gänzt wurden. Das in Zeile 10 eingefügte Break Statement setzt
die Unbekannte "outp" mit dem Absolutwert "4,0e-7" gleich.
Fig. 14 zeigt eine mit dem in Fig. 13 ermittelten "Break
Statement" regularisierte Regelstreckenmatrix 26, welche die
in Fig. 5 gezeigte Regelstreckenmatrix 8 ersetzt, gemäß einem
Ausführungsbeispiel.
Die regularisierte Regelstreckenmatrix 26 stimmt mit der Re
gelstreckenmatrix 8 überein mit dem Unterschied, daß die zeit
liche Ableitungsgleichung:
A1: outp'dot = 0.0
im zugrundeliegenden Gleichungssystem durch die resultierende
Gleichung des Break Statements:
outp = 4.0E-7
ersetzt ist.
Fig. 15 zeigt eine graphische Simulationsdarstellung 27 mit
einem Integratoreingangsspannungsverlauf 28 und mit einem In
tegratorausgangsspannungsverlauf 29 gemäß dem Ausführungsbei
spiel.
Ausgehend von dem durch die Regelstreckenmatrix 26 gefundenen
Arbeitspunkt sind der Integratoreingangsspannungsverlauf 28
sowie der Integratorausgangsspannungsverlauf 29 mittels geeig
neter Verfahren berechenbar.
Die horizontale Achse des Integratoreingangsspannungsverlaufs
28 sowie des Integratorausgangsspannungsverlaufs 29 stellt je
weils eine Zeitachse dar. Auf den vertikalen Achsen ist je
weils die Spannung abgetragen.
Der Integratoreingangsspannungsverlauf 28 stellt eine harmoni
sche Schwingung mit einer konstanten Amplitude von 5 V und mit
einer konstanten Frequenz von 1 MHz dar.
Der Integratorausgangsspannungsverlauf 29 ist durch eine kon
stante Amplitude von 7,9E-7 V und durch eine konstante Frequenz
von 1 MHz gekennzeichnet. Dies entspricht der über der Zeit in
tegrierten Eingangsspannung mit cosinus-förmigem Verhalten.
Im Rahmen dieses Dokuments wurden folgende Veröffentlichungen
zitiert:
[1] A. V. Aho, R. Sethi, J. D. Ullman; Compilerbau Bd. 1, Olden bourg, 1999.
[2] The Institute of Electrical and Electronics Engineers. IEEE Standard 1076.1-1999. VHDL Language Reference Manual. IEEE, 1999.
[3] D. Jungnickel; Graphen, Netzwerke und Algorithmen, Pro gressdruck GmbH, Speyer, 1994.
[1] A. V. Aho, R. Sethi, J. D. Ullman; Compilerbau Bd. 1, Olden bourg, 1999.
[2] The Institute of Electrical and Electronics Engineers. IEEE Standard 1076.1-1999. VHDL Language Reference Manual. IEEE, 1999.
[3] D. Jungnickel; Graphen, Netzwerke und Algorithmen, Pro gressdruck GmbH, Speyer, 1994.
1
Regelstrecke
2
Sinusquelle
3
Integrator
4
Ausgangssignal
5
Sinusquellenquellcode
6
Integratorquellcode
7
Regelstreckenquellcode
8
Regelstreckenmatrix
9
erster Bipartiter Graph
10
erster struktureller Gleichungsknoten
11
zweiter struktureller Gleichungsknoten
12
dritter struktureller Gleichungsknoten
13
erster expliziter Gleichungsknoten
14
zweiter expliziter Gleichungsknoten
15
zeitlicher Ableitungsgleichungsknoten
16
Sichtbarkeitsbereiche- und Gleichungstypendarstellung
17
erster Sichtbarkeitsbereich
18
zweiter Sichtbarkeitsbereich
19
dritter Sichtbarkeitsbereich
20
Zusammenhangskomponentendarstellung
21
Break Quantity- und Selector Quantity-Listendarstellung
22
zweiter Bipartiter Graph
23
perfektes Matching
24
Simulationslauflisting
25
regularisierter Integratorquellcode
26
regularisierte Regelstreckenmatrix
27
graphische Simulationsdarstellung
28
Integratoreingangsspannungsverlauf
29
Integratorausgangsspannungsverlauf
Claims (11)
1. Verfahren zur strukturellen Analyse und Korrektur eines
mittels einer Computersprache beschriebenen Differential
gleichungssystems (8), das ein physikalisches System (1)
beschreibt, wobei das Differentialgleichungssystem (8) als
Beschreibung in einer Computersprache (5-7) auf einem Com
putersystem vorliegt, wobei das Verfahren die folgenden
Schritte aufweist:
- a) Klassifizieren der Gleichungen des Differentialglei chungssystems (8) in strukturelle Gleichungen, in ex plizite Gleichungen und in modifizierbare Gleichungen,
- b) Aufstellen eines ersten Bipartiten Graphen (9) aus dem Gleichungssystem (8), wobei die Knoten der ersten Par tition (10-15) den Gleichungen und die Knoten der zwei ten Partition den Unbekannten entsprechen,
- c) Entfernen der den strukturellen Gleichungen entspre chenden Knoten (10-12) sowie der zugehörigen Kanten aus dem ersten Bipartiten Graphen (9),
- d) Bestimmen eines maximalen Matchings für den in Schritt c) veränderten ersten Bipartiten Gra phen (9),
- e) Erstellen eines leeren zweiten Bipartiten Graphen (22),
- f) Bestimmen der ungematchten, einer modifizierbaren Glei chung entsprechenden Knoten des ersten Bipartiten Gra phen (9),
- g) Erzeugen je eines Knotens der ersten Partition des zweiten Bipartiten Graphen (22) für jeden in Schritt f) bestimmten Knoten,
- h) Ermitteln weiterer Knoten im ersten Bipartiten Gra phen (9), die einer modifizierbaren Gleichung entsprechen, unter Verfolgung von alternierenden Pfaden, aus gehend von den in Schritt f) bestimmten Knoten,
- i) Hinzufügen der in Schritt h) ermittelten Knoten des er sten Bipartiten Graphen (9) zu den in Schritt g) er zeugten Knoten der ersten Partition des zweiten Bipar titen Graphen (22),
- j) Bestimmen der ungematchten, einer Unbekannten entspre chenden Knoten des ersten Bipartiten Graphen (9),
- k) Erzeugen je eines Knotens der zweiten Partition des zweiten Bipartiten Graphen (22) für jeden in Schritt j) bestimmten Knoten,
- l) Ermitteln weiterer Knoten im ersten Bipartiten Gra phen (9), die einer Unbekannten entsprechen, unter Ver folgung von alternierenden Pfaden, ausgehend von den in Schritt j) bestimmten Knoten,
- m) Hinzufügen der in Schritt l) ermittelten Knoten des er sten Bipartiten Graphen (9) zu den in Schritt k) er zeugten Knoten des, zweiten Bipartiten Graphen (22),
- n) Bestimmen der gematchten, einer modifizierbaren Glei chung entsprechenden Knoten des ersten Bipartiten Gra phen (9),
- o) Löschen der matchenden Kante der in Schritt n) bestimm ten Knoten,
- p) Erzeugen je eines Knotens der ersten Partition des zweiten Bipartiten Graphen (22) für die in Schritt n) bestimmten Knoten des ersten Bipartiten Graphen (9),
- q) Erzeugen je eines Knotens der zweiten Partition des zweiten Bipartiten Graphen (22) für jeden ungematchten, einer Unbekannten im ersten Bipartiten Graphen (9) ent sprechenden Knoten,
- r) Ermitteln weiterer Knoten im ersten Bipartiten Gra phen (9), die einer Unbekannten entsprechen, unter Ver folgung von alternierenden Pfaden, ausgehend von den ungematchten, einer Unbekannten im ersten Bipartiten Graphen (9) entsprechenden Knoten,
- s) Hinzufügen der in Schritt r) ermittelten Knoten des er sten Bipartiten Graphen (9) zu den in Schritt q) er zeugten Knoten des zweiten Bipartiten Graphen (22),
- t) Erzeugen je eines Knotens der ersten Partition des zweiten Bipartiten Graphen (22) für jede strukturelle Gleichung,
- u) Verbinden der Knoten der ersten Partition des zweiten Bipartiten Graphen (22) durch eine Kante mit den in je weils demselben Sichtbarkeitsbereich (17-19) vorliegen den Knoten der zweiten Partition des zweiten Bipartiten Graphen (22),
- v) Verbinden der in Schritt t) erzeugten Knoten der ersten Partition des zweiten Bipartiten Graphen (22) durch ei ne Kante mit den Knoten der zweiten Partition des zwei ten Bipartiten Graphen (22), falls eine der dem Knoten der zweiten Partition entsprechenden Unbekannten in der dem Knoten der ersten Partition entsprechenden struktu rellen Gleichung enthalten ist,
- w) Bestimmen eines maximalen Matchings des zweiten Bipar titen Graphen (22).
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, daß
nach Schritt w) die folgenden Schritte w1) bis w5)
durchgeführt werden, falls es sich bei dem in Schritt w)
bestimmten maximalen Matching um ein perfektes Mat
ching (23) handelt:
- 1. Bestimmen der Kanten des in Schritt w) bestimmten per fekten Matchings (23), welche die in Schritt g) und in Schritt p) erzeugten Knoten der ersten Partition des zweiten Bipartiten Graphen (22) mit den Knoten der zweiten Partition des zweiten Bipartiten Graphen (22) verbinden,
- 2. Auswählen einer modifizierbaren Gleichung aus den Kno ten der ersten Partition des zweiten Bipartiten Gra phen (22), die durch die in Schritt w1) bestimmten Kan ten des perfekten Matchings (23) verbunden sind,
- 3. Auswählen einer Unbekannten aus den Knoten der zweiten Partition des zweiten Bipartiten Graphen (22), die durch die in Schritt w1) bestimmten Kanten des perfek ten Matchings (23) verbunden sind,
- 4. Festlegen eines numerischen Werts für die in Schritt w3) ausgewählte Unbekannte,
- 5. Ersetzen der in Schritt w2) ausgewählten modifizierba ren Gleichung des Gleichungssystems (8) durch eine Gleichung, die der in Schritt w3) ausgewählten Unbe kannten den in Schritt w4) festgelegten Wert zuweist,
- 6. Wiederholen der Schritte w2) bis w5) für alle weiteren in Schritt w1) bestimmten Kanten.
3. Verfahren nach Anspruch 1 oder 2,
dadurch gekennzeichnet, daß
das physikalische System als elektrische Schaltung mit ei
nem oder mit mehreren Schaltungselementen vorliegt.
4. Verfahren einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet, daß
das Computerprogramm in einer. Hardwarebeschreibungssprache
insbesondere in "VHDL-AMS" oder in "Verilog-AMS" ausge
führt ist.
5. Computerprogrammprodukt sowie Computerprogramm zur Ausfüh
rung eines Verfahrens zur Analyse und Korrektur eines Ab
bilds eines physikalischen Systems, das so ausgebildet
ist, daß ein Verfahren gemäß einem der Ansprüche 1 bis 4
ausführbar ist.
6. Computerprogramm nach Anspruch 5, das auf einem Speicher
medium enthalten ist.
7. Computerprogramm nach Anspruch 5, das in einem Computer
speicher abgelegt ist.
8. Computerprogramm nach Anspruch 5, das in einem Direktzu
griffsspeicher enthalten ist.
9. Computerprogramm nach Anspruch 5, das auf einem elektri
schen Trägersignal übertragen wird.
10. Datenträger mit einem Computerprogrammprodukt bzw. Compu
terprogramm nach Anspruch 5.
11. Verfahren, bei dem ein Computerprogrammprodukt bzw. Compu
terprogramm nach Anspruch 5 aus einem elektronischen Da
tennetz wie beispielsweise aus dem Internet auf einen an
das Datennetz angeschlossenen Computer heruntergeladen
wird.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10150914A DE10150914C1 (de) | 2001-10-18 | 2001-10-18 | Verfahren zur strukturellen Analyse und Korrektur eines mittels einer Computersprache beschriebenen Differentialgleichungssystems |
US10/273,520 US7272543B2 (en) | 2001-10-18 | 2002-10-18 | Method and computer system for structural analysis and correction of a system of differential equations described by a computer language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10150914A DE10150914C1 (de) | 2001-10-18 | 2001-10-18 | Verfahren zur strukturellen Analyse und Korrektur eines mittels einer Computersprache beschriebenen Differentialgleichungssystems |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10150914C1 true DE10150914C1 (de) | 2003-01-30 |
Family
ID=7702594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10150914A Expired - Fee Related DE10150914C1 (de) | 2001-10-18 | 2001-10-18 | Verfahren zur strukturellen Analyse und Korrektur eines mittels einer Computersprache beschriebenen Differentialgleichungssystems |
Country Status (2)
Country | Link |
---|---|
US (1) | US7272543B2 (de) |
DE (1) | DE10150914C1 (de) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7904280B2 (en) * | 2003-04-16 | 2011-03-08 | The Mathworks, Inc. | Simulation of constrained systems |
US7461073B2 (en) * | 2006-02-14 | 2008-12-02 | Microsoft Corporation | Co-clustering objects of heterogeneous types |
US7484195B1 (en) * | 2006-08-30 | 2009-01-27 | Sun Microsystems, Inc. | Method to improve time domain sensitivity analysis performance |
US7743058B2 (en) * | 2007-01-10 | 2010-06-22 | Microsoft Corporation | Co-clustering objects of heterogeneous types |
US8483999B2 (en) | 2010-11-18 | 2013-07-09 | Toyota Motor Engineering & Manufacturing North America, Inc. | Method and system for simplifying models |
US8943113B2 (en) | 2011-07-21 | 2015-01-27 | Xiaohua Yi | Methods and systems for parsing and interpretation of mathematical statements |
-
2001
- 2001-10-18 DE DE10150914A patent/DE10150914C1/de not_active Expired - Fee Related
-
2002
- 2002-10-18 US US10/273,520 patent/US7272543B2/en not_active Expired - Fee Related
Non-Patent Citations (3)
Title |
---|
1076.1-1999 IEEE Standard VHDL Analog and Mixed-Signal Extension, New York: IEEE, 1999, ISBN: 0-7381-1640-8 * |
AHO, A.V., SETHI, R., ULLMAN, J.D.: Compilerbau, Teil 1, 2. Aufl. München: Oldenbourg, 1999, ISBN: 3486252941 * |
JUNGNICKEL, D.: Graphen, Netzwerke und Algorithmen, 3. Aufl. Heidelberg: Spektrum Akademischer Verlag, 1994, ISBN: 3860254340 * |
Also Published As
Publication number | Publication date |
---|---|
US7272543B2 (en) | 2007-09-18 |
US20030084421A1 (en) | 2003-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3856079T2 (de) | Verfahren für einen Blockdiagramm-Simulator | |
DE69031758T2 (de) | Verfahren zur Organisation von und zum Zugriff auf Produkt beschreibenden Daten in Zusammenhang mit einem technischen Prozess | |
DE69017785T2 (de) | Verfahren zur Herstellung eines Expertensystems für Systemfehlerdiagnose. | |
EP0580663B1 (de) | Verfahren zur verifikation datenverarbeitender systeme | |
DE69934467T2 (de) | Verfahren und Vorrichtung zur Auswahl von selektierten Komponenten in einem Test mit begrenztem Zugang | |
DE10150914C1 (de) | Verfahren zur strukturellen Analyse und Korrektur eines mittels einer Computersprache beschriebenen Differentialgleichungssystems | |
DE3854636T2 (de) | Automatischer Prüfprozess für logische Geräte. | |
EP1062604B1 (de) | Verfahren und vorrichtung zur ermittlung einer störung eines technischen systems | |
DE10324594A1 (de) | Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung | |
DE102019008598A1 (de) | Identifikation und Visualisierung von Assoziationen zwischen Code, der von einem Modell generiert ist, und Quellen, welche die Codegeneration beeinflussen | |
DE10133670A1 (de) | Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem | |
DE19924242C2 (de) | Vektorrestauration mit beschleunigter Validation und Verfeinerung | |
EP1166215B1 (de) | Verfahren zur automatischen wiedergewinnung von engineeringdaten aus anlagen | |
DE102004003098A1 (de) | Verfahren zum Auflösen fehlender graphischer Symbole bei einem rechnergestützten Entwurf für integrierte Schaltungen | |
DE19914819B4 (de) | Verfahren zur Unterstützung von Entwicklungprozessen | |
DE10126018A1 (de) | Verfahren zum Bereitstellen von Fehlerinformationen über Inkonsistenzen in einem System von Differentialgleichungen | |
DE10325513B4 (de) | Verfahren und Vorrichtung zum Erstellen eines Verhaltensaspekts einer Schaltung zur formalen Verifikation | |
DE102009019442A1 (de) | Testdatengenerator | |
EP0662226B1 (de) | Verfahren zur bearbeitung eines anwenderprogramms auf einem parallelrechnersystem | |
WO1999050766A1 (de) | Verfahren zum vergleich elektrischer schaltungen | |
EP1212691B1 (de) | Rechnergestütztes verfahren zur parallelen berechnung des arbeitspunktes elektrischer schaltungen | |
EP2194457A2 (de) | Vorrichtung zum Erzeugen eines markierten Referenzdatenstroms | |
WO2004070632A2 (de) | Eigenschaftsnachweis (formale verifikation) für ein mischsystem mit analogen und digitalen teilsystemen | |
DE102004020873A1 (de) | System und Verfahren zum Bestimmen von anwendbaren Konfigurationsinformationen zur Verwendung bei einer Analyse eines computergestützten Entwurfs | |
WO1999017238A9 (de) | Reduktionsverfahren für simulationen zur wissensdatenerzeugung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8100 | Publication of the examined application without publication of unexamined application | ||
8304 | Grant after examination procedure | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |