1.4. The Modeling Language
GPSS World contains an implementation of GPSS, the General Purpose Simulation System, enhanced by an embedded programming language PLUS, Programming Language UnderSimulation.
The GPSS variant includes over 50 Block Statements and 25 Commands. It includes over 35 System Numeric Attributes, which provide instant state variables, accessible anywhere in the model.
PLUS is a small but powerful procedural programming language created out of only 12 statement types. Much of its power comes from a large procedure library containing mathematical and string manipulation functions, and a strong set of probability distributions.
In GPSS World, a Model is defined to be a sequence of Model Statements. These are either GPSS Statements, PLUS Procedure Statements, or PLUS Experiment Statements. GPSS Statements, in turn, are either Block Statements or Commands. Except for Function Follower Statements, all GPSS Statements must reside on a single text line of up to 250 characters. Any Model Statement can be part of the model in a Model File, or can be sent interactively to modify an existing simulation.
The inclusion of Expressions in PLUS Statements and Parenthesized Expressions in GPSS Statements is a strong enhancement to the modeling power and ease of use of the language. The use of the [*] character to denote multiplication has been retained as the default. This clearly distinguishes that arithmetic operation from the GPSS indirect addressing operation which is denoted by the [*] character. However, you can now switch the role of these operators if you prefer. This is done on Page 1 of the Settings Notebook of the Model Object.
Commands are discussed in Chapter 6, Block Statements in Chapter 7, and the PLUS Language, including the Procedure Library, in Chapter 8.
1.4.1. Whatrsquo;s New
Many changes have been made to the modeling language. The distinction of Control Statements has been removed. All GPSS Statements that are not Block Statements are now simply called Commands. Line numbers are ignored in GPSS World. If used, they must begin in the first column of the text line.
Automatic truncations have been removed from GPSS World. You must now explicitly use the INT( ) procedure, or some other method, if you wish intermediate numeric results to be truncated. This is true in all Expressions, even in VARIABLE and BVARIABLE Statements. Similarly, the data type returned by a System Numeric Attribute can now be integer, real, or string, depending on the SNA. Even those SNAs returning parts per thousand do so as a real number of double precision between 0 and 1000, inclusively. The old truncations and integer SNAs can be enforced by running a Commercial Version of GPSS World in GPSS/PC Compatibility Mode, which is discussed below.
PLUS Statements can span any number of text lines. Although GPSS Statements, except for Function Followers, must reside on a single text line, the maximum length is now 250 characters.
Parenthesized mathematical expressions can now be used nearly anywhere you can use an SNA. Expressions are an integral part of the PLUS Language, but they are also used to expand the power of operands in GPSS Statements. The permissible forms of each operand are given in the statement descriptions in Chapters 6 and 7. Many new statement types have been added, as well. These are discussed next.
Several new features are available in both Student and Commercial Version. Here#39;s a quick overview:
Automatic Optimizing Experiment Generator
Automatic Screening Experiment Generator
Snapshots available in Student Version
Multiway #39;ANOVA#39; Library Procedure
Variable Argument count for #39;PolyCatenate#39; Library Procedure
#39;Call#39; Library Procedures to invoke external functions
PLUS Trace Setting
BATCH Mode Sessions
EXIT Command with File Save Modes
Block Creation Dialogs
Adjustable Model Tabstops
PLUS Data Stream Procedures
New GPSS Statements
Several new Blocks have been added.
New GPSS Blocks
ADOPT - Change Assembly Set.
DISPLACE - Change the Next Sequential Block of a given Transaction. Save FEC residual time. Can be used to reschedule events.
PLUS - Evaluate PLUS Expression and save result in Parameter.
INTEGRATION - Turn the integration of a User Variable ON or OFF.
OPEN - Initialize a Data Stream for operation.
CLOSE - End the Data Stream operation.
READ - Bring the next line of data from a Data Stream into a parameter of the Current Transaction.
WRITE - Send a line representing the value of a Transaction Parameter to the next slot in a Data Stream.
SEEK - Change the Current Line Position in a Data Stream.
New Commands
Statements have been added to control the integration of continuous state variables, to provide for multiple Model Files and Procedure Libraries, and to invoke PLUS Experiments..
CONDUCT -Begin a previously registered PLUS Experiment.
EXIT - Terminate Session, optionally saving objects.
INTEGRATE - Automatically integrate an Ordinary Differential Equation, with optional Transaction generation trigger values.
INCLUDE - Insert a Text Object for Translation.
New SNA
The new System Numeric Attribute A1 returns the Assembly Set of the Active Transaction. This is useful in conjunction with the new ADOPT Block which lets the Active Transaction change its Assembly Set.
1.4.2. Language Elementslt;
全文共30073字,剩余内容已隐藏,支付完成后下载完整资料
1.4。建模语言
GPSS世界包含GPSS的实现,通用仿真系统,通过嵌入式编程语言PLUS,编程语言下的仿真增强。
GPSS变体包括超过50个块语句和25个命令。它包括超过35个系统数字属性,它们提供即时状态变量,可在模型中的任何位置访问。
PLUS是一种小而强大的程序语言,仅由12种语言类型创建。它的大部分功能来自一个包含数学和字符串操作功能的大型程序库,以及一组强大的概率分布。
在GPSS世界中,模型被定义为模型语句的序列。这些是GPSS语句,PLUS程序语句或PLUS实验语句。 GPSS语句又是块语句或命令。除了功能跟随者声明外,所有GPSS语句必须位于最多250个字符的单个文本行上。任何模型语句都可以作为模型文件中的模型的一部分,也可以交互式发送以修改现有的模拟。
在“GPSS语句”中将表达式加入PLUS语句和括号表达式中,强化了语言的建模功能和易用性。使用[*]字符表示乘法已被保留为默认值。这清楚地区别了由[*]字符表示的GPSS间接寻址操作的算术运算。但是,如果您愿意,您现在可以切换这些运算符的角色。这是在模型对象的设置笔记本的第1页上完成的。
第6章讨论命令,第7章中的块语句和第8章中的PLUS语言,包括过程库。
1.4。建模语言
GPSS世界包含GPSS的实现,通用仿真系统,通过嵌入式编程语言PLUS,编程语言下的仿真增强。
GPSS变体包括超过50个块语句和25个命令。它包括超过35个系统数字属性,它们提供即时状态变量,可在模型中的任何位置访问。
PLUS是一种小而强大的程序语言,仅由12种语言类型创建。它的大部分功能来自一个包含数学和字符串操作功能的大型程序库,以及一组强大的概率分布。
在GPSS世界中,模型被定义为模型语句的序列。这些是GPSS语句,PLUS程序语句或PLUS实验语句。 GPSS语句又是块语句或命令。除了功能跟随者声明外,所有GPSS语句必须位于最多250个字符的单个文本行上。任何模型语句都可以作为模型文件中的模型的一部分,也可以交互式发送以修改现有的模拟。
在“GPSS语句”中将表达式加入PLUS语句和括号表达式中,强化了语言的建模功能和易用性。使用[*]字符表示乘法已被保留为默认值。这清楚地区别了由[*]字符表示的GPSS间接寻址操作的算术运算。但是,如果您愿意,您现在可以切换这些运算符的角色。这是在模型对象的设置笔记本的第1页上完成的。
第6章讨论命令,第7章中的块语句和第8章中的PLUS语言,包括过程库。
1.4.1。什么是新的
对建模语言进行了许多改变。控制声明的区别已被删除。所有不是阻塞语句的GPSS语句现在简称为命令。 GPSS世界中的行号被忽略。如果使用,它们必须从文本行的第一列开始。
自动截断已从GPSS World中删除。如果希望中间数字结果被截断,则必须明确使用INT()过程或其他方法。在所有表达式中都是如此,即使在VARIABLE和BVARIABLE语句中也是如此。类似地,系统数字属性返回的数据类型现在可以是整数,实数或字符串,具体取决于SNA。即使那些返回千分之几的SNA也可以实现0到1000之间的真正的双重精度。旧的截断和整数SNA可以通过在GPSS / PC兼容模式下运行GPSS World的商业版本来实现,这将在下面讨论。
PLUS语句可以跨越任意数量的文本行。尽管功能跟踪器除外,GPSS语句必须位于单个文本行上,但最大长度现在为250个字符。
现在可以在几乎任何可以使用SNA的地方使用括号化的数学表达式。表达式是PLUS语言的组成部分,但它们也用于扩展GPSS语句中操作数的功能。每个操作数的允许形式在第6章和第7章的说明中给出。还添加了许多新的语句类型。这些将在下面讨论。
学生和商业版本都有几项新功能。以下是快速概述:
bull;自动优化实验发生器
bull;自动筛选实验发生器
bull;学生版本中提供快照
bull;多语言“方差分析”图书馆程序
bull;“PolyCatenate”库过程的可变参数计数
bull;调用库程序调用外部函数
bull;PLUS跟踪设置
bull;BATCH模式会话
bull;带文件保存模式的EXIT命令
bull;块创建对话框
bull;可调模型Tabstops
bull;PLUS数据流程序
新GPSS语句
添加了几个新的块。
新的GPSS块
bull;ADOPT - 更改装配集。
bull;DISPLACE - 更改给定事务的下一个顺序块。节省FEC剩余时间。可用于重新安排事件。
bull;PLUS - 评估PLUS表达式并将结果保存在参数中。
bull;集成 - 打开或关闭用户变量的集成。
bull;OPEN - 初始化数据流以进行操作。
bull;CLOSE - 结束Data Stream操作。
bull;READ - 将数据流中的下一行数据引入当前事务的参数。
bull;写入 - 将表示事务参数的值的行发送到数据流中的下一个插槽。
bull;SEEK - 更改数据流中的当前行位置。
新命令
已添加语句来控制连续状态变量的集成,提供多个模型文件和过程库,并调用PLUS实验。
bull;CONDUCT - 初步注册的PLUS实验。
bull;退出 - 终止会话,可选择保存对象。
bull;INTEGRATE - 自动整合普通差异
1.4.2。语言元素
GPSS世界提供了一系列语言元素,方便开发复杂的模拟。
多态数据类型
变量现在可以使用四种类型之一的值。用户控制的变量,如Savevalues,Matrix Elements,Transaction Parameters和User Variables可以采用整数,实数,字符串或UNSPECIFIED值。时钟值是整数或实数,双精度。
类型之间的转换是自动的。需要特定数据类型作为参数的过程会将参数强制为适当的类型。如果将字符串传递给需要数字参数的Procedure,则使用字符串的数字等价物。同样,如果您尝试写入一个数值,它将自动转换为文本行。
字符串值有很多用途。它们可用于数据流,格式化报告和结果文件,并在内部直接访问数据。字符串常量由一对双引号的字符串的外壳表示。您可以使用两个双引号一起表示字符串内部的单个双引号。例如,您将使用总共6个双引号字符来表示字符串中的字符串。内部的字符串将被两对双引号“夹”,整个字符串将被两端的双引号字符“夹”。过程库包含许多可用于创建和操作字符串的字符串过程。
您现在可以将数据类型“未经验证”提供给保存价值实体和矩阵实体。 INITIAL命令允许您一次将此类型分配给Savevalues,Matrix元素,甚至整个矩阵。如果在需要值的操作中使用UNSPECIFIED数据,则会发生错误停止。方差分析库程序已升级,以将结果矩阵中的UNSPECIFIED元素识别为不可用的实验运行结果。
初始化数据结构
变量和矩阵元素可以以几种方式给出初始值。
bull;INITIAL命令可用于为Logicswitch,Savevalue和Matrix实体提供值。 PLUS赋值语句用于将值分配给更高维度的矩阵。
bull;SAVEVALUE块语句将值分配给Savevalue Entities。
bull;MSAVEVALUE块语句将值分配给Matrix实体。
bull;LOGIC块语句将值分配给Logicswitch实体。
bull;READ和ASSIGN块语句将值分配给事务参数。
bull;PLUS赋值语句可用于将值分配给用户变量和矩阵。
bull;CLEAR命令通常将Savevalues,Logicalwitches和Matrices的值重置为整数,可以通过在CLEAR的B操作数中指定OFF来抑制此操作。通常,您将使用CLEAR语句中的OFF选项在实验中使用。否则,不会保留结果矩阵。
隔离文本对象中的初始化语句通常很有用。然后,只需要一个INCLUDE命令来执行完整的初始化。这也可以交互地完成。
PLUS实验可以将初始化控制到任何级别的细节。任何初始化命令都可以通过使用DoCommand库过程在实验中调用。
多维矩阵
矩阵可以定义为最多6个维度。 Dynamic Matrix Windows查看Matrix的任何横截面,并且可能会有任何数量的Matrix Windows。可以创建临时矩阵以在过程调用期间使用。 PLUS赋值语句用于初始化维度3或更多的矩阵。
表达式
GPSS世界支持广泛使用表达。它们可以出现在PLUS程序中,也可以在括号内显示在GPSS语句中。这意味着只有在块和命令的操作数中才能实现强大的计算水平。表达式可以进行简单的计算,调用执行数学或字符串操作,抽样概率分布或执行用户定义算法(包括文件I / O)的过程。
1.4.3。嵌入式编程语言
PLUStm下的编程语言PLUStm是一种简单但功能强大的嵌入式编程语言,可以满足需要对数据结构,计算算法和临时块处理进行精细控制的用户的详细计算需求。
PLUS过程语句可用于将过程定义为原始模型的一部分,也可以将其发送到现有模拟。这也适用于PLUS实验语句。
一个新的GPSS块,PLUS,允许用户调用一个PLUS过程作为一个块程序。实际上,用户可以根据需要以复杂的方式创建自己的块。
PLUS过程很容易创建,可以驻留在模型中的任何位置,并且可以在过程库中INCLUDEd。它们也可以随时重新定义,甚至是交互式的。
第8章讨论了PLUS语句类型。它们包括:
·作业·开始
·DO ... WHILE
· 结束
·实验
· 去
·如果...那么... ELSE·PROCEDURE
·程序调用
·返回
·临时
1.4.4。程序库
GPSS World具有广泛的功能,可以作为过程调用进行访问。
字符串过程库
为了方便操作新的字符串数据类型,可以使用内置的字符串过程库。这包括:
·对齐 - 返回一个放在另一个字符串中的右对齐的字符串的副本。
·连带 - 将两个字符串的副本合并成一个。
·副本 - 从许多字符串副本创建一个字符串。
·数据类型 - 返回一个表示参数的数据类型的字符串。
·查找 - 返回一个字符串在另一个字符串的偏移量。
·左 - 返回从左侧开始的子串的副本。
·长度 - 返回字符串中的字符数。
·小写 - 返回字符串的小写表示形式。
·地方 - 将一个字符串放在另一个中。左对齐
·PolyCatenate - 将一个或多个字符串的副本返回到一个。
·右 - 从右边返回一个子字符串的副本。
·String - 将数据项转换为字符串等效项。
·StringCompare - 如果字符串比较则返回整数结果。
·Substring - 返回字符串参数的子字符串的副本。
·修剪 - 删除前导和尾随的空格。
·大写 - 返回字符串的大写字母。
·值 - 返回字符串的数字等价物。
·Word - 返回字符串中的一个单词的副本。
数学程序库
常用的数学库例程包括
·ABS - 绝对值
·ATN - 反正切
·COS - 余弦
·INT - 截断
·EXP - e
·LOG - 自然对数
·SIN - 正弦
·SQR - 平方根
·TAN - 切线
新的事务查询过程
事务状态查询过程现在包括:
·QueryXNExist - 确定事务的存在。
·QueryXNParameter - 检索事务参数的值。
·QueryXNAssemblySet - 检索事务的组合集。
·QueryXNPriority - 检索事务的优先级。
·QueryXNM1 - 检索事务的标记时间。
新的实用程序
新实用程序已经实施用于支持实验:
·DoCommand - 在全局上下文中翻译命令字符串,并将其发送到仿真对象
·方差分析 - 进行差异分析。新的多因素方差分析方法现在可以处理复制和有限因素相互作用。
·效果 - 计算生成筛选实验的效果。
·退出 - 终止GPSS世界会话,保存所有对象,无物体或向每个用户询问。
已实施新的实用程序与外部可执行模块中的程序进行通信的过程:
·调用 - 在可执行模块中调用函数。没有参数。可选返回值是一个整数。
·Call_Integer-调用可执行模块中的函数。传递整数参数。可选返回值是一个整数。
·Call_Real-调用可执行模块中的函数。通过一个真正的论据。可选返回值是一个整数。
·Call_String-调用可执行模块中的函数。传递一个字符串参数。可选返回值是一个整数。
有20多种内置的概率分布可用:
·Beta·LogLaplace
·二项式·LogLogistic
·离散均匀·LogNormal
·指数·负二项式
·极值A·正常
·极值B·帕累托
·伽玛
全文共9545字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[142950],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。