Subject: | 计算机科学技术基础学科::算法理论
|
Title: | Modelica建模软件中求强连通分量与拓扑排序算法优化的研究 |
Author: | 魏欣
|
Issued Date: | 2009-06-26
|
Supervisor: | 曹建文
|
Degree Grantor: | 并行计算中心
|
Place of Degree Grantor: | 软件所5号楼336
|
Degree Level: | 硕士
|
Abstract: | Modelica语言仿真建模在科研工作中已经得到了广泛应用。它能方便地对包含机械、电子、液压、控制、热流等领域的复合物理系统进行基于组件的仿真。现有基于Modelica语言的仿真建模软件支持图形化建模和文本建模两种方式,集成了面向对象、陈述式描述、统一建模、组件重用的优势,给科研工作带来了巨大的便利。
Modelica软件仿真的过程可归结为微分代数方程(differential algebraic equation,DAE)系统的求解。在求解DAE系统时,需要对DAE系统进行约简,直到庞大的DAE系统约简为目前自动求解方法成熟的ODE系统,或约简为方程个数不多的、指标较低的DAE系统,才能使Modelica建模仿真软件具有工业上的应用价值。在约简DAE系统之前,需要对之进行预处理,根据方程之间的数据依赖关系进行拓扑排序,确定求解顺序。排序的过程对应着将DAE系统结构关联矩阵进行块状下三角(block lower triangle,BLT)变换。寻找强连通分量和拓扑排序是对DAE系统进行预处理的重要组成部分。
本文剖析了Modelica软件在仿真时的运行机制,使用几个实例来详细描述在仿真过程中,Modelica软件完成的工作。在寻找强连通分量和拓扑排序这一步,本文提出了使用Kosaraju算法的策略,对由模型得到的有向图直接使用Kosaraju算法,得出DAE系统的求解顺序。文章叙述了强连通分量的含义,并阐述了在求强连通分量时的理论依据,由此引出了Tarjan算法和Kosaraju算法,再分析和比较Tarjan算法和Kosaraju算法,对比了两种策略的优劣,并进行了实验。同时,本文分析了OpenModelica软件包的结构,修改了软件包在寻找强连通分量及拓扑排序相关模块的代码。 |
Language: | 中文
|
Content Type: | 学位论文
|
URI: | http://ir.iscas.ac.cn/handle/311060/206
|
Appears in Collections: | 并行计算实验室 _学位论文
|
File Name/ File Size |
Content Type |
Version |
Access |
License |
|
学位论文_0608.pdf(2079KB) | -- | -- | 限制开放 | | 联系获取全文 |
|
Recommended Citation: |
魏欣. Modelica建模软件中求强连通分量与拓扑排序算法优化的研究[D]. 软件所5号楼336. 并行计算中心. 2009-06-26.
|
|
|