Peter Lorenz English smaller fonts Simulation und Animation

3.5. Standardattribute

Standardattribut ist ein historisch entstandener und in die Gegenwart übernommener Name. Im Sinne einer modernen Terminologie sind Standardattribute Funktionen und Methoden oder Attribute von Modellelementklassen. Bei jedem Aufruf liefern sie einen aktuellen Wert. Im folgenden werden Standardattribute klassifiziert und es wird erklärt, wie man sie benutzt.

3.5.1. Klassifikation Top Line

Standardattribute sind Eigenschaften eines Simulationsmodells und seiner Objekte. Man kann sie nach zwei Aspekten klassifizieren:
Nach dem Typ ihres Wertes ergeben sich
numerische Standardattribute ( Standard Numerical Attributes) SNA
logische Standardattribute (Standard Logical Attributes) SLA und
Zeichenketten-Attribute (Standard Character Attributes) SCA.
Nach der Zugehörigkeit zum Gesamtmodell oder zu einer speziellen Modellelementklasse ergeben sich
klassenunabhängige und
klassenabhängige Attribute.

Bisher wurden unter anderem folgende Standardattribute eingeführt oder in Beispielen benutzt:

3.5.2. Referenzen auf Standardattribute Top Line

Standardattribute besitzen oder liefern zu jeder Zeit einen aktuellen oder neu berechneten Wert. Dazu werden ihre Argumente ausgewertet und es wird erforderlichenfalls bestimmt, zu welcher Instanz einer Modellelementklasse sie gehören.

Anfangsbuchstaben klassenbezogener Standardattribute
ModellelementklasseEnglischSymbol
Boolesche VariableBoolean VariableBV
NutzerketteUser Chain C
EinrichtungFacility F
FunktionFunction FN
GruppeGroup G
Logischer SchalterLogic SwitchL
MatrixMatrix SavevalueM
TransaktionTransaction M
P
BlockBlock N
W
WarteschlangeQueue Q
ZufallsgeneratorRandom GeneratorR
SpeicherStorage S
TabelleTable T
VariableVariable V
SkalarSavevalue X

Die Zugehörigkeit zu einer Modellelementklasse geht in der Regel aus dem Anfangsbuchstaben des Namens hervor:
(Fast) alle auf eine Einrichtung (Facility) bezogenen SNA und LSA beginnen mit dem Buchstaben F.
Alle auf eine Warteschlange (Queue) bezogenen SNA beginnen mit dem Buchstaben Q.
Alle auf einen Speicher (Storage) bezogenen Attribute beginnen mit einem S.Das sind u.a. die Attribute
Sj, SAj, SCj, SEj, SFj, SMj, SNEj SNFj, SNVj, SPUj, SPVj.

Was diese Standardattribute bedeuten, wird im 4. Kapitel erklärt, wo die Modellelementklasse Speicher eingeführt wird.

Die nebenstehende Tabelle informiert über Klassen von Modellelementen und die Anfangsbuchstaben ihrer Attribute.

An vielen Stellen gibt es Ausnahmen. Beispiele:

XXX sei der Name eines Standardattributes.
Der Bezug auf eine Instanz einer Modellelementklasse kann auf verschiedene Weise hergestellt werden. Zunächst ist zu erwähnen, dass die Instanzen einer Klasse generell durch eine laufende Nummer identifizierbar sind, den man als Index benutzen kann. Darüber hinaus kann eine Instanz einen Namen haben. (Dabei entsprechen gleiche Namen immer gleichen Nummern.)

Es bestehen folgende Möglichkeiten zur Herstellung des Bezugs auf eine Instanz:

  1. Eine ganzzahlige Konstante kann als Index eines Standardattributs benutzt werden, indem man sie einfach an den Attributnamen anhängt:
    XXX13 bezeichnet das Attribut XXX der Instanz mit der Nummer 13. XH5 bezeichnet das Attribut XH (den Wert) des Halbwortskalars Nummer 5.")?>
  2. Ein symbolischer Name kann als Index benutzt werden, indem man an den Attributnamen ein $-Zeichen und danach den Namen der Instanz anfügt:
    XXX$JOE bezeichnet das Attribut XXX der Instanz mit dem Namen JOE. XH$JIM bezeichnet den Wert des Attributs XH des Halbwortskalars mit dem Namen JIM.
  3. Ein beliebiger numerischer Ausdruck darf eingeklammert an den Namen des Standardattributes angehängt werden, um die Nummer oder den Index der Instanz anzugeben.
    XXX(10+3) bezeichnet das Attribut XXX der Instanz mit der Nummer 13. XH(10/2) bezeichnet den Wert des Attributs XH des Halbwortskalars Nummer 5. FT(PH2) bezeichnet das Attribut FT (die mittlere Aufenthaltsdauer von Transaktionen) in der Einrichtung, deren Nummer gleich dem Wert von PH2 (dem Halbwortparameter 2 der aktuellen Transaktion) ist.
  4. Eine Ampervariable kann unmittelbar an den Namen eines Standardattributs angefügt werden.
    XH&I bezeichnet den Wert des Attributs XH des Halbwortskalars mit dem Wert der Ampervariablen &I als Index.

Für Referenzen auf Standardattribute von Matrizen gelten besondere Regeln. Diese sind in dem Abschnitt über Matrizen angeführt.

3.5.3 Klassenunabhängige Attribute Top Line

Einige Standardattribute haben keinen Bezug zu einer Modellelementklasse.

Zeichenkettenfunktionen
haben Zeichenketten als Argumente
LEN(cxpr)
bezeichnet die Länge einer Zeichenkette.
cxpr als Argument muß ein Zeichenkettenausdruck sein.
LEN('New York') hat den Wert 8.
SSG(cxpr,s)
bezeichnet die Teilkette von cxpr, die bei der Position s beginnt und bis an das Ende der Zeichenkette reicht.
SSG(cxpr,s,l)
bezeichnet die Teilkette von cxpr, die bei der Position s beginnt und die l Zeichen lang ist.
SSG('New York',5,2) hat den Wert 'Yo'.
Datenumwandlungsfunktionen
führen Typumwandlungen ihrer Argumentwerte aus.
CHAR(ixpr)
liefert das ASCII-Zeichen mit dem Typ CHAR*1 zum dezimalen Wert des Arguments.
ixpr als Argument muß ein Integer-Ausdruck sein.
CHAR(65) hat den Wert 'A'.
CHARSTOF(cxpr)
berechnet einen Real-Wert zu einem Zeichenkettenargument cxpr.
Wenn keine Umwandlung der Zeichenkette möglich ist, tritt ein Laufzeitfehler auf.
CHARSTOF(' 16.5') hat den numerischen Wert 16.5.
CHARSTOI(cxpr)
berechnet einen Integer-Wert zu einem Zeichenkettenargument cxpr.
Wenn keine Umwandlung der Zeichenkette möglich ist, tritt ein Laufzeitfehler auf. Das gilt auch für die Zeichenkettendarstellung eines Real-Wertes!
CHARSTOI('16') hat den numerischen Wert 16.
FIX(xpr)
berechnet den Integer-Wert des numerischen Ausdrucks xpr durch Abschneiden von Stellen hinter dem Dezimalpunkt.
FLT(xpr)
berechnet den Real-Wert des ganzzahligen numerischen Ausdrucks xpr .
FLT(16/5) hat den numerischen Wert 3.0.

Mathematische Funktionen

haben als Argumente reellwertige Ausdrücke und liefern die Werte der Funktionen ABS, ACOS, ASIN, ATAN, COS, EXP, LOG, SIN, SQRT, TAN. Es ist zu beachten, dass die Argumente von Winkelfunktionen im Bogenmaß anzugeben sind und dass manche Funktionen nicht überall definiert sind.

-

SystemAttribute
haben global verfügbare Werte, die von allgemeinem Interesse sein können.
AC1
liefert den aktuellen Wert der sogenannten Absolutzeit oder Absoluten Uhr.

C1
liefert den aktuellen Wert der sogenannten Relativzeit oder Relativen Uhr.

NAC1
liefert den nächsten Wert der Absolutzeit.

Nähere Informationen zur Absoluten und Relativen Zeit oder Uhr erhält man im Kapitel 5.

TG1
liefert den aktuellen Wert des später zu erklärenden Startzählers.

CURDATE
liefert das aktuelle Datum als VCHAR*11 im Format DD MMM YYYY.

CURTIME
liefert die aktuelle Zeit als VCHAR*8 im Format HH:MM:SS.

ENTNUM(code,cxpr)
prüft, ob es eine Instanz der durch code bestimmten Modellelementklasse gibt, die den Namen cxpr trägt und stellt deren Nummer bereit. Sonst wird der Wert Null geliefert. Die Codierung der Modellelementklassen erfolgt wie bei der REALLOCATE-Anweisung.
SYM(code,iexpr)
ist das Gegenstück zu ENTNUM: Es liefert eine Zeichenkette: den symbolischen Namen der Instanz mit der Nummer, die durch den Wert von iexpr gegeben ist. Wenn die Instanz keinen symbolischen Namen besitzt, so wird ihre Nummer als Zeichenkette geliefert. Als Codetabelle für Modellelementklassen gilt dieselbe wie für REALLOCATE. Die Symbole findet man in der Spalte R-Code der Tabelle zur EQU-Anweisung.
-

-

3.5.4 Beispiele klassenbezogener AttributeTop Line

Die Mehrzahl der Standardattribute ist klassenspezifisch. So liegt es nahe, sie in Verbindung mit der Einführung zu Modellelementklassen zu erklären. Hier seien nur Verweise auf die Beschreibungen von Standardattributen für Transaktionen, Einrichtungen, Speicher und Warteschlangen angeführt.

Eine alphabetische Liste aller Standardattribute ist im Anhang enthalten.

Kontrollfragen über Standardattribute

  1. Wie kann man Standardattribute klassifizieren?
  2. Was versteht man unter Standardattributen?
  3. Was sind Numerische Standardattribute?
  4. Was versteht man unter ZeichenkettenStandardattributen?
  5. Durch welche Anfangsbuchstaben erkennt man Standardattribute, die auf
    • Speicher,
    • Warteschlangen und
    • Einrichtungen
    bezogen sind?
  6. Wie kann man den Bezug eines Standardattributs auf eine Instanz einer Modellelementklasse herstellen?
  7. Nennen Sie Beispiele für ZeichenkettenStandardattribute!
  8. Geben Sie zwei Beispiele für Typ- oder Datenumwandlungsfunktionen an!
  9. Skizzieren Sie ein Programm, das eine Wertetafel für Sinus- und Cosinusfunktion erzeugt. Als Argumente sollen Werte in Grad benutzt werden.
  10. Welche Standardattribute liefern die aktuelle Uhrzeit und das aktuelle Datum?
SAHome previous next up Englishsmaller fonts Top Line
Last Modified Fri 05-27-11 06:54 GMT Valid CSS!

Comments please to:pelosim@yahoo.com