本書對機電系統設計和分析的主要方法進行了廣泛、深入、系統的闡述。本書英文版包括50余個有完整解答的設計實例和380余幅插圖,便于讀者學習和研究機電系統設計的主要概念和方法。本書由Springer出版社2010年出版德文原版,2012年出版英文翻譯版,已受到國際學術界的廣泛好評。本書是一本關于機電系統設計和分析的**著作,內容全面豐富,其中不少內容基于作者團隊的**研究成果,有很強的創新。本書有很高的學術水準,對于許多應用領域的實際機電系統研發而言也是必備參考書。
第3章仿 真 問 題
背景: 對動態系統模型的實驗是系統設計的標準任務之一,這種仿真結果為有深遠影響的設計決策奠定了基礎。如今,(商用)計算機輔助工具一般提供建模與仿真平臺,因而經常使用預先存在的模型庫。但是,在這個極端重要的設計階段,計算機化的仿真模型與用戶(極端情況下用戶可能是很天真的)經常存在危險的理解差距。在不利情況下,這很容易導致有缺陷的仿真結果。因此,尤其在采用現代仿真工具時,勝任的系統工程師必須了解仿真實現與求解方法的特殊性。系統工程師只有具備這些知識,才有可能識別出潛在的問題并采用合適的措施緩解問題,要么是改進模型,要么采用可用仿真器功能的目標選擇與參數化: “欣賞但覺察地使用工具”(using the tool with appreciation and awareness)。
本章內容: 本章討論仿真實驗的數學模型實現的特定方面以及關于機電系統模型的特殊問題與求解方法。在此范圍內,假設讀者已具備數值積分與一般仿真方法的基礎知識。在簡要討論數值穩定性、積分步長的重要影響以及不同積分方法的性質之后,本章將介紹多體系統(表現為具有明顯特征模態和弱以至無阻尼特征模態的剛性系統結構)仿真的典型問題與求解方法。對于線性高階多體模型(例如通過有限元方法產生的那些模型),介紹了使用狀態轉移矩陣的高效并精確的積分步驟。應用基本概念闡明了微分代數方程(DAE)系統的非平凡(non trivial)數值積分與混雜現象的處理。最后,通過一個實例說明DAE系統的閉式(closedform)建模及其仿真實現。
3.1系統工程背景
建模與仿真
系統設計(基于模型的設計)包含兩個緊密交織的任務: 建模與對模型的實驗(仿真)。從圖2.3可以清楚看出,仿真結果的預測能力(即其在多大程度上代表了實際系統的行為)取決于建模誤差與仿真誤差之和。特定類型模型的選擇決定了仿真任務的難度以及最終的仿真誤差。與通過面向對象建模獲得的高冗余DAE系統相比,采用最小坐標的常微分方程組形式的簡潔模型更易實現和計算。所以,總是需要對建模工作量、期望的模型精度以及仿真所需的工作量三者進行折衷考慮。
計算機輔助仿真
與計算機輔助建模一起,現代設計工具使我們能夠幾乎毫不費力地進行仿真實驗。這種便利性當然是用戶所期望的。但是,若所考慮的模型具有某些不良性質時,現代設計工具會隱藏巨大的危險性。盡管事實上好的計算機工具有很多內置的主要功能正常性檢查(sanity checks),但一個有缺陷的求解算法參數化就可能導致完全錯誤的仿真結果。在特別有害的情況下(如復雜模型)很難檢測出這些錯誤。計算機輔助工具通常僅檢查模型的句法和參數以及實驗參數。原則上模型的語義仍未被監測,因而可能是一個潛在的錯誤來源。
仿真工具的妙用
本章將特別關注常微分方程組與DAE系統數值求解方法的語義,即求解算法(數值積分方法)及其重要參數(步長、階次等)的意義。這些背景的目的是使我們能夠在行地選用在當前的商用計算機工具中實現的那些常用方法。
預備知識
假設讀者熟悉數值積分的基本概念(例如,顯式與隱式法、單步與多步法、龍格庫塔法、基于誤差監控的自適應步長等),推薦需要更新或復習有關基礎知識的讀者參考數值分析領域的有關文獻(例如,Faires、Burden 2002)。關于直接適合動態系統仿真的方法,可以參見專著(Cellier、Kofman 2006)。
3.2數值積分的基礎
3.2.1微分方程的數值積分
仿真實驗
為了進行計算機輔助仿真實驗,需要基于內在的數學模型計算感興趣系統變量的近似解。于是,可以認為“在對數學模型進行仿真”。
為此,首先考慮如下具有單輸入u(t)和單輸出y(t)的普通非線性狀態空間模型(見圖3.1)該模型是一個指標為0的DAE系統(參見2.4節)。3.6節將討論高指標DAE系統的求解。:
x·=f~(x,u,t)(3.1)
y·=g~(x,u,t)(3.2)
圖3.1單輸入單輸出(SISO)動態系統的狀態空間模型
當對上述系統進行仿真時,一般關心的是在有限時間區間[t0,tf]內解x(t)或y(t)隨時間變化情況。在這種情況下,可以假設輸入u(t)在[t0,tf]內的變化情況是已知的。
為了采用式(3.2)計算輸出y(t),只需要確定n個一階微分方程組(3.1)在時間區間[t0,tf]的解x(t)。
給定上述假設條件,可以提出如下微分方程的數值積分這一基本問題: 找到如下常微分方程組的解x(t)的近似x^(t)假設向量場f(·)是光滑的。若f(·)存在不連續性(例如,輸入激勵函數或狀態變量x(t)存在階躍變化),則須作出特別規定,見3.7節。
x·=f(x,t),x(t0)=x0∈Rn(3.3)
單步法: 顯式與隱式
使用微分方程(3.3)的差分近似或相應的積分方程,可獲得方程(3.3)的近似解(即有限個值x^(tk))。然后,為了只根據上次計算值x^(tk)來計算新的近似值x^(tk+1),采用“單步法”可得下列的一般遞推關系式:
x^(tk+1)=x^(tk)+hφ(x^(tk),x^(tk+1),tk,h)(3.4)
其中,φ(·)為增量函數,h為步長。若增量函數不依賴于x^(tk+1),則稱該方法為顯式(如歐拉法、龍格庫塔法),否則稱其為隱式(如梯形法)(Faires、Burden 2002)。
增量函數φ(·)與步長h的不同選擇決定了近似精度(圖3.2)。
圖3.2數值積分: 微分方程的近似解
3.2.2穩定性的概念
定義3.1
局部離散化誤差: 在tk+1時刻顯式單步法
對于隱式法和多步法等其他方法,LDE也可以類似地定義。的局部離散化誤差(LDE)是下面的值:
dk+1∶={x(tk+1)-x(tk)}-h·φ(x(tk),tk,h)
上式右端第一項為真實解的單步變化,第二項為應用積分算法后相對于真實解x(tk)的單步變化。LDEdk+1表示積分方法與真實解在單步上的偏差。因此,LDE衡量方程(3.4)給出的解與真實解x(tk)接近的程度。
定義3.2
全局離散化誤差: 在固定時刻tk的全局離散化誤差(GDE)是下面的值:
gk∶=x(tk)-x^(tk)
因而,GDEgi表示近似解x^(tk)與真實解x(tk)之間的偏差,而且特別包含所有以前k步(j=0,1,…,(k-1))的累積誤差(LDE與GDE)。
定義3.3
一致性: 求解初值問題的數值積分方法被稱為一致的,如果在步長趨于0時局部離散化誤差之和RLDE也趨于0,即有下面的條件:
limh→01hRLDE=0
定義3.4
收斂性: 求解初值問題的數值積分方法被稱為收斂的,如果當步長趨于0時全局離散化誤差在整個積分區間上也趨于0,即有下面的條件:
limh→0(x^k-xk)=limh→0gk=0,k, i.e. t∈[t0,tf]
穩定性
需要區分下列類型的穩定性:
系統模型的固有穩定性
所使用的穩定性概念包括輸入輸出穩定性(如BIBO穩定性)或(漸近)狀態穩定性(Ogata 2010)。如果系統模型在上述意義下穩定,則稱系統是(固有)穩定的。
積分算法的數值穩定性
求解初值問題的數值積分方法被稱為是“數值穩定的”,如果被積值x^k的“微小誤差”也只在此后計算x^k+1時產生“微小誤差”(即有足夠的誤差抑制)(Faires,Burden 2002)。
給定以上定義,于是有下面的基本定理:
定理3.1
一個數值積分方法是收斂的,當且僅當其是一致的并是數值穩定的。
所以,收斂性、一致性與數值穩定性緊密聯系在一起,這些性質是執行仿真實驗的基本性質。盡管商品仿真工具一般將大量具有一致性的積分方法作為內置功能(單單如此甚至也是有意義的!),但是會得到收斂的近似解并非定論(雖然從合理的仿真實驗中所期望的一樣也不少!)。根據定理3.1,數值穩定性也是必須的,這基本上取決于步長h。若缺乏對h作用與影響的了解,作為一個可自由選擇的仿真參數,h也可能被錯誤地任意設定(見3.2.3節)。
顯然,為了獲得高精度的近似解,步長h應當選擇得盡可能小。另一方面,對于一個固定的積分區間,這會增大計算需求(更多次的遞推),為了快速計算而希望取更大可能的步長。所以,在任何具體情況下,選擇積分步長h時總需要在精度與計算負荷之間做出折中。
3.2.3數值穩定性
線性測試系統: 初值問題
一個數值積分過程可表達為由一組非線性差分方程組表示的離散時間動態系統。這使得我們能采用熟知的穩定性概念和判據來分析其數值穩定性。
為了討論,考慮如下的線性(固有穩定的)測試初值問題:
x·=λx,其中x(0)=x0,λ<0(3.5)
對于歐拉法
x^k+1=x^k+h·f(x^k)
并考慮式(3.5),得線性一階差分方程:
x^k+1=(1+h·λ)x^k(3.6)
方程(3.6)的通解為:
x^k+1=(1+h·λ)k+1x0(3.7)
當k→∞時如果式(3.7)的近似值序列(x^k)=(x0,x^1,x^2,…)收斂到真實解的穩態終值x∞=0,則會有數值穩定性,即數值穩定性條件為:
|1+h·λ|<1(3.8)
式(3.8)的條件對應于我們所熟知的線性差分方程(3.6)的離散時間穩定性判據“特征值的幅度小于1”,參見(Franklin et al. 1998)。
固有穩定系統
在一個固有穩定系統中(λ<0)中,數值穩定性條件式(3.8)滿足,當且僅當:
hλ<0 且 h<2-λ=hcrit(3.9)
……