仅供个人学习记录
概述
多种类型的工程分析,如权衡研究、敏感度分析和设计优化,这些需要包括对性能、可靠性、成本和物理属性等的分析。SysML通过应用参数模型,支持该类分析。
参数化的模型约束系统的属性,可以通过合适的分析工具进行评估。约束以方程形式表示,方程中的参数与正在分析的系统属性鄉定。每个参数模型可以捕获设计的一个或多个工程分析的规范。对捕获多个工程分析的参数模型(如性能、可靠性成本)开展分析,评估设计可选方案,从而支持权衡分析,或者基于多个准则进行优化设计。
SysML通过约束块来支持构建参数模型。约束块是一类特殊块,用于定义方程,从而使这些方程可以重用、互连。约束块有两个主要特性:参数集以及约束这此参数的表达式。约束块的定义区使用与第7 章中描述的块、组成方式相似。约朿块的使用称为约束属性,与组成属性类似。约束块的定义及使用分别由块定义图及参数图来表示。
应用块定义图定义约束
与块定义方式相似,约束块及约束块之间的关系在块定义图中定义
不明白为什么不能同时显示,而且两个Directed Composition不能并起来
参数图
参数图用于创建方程系统,从而约束块属性。完整标题形式如下:
par[model element kind]model element name[diagram name]
应用约束表达式表示系统约束
SysML采用了一类通用机制,以文本表示方式来表示系统约束,这种文本表示方式可应用于任何模型元素。SysML并不提供内置约束语言,因为期望不同的约束语言(如OCL Java或MathML等)都能够用于各领城中。约束constraint定义应能够包含支持评估约束的语言。
约束可以归属于作为命名空问的任何元素,如包或者块。如果拥有约束的元素(如块)可包含分区,则约束也可以在标记为constraints的特殊分区中表示。约束还可以表示为附属于模型元素的注释标识,注释中包含了约束文本。约束语言在表达式文本前的括号中表示,尽管为避免杂乱而经常省略了该部分内容。
约束块封装约束支持重用
SysML约束块constraint block扩展了通用约束概念,使得约束被定义后能够在其他不同情境中重用,如同组成表示不同情境中块的使用。这里与组成等同的概念称为约束属性constraint property。
约束表达式可以采用任意数学表示方式,也可以与时间相关,如微分方程中的时间微分。除了约束表达式,约束块也定义了一组约束参数constraint param-eter,该参数为约束表达式中的一类特殊属性。约束参数与其他参数、块属性相绑定。约束参数没有方向。相反,参数间依赖关系的表述是基于规范约束表达的语言语义。
增加的参数特征
在定义集合时。对于多重性上限大于1的属性,有两个非常有用的特征。以规范集合是否排序 order、值是否必须唯—unique。
- 排序表示集合成员与正整数值相对应:成员1、成员2 等。排序的方法根据其他约束规定,或者根据构建集合的行为规定。
- 在一个唯一的集合中,所有的集合值必须不同。
属性的另一个有用的特征是属性能够标记为派生。如果某个属性标记为派生,则意味着其属性值是派生的,通常可以以其他属性值得到。在规范参数模型时,该特征有两个用途:一是如果方程计算作为函数实现,则派生参数可用于区分非独立变量;二是在建模人员希望引导方程解算器时,派生属性表示了给定分析中需要通过方程解算确定的值。
下图给出了块定义图中约束块的定义。图标题与其他块定义图相同,规定了图框对应的包或者块。约束块的命名分区中在名称上方有关键词《constraint》,通过该关键词将该元素与块定义图中的其他元素区分开。
在约束块的corstraints约束分区中定义了约束表达,而在parameters参数分区中通过以下字符串格式定义约束参数:
parameter name: type [ multiplicity ]
排序和唯一性作为关键词表示在括号中,列在多重性后面。排序表示为已排序或者未排序,唯一性表示为唯一或者非唯一。实际中默认关键词表示为非排序、非唯一。派生属性以/表示。
应用组合构建复杂约束块
建模人员可以在定义块图中将复杂约束块与其他约束块相结合。块定义图用于定义约束块。约束属性语义格式:
constraint property:constraint block[multiplicity]
应用参数图绑定约束块参数
块定义图中并不表示其互连约束属性的所有信息,具体地讲,它不表示约束属性参数与其父参数及同级参数之间的关系。这些增加的信息在参数图中通过綁定连接器(binding connector) 提供。
参数图中的两个约束参数可以通过鄉定连接器直接相互绑定,即表明两个参数的值必须相同。如果某个方程的参数可以与另一方程的参数绑定,则建模人员可以连接多个方程从而构建复杂方程组。
约束块参数不表示因果关系。绑定连接器表示所绑定元素的对等关系,而不表示方程组的因果关系。在求解某个方程时,假设其独立/非独立变量是确定的或者是推导出的,包括初始值设置。通常由计算方程求解器解决,求解器通常由独立分析工具提供。如果部分解的阶数已知,则派生参数或属性可用于引导方程求解器。
参数图中针对约束属性的标记与它们在块定义图中的定义相关
- 约束块或者块定义图中拥有约束属性的块,可以指定为参数图的图框架,在图标题中有约束块或者块名称。
- 块定义图中组合关联部件端的约束块,可以用约束属性标识表示,出现在指定组合端的约束块的框架中。标识的名称字符串采用constraint property name: constraint block name
在应用组合关联时,约束属性名称对应于关联部件端的角色名称,如同与组成对应。类型名称对应于关联部件端的约束块名称。
参数图框架对应于某个约束块或者块。如果参数图指定了某个约束块,则其参数表示为与框架内表面齐平的小矩形。每个参数的名称、类型和多重性均通过参数标识附近的文本标签表示。
在参数图中,约束属性既可以由圆角矩形标识表示,也可以由带有关键词《constrains》的矩形表示。属性的名称和类型在标识的内部表示,属性名称和类型名称可根据霝要省略。约束表达自身可以被省略,但如果显示,则其既可以显示在圆角内部,也可通过注释标识与圆角连接。约束属性的参数表示在约束属性标识的内表面。
应用参数图表示功率消耗方程的内部细节,反映了应用参数化模型,由可重用的约束块来构建更为复杂的方程