內容大鋼
本書介紹系統模擬基礎內容的演算法原理和程序實現,包括系統的各種數學模型表示和相互轉換、連續時間系統的數值積分法模擬、模型離散化方法和離散時間系統模擬、採樣控制系統模擬等。本書使用Python編程實現書中介紹的各種演算法和示例,主要用到NumPy、SciPy、Matplotlib和python-control等第三方包。所有的示例都給出了Python程序實現,通過理論與程序結合的方法演示演算法原理和模擬效果,使讀者掌握用Python編寫系統模擬程序的方法。
閱讀本書需要先掌握自動控制原理、現代控制理論、信號與系統等課程的基礎知識。本書可作為高等院校系統模擬相關課程的教材,也可供想要了解如何使用Python進行動態系統模擬的讀者參考。
作者介紹
編者:盛立//高明//王維波|責編:吳晉瑜
目錄
第1章 系統模擬概述
1.1 系統和模型
1.1.1 系統
1.1.2 系統的模型
1.2 系統模擬
1.2.1 系統模擬的定義
1.2.2 系統模擬的作用
1.2.3 系統模擬的基本原則
1.2.4 系統模擬的類型
1.2.5 系統模擬的軟體實現
1.2.6 系統模擬的應用
1.3 系統模擬技術發展前沿
1.3.1 模擬技術難點和研究方向
1.3.2 模擬相關新興技術
練習題
第2章 Python編程基礎
2.1 Anaconda的安裝和使用
2.1.1 Anaconda的安裝
2.1.2 Anaconda Navigator的界面和功能
2.1.3 在Anaconda Navigator中管理環境
2.1.4 在Anaconda Navigator中管理包
2.1.5 conda命令的使用
2.1.6 本書程序運行環境的建立
2.2 JupyterLab的基本使用
2.2.1 JupyterLab的界面組成
2.2.2 Notebook文件編輯和運行
2.2.3 Notebook文件程序調試
2.3 Python基礎
2.3.1 Python的特點
2.3.2 Python的基本規則
2.3.3 基本數據類型和運算符
2.3.4 序列數據類型
2.3.5 集合數據類型
2.3.6 邏輯運算與條件語句
2.3.7 循環語句
2.4 Python的函數式編程
2.4.1 函數的定義和使用
2.4.2 函數定義中的可變位置參數*args
2.4.3 函數定義中的可變關鍵字參數**kwargs
2.4.4 函數定義中同時使用可變參數*args和**kwargs
2.4.5 使用Python內置函數和標準庫中的函數
2.4.6 使用第三方的包和模塊
2.5 Python的面向對象編程
2.5.1 類的定義和主要組成部分
2.5.2 類的繼承
練習題
第3章 科學計算和數據可視化基礎
3.1 NumPy
3.1.1 數組的創建和常用屬性
3.1.2 其他創建數組的函數
3.1.3 數組的索引和切片
3.1.4 數組的拼接
3.1.5 數組計算與廣播
3.2 SciPy
3.2.1 SciPy功能簡介
3.2.2 線性代數計算
3.2.3 系統模型表示和模擬
3.3 Matplotlib
3.3.1 基本繪圖示例
3.3.2 圖的主要組成元素
3.3.3 繪圖的一些常用功能
3.3.4 常見類型的圖形繪製
練習題
第4章 python-control概述
4.1 python-control簡介
4.1.1 python-control的安裝
4.1.2 python-control的主要功能
4.2 python-control中主要的類和函數
4.2.1 python-control中主要的類
4.2.2 python-control中主要的函數
練習題
第5章 連續時間系統的模型
5.1 連續時間系統的模型概述
5.1.1 常微分方程模型
5.1.2 傳遞函數模型
5.1.3 傳遞函數模型的程序表示
5.1.4 脈衝響應函數模型
5.1.5 狀態空間模型
5.1.6 狀態空間模型的程序表示
5.1.7 I/O模型的表示
5.2 連續時間系統的模型轉換
5.2.1 傳遞函數的不同表示形式
5.2.2 傳遞函數的實現問題
5.2.3 傳遞函數無零點時的實現
5.2.4 傳遞函數有零點時的實現
5.2.5 狀態變數的線性變換
5.2.6 狀態空間模型的若爾當標準型
5.2.7 傳遞函數到狀態空間模型轉換的相關函數
5.2.8 最小實現
5.2.9 從狀態空間模型求傳遞函數
5.3 非線性狀態空間模型的線性化
5.3.1 線性化原理
5.3.2 模型線性化的相關函數
5.4 結構圖模型
5.4.1 一階環節的狀態空間模型
5.4.2 二階環節的分解
5.4.3 結構圖的狀態空間模型
5.4.4 結構圖的程序化建模方法
5.4.5 面向結構圖的互聯繫統建模方法
練習題
第6章 連續時間系統數值積分法模擬
6.1 系統的時域響應
6.1.1 典型輸入信號
6.1.2 系統響應的解析解
6.1.3 一般系統的輸入響應模擬計算
6.2 數值積分法基本原理
6.2.1 數值積分法基本原理
6.2.2 歐拉法
6.2.3 預估-校正法
6.3 龍格-庫塔法
6.3.1 二階龍格-庫塔法(RK2法)
6.3.2 四階龍格-庫塔法(RK4法)
6.3.3 幾種數值積分演算法的總結
6.3.4 RK4法模擬編程
6.4 龍格-庫塔法的誤差估計與步長控制
6.4.1 龍格-庫塔法的誤差估計
6.4.2 步長控制
6.4.3 變步長模擬示例
6.5 演算法穩定性分析
6.5.1 演算法穩定性分析原理
6.5.2 演算法穩定性模擬示例
6.6 面向結構圖的連續時間系統模擬
6.6.1 全LTI環節的結構圖的建模與模擬
6.6.2 帶有非線性環節的結構圖模型模擬
練習題
第7章 時域模型的離散化和模擬
7.1 離散時間系統的模型
7.1.1 差分方程
7.1.2 脈衝傳遞函數
7.1.3 權序列
7.1.4 離散時間狀態空間模型
7.1.5 離散時間模型的模擬計算
7.2 時域離散相似法
7.2.1 連續時間LTI系統的解
7.2.2 連續時間LTI系統解的離散化
7.2.3 狀態轉移矩陣的計算
7.2.4 增廣矩陣法
7.3 面向結構圖的模型離散化和模擬
7.3.1 典型線性環節的離散化模型
7.3.2 典型非線性環節
7.3.3 結構圖的模型離散化和模擬方法
7.3.4 結構圖模型離散化與模擬示例
練習題
第8章 傳遞函數模型的離散化和模擬
8.1 替換法
8.1.1 替換法的原理和幾種形式
8.1.2 雙線性變換的特性
8.1.3 雙線性變換和頻域分析相關函數
8.2 根匹配法
8.2.1 根匹配法原理
8.2.2 根匹配法計算示例
8.3 頻域離散相似法
8.3.1 頻域離散相似法原理
8.3.2 頻域離散相似法應用示例
8.3.3 帶補償的離散相似法
練習題
第9章 採樣控制系統模擬
9.1 採樣控制系統
9.1.1 採樣控制系統的結構
9.1.2 採樣控制系統的數學模型
9.1.3 採樣周期與模擬步長的關係
9.2 採樣控制系統數字控制器設計
9.2.1 不同採樣周期下的控制器模型轉換
9.2.2 PID控制演算法
9.2.3 無穩態誤差最小拍控制器設計
9.2.4 採樣控制系統模擬示例
9.3 帶純延遲環節的系統的模擬
9.3.1 純延遲環節的模擬模型
9.3.2 帶純延遲環節的採樣控制系統模擬示例
練習題
附錄A 計算誤差基本原理
A.1 舍入誤差
A.2 截斷誤差
附錄B 常用函數的S變換和Z變換
附錄C 縮略詞
參考文獻
[an error occurred while processing this directive]