Wenn INA schon ein Netz im internen Speicher hat, erscheint die Frage Delete the old net?. Da nur ein Netz im Speicher gehalten werden kann, kann bei Eingabe von <N> kein Netz eingelesen werden. Eingabe von <Y> bewirkt die Löschung des Netzes. Nun werden alle sich im aktuellen Verzeichnis befindenden Netzdateien angezeigt und INA fragt nach einem Dateinamen. Im Kapitel 2.2 finden Sie ab Seite eine Beschreibung, wie Sie diesen eingeben können. Danach liest INA die angegebene Datei in den internen Speicher und geht in das Editormenü zurück. Bei der Dateianforderung ist es möglich durch Eingabe von <esc> in den Terminalmodus zu gelangen.
Mit diesem Kommando ist es möglich, Netze direkt am Terminal einzugeben. Wenn INA schon ein Netz im internen Speicher hat, so wird analog wie im vorher beschriebenen Kommando reagiert.Eine Beschreibung der Eingabe finden Sie im Kapitel 2.3.3 ab Seite .
Mit diesem Kommando können Sie Knoten in ein (eventuell leeres) Netz eingeben. Zuerst werden Sie gefragt, ob Sie einen Platz oder eine Transition zufügen möchten. Danach erscheint die Eingabesyntax, die im Falle einer einzufügenden Transition wie folgt lautet:
Input syntax: <nr>" "[ <prelist> ] [ "," <postlist> ] "<cr>" <prelist> ::= { <nr> [ ":"<mult> ]" " } <postlist> ::= { <nr> [ ":"<mult> ]" " } T>Bei einem einzufügenden Platz erscheint die Syntax, die Sie bei der Beschreibung der Eingabe einer Platzzeile im Kapitel 2.3.3 auf Seite finden. Dort finden Sie auch weitere Hinweise für die Platzeingabe.
Die Eingabe einer Transition erfolgt ganz analog, es wird nur keine Anfangsmarkierung erfragt und statt Listen von Transitionen werden Listen von Plätzen angefordert.
Existiert der definierte Knoten bereits, wird die alte Definition ersetzt. Wenn Sie einen nicht existierenden Knoten eingeben, wird dieser ohne Namen in das Netz eingefügt. Ebenso verhält es sich mit in der Definition vorkommenden neuen Knoten, die von INA automatisch eingefügt werden.
Durch Eingabe von <Y> auf die Anfrage next können Sie weitere Transitionen bzw. Plätze einfügen. Falls Sie eine transitionsorientierte Eingabe bevorzugen, so können Sie statt <R> <T> mit dieser Funktion das Netz aus Sicht der Transitionen eingeben, und mit den weiter unten beschriebenen Änderungsfunktionen später den Plätzen Namen geben und eine Anfangsmarkierung und eventuelle Kapazitäten und Anfangszeiten festlegen.
Bei dem Zufügen eines Knotens in ein gefärbtes Netz erfolgt die Eingabe analog zu der Beschreibung im Kapitel 2.3.3 ab Seite . Bitte beachten Sie beim Zufügen von Knoten in ein gefärbtes Netz folgendes: Bei einer einzufügenden Transition müssen alle Plätze existieren. INA gibt folgende Warnung aus: Please, make sure that all places exist to which the new transition will be connected.
Mit dieser Funktion kann eine Schleife eingefügt werden. Eine Schleife besteht aus einem Platz der mit einer Marke markiert ist und einer Transition, die diesen Platz als Vor- und Nachplatz besitzt. Ziel dieser Konstruktion ist es, unter den Zeitbewertungen von Transitionen (siehe im Kapitel 2.5.2 auf Seite ), transiente Zustände anzuzeigen (siehe im Kapitel 4.4.2 ab Seite 4.4.2).INA vergibt den eingefügten Knoten jeweils die Nummer 0 oder andere freie Nummern, der Platz erhält den Namen loop-place mit der initialen Uhrenstellung eins, die Transition heißt entsprechend loop-transition mit der initialen Uhrenstellung null.
Mit diesem Kommando können Sie einen neuen Bogen eingeben, löschen oder die Vielfachheit ändern. Als erstes werden die anliegende Transition und der anliegende Platz angefordert, dann die Vielfachheit. Als letztes müssen Sie die Richtung des Bogens angeben: Place to Transition? Die Antwort <Y> führt zu einem Bogen von einem Platz zu einer Transition, die Antwort <N> zu einem Bogen von einer Transition zum Platz. Ein bestehender Bogen wird überschrieben, mit der Vielfachheit 0 können Sie ihn löschen. Bei einem gefärbten Netz erfolgt die Eingabe eines Bogens wie bei der Netzeingabe (siehe Seite im Kapitel 2.3.3).
Mit dieser Funktion kann ein Laufplatz in ein bestehendes Netz eingefügt werden. Ein Laufplatz ist markiert mit einer Marke und hat Schleifen um alle Transitionen. Ziel dieser Konstruktion ist es, unter der Zeitbewertung von Transitionen mit einer Schaltdauer (Schaltstrategie maximale Schritte, siehe im Kapitel 2.5.2 auf Seite ), immer einelementige Schritte zu erhalten.Der eingefügte Platz erhält die der höchsten Platznummer folgende Nummer und den Namen run-place.
Bitte beachten Sie, daß nach dem Hinzufügen von Transitionen der ursprüngliche Laufplatz entfernt und durch einen neuen ersetzt werden muß.
Unter der sicheren Schaltregel ist das Netz tot, INA gibt bei der Voranalyse folgende Warnung aus: inconsistency: firing mode=safe, but net is not pure (siehe auch Seite im Kapitel 6.2.1).
Mit diesem Kommando können Sie das Netz im internen Speicher auf eine Datei ablegen. Durch Eingabe von <Y> auf die Frage Select places können Sie einzelne Plätze angeben, die ein zu speicherndes Teilnetz erzeugen. Nach der Eingabe eines Dateinamens wird das Netz bzw. das Teilnetz auf diese Datei geschrieben.Durch die Auswahl einer Platzmenge haben Sie die Möglichkeit, das dadurch erzeugte Teilnetz später separat zu analysieren.
Mit diesem Kommando können Sie verschiedene Informationen über das Netz im internen Speicher auf den Bildschirm ausgeben:
Information on the net ('N'), the places ('P'), the transitions ('T') or quit ('Q')?Anhand des Netzes 2.1 werden die verschiedenen Ausgaben dieser Kommandos gezeigt.
Das Unterkommando <N> zeigt die Netznummer und den Netznamen an und gibt einen Überblick über die Anzahlen der verwendeten Plätze und Transitionen und die Intervalle, in denen die Knotennummern liegen:
Netnr: 1 Netname: 3_Prog_2_Term Places: 7 [0,6] Transitions: 6 [1,6]Mit dem Unterkommando <P> werden die Plätze des aktuellen Netzes ausgegeben. Sie haben die Möglichkeit, bestimmte Plätze auszuwählen. Angezeigt werden: Platznummer, Platzname, Markierung, Namen und Nummern der Vortransitionen mit Vielfachheiten und analoges für die Nachtransitionen:
place nr. 0.Terminal_frei load: 2 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname logout_Prog1 4: 2 1: 2 login_Prog1 logout_Prog2 5 2 login_Prog2 logout_Prog3 6 3 login_Prog3 place nr. 1.Prog1_am_Term load: 0 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname login_Prog1 1 4 logout_Prog1 place nr. 2.Prog2_am_Term load: 0 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname login_Prog2 2 5 logout_Prog2 place nr. 3.Prog3_am_Term load: 0 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname login_Prog3 3 6 logout_Prog3 place nr. 4.Prog1_in_Pause load: 1 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname logout_Prog1 4 1 login_Prog1 place nr. 5.Prog2_in_Pause load: 1 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname logout_Prog2 5 2 login_Prog2 place nr. 6.Prog3_in_Pause load: 1 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname logout_Prog3 6 3 login_Prog3Mit dem Unterkommando <T> werden analog zur vorherigen Beschreibung die Transitionen ausgegeben:
transition nr. 1.login_Prog1 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname Terminal_frei 0: 2 1 Prog1_am_Term Prog1_in_Pause 4 transition nr. 2.login_Prog2 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname Terminal_frei 0 2 Prog2_am_Term Prog2_in_Pause 5 transition nr. 3.login_Prog3 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname Terminal_frei 0 3 Prog3_am_Term Prog3_in_Pause 6 transition nr. 4.logout_Prog1 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname Prog1_am_Term 1 0: 2 Terminal_frei 4 Prog1_in_Pause transition nr. 5.logout_Prog2 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname Prog2_am_Term 2 0 Terminal_frei 5 Prog2_in_Pause transition nr. 6.logout_Prog3 ------------------------------------------------------------------------- PREname nr: mlt nr: mlt POSTname Prog3_am_Term 3 0 Terminal_frei 6 Prog3_in_PauseMit <Q> beenden Sie das Besichtigen des Netzes.
© 1996-98 Prof. Peter H. Starke (starke@informatik.hu-berlin.de) und Stephan Roch (roch@...)
INA Handbuch Version 2.1 zuletzt geändert: 1998-03-24