青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿(mǎn)街逛

嚴(yán)以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

動(dòng)力學(xué)分析基礎(chǔ)——雅可比矩陣

來(lái)源:http://www.vbgamedev.com/AI/Jacobi.htm

動(dòng)力學(xué)分析基礎(chǔ)——雅可比矩陣

代碼編寫(xiě),資料整理——ZH1110

動(dòng)力學(xué)仿真計(jì)算歸結(jié)為對(duì)典型的常微分方程組的初值問(wèn)題。在解上述的初值問(wèn)題時(shí),除了應(yīng)用常微分方程初值問(wèn)題的數(shù)值積分外,還將用到求解線(xiàn)性代數(shù)方程組的數(shù)值方法,所以首先我們必須先研究這兩個(gè)常用的計(jì)算機(jī)算法,已便于后面的計(jì)算.

高斯消去法求解線(xiàn)性代數(shù)方程組(直接法,即消去法),已在線(xiàn)性代數(shù)課程中有詳細(xì)的討論,在此給出些說(shuō)明以及具體的算法描述。

大致可以分為以下兩步。
1.將系數(shù)矩陣經(jīng)過(guò)一系列的初等行變換(歸一化)

在變換過(guò)程中,采用原地工作,即經(jīng)變換后的元素仍放在原來(lái)的位置上。

2.消去。它的作用是將主對(duì)角線(xiàn)以下的均消成0,而其它元素與向量中的元素也應(yīng)作相應(yīng)的變換

最后,進(jìn)行回代依次解出

如:我們要解如下方程組:

初等行變換:

回代得到結(jié)果:

龍格-庫(kù)塔算法求解常微分方程

用歐拉算法、改進(jìn)歐拉算法以及經(jīng)典龍格-庫(kù)塔算法對(duì)常微分方程的初值問(wèn)題進(jìn)行數(shù)值求解算法。
動(dòng)力學(xué)仿真計(jì)算最后會(huì)出現(xiàn)一加速度,速度,坐標(biāo)的兩階微分方程組,其積分需要這種計(jì)算方法。


一、 使用歐拉算法及其改進(jìn)算法(梯形算法)進(jìn)行求解
  所謂的微分方程數(shù)值求解,就是求問(wèn)題的解y(x)在一系列點(diǎn)上的值y(xi)的近似值yi。歐拉(Euler)算法是其實(shí)現(xiàn)的依據(jù)是用向前差商來(lái)近似代替導(dǎo)數(shù)。對(duì)于常微分方程:
  dy/dx=f(x,y),x∈[a,b]
  y(a)=y0

  可以將區(qū)間[a,b]分成n段,那么方程在第xI點(diǎn)有y'(xI)=f(xI,y(xI)),再用向前差商近似代替導(dǎo)數(shù)則為:(y(xI+1)-y(xI))/h= f(xI,y(xI)),因此可以根據(jù)xI點(diǎn)和yI點(diǎn)的數(shù)值計(jì)算出yI+1來(lái).由此可以看出,常微分方程數(shù)值解法的基本出發(fā)點(diǎn)就是計(jì)算離散化點(diǎn)。
  yI+1= yI+h*f(xI ,yI)

 下面就舉一個(gè)簡(jiǎn)單的常微分方程
  y'=x-y+1,x∈[0,0.5]
  y(0)=1                      (人工計(jì)算后的解析式為:y(x)=x+e-x)

'歐拉算法
Private Sub Euler()
For x = 0 To 0.5 Step 0.1
y(i + 1) = y(i) + 0.1 * (x - y(i) + 1)
List1.AddItem y(i)
i = i + 1
Next
End Sub


由于方程曲線(xiàn)是內(nèi)凹的所以無(wú)論如何減少步距,得到的結(jié)果都小于真實(shí)值,有必要采取措施來(lái)抑制、減少誤差,盡量使結(jié)果精確。在構(gòu)造歐拉公式時(shí)采取的一個(gè)重要步驟--用向前差商來(lái)代替導(dǎo)數(shù),如將其改為向后差商也是行的通的。此時(shí)的歐拉公式就變成了:yI+1= yI+h*f(xI+1,yI+1),由于該式是一個(gè)隱式公式,所以可用迭代法進(jìn)行計(jì)算,直至獲取到滿(mǎn)足精度要求的yI+1。從數(shù)學(xué)上可以證明,該式的局部截?cái)嗾`差和前面的歐拉公式的截?cái)嗾`差在主部上之相差正負(fù)號(hào),所以只要將顯示和隱式的兩個(gè)歐拉公式相加后再行求解會(huì)大大減少誤差。可以解得改進(jìn)后的歐拉公式的表達(dá)式為:

  yI+1= yI+h*(f(xI, yI)+f(xI+1, yI+hf(xI,yI)))/2

 
  從下表得出的實(shí)驗(yàn)數(shù)據(jù)可以看出,這種經(jīng)過(guò)改進(jìn)的歐拉算法所存在的誤差已大為減少,可以直接單獨(dú)應(yīng)用于實(shí)際的工程計(jì)算。誤差的減少主要是由于先利用了歐拉公式對(duì)yI+1的值進(jìn)行了預(yù)估,然后又利用梯形公式對(duì)預(yù)估值作了校正,從而在預(yù)估--校正的過(guò)程中減少了誤差。

xI(各分點(diǎn))

yI (數(shù)值解)

y(xi) (真實(shí)值)

| y(xi)- yI | (誤差)

0.0

1.000000

1.000000

0.000000

0.1

1.005000

1.004837

0.000163

0.2

1.019025

1.018731

0.000294

0.3

1.041218

1.040818

0.000400

0.4

1.070802

1.070320

0.000482

0.5

1.107076

1.106531

0.000545

 使用經(jīng)典龍格-庫(kù)塔算法進(jìn)行高精度求解
對(duì)于一階精度的歐拉公式有:
  yi+1=y(tǒng)i+h*K1
  K1=f(xi,yi)
  當(dāng)用點(diǎn)xi處的斜率近似值K1與右端點(diǎn)xi+1處的斜率K2的算術(shù)平均值作為平均斜率K*的近似值,那么就會(huì)得到二階精度的改進(jìn)歐拉公式:
  yi+1=y(tǒng)i+h*( K1+ K2)/2
  K1=f(xi,yi)
  K2=f(xi+h,yi+h*K1)
  依次類(lèi)推,如果在區(qū)間[xi,xi+1]內(nèi)多預(yù)估幾個(gè)點(diǎn)上的斜率值K1、K2、……Km,并用他們的加權(quán)平均數(shù)作為平均斜率K*的近似值,顯然能構(gòu)造出具有很高精度的高階計(jì)算公式。經(jīng)數(shù)學(xué)推導(dǎo)、求解,可以得出四階龍格-庫(kù)塔公式,也就是在工程中應(yīng)用廣泛的經(jīng)典龍格-庫(kù)塔算法:
  yi+1=y(tǒng)i+h*( K1+ 2*K2 +2*K3+ K4)/6
  K1=f(xi,yi)
  K2=f(xi+h/2,yi+h*K1/2)
  K3=f(xi+h/2,yi+h*K2/2)
  K4=f(xi+h,yi+h*K3)


龍格 -庫(kù)塔算法代碼清單:
Private Sub Runge_Kutta()
Dim K1 As Single, K2 As Single, K3 As Single, K4 As Single
For x = 0 To 0.5 Step 0.1
K1 = x - y(i) + 1 '求K1
K2 = (x + 0.1 / 2) - (y(i) + K1 * (0.1 / 2)) + 1
K3 = (x + 0.1 / 2) - (y(i) + K2 * (0.1 / 2)) + 1
K4 = (x + 0.1) - (y(i) + K3 * 0.1) + 1
y(i + 1) = y(i) + 0.1 * (K1 + 2 * K2 + 2 * K3 + K4) / 6
List2.AddItem y(i)
i = i + 1
Next
End Sub
  從下表記錄的程序運(yùn)行結(jié)果來(lái)看,在步長(zhǎng)為0.1的情況下所計(jì)算出來(lái)的常微分方程的數(shù)值解是非常精確的,用浮點(diǎn)數(shù)進(jìn)行運(yùn)算時(shí)由近似所引入的誤差幾乎不會(huì)對(duì)計(jì)算結(jié)果產(chǎn)生影響。 

xI(各分點(diǎn))

yI (數(shù)值解)

y(xi) (真實(shí)值)

| y(xi)- yI | (誤差)

0.0

1.000000

1.000000

0.000000

0.1

1.004838

1.004837

0.000001

0.2

1.018731

1.018731

0.000000

0.3

1.040818

1.040818

0.000000

0.4

1.070320

1.070320

0.000000

0.5

1.106531

1.106531

0.000000

一般來(lái)說(shuō)經(jīng)典龍格-庫(kù)塔算法精確度高又利于計(jì)算機(jī)編程實(shí)現(xiàn),穩(wěn)定性也很好,可以考慮作為首選實(shí)現(xiàn)算法。

求解兩階微分方程組的龍格—庫(kù)塔法:

對(duì)于兩階微分方程組:

 

利用雅可比矩陣分析動(dòng)力學(xué)

系統(tǒng)約束方程的概念:

對(duì)于剛體系,剛體間存在鉸(或運(yùn)動(dòng)副)。在一個(gè)鉸的鄰接剛體中,一個(gè)剛體的運(yùn)動(dòng)將部分地牽制了另一剛體的運(yùn)動(dòng)。在一般情況下,描述系統(tǒng)位形的坐標(biāo)并不完全獨(dú)立,在運(yùn)動(dòng)過(guò)程中,它們之間存在某些關(guān)系。這些關(guān)系的解析表達(dá)式構(gòu)成約束方程

將約束方程求導(dǎo)有

這即雅可比(C.G.J. Jacobi)矩陣,或簡(jiǎn)稱(chēng)約束方程的雅可比。

體系通用的動(dòng)力學(xué)模型(具體可參考分析力學(xué)著作)即:

它不是典型的常微分方程組,故仿真計(jì)算不是一般的常微分方程組初值問(wèn)題 。為此定義變量陣,

將方程動(dòng)力學(xué)改寫(xiě)為

上所述,經(jīng)過(guò)上述變換,動(dòng)力學(xué)仿真計(jì)算歸結(jié)為對(duì)典型的常微分方程組的初值問(wèn)題。在對(duì)上述初值問(wèn)題進(jìn)行數(shù)值積分的過(guò)程中方程之右函數(shù)中的值不能直接得到,需通過(guò)解代數(shù)方程得到。此時(shí)拉格朗日乘子的值也同時(shí)得到。由此可知,在解上述的初值問(wèn)題時(shí),除了應(yīng)用常微分方程初值問(wèn)題的數(shù)值積分外,還將用到求解線(xiàn)性代數(shù)方程組的數(shù)值方法。

 

仿真計(jì)算的步驟:

(1)  將時(shí)間離散,根據(jù)式計(jì)算Ab,利用高斯消元法解代數(shù)方程;                

(2) 進(jìn)行數(shù)值積分得,返回(1)

 

例1:圖示一雙質(zhì)點(diǎn)擺,擺球P1P2的質(zhì)量為m1=m2=1,擺長(zhǎng)分別為l1=1與l2=1,兩球開(kāi)始位置在正右方。試?yán)?font lang=ZH-CN face=宋體 size=2>雅可比矩陣建立該雙質(zhì)點(diǎn)擺的動(dòng)力學(xué)方程。

例1圖

:如圖建立慣性基。雙質(zhì)點(diǎn)擺為兩質(zhì)點(diǎn)系,系統(tǒng)的坐標(biāo)陣為

               

約束方程為

(1)

可見(jiàn)坐標(biāo)數(shù)為4,約束方程數(shù)為2,故系統(tǒng)自由度為2。引入拉格朗日乘子陣。約束方程(1)的雅可比為

(每種約束方程都有其偏導(dǎo)數(shù)方程,如果你不了解如何求二階導(dǎo)數(shù)直接帶公式即可)

主動(dòng)力只有重力,主動(dòng)力陣為

           

將上述分析的結(jié)果代入動(dòng)力學(xué)模型,有動(dòng)力學(xué)方程

(2)

將式(1)對(duì)時(shí)間求二階導(dǎo)數(shù),得到加速度約束方程,即

將后兩個(gè)方程與動(dòng)力學(xué)方程合并,有完整的動(dòng)力學(xué)方程:

編寫(xiě)代碼:
Const m As Single = 1 '質(zhì)量
Const g As Single = 9.8 '重力
'速度,加速度
Dim X(2) As Single, Y(2) As Single, Vx(2) As Single, Vy(2) As Single
Dim A(1 To 6, 1 To 6) As Single, b(1 To 6) As Single, Fr(1 To 6) As Single

Private Sub Form_Load()
'開(kāi)始位置在右方
X(1) = 1: Y(1) = 0: X(2) = 2: Y(2) = 0
Vx(1) = 0: Vy(2) = 0
...
End Sub

'初始化
Private Sub INI()
A(1, 1) = m: A(1, 5) = 2 * X(1): A(1, 6) = -2 * (X(2) - X(1))
A(2, 2) = m: A(2, 5) = 2 * Y(1): A(2, 6) = -2 * (Y(2) - Y(1))
A(3, 3) = m:: A(3, 6) = 2 * (X(2) - X(1))
A(4, 4) = m:: A(4, 6) = 2 * (Y(2) - Y(1))
A(5, 1) = X(1): A(5, 2) = Y(1)
A(6, 1) = X(1) - X(2): A(6, 2) = Y(1) - Y(2): A(6, 3) = X(2) - X(1): A(6, 4) = Y(2) - Y(1)
b(2) = m * g: b(4) = m * g: b(5) = -Vx(1) ^ 2 - Vy(1) ^ 2: b(6) = -(Vx(2) - Vx(1)) ^ 2 - (Vy(2) - Vy(1)) ^ 2
End Sub

Private Sub Timer1_Timer()
Const t = 0.03 '步距
'高斯消去法解方程組
GaMss A(), b(), 6, Fr()
For jj = 1 To 2
'積分
Vx(jj) = Vx(jj) + t * Fr(jj * 2 - 1): Vy(jj) = Vy(jj) + t * Fr(jj * 2)
X(jj) = X(jj) + t * Vx(jj): Y(jj) = Y(jj) + t * Vy(jj)
'繪制球,桿
Picture1.Circle (X(jj), Y(jj)), 0.1
Picture1.Line (X(jj - 1), Y(jj - 1))-(X(jj), Y(jj))
'重新設(shè)置初始值
INI
Next
End Sub

 

例2:利用拉格朗日第一類(lèi)方程建立所示均質(zhì)桿封閉的動(dòng)力學(xué)方程,桿開(kāi)始角度為Pi/6

例2圖

:如圖所示,在質(zhì)心C建立桿的連體基,該桿關(guān)于質(zhì)心C的轉(zhuǎn)動(dòng)慣量為JC=ml2/12。根據(jù)已知條件,桿AB在運(yùn)動(dòng)過(guò)程中位形坐標(biāo)間有如下兩個(gè)獨(dú)立的約束方程(s=2)

(1)

約束方程的雅可比與加速度約束方程的右項(xiàng)分別為

(2)

引入兩個(gè)拉格朗日乘子l(l1 l2)T。系統(tǒng)受到的主動(dòng)力為重力,由增廣主動(dòng)力陣的定義,有。根據(jù)上面分析,可得動(dòng)力學(xué)方程

(3)

或由式(9.1-25)可得到封閉的動(dòng)力學(xué)方程

(4)

 代碼(略):

優(yōu)化與精度的思考:

優(yōu)化:動(dòng)力學(xué)仿真主要是對(duì)雅可比矩陣不斷的跌代,其計(jì)算量隨剛體數(shù)目非線(xiàn)形增長(zhǎng),因此如何加快跌代就成為非常重要的問(wèn)題了,如——1.在用龍格-庫(kù)塔算法時(shí)可根據(jù)斜率動(dòng)態(tài)改變計(jì)算步長(zhǎng) 2.專(zhuān)門(mén)對(duì)鏈條狀剛體系優(yōu)化求解線(xiàn)性代數(shù)方程組過(guò)程,等等.

精度:如圖一單擺,我們用歐拉算法常微分方程的初值問(wèn)題進(jìn)行數(shù)值求解,球會(huì)逐漸出現(xiàn)'下垂',這是由歐拉算法的誤差引起的,當(dāng)然用龍格-庫(kù)塔算法可以極大程度上消除誤差,但會(huì)加大計(jì)算,這也是值得平衡的一個(gè)問(wèn)題.

 DOWNLOAD文件下載

posted on 2008-01-15 16:46 楊粼波 閱讀(1699) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            有码中文亚洲精品| 玖玖综合伊人| 国产欧美日韩另类一区| 亚洲黄色视屏| 亚洲在线网站| 麻豆精品视频在线| 国产亚洲二区| 免费视频一区二区三区在线观看| 欧美国产精品人人做人人爱| 欧美国产日产韩国视频| 日韩一级精品| 国产乱码精品一区二区三区不卡| 欧美激情bt| 久久午夜精品一区二区| 夜夜嗨av色综合久久久综合网| 欧美在线网站| 亚洲国产成人一区| 在线观看国产精品网站| 欧美韩日亚洲| 欧美精品啪啪| 久久一区中文字幕| 中文av一区二区| 免费在线国产精品| 一区二区三区国产在线| 揄拍成人国产精品视频| 亚洲国产精品日韩| 国产日韩成人精品| 亚洲视频综合| 欧美+亚洲+精品+三区| 这里只有精品视频| 久久成人一区| 中日韩午夜理伦电影免费| 亚洲一区二区精品| 欧美一区二区在线| 亚洲一区在线观看免费观看电影高清 | 欧美破处大片在线视频| 欧美伊久线香蕉线新在线| 麻豆成人在线观看| 欧美在线视频二区| 欧美日韩精品中文字幕| 欧美激情按摩在线| 国产夜色精品一区二区av| 日韩亚洲欧美精品| 美女91精品| 性久久久久久久久| 欧美一区二区三区视频免费播放| 亚洲午夜在线观看| 鲁大师影院一区二区三区| 国产午夜精品全部视频播放| 亚洲淫片在线视频| 亚洲欧美国产精品va在线观看 | 亚洲中无吗在线| 美女尤物久久精品| 久久国产精品网站| 国产亚洲一区精品| 亚洲欧美日韩国产中文| 亚洲人成高清| 亚洲精品一区二区三区福利| 亚洲图色在线| 欧美黄色日本| 麻豆成人在线播放| 亚洲日本欧美| 国产伦精品一区二区三区四区免费 | 亚洲午夜国产成人av电影男同| 国产精品女主播在线观看| 欧美人妖另类| 亚洲精选久久| 久久九九国产| 亚洲激情综合| 欧美激情第9页| 99国产欧美久久久精品| 亚洲精品久久久久久久久| 亚洲免费综合| 久久激情五月丁香伊人| 老司机aⅴ在线精品导航| 狠狠色2019综合网| 日韩图片一区| 亚洲精品一区二区在线| 99re这里只有精品6| 亚洲成色精品| 一本大道久久a久久精品综合 | 亚洲国产小视频在线观看| 亚洲综合色视频| 在线视频亚洲| 国产一级久久| 亚洲日本中文字幕| 久久精品夜色噜噜亚洲aⅴ| 欧美不卡福利| 国产亚洲欧美日韩美女| 久久欧美中文字幕| 99精品国产在热久久| 久久九九99| 亚洲高清在线精品| 亚洲三级毛片| 国语精品中文字幕| 日韩视频―中文字幕| 免费欧美日韩| 国产资源精品在线观看| 中文国产成人精品久久一| 亚洲一区二区三区在线视频| 黄色成人在线观看| 99re66热这里只有精品4| 免费看av成人| 亚洲专区一区| 久久一区精品| 久久久久久久91| 国产精品v片在线观看不卡| 91久久国产精品91久久性色| 国产免费成人av| 亚洲精品在线三区| 午夜精品久久久久久久 | 亚洲美女在线观看| 国产在线欧美日韩| 一区二区三区色| 欧美一区影院| 洋洋av久久久久久久一区| 亚洲国产cao| 国产一区深夜福利| 久久久午夜电影| 欧美四级电影网站| 国产一区二区毛片| 日韩亚洲视频| 日韩午夜中文字幕| 日韩一二三在线视频播| 欧美日韩一区三区四区| 国产日韩高清一区二区三区在线| 亚洲欧美日韩网| 亚洲欧美国产精品桃花| 日韩图片一区| 亚洲在线电影| 在线亚洲国产精品网站| 欧美激情1区2区| 亚洲人www| 亚洲一区二区日本| 国产精品久久999| 亚洲精品中文字幕女同| 女人天堂亚洲aⅴ在线观看| 蜜桃久久av一区| 欧美激情一二区| 亚洲激情在线观看视频免费| 亚洲国内自拍| 欧美国产日韩一区二区三区| a91a精品视频在线观看| 美女日韩在线中文字幕| 欧美福利视频在线观看| 欧美日本久久| 亚洲欧洲一区| 国产精品99久久久久久久久久久久| 亚洲免费视频一区二区| 香蕉成人伊视频在线观看| 亚洲激情视频网站| 亚洲黄色免费| 欧美日韩精品高清| 亚洲视频第一页| 久久久美女艺术照精彩视频福利播放 | 亚洲主播在线观看| 国产精品久久精品日日| 亚洲免费视频在线观看| 久久久久综合一区二区三区| 亚洲国产合集| 国产精品国产三级国产普通话99| 麻豆精品视频在线观看视频| 极品少妇一区二区三区| 日韩一二三区视频| 樱桃国产成人精品视频| 男女精品网站| 9人人澡人人爽人人精品| 香蕉亚洲视频| 亚洲国产导航| 国产精品99免视看9| 欧美一区二区三区视频免费播放| 亚洲免费视频中文字幕| 国产人成精品一区二区三| 噜噜噜在线观看免费视频日韩| 久久日韩粉嫩一区二区三区| 亚洲丁香婷深爱综合| 欧美日韩一区二区三区免费| 欧美中文日韩| 亚洲精品国产精品国自产在线| 1000部精品久久久久久久久| 亚洲免费av网站| 久久久99久久精品女同性| 日韩网站在线| 极品尤物一区二区三区| 欧美视频精品在线| 久久理论片午夜琪琪电影网| 久久精品日韩| 亚洲色图综合久久| 亚洲国产毛片完整版 | 国产精品99久久久久久有的能看| 另类尿喷潮videofree | 免费在线欧美视频| 亚洲色诱最新| 亚洲国产高清高潮精品美女| 欧美专区在线播放| 一本到12不卡视频在线dvd| 在线成人性视频| 国内精品国产成人| 国产精品一区二区你懂得 | 亚洲电影自拍|