Modelica語言導(dǎo)論——技術(shù)物理系統(tǒng)建模與仿真
定 價(jià):56.9 元
叢書名:工程物理系統(tǒng)建模理論與方法
- 作者:[瑞典] 彼得·弗里茲森(Peter Fritzson) 著
- 出版時(shí)間:2020/10/1
- ISBN:9787568064279
- 出 版 社:華中科技大學(xué)出版社
- 中圖法分類:O4-39
- 頁碼:226
- 紙張:膠版紙
- 版次:1
- 開本:16開
本書主要圍繞技術(shù)物理系統(tǒng)建模與仿真,介紹工業(yè)界應(yīng)用廣泛的多領(lǐng)域物理建模語言Modelica,覆蓋建模與仿真基本概念以及面向?qū)ο蠛突诮M件的建模基礎(chǔ)。本書目標(biāo)如下:成為關(guān)于建模和仿真導(dǎo)論課程的實(shí)用教材;讓先前不具備建模、仿真和面向?qū)ο蟊尘暗淖x者容易學(xué)習(xí);對物理建模、面向?qū)ο蠼:突诮M件建模進(jìn)行基本介紹;演示一些精選的應(yīng)用領(lǐng)域的建模實(shí)例。本書是Modelica語言奠基者之一的PETER FRITZSON教授撰寫的建模仿真與Modelica入門基礎(chǔ)教程。
Modelica語言已經(jīng)成為多領(lǐng)域系統(tǒng)建模標(biāo)準(zhǔn)語言,是復(fù)雜系統(tǒng)“智能設(shè)計(jì)”時(shí)代系統(tǒng)建模的支撐標(biāo)準(zhǔn),已經(jīng)廣泛應(yīng)用于航天、航空、車輛、能源、船舶、兵器等工業(yè)領(lǐng)域,國內(nèi)工程界也已經(jīng)廣泛接受Modelica標(biāo)準(zhǔn)。國外已經(jīng)出版了幾本Modelica專著,原書作者PETER FRITZSON是Modelica語言奠基者之一,本書是介紹Modelica入門為經(jīng)典的著作,由于Modelica在國內(nèi)已經(jīng)廣泛推廣,對于本書有著廣泛的需求。譯者團(tuán)隊(duì)是國內(nèi)從事Modelica研究、工具開發(fā)及工程應(yīng)用實(shí)力強(qiáng)、影響大的團(tuán)隊(duì)。
原書的前言
Preface
本書講解建模和仿真的基本概念,為熟悉基本編程概念的讀者介紹Modelica語言。同時(shí)針對初學(xué)者,對建模和仿真的概念以及面向?qū)ο蠛突诮M件的建;A(chǔ)做基本介紹。本書有四個(gè)目標(biāo):
成為建模與仿真導(dǎo)論課程的實(shí)用教材。
適合建模、仿真、面向?qū)ο蟮某鯇W(xué)者。
對物理建模、面向?qū)ο蠼:突诮M件建模進(jìn)行基本介紹。
演示精心選擇的應(yīng)用領(lǐng)域建模實(shí)例。
本書包含各種應(yīng)用領(lǐng)域的建模實(shí)例,也包含跨越多領(lǐng)域的建模實(shí)例。書中的全部實(shí)例和練習(xí)都能在電子自學(xué)材料DrModelica中找到 。DrModelica的內(nèi)容基于本書以及內(nèi)容更豐富的《Principles of Object-Oriented Modeling of Simulation with Modelica 2.1》(Fritzson,2004)。DrModelica指導(dǎo)讀者逐步從易到難地進(jìn)行實(shí)例的學(xué)習(xí)和練習(xí)。部分DrModelica教學(xué)材料的內(nèi)容可以免費(fèi)從網(wǎng)站www.openmodelica.org下載,網(wǎng)站上還有本書的其他資料。
Peter Fritzson
譯者序:
1997年Modelica規(guī)范1.0發(fā)布,是數(shù)字化技術(shù)發(fā)展史上的里程碑事件,標(biāo)志著建模仿真從專業(yè)級、部件級進(jìn)入了跨學(xué)科、多領(lǐng)域的系統(tǒng)級,為多領(lǐng)域物理系統(tǒng)建模奠定了統(tǒng)一的形式表達(dá)。歷經(jīng)20多年發(fā)展,Modelica已經(jīng)廣泛應(yīng)用于航空、航天、車輛、能源、教育等各行各業(yè),成為系統(tǒng)級仿真的事實(shí)國際標(biāo)準(zhǔn),法國達(dá)索、德國西門子、美國ANSYS、美國ALTAIR、法國ESI等知名國際工業(yè)軟件公司紛紛通過支持Modelica從單專業(yè)、零部件仿真走向全領(lǐng)域、全系統(tǒng)仿真。
早期Modelica規(guī)范只有一百多頁,但它是面向?qū)ο蠖囝I(lǐng)域物理統(tǒng)一建模技術(shù)幾十年的濃縮。好的規(guī)范就是時(shí)代技術(shù)的濃縮,Modelica跟IC規(guī)范VHDL一樣是這樣的典型。Modelica的發(fā)展早追溯到1967年推出的連續(xù)系統(tǒng)仿真語言CSSL,1978年Hilding Elmqvist在其博士論文中提出了面向?qū)ο蟮奈锢斫UZ言雛形Dymola,這是Modelica的核心來源之一。從20世紀(jì)70年代到90年代,歐洲出現(xiàn)了十多種物理建模語言,1997年歐洲仿真界綜合多種物理建模語言推出了多領(lǐng)域統(tǒng)一建模語言Modelica。Modelica現(xiàn)已成為國際物理建模事實(shí)標(biāo)準(zhǔn)。
Modelica歸納了機(jī)、電、液、控、熱等各學(xué)科的工程物理統(tǒng)一原理,使得不同學(xué)科可以采用統(tǒng)一的數(shù)學(xué)表達(dá)、統(tǒng)一的模型描述、統(tǒng)一的建模模式來實(shí)現(xiàn)統(tǒng)一建模與仿真。Modelica綜合了先前多種建模語言的優(yōu)點(diǎn),支持面向?qū)ο蠼、非因果陳述式建模、多領(lǐng)域統(tǒng)一建模及連續(xù)-離散混合建模,以微分方程、代數(shù)方程和離散方程為數(shù)學(xué)表示形式。
Modelica的內(nèi)涵非常豐富,要全面了解和掌握Modelica,需要從外延和內(nèi)涵兩個(gè)角度把握。從外延講,需要了解系統(tǒng)、建模、仿真的基本概念,了解建模與仿真在產(chǎn)品研制中是怎么應(yīng)用的;從內(nèi)涵講,要了解系統(tǒng)建模的方法,熟悉Modelica語言的基本語法語義和應(yīng)用規(guī)則。本書從外延和內(nèi)涵這兩個(gè)角度對于Modelica進(jìn)行了非常好的介紹,特別適宜于作為Modelica的入門教材。
作者Peter Fritzson教授是Modelica技術(shù)的奠基人之一,長期擔(dān)任Modelica協(xié)會副主席,是Modelica規(guī)范3.0版本的主要撰稿人,創(chuàng)立了開源Modelica聯(lián)盟,主持開發(fā)了OpenModelica系列軟件,近二十多年來一直致力于Modelica技術(shù)的發(fā)展與推廣。本書是作者另一本Modelica百科全書式專著《Principles of Object-Oriented Modeling of Simulation with Modelica 3.3》的入門版,針對初學(xué)者系統(tǒng)闡述了建模仿真的基本概念、應(yīng)用場景和Modelica基本知識及應(yīng)用案例。
本人自2001年起一直致力于Modelica技術(shù)研究、產(chǎn)品開發(fā)及工程應(yīng)用,是國內(nèi)modelica研究第1批拓荒者。新世紀(jì)初初識Modelica,即認(rèn)為Modelica為工程世界構(gòu)筑了一個(gè)模型表達(dá)與互聯(lián)的基礎(chǔ),是中國工業(yè)系統(tǒng)設(shè)計(jì)軟件創(chuàng)新發(fā)展的歷史機(jī)遇,前景廣闊。擁有自主的Modelica編譯器、分析器和求解器是中國發(fā)展自主可控的Modelica技術(shù)體系的前提,為此作為中國Modelica技術(shù)研究團(tuán)隊(duì)主要成員,自2001年起開展了7年技術(shù)研究,并于2008年作為主要?jiǎng)?chuàng)始人之一發(fā)起成立了蘇州同元軟控信息技術(shù)有限公司,2009年同元軟控推出完全自主的系統(tǒng)建模仿真軟件MWorks,并先后應(yīng)用于大飛機(jī)、航空發(fā)動(dòng)機(jī)、空間站、嫦娥工程、火星探測、大型運(yùn)載火箭、核能動(dòng)力等重大型號工程。目前MWorks已成為國際六大Modelica技術(shù)平臺之一,中國籍此實(shí)現(xiàn)了Modelica技術(shù)的自主可控。
本書英文原版出版較早,當(dāng)時(shí)Modelica規(guī)范主要版本為3.2,目前Modelica規(guī)范新版本為3.4,本書主要介紹Modelica基礎(chǔ)知識,Modelica規(guī)范從3.2到3.4,這些基礎(chǔ)知識沒有變化,所以本書仍是Modelica入門的合適教材。讀者如果想要更深入學(xué)習(xí)Modelica,可以直接閱讀Modelica規(guī)范3.4(Modelica官網(wǎng)可下載)或參閱Peter Fritzson教授另一專著《Principles of Object-Oriented Modeling of Simulation with Modelica 3.3》。
本書示例使用的Modelica工具環(huán)境是OpenModelica和OMNotebook,所有示例都可在上面運(yùn)行,同時(shí)也可以下載蘇州同元軟控信息技術(shù)有限公司出品的系統(tǒng)建模仿真軟件MWorks.Sysplorer,作為本書案例的實(shí)操環(huán)境。
本書翻譯是多人合作努力的成果,周凡利負(fù)責(zé)全書翻譯統(tǒng)籌策劃,早期劉煒提供了本書的初譯稿,黃堃進(jìn)行了初次校對,其后組織蘇州同元軟控信息技術(shù)有限公司周斌、劉志會、張彤暉、周王睿彬、楊勇杰等同仁和中國運(yùn)載火箭技術(shù)研究院唐俊杰博士對全稿進(jìn)行了重譯再校,其中前言、致謝和第1章由周斌負(fù)責(zé),第2章由唐俊杰和劉志會負(fù)責(zé),第3章由劉志會負(fù)責(zé),第4章由唐俊杰負(fù)責(zé),第5章由張彤暉負(fù)責(zé),附錄A由周凡利負(fù)責(zé),附錄B、C由周王睿彬負(fù)責(zé),附錄D由楊勇杰負(fù)責(zé),全書圖表由唐俊杰負(fù)責(zé),唐俊杰和周凡利對全書進(jìn)行了精校。在此對參與本書翻譯和校對的所有人員表示衷心感謝。特別感謝華中科技大學(xué)出版社編輯對于本書翻譯出版的精心指導(dǎo)。
Modelica被譽(yù)為工程師的JAVA,作為與C\\C++\\FORTRAN\\JAVA\\VHDL-AMS\\Verilog并存的完備語言,是基于模型的系統(tǒng)工程、數(shù)字孿生及數(shù)字工程生態(tài)重要的使能技術(shù)對于當(dāng)下中國工業(yè)的數(shù)字化轉(zhuǎn)型與工業(yè)軟件的發(fā)展具有特別意義。Modelica先進(jìn)技術(shù)方法與中國龐大的工程需求相結(jié)合,必將推動(dòng)中國工業(yè)系統(tǒng)軟件及生態(tài)的發(fā)展壯大。,
后敬請各位專家、同仁、讀者不吝指正。
周凡利 博士
Peter Fritzson is Professor since 1995 and research director of the Programming Environment Laboratory (PELAB), at Link?ping University. He is also director of the Open Source Modelica Consortium (OSMC), director of the MODPROD center for model-based product development, and vice chairman of the Modelica Association, organizations he helped to establish. During 1999-2007 he served as chairman of the Scandinavian Simulation Society, and secretary of the European simulation organization, EuroSim. He received his M.Sc. in engineering 1975 and PhD 1984 in computer science from Link?ping University. He was project leader at Sun MicroSystems, California, 1985-86, and visiting professor at University of Queensland, Australia, 2007-2008. Prof. Fritzson's current research interests is in software engineering, especially programming languages, high level specification and modeling languages, programming and debugging tools and environments, parallel and multi-core computing, compilers and compiler generators (e.g. RML). During recent years he has put special emphasis on tools and languages for object-oriented modeling and simulation, and is one of the founding fathers of the Modelica language. He is currently leading the OpenModelica open source effort.
目 錄
Table of Contents
第1章 概論 1
1.1 系統(tǒng)和試驗(yàn) 2
1.1.1 自然系統(tǒng)和人工系統(tǒng) 3
1.1.2 試驗(yàn) 5
1.2 模型的概念 6
1.3 仿真 7
1.3.1 仿真的必要性 8
1.3.2 仿真的不足 9
1.4 創(chuàng)建模型 10
1.5 分析模型 11
1.5.1 敏感度分析 11
1.5.2 基于模型的診斷 12
1.5.3 模型驗(yàn)證與確認(rèn) 12
1.6 數(shù)學(xué)模型分類 13
1.6.1 方程分類 14
1.6.2 動(dòng)態(tài)模型VS靜態(tài)模型 14
1.6.3 連續(xù)時(shí)間模型VS離散時(shí)間模型 16
1.6.4 定量模型VS定性模型 17
1.7 產(chǎn)品設(shè)計(jì)運(yùn)用建模和仿真 18
1.8 系統(tǒng)模型實(shí)例 20
1.9 總結(jié) 25
1.10 參考文獻(xiàn) 25
第2章 Modelica簡介 26
2.1 Modelica入門 27
2.1.1 變量和預(yù)定義類型 32
2.1.2 注釋 34
2.1.3 常量 35
2.1.4 可變性 36
2.1.5 默認(rèn)初始值 36
2.2 面向?qū)ο蟮臄?shù)學(xué)建模 37
2.3 類和實(shí)例 38
2.3.1 創(chuàng)建實(shí)例 39
2.3.2 初始化 41
2.3.3 特化類 42
2.3.4 基于變型的類重用 43
2.3.5 內(nèi)置類型和屬性 44
2.4 繼承 45
2.5 泛型類 46
2.5.1 以實(shí)例作為類參數(shù) 46
2.5.2 以類型作為類參數(shù) 48
2.6 方程 49
2.6.1 重復(fù)的方程結(jié)構(gòu) 51
2.6.2 偏微分方程 52
2.7 非因果物理建模 53
2.7.1 物理建模VS面向框圖建模 53
2.8 Modelica組件化模型 55
2.8.1 組件 56
2.8.2 連接圖 56
2.8.3 連接器和連接器類 58
2.8.4 連接 59
2.8.5 Inner和Outer定義隱式連接 60
2.8.6 可擴(kuò)展連接器與信息總線 61
2.8.7 對流連接器 62
2.9 抽象類 63
2.9.1 抽象類重用 64
2.10 組件庫設(shè)計(jì)和應(yīng)用 66
2.11 示例:電子組件庫 66
2.11.1 電阻 66
2.11.2 電容 66
2.11.3 電感 67
2.11.4 電壓源 68
2.11.5 接地 69
2.12 簡單電路模型 69
2.13 數(shù)組 71
2.14 算法結(jié)構(gòu) 74
2.14.1 算法區(qū)和賦值語句 74
2.14.2 語句 75
2.14.3 函數(shù) 76
2.14.4 運(yùn)算符重載和復(fù)數(shù) 78
2.14.5 外部函數(shù) 81
2.14.6 函數(shù)化的算法 82
2.15 離散事件和混合建模 83
2.16 包 87
2.17 注解 89
2.18 命名規(guī)范 90
2.19 Modelica標(biāo)準(zhǔn)庫 91
2.20 Modelica實(shí)現(xiàn)和執(zhí)行 93
2.20.1 手工編譯簡單電路模型 95
2.20.2 狀態(tài)空間轉(zhuǎn)化 97
2.20.3 求解方法 99
2.21 發(fā)展歷程 102
2.22 總結(jié) 106
2.23 文獻(xiàn) 106
2.24 練習(xí) 108
第3章 類和繼承 112
3.1 類設(shè)計(jì)者和用戶之間的約定 112
3.2 類示例 113
3.3 變量 114
3.3.1 變量名重復(fù) 115
3.3.2 變量名和類型名重復(fù) 115
3.3.3 變量初始化 116
3.4 方程即行為 116
3.5 訪問控制 118
3.6 登陸月球示例仿真 119
3.7 繼承 122
3.7.1 方程繼承 123
3.7.2 多重繼承 124
3.7.3 聲明元素處理和用前聲明 126
3.7.4 extends語句聲明順序 127
3.7.5 MoonLanding繼承示例 127
3.8 總結(jié) 129
3.9 文獻(xiàn) 129
第4章 系統(tǒng)建模方法 130
4.1 創(chuàng)建系統(tǒng)模型 130
4.1.1 演繹建模法VS歸納建模法 131
4.1.2 傳統(tǒng)方法 132
4.1.3 面向?qū)ο?基于組件方法 133
4.1.4 自上而下VS自下而上建模 134
4.1.5 模型簡化 135
4.2 容器系統(tǒng)建模 136
4.2.1 應(yīng)用傳統(tǒng)方法 136
4.2.2 應(yīng)用面向?qū)ο?基于組件方法 138
4.2.3 連續(xù)PI控制容器系統(tǒng) 139
4.2.4 連續(xù)PID控制容器系統(tǒng) 143
4.2.5 串聯(lián)容器系統(tǒng) 146
4.3 基于預(yù)定義組件的直流電機(jī)TOP-Down建模 147
4.3.1 系統(tǒng)定義 147
4.3.2 系統(tǒng)分解和通信初步設(shè)計(jì) 148
4.3.3 子系統(tǒng)建模 148
4.3.4 子系統(tǒng)組件建模 150
4.3.5 接口和連接定義 151
4.4 接口設(shè)計(jì)-連接器類 152
4.5 總結(jié) 153
4.6 文獻(xiàn) 153
第5章 Modelica標(biāo)準(zhǔn)庫 155
5.1 總結(jié) 162
5.2 文獻(xiàn) 162
附錄A 術(shù)語表 163
附錄B OpenModelica和OMNotebook命令 171
B.1 交互式電子書OMNotebook 171
B.2 常用命令和示例 174
B.3 完整命令列表 175
B.4 OMSHELL和DYMOLA 184
B4.1 OMShell 184
B4.2 Dymola 腳本 185
文獻(xiàn) 185
附錄C OMNotebook和DrModelica的文本建模 187
C.1 HELLOWORLD練習(xí) 188
C.2 用VanDerPol和DAEExample模型運(yùn)行DRMODELICA 189
C.3 簡單方程系統(tǒng) 189
C.4 BouncingBall混合建模 190
C.5 采樣混合建模 190
C.6 方程和算法區(qū)域 190
C.7 在電路中添加可連接組件 191
C.8 電路的詳細(xì)建模 192
C.8.1 方程 192
C.8.2 模型實(shí)現(xiàn) 193
C.8.3 搭建電路模型 196
C.8.4 電路仿真 196
附錄D 圖形建模練習(xí) 197
D.1 簡單直流電機(jī) 197
D.2 具有彈簧和慣量的直流電機(jī) 198
D.3 具有控制器的直流電機(jī) 198
D.4 直流電機(jī)作為發(fā)電機(jī) 199
參考文獻(xiàn) 200