多领域统一建模语言中的过程式建模机制研究与实现
【摘要】:
现代产品日趋复杂,通常是由多个领域的多个子系统组成,这些不同领域的子系统表现出紧耦合的特性,要求对多领域统一建模、一致仿真。为优化复杂产品的设计,得到复杂产品整体性能的准确仿真结果,工业界迫切需要有一种能够跨越不同领域、不同学科的多领域仿真理论与方法。Modelica作为新一代多领域统一建模语言,具有支持面向对象的层次化建模、多领域建模、陈述式物理建模和连续离散混合建模等特性,非常适合描述现代多领域复杂系统,代表着系统仿真建模和仿真技术发展的新方向。
本文面向多领域物理系统统一建模与仿真平台MWorks的开发,研究多领域统一建模语言Modelica的过程式建模特性。通过对比陈述式建模与过程式建模两种不同建模方式,分析Modelica语言建模与仿真原理,结合MWorks编译器的编译分析流程,对其中函数机制、算法机制和C代码映射等过程式建模机制做了深入研究。
函数机制是Modelica语言过程式建模的核心机制。在现有的MWorks编译仿真模型的基础流程上,研究函数机制中的一般函数、函数调用、内置函数、外部函数,提出以仿真模型的标准解析为主线,加入函数类型限制性检查和输入输出组件收集等辅助过程完成函数类解析;简化实例化流程,通过分析变型信息判断默认参数的完全变型;设计参数匹配过程完成函数形参与实参的匹配;在编译器内部完成内置函数的分析以加快模型仿真过程;以函数接口为切入点,解决了在Modelica模型中调用C、FORTRAN函数的问题。
算法机制是Modelica语言过程式建模的另一种重要形式,通过算法与函数的比较,分析Modelica语言的算法机制的特点,讨论算法中输入输出分析以及算法子句在算法机制中的重要作用并给出具体的实现方案。
C代码映射是Modelica语言过程式建模从模型到仿真过程的关键机制,将函数定义分为函数原型声明、算法子句、内部变量、返回语句、复合类型声明等五个部分分别映射后再组装到一起生成C代码。通过内部变量依赖性分析解决Modelica与C语言中变量的不同使用方式的问题。
基于上述研究,在MWorks平台下实现了基于Modelica语言的过程式建模机制。论文最后介绍了MWorks系统建模流程,并给出了有关过程式模型的运行实例。
|
|
|
|
1 |
周爱国;王闻莉;陆亮;周治平;高卫民;戴轶;;基于AMESim中Modelica模块的汽车电动助力转向系统仿真[J];机床与液压;2011年11期 |
2 |
;[J];;年期 |
3 |
;[J];;年期 |
4 |
;[J];;年期 |
5 |
;[J];;年期 |
6 |
;[J];;年期 |
7 |
;[J];;年期 |
8 |
;[J];;年期 |
9 |
;[J];;年期 |
10 |
;[J];;年期 |
11 |
;[J];;年期 |
12 |
;[J];;年期 |
13 |
;[J];;年期 |
14 |
;[J];;年期 |
15 |
;[J];;年期 |
16 |
;[J];;年期 |
17 |
;[J];;年期 |
18 |
;[J];;年期 |
19 |
;[J];;年期 |
20 |
;[J];;年期 |
|