Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

gpss_manual

.pdf
Скачиваний:
50
Добавлен:
05.06.2015
Размер:
1.88 Mб
Скачать

Please follow the Error Reporting Procedure, above.

System exception detected.

Please follow the Error Reporting Procedure, above.

Test expression does not have numeric or logic value.

You can only use numeric values as the results of TEST Block expressions. You must change values, operands, or the flow of

Transactions in the simulation to prevent this condition.

The Backup File could not be written. Do you wish to continue the SAVE?

The Backup file could not be preserved because the name is not distinct or because there was not enough space. If you

answer Yes the Save will continue but the backup file will not be valid.

The device is write-protected.

A write to a write-protected device has failed. Please remove the protection and retry the operation.

The disk is full.

The disk(ette) device being written to is out of space. You must abort the statement, provide for more space, and try it again.

The drive is locked.

An input or output operation failed because another process is using it. Please wait until it is available. If the problem persists, consult your network administrator.

The file could not be found.

An input or output operation attempted to use a file that does not exist in your file system. Please correct the situation and retry the operation.

The file is too big.

The file appears to be corrupt. Please replace it or create it again, and retry the operation.

The item was not located.

An input or output operation attempted to use an object that does not exist in your file system. Please correct the situation and retry the operation.

The j Argument must be greater than the i Argument.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The location argument must be greater than 0.0.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Matrix index is not positive.

The Active Transaction has caused a matrix row to be evaluated which is 0 or is negative. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Matrix index is too large.

The Active Transaction has caused a matrix index to exceed the size of that dimension. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition. You may wish to redefine the matrix entity and continue.

The Matrix offset is too big.

The Active Transaction has caused a matrix index to exceed the size of that dimension. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition. You may wish to redefine the matrix entity and continue.

The max argument must be greater than the mode argument.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Mean must be greater than 0.0.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The mode argument must be greater than the min argument.

A Procedure invocation used arguments which were not valid. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The p Argument must be strictly between 0 and 1.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Random Stream number must be positive.

A nonpositive Random stream number was detected. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The required label is missing.

You have skipped a required label field.

The Scale Argument must be greater than 0.0.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Shape argument must be greater than 0.0.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Standard Deviation must be greater than 0.0.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The t Argument must be greater than 0.0.

A Procedure invocation used arguments which were not valid.

You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

The Table is too large.

The Table size exceeds the Max Storage Request, which can be set in the Simulate Page of the Model Settings Notebook,

The upper count limit is too low.

The Active Transaction has cause an operand to be evaluated which resulted in an entity number lower than the starting number. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

There are no Transactions. Check Transaction limits and blocking.

Either you have entered a statement which requires an Active Transaction, and there is none, or all GENERATE statements have reached their creation limits.

To set up an Active Transaction you must enter a START

command with a GENERATE statement in the translated program. You may then STOP or interrupt a simulation in order to set up the Active Transaction. The STEP command is available to control the stopping point of the simulation.

If you limit the number of Transactions created by using operand D in all GENERATE statements, you may run out of

Transactions before the termination count returns to zero. You must provide another source of Transactions in the simulation (SPLIT or GENERATE), you must increase the termination count in one or more TERMINATE blocks, or you must reduce the termination count in the START statement.

There is more data.

Please follow the Error Reporting Procedure, above.

There is no such Transaction.

The Transaction that was to be accessed does not exist right now.

There is no Transaction for the Parameter reference.

You have entered a statement which needs one or more parameters of the Active Transaction for its evaluation. However, there is no Active Transaction.

There is no Transaction for this SNA evaluation.

The statement being evaluated has an SNA which requires a

Transaction for its evaluation and there is none. You must correct the SNA or you must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

There must be an Arrival Block for the Threshold Expression.

You cannot specify a Transaction generation threshold without specifying which Block is to receive the newly generated

Transactions.

This Function has not yet been implemented.

Please follow the Error Reporting Procedure, above.

Tolerance must be between 0.000000001 and 0.1, inclusively.

The integration error tolerance setting is out of range. Correct it in the Simulate Page of the Model Settings Notebook.

Too many open files.

Please follow the Error Reporting Procedure, above.

Transaction cannot be found.

The Transaction that was to be accessed does not exist right now.

TRANSFER Operand B or C must be used.

You must change the Block to have a B or C operand.

Translation error.

Your Statement has a syntax error. In the Model Window, you can use Search / Next Error or Search / Previous

Error to move the cursor directly to the faulty Statement.

Please correct it and retry the operation.

Trigonometric function domain error.

The value of the operand is not in the range permitted for this function. You must change values, operands, or the flow of

Transactions in the simulation to prevent this condition.

Truncate not defined for this data type.

The variable has a value which could not be coerced into an arithmetic value. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

Unknown format. Settings have been refreshed.

A Model File was opened which did not include the same version of Model Settings as that used by the software. The Model Settings have been refreshed with the default values.

Unknown token.

Please follow the Error Reporting Procedure, above.

Unqueued window notice.

Please follow the Error Reporting Procedure, above.

Use of a nonpositive entity number.

The Active Transaction has cause an operand to be evaluated which resulted in a 0 or negative entity number. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition.

Write fault.

An error occurred writing a File to disk. This could be caused by a hardware error, or a disk full condition.

You cannot wait on this SNA.

The Active Transaction is attempting to wait for a condition

which can never occur. Such a Transaction would never be able to enter the Block. You must change values, operands, or the flow of Transactions in the simulation to prevent this condition. Do not attempt to block on an integrated User

Variable. Use the Transaction generation thresholds in the

INTEGRATE Command for that purpose.

You cannot change a block location value in an EQU statement.

Names which are in use as Block statements cannot be used in

EQU statements. Block locations are automatically kept in ascending sequence starting with 1. Blocks are renumbered when a Block is inserted into or deleted from the simulation.

You cannot use GENERATE in Manual Simulation. Use SPLIT.

To create Transactions interactively you must use SPLIT, not

GENERATE.

You must select at least one Block.

You cannot perform the action until you have selected one or more Blocks.

You must specify an SNA.

You must specify an operand that is a valid System Numeric

Attribute.

Appendix

This chapter presents a formal description of the commands and GPSS statements to be used with GPSS World. The first section contains the definitions of the elements of the language used in GPSS Statements the second contains the grammar for PLUS, the Programming Language Under Simulation, and the third a glossary of commonly used terms.

1.1. GPSS Grammar

Null :== [ ]0,0

No entry. May be skipped.

Uppercase :==A | B | C | D | E | F | G | H | I | J | K | L | M | N | O

| P | Q | R | S | T | U | V | W | X | Y | Z Capital letters A through Z.

Lowercase :== a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z

Lower case letters a through z.

Alphabetic :==Uppercase |Lowercase

Either capital or lower case letters.

Digit :== 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Numerals 0 through 9.

Comma :== ,

The comma symbol.

Blank :== [ ]1,1

Blank. A space containing no printable character.

Delimiter :== ; | Comma | Blank

A semicolon, comma, or blank. Delimiters are used to define the end of a field.

NonnegInteger :== [Digit ]1,15

Number of between 1 and 15 digits, inclusively.

PosInteger :== [ 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 ]1,1 [Digit ]0,15

Number of between 1 and 15 digits, inclusively. First digit may not be 0.

Fraction :== .[Digit ]1,15

Decimal point followed by 1 to 15 digits inclusively.

Sign :== Null | + | -

A plus or minus sign. If omitted, plus is assumed.

Integer :== Sign NonnegInteger

An integer with an optional sign.

NonnegNumber :==[Null | NonnegInteger ]1,1 [nul | fraction

]1,1

A nonnegative number which may include a fractional part.

Exponent :==E Sign [Digit ]1,3

E and an optional sign followed by 1, 2, or 3 digits.

Number :==NonnegInteger [Exponent ]0,1

A nonnegative number with an optional fractional part and optional exponent.

SignedNumber :==Sign Number

A number which may be positive or negative, may have a fractional part, and may have an exponent. the sign need not be present.

Name :== Alphabetic [ _|Alphabetic | Digit ]1,250 - [ Keyword |

SNA | EntitySNAclass ]

An underscore, alphabetic character, or digit occurring 1 to 250 times and excluding reserved keywords. A name cannot be a verb or a valid SNA or SNA class. Lower case letters are automatically converted to upper case.

StatementLabel :== Name

A statement label is a name used in the label field of a GPSS statement to give a name to a GPSS entity like a STORAGE or

TABLE or to give a location name to a BLOCK.

ResultMatrixName :== Name

A Result Matrix Name is passed to the ANOVA procedure to identify a Matrix Entity with special properties.

AtomicSNA :== A1 | AC1 | C1 | M1 | PR | TG1 | XN1 | Z1

Atomic SNAs are System Numeric Attributes which do not need an entity specifier. For example, C1 is the relative system clock.

EntitySNAclass :==[BV | CA | CC | CH | CM | CT | F | FC | FI | FN | FR | FT | FV | GN | GT | LS | MB | MP | MX | N | P | PR | Q

| QA | QC | QM | QT | QX | QZ | R | RN | S | SA | SC | SE | SF | SR | SM | ST | SV | TB | TC | TD | V | W | X]1,1

Entity SNAs must be followed by an entity specifier in order to build a valid SNA. The entity specifier is the name or number of the entity, or when preceded by [*], is the name or number of the parameter of the Active Transaction containing the entity number. SNA class MX is excluded since it must also contain row and column specifiers (see directmatrixSNA and indirectmatrixSNA below).

SimpleSNA :== EntitySNAclass [PosInteger | $Name ]1,1

A simple SNA is an entity SNA which does not use indirect addressing. The entity specifier must be a positive integer or a

name preceded by [$]. SNA class MX is excluded since it must also contain row and column specifiers (see directmatrixSNA and indirectmatrixSNA below).

DirectMatrixSNA :==MX[PosInteger | $Name ]1,1 ([[P]0,1

Posinteger | [P$]0,1Name ]1,1,[[P]0,1 Posinteger [P$]0,1

Name]1,1)

The MX is followed by a matrix entity specifier followed, in parentheses, by a row specifier and a column specifier. The row and column specifiers are positive integers, names or P class SNAs, separated by a comma. Indirect addressing is described below. The [$] is used as a separator when referencing a parameter by name in a row or column specifier.

DirectSNA :==AtomicSNA | SimpleSNA | DirectMatrixSNA

A direct SNA is any SNA which doesn’t use indirect addressing.

IndirectMatrixSNA :==MX[[PosInteger | $Name | *[PosInteger |

[$]0,1 Name ]1,1]1,1 ([[P]0,1 PosInteger | [P$]0,1 Name |

*[PosInteger | [$]0,1 Name ]1,1 Comma [[P]0,1 PosInteger | [P$]0,1 Name | *[Posinteger | [$]0,1 Name]1,1)]1,1

-[DirectMatrixSNA]

The MX is followed by a matrix entity specifier followed, in parentheses, by a row specifier and a column specifier. The row and column specifiers are separated by a comma. At least one item must be specified using indirect addressing. If row and column specifiers are SNAs, they must be P class SNAs.

SNA*Parameter :==[BV | CA | CC | CH | CM | CT | F | FC | FI |

FN | FR | FT | FV | GN | GT | LS | MB | MP | MX | N | P | PR | Q

| QA | QC | QM | QT | QX | QZ | R | RN | S | SA | SC | SE | SF | SR | SM | ST | SV | TB | TC | TD | V | W | X]1,1 *[PosInteger | [$]0,1 Name ]1,1

This is indirect addressing. The entity number is in a Transaction Parameter. The entity SNA class is followed by * followed by the name or number of a parameter of the Active Transaction containing the entity number.

IndirectSNA :==SNA*Parameter | IndirectMatrixSNA

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]