薛冰 解加芳 張可心
(北方工業大學 理學院, 北京 100144)
非完整系統是一類受到不可積微分約束的動力學系統[1],廣泛應用于場論、機電動力系統、控制理論、工程科學等領域[2].20世紀80年代我國學者梅鳳翔研究了帶參數約束的一類可控系統[3]、變質量非完整約束系統.Maggi在1896年推廣了拉格朗日第二類方程[4],對線性非完整約束系統得到一類動力學方程,后人稱為Maggi方程[5],這些方程后來被推廣到非線性非完整系統[6].Maggi方程是力學系統[7]各大運動方程的中間產物,對研究非完整系統的運動具有重要意義.
Birkhoff動力學理論是Hamilton動力學的自然推廣,它是包括齊次Hamilton系統和非齊次Hamilton系統的更一般動力學理論,是最一般辛結構的局部實現,只有Birkhoff系統與一般辛幾何結構之間才有一一對應關系.因此 Birkhoff 系統動力學[8]的研究對于完善和深化分析力學的理論體系具有重要意義, 尤其是對于非齊次 Hamilton 動力學系統的幾何結構分析具有重要應用價值[9].本文針對非完整系統高階Maggi方程,在其滿足一定條件下,將其進行Birkhoff化。并通過一個算例驗證上述理論分析的正確性,再分別采用Runge-Kutta方法和Birkhoff辛算法對其進行數值計算[10],并將數值結果進行比較,給出Birkhoff辛算法在長時計算時的優越性.
設力學系統的位形由n個廣義坐標qs(s=1,…,n)確定,系統受有g個理想m階非完整約束[11]
(1)
其中
根據d’Alembert-Lagrange原理可以導出Maggi形式為:
(σ=1,…,ε)
(2)
式中Qσ為廣義力,T為系統動能.
令
(ν=1,…,ε;k=1,...,n)
(3)
則方程(2)有形式
(4)
(5)
約束對初始條件的限制為:
(6)
(7)
約束對初始條件的限制為:
(8)
將式(7)化為標準一階形式,令
(s=1,…,n)
(9)
則式(7)可以寫成形式
(10)
其中
aν=xν,σs=xn+s,…,
σ(m-2)n+s=x(m-1)n+s,
σ(m-1)n+s=hs(s=1,…,n)
(11)
為將式(10)表為Birkhoff形式,其階必為偶數[9],即mn=2N,如果mn為奇數2N-1,可增加一個方程
(12)
使其成為偶階.從而,要使高階非完整系統的Maggi方程可表示成Birkhoff形式
(μ=1,…,2N)
(13)
即要求滿足
(μ=1,…,2N)
(14)
設式(10)的2n個第一積分Iμ(t,a)彼此無關,即
(μ=1,…,2n)
(15)
(16)
根據Hojman方法,則式(14)的Birkhoff函數組Rμ由下式確定
(17)
Birkhoff量B為:
(18)
其中Gα需滿足條件
(19)
(20)
其中
(21)
假定方程組(20)的一種離散可以記為:
[?tR(zi,ti)]i
(22)
式(22)稱為式(20)的一個離散格式,如果它決定的格式Φ保持離散的K(z,t)辛格式,即
(23)
(24)
以及
(25)
此映射為:
(26)
式(26)的Jacobi矩陣為:
(27)
映射α要滿足
(28)
其中
當K與z無關時,根據式(27)和式(28)可以得到
(29)
且需滿足下面的截面條件
|CαM+Dα|≠0
設Bα=Cα=0,則式(29)可成
(30)
由式(30)可以得到
(31)
生成函數φ(ω,t,t0)=α(t,t0),可以構造廣義Birkhoff辛差分格式.當步長τ>0足夠小的時候,取
(m=1,2,…)
(32)
α1(zk+1,zk,tk+1,tk)
(33)
假設某一力學系統的位形由2個廣義坐標q1,q2確定,其系統動能為
(34)
且該系統受到1個2階非完整約束:
(35)
(36)
顯然式(36)有解:
q1=1-arctan(t)
q2=-3t·arctan(t)+2ln(t2+1)+t
由此可以構造Birkhoff函數Rμ,B如下[11]:
R2=0
R4=0
從而將該系統的Maggi方程可以Birkhoff化:
結合式(24)和式(25),我們可以確定生成函數φ(ω,t,t0),之后采用上述的Birkhoff廣義辛算法式(32), 得到此 Birkhoff 系統的二階K(z,t)離散格式[11-13].
對該題采用二階K(z,t)算法和二階Runge-Kutta算法進行計算.在計算過程中,先取如下初值:q1=1,C1=C2=1,取步長τ=0.01.并通過比較兩種數值方法計算所得數值解和解析解q1=1-arctan(t)之間的相對誤差來說明兩種數值方法的差別.
對比圖1和圖2可以看出,Runge-Kutta方法在長期跟蹤后與解析解有著大幅度的相對誤差,而Birkhoff辛算法則相對誤差非常的小.因此,Birkhoff辛算法結果更加精確.
圖1 二階Runge-Kutta算法相對誤差Fig.1 Relative error of second order Runge-Kutta algorithm
圖2 Birkhoff辛算法相對誤差Fig.2 Relative error of Birkhoff symplectic algorithm
本文對一定條件下的非完整系統的高階Maggi方程(2)先進行了Birkhoff化,得到廣義Birkhoff方程(13),并針對該方程,應用Birkhoff廣義辛差分格式與傳統Runge-Kutta算法分別進行計算,比較兩種算法,最后得出Birkhoff廣義辛差分算法在求解非完整系統高階Maggi方程中更加優越.