馮澤夫,段秀慶,楊 航,艾文會
(華中師范大學(xué) 數(shù)學(xué)與統(tǒng)計學(xué)院,湖北 武漢 430079)
MATLAB是由美國mathworks公司發(fā)布的主要面對科學(xué)計算、可視化以及交互式程序設(shè)計的高科技計算環(huán)境.它將數(shù)值分析、矩陣計算、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計以及必須進行有效數(shù)值計算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計語言(如C、Fortran)的編輯模式,代表了當(dāng)今國際科學(xué)計算軟件的先進水平.利用MATLAB仿真模擬可以解決生產(chǎn)生活中很多問題,以前的蒙特卡洛方法結(jié)合計算機仿真模擬技術(shù)后不僅可以避免實驗帶來的損失可以得到非常理想的實驗結(jié)果,如燈泡的壽命的測定,戰(zhàn)爭的模擬……,如果真正去實驗會帶來不少的損失,而用MATLAB仿真模擬,只需要我們輸入約束條件和初始值,可以做多次試驗得到較為理想的結(jié)果.本文正是這方面應(yīng)用的體現(xiàn),對吸引子設(shè)計數(shù)學(xué)模型,利用MATLAB求解洛倫茲方程數(shù)值解并繪制吸引子形成的動畫,可以讓讀者真正理解吸引子形成的過程,并且在求解過程中我們發(fā)現(xiàn)初值不同得到的結(jié)果可能有很大變化,從而發(fā)現(xiàn)動力系統(tǒng)吸引子的混沌現(xiàn)象.
動力系統(tǒng)在高維相空間中所描述出來的相對低維的穩(wěn)定軌道被稱為吸引子.簡言之,吸引子是指這樣的一個集合,當(dāng)時間趨于無窮大時,在任何一個有界集上出發(fā)的非定常流的所有軌道都趨于它.相空間中滿足以下3個條件的點的集合(可能包含1個點、有限個點或無限個點),被稱為動力學(xué)系統(tǒng)的吸引子.
2.1 終極性
處于非目的態(tài)的系統(tǒng)“不安于現(xiàn)狀”,力求離之遠去,處于目的態(tài)的系統(tǒng)則“安于現(xiàn)狀”,自身不再愿意或無力改變這種狀態(tài)(也可以叫做惰性).
2.2 穩(wěn)定性
目的態(tài)是系統(tǒng)自身質(zhì)的規(guī)定性的體現(xiàn),這種規(guī)定性只有在穩(wěn)定狀態(tài)中才能確立起來并得到保持,不穩(wěn)定狀態(tài)不可能成為目的態(tài);
2.3 吸引性
吸引性是目的性的根本要素,沒有吸引力的狀態(tài)不能成為系統(tǒng)演化所追求的目標(biāo).
吸引子是刻畫系統(tǒng)整體特性的概念,具有不可分割性,即不能把它劃分為兩個都滿足定義要求的 較小集合.也不能把幾個吸引子組合為一個吸引子,如平衡態(tài)A與周期態(tài)B不能合成一個單一的吸引子.吸引子分為平庸吸引子和奇異吸引子,對于平庸吸引子來說,無論初值如何,終值只有一個,而奇異吸引子卻有無數(shù)個終值,即奇異吸引子是無數(shù)個點的集合,對初值極端敏感.通過對時間序列的相空間重構(gòu),構(gòu)造的奇異吸引子可在一定程度上反映出系統(tǒng)的演化規(guī)律,而通過分析相空間重構(gòu)吸引子的結(jié)構(gòu),就可以進一步評價動力學(xué)系統(tǒng)的混沌特性及其變化.
而奇異吸引子可以用matlab模擬仿真它的產(chǎn)生,現(xiàn)在該方法廣泛應(yīng)用于流體力學(xué),氣象學(xué)災(zāi)害預(yù)報預(yù)報,地震預(yù)測及信號處理等領(lǐng)域.特別的,在計算機上用洛倫茲所建立的微分方程模擬氣候變化,可以發(fā)現(xiàn)初始條件的極細微差別可以引起模擬結(jié)果的巨大變化—軌線的行為無法預(yù)測,這表明天氣過程以及描述它們的非線性方程是如此的不穩(wěn)定,這正如眾所周知的天氣的“蝴蝶效應(yīng)”即:南美洲亞馬遜河流域熱帶雨林的一只蝴蝶偶然拍動一下翅膀,幾星期后可以在美國德克薩斯州引起一場龍卷風(fēng).從而氣象學(xué)家應(yīng)用此法進行天氣預(yù)報的研究.
3.1 模擬的基本思路
3.1.1 模型準(zhǔn)備:了解問題的實際背景,明確建模目的,搜集必要的信息如現(xiàn)象、數(shù)據(jù)等,盡量弄清對象的主要特征,形成一個比較清晰的“問題”,由此初步確定用哪一類模型.
3.1.2 模型假設(shè) 根據(jù)對象的特征和建模的目的,抓住問題的本質(zhì),忽略次要因素作出必要的、合理的簡化假設(shè).
3.1.3 模型構(gòu)成 根據(jù)所作的假設(shè),用數(shù)學(xué)的語言、符號描述對象的內(nèi)在規(guī)律,建立包含常量、變量等的數(shù)學(xué)模型,如優(yōu)化模型、微分方程模型、差分方程模型、圖的模型等.
3.1.4 模型求解 可以采用解方程、畫圖形、優(yōu)化方法、數(shù)值計算、統(tǒng)計分析、模型對數(shù)據(jù)的靈敏性分析、對假設(shè)的強健性分析.
3.2 模擬洛倫茲吸引子
lorenz方程描述了從水桶底部加熱時,桶內(nèi)液體運動的情況.加熱時,底部的液體溫度上升并產(chǎn)生對流現(xiàn)象,當(dāng)提供足夠的熱量并保持不變時對流就產(chǎn)生不規(guī)則的運動和湍流,形成混沌系統(tǒng).
3.2.1 建立模型:下面的洛倫茲微分方程組的求解過程演示了吸引子的形成過程.
其中x正比于液體對流運動翻動的速率,y正比于液體上流與下流的溫差的變化,z正比于豎直方向的溫度梯度,式中三個參數(shù)σ(Prandtl數(shù))、β和ρ(Rayleigh數(shù))可任取大于0的數(shù)值,其中ρ是該動力系統(tǒng)中重要的參數(shù).當(dāng)系數(shù)σ、ρ、β在一定范圍內(nèi)取值時,三個變量x,y,z在相空間構(gòu)造的吸引子呈現(xiàn)出相似的結(jié)構(gòu)特征.一般常用的組合是σ=10,β=,讓ρ取不同的數(shù)值,分析吸引子圖像.
3.2.2 方程的離散化:可以采用歐拉法或4階龍格-庫塔法迭代法對微分方程組求數(shù)值解.
3.2.3 洛倫茲方程求解
本文說明用Matlab工具箱求解洛倫茲方程的過程,并給出吸引子的三維動態(tài)圖象.洛倫茲方程如下:
這是一個自洽的方程組,用matlab2010求解結(jié)果如下:如圖1.
3.2.4 動態(tài)顯示吸引子并生成動畫程序略,驗證蝴蝶效應(yīng)得到結(jié)果如圖2.
4.1 在ρ取不同的值時我們發(fā)現(xiàn)如下規(guī)律:ρ較小時如0.9,該lorenz動力系統(tǒng)是穩(wěn)定的,吸引子最終演化到兩個奇點中的一個,而隨著ρ的值增大,系統(tǒng)變得越來越復(fù)雜,軌線的變化越來越難以預(yù)測,特別的當(dāng)ρ取28時出現(xiàn)了混沌現(xiàn)象.
圖1
圖2
4.2 洛倫茲動力系統(tǒng)本身有確定的動力學(xué)方程(式(1)、(2)和(3)),該動力學(xué)方程的初值、參數(shù)值的選取直接關(guān)系到該方程是否出現(xiàn)混沌狀態(tài).
4.3 吸引子之外的所有軌線最終將歸宿到吸引子范圍之內(nèi),體現(xiàn)出耗散系統(tǒng)的終態(tài)最終都將收縮到吸引子上,平庸吸引子的終值只有一個,而奇異吸引子本身由既折疊又分離的軌線構(gòu)成,并且無法確定其未來的軌線的發(fā)展趨勢,這表明混沌系統(tǒng)是一種整體收斂而局部發(fā)散的動力學(xué)系統(tǒng).
4.4 利用MATLAB語言進行計算機數(shù)值仿真模擬,求解微分方程數(shù)值解,操作簡單,圖形逼真.通過仿真實驗,讀者對混沌系統(tǒng)的特性和細節(jié)會有直觀深刻的理解.計算機matlab對于混沌的研究正發(fā)揮著無可替代的作用.
〔1〕姜啟源,謝金星,等.數(shù)學(xué)模型(第四版)[M].北京:高等教育出版社,2010.
〔2〕陸安山.混沌系統(tǒng)的仿真實現(xiàn)[J].欽州師范高等??茖W(xué)校學(xué)報,2006(6).
〔3〕陳永勝.基于MATLAB求解Rossler方程和模擬仿真[J].牡丹江師范學(xué)院學(xué)報,2009(1).