渡輪航行路線設計by王自偉_何慶明_張興強_第1頁
渡輪航行路線設計by王自偉_何慶明_張興強_第2頁
渡輪航行路線設計by王自偉_何慶明_張興強_第3頁
渡輪航行路線設計by王自偉_何慶明_張興強_第4頁
渡輪航行路線設計by王自偉_何慶明_張興強_第5頁
已閱讀5頁,還剩12頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、渡輪航行路線的設計摘 要我國是世界上的一個多河流國家,為了方便河流兩岸人民的出行,渡輪成了交通的一個重要組成部分。本文以我國東部地區某市為例,采用數學分析方法建立了一系列數學模型來規劃和設計渡輪的航行路線。對于問題一,考慮河水流速以及渡輪在靜水中的速度在整個航行過程中保持不變,本文以北岸碼頭為原點、以南北岸碼頭連線為軸、以河流的水流方向為軸建立恰當的直角坐標系,對渡輪航行的路線關于時間建立多元微分方程組,再運用三角函數的幾何意義對方程組進行化簡,得出了初步的微分方程組模型,并由此建立了模型一。使用MATLAB編程求解,在得不出解析解的情況下采用4階Runge-Kutta算法求解微分方程組的數值

2、解。得出了渡輪的航行路線圖(下見圖4),以及在軸方向、軸方向上的分位移關于時間的響應曲線(下見圖5)。并分析數據后求得在該航行路線下所花費的時間,合11分鐘6.7秒。對于問題二,本文在問題一的基礎上適當地改變坐標軸,以及各個碼頭的坐標;以北岸碼頭2為原點,以北岸碼頭2與南岸碼頭2的連線為軸,以沿北岸碼頭1向北岸碼頭2方向的射線為軸,建立平面直角坐標系,實則是在模型一的基礎上修改微分方程組的初值,化簡后得到新的微分方程組模型,并由此建立了模型二。相同地,使用MATLAB編程,在得不出解析解的情況下采用4階Runge-Kutta算法求其的數值解。得出了渡輪的航行路線圖(下見圖6),以及在軸方向、軸

3、方向上的分位移關于時間的響應曲線(下見圖7)。分析數據后可知在該路線下所花時間為578.6s,合10分鐘38.6秒。對于問題三,本文在問題一和問題二的分析基礎上,根據實際生活中河水流速不均勻分布的條件限制,先使用MATLAB擬合出河水流速關于距北岸距離的曲線方程:。并由此修正模型一和模型二的微分方程組,得出模型三。同時修改微分方程組,并用MATLAB求數值解。根據求解結果,本文設計渡輪在該情形下的航行路線圖(下見圖10,圖12)。并得出時間分別為735.5s和608s。 關鍵詞: MATLAB 微分方程組 Runge-Kutta算法 數據擬合 小船過河1一、問題重述某市有一條東西向的河流穿越市

4、區,為方便兩岸市民出行,設置了渡輪往返于南北岸間。如圖1所示,南岸碼頭正對著北岸碼頭,河床寬度大約為米。請你們通過建立數學模型,解決以下問題:1、假定河水流速,渡輪在靜水中的速度,在整個航行過程中它們保持不變,試設計一條渡輪航行路線,使得按照這條路線行駛從南岸碼頭出發正好能夠到達北岸碼頭(或者從北岸碼頭出發正好能夠到達南岸碼頭)。當,時,畫出航行路線圖,并計算出按照這條路線行駛所需的渡河時間。2、為縮短乘客航行時間,決定增設南岸碼頭和北岸碼頭各一個,如圖2所示。從北岸到南岸的乘客在北岸碼頭1登船,到南岸碼頭2下船;而從南岸到北岸的乘客在南岸碼頭1登船,到北岸碼頭2下船。如果同一岸的兩個碼頭間距

5、設計為500米,當,時,畫出航行路線圖,并計算出按照這條路線行駛所需的渡河時間,與問題1進行比較。3、下表1中是測出的水流速沿離北岸邊距離的分布,在的情況下,重新解決問題1和問題2。北岸碼頭2南岸碼頭21000m水流方向北岸碼頭1南岸碼頭11000m水流方向北岸碼頭南岸碼頭 圖1 圖2 表1 水流速沿離北岸邊距離的分布編號123456789離北岸邊距離(米)100200300400500600700800900河水流速(米/秒)1.001.221.381.451.501.461.371.231.02二、問題分析根據問題重述,可知這實質上是求曲線軌跡的微分方程問題。問題一對于問題一,為了方便我們

6、更加清晰的剖析問題以及解決問題,我們對問題重述的圖一做了適當旋轉,以北岸碼頭為原點、以南北岸碼頭連線為軸、以河流的水流方向為軸建立恰當的直角坐標系。由于船速與水速都是固定值,決定渡輪運動軌跡的只有船頭指向。根據生活實際,我們做出合理假設:渡輪在任意時刻的船頭始終指向北岸碼頭。由此得出渡輪運動時任一點的坐標,與其行駛方向同軸的夾角的三角函數關系。然后通過對渡輪行駛途中的任意一時刻做運動分析,我們很容易就能得到一組任一點的分速度對時間的微分方程組。運用MATLAB編程,便可得到渡輪運行的軌跡方程,并求出行駛時間。問題二對于問題二,我們在問題一的基礎上做適當的修改,以北岸碼頭2為原點,以北岸碼頭2與

7、南岸碼頭2的連線為軸,以沿北岸碼頭1向北岸碼頭2方向的射線為軸,重新建立平面直角坐標系。然后做和問題一相同的處理:即根據渡輪運動時任一點的坐標,與其行駛方向同軸的夾角的三角函數關系,以及任意一點分速度關于時間的微分,得出新的微分方程組。相同地,使用MATLAB編程,便可得出渡輪的部分航行路線圖,并得出航行時間。問題三對于問題三,考慮到實際生活中河水的流速并不是均勻分布的,我們可以先通過問題重述中給出的水流速度的測量數據做二次擬合,得到水速分布的曲線方程。再將得到的曲線方程看做一個整體分別替代問題一,問題二中的水速。然后用前面所述方法列出微分方程。并運用MATLAB編程,并求解分析。便可得出渡輪

8、行駛的路線以及所花費的時間。三、模型假設(1) 假設不計渡輪本身長度;(2) 假設渡輪速度恒為;(3) 假設不計算渡輪啟動終止時間;(4) 假設渡輪航行過程中暢通無阻;(5) 假設河水流速數據符合某擬合函數;(6) 假設渡輪、河水流速不受風等天氣因素影響; 四、符號說明符號含義南岸碼頭(1)北岸碼頭(1)南岸碼頭2北岸碼頭2南北岸的河床寬度同一側的兩個碼頭的距離X軸方向渡輪在方向上的位移渡輪在方向上的速度Y軸方向渡輪在方向上的位移渡輪在方向上的速度河水流速河水流速關于方向上位移函數渡輪在靜水中的速度渡輪行駛時的合速度渡輪行駛的某個時刻渡輪在同一側的兩個碼頭間逆行所用時間渡輪航行所用的總時間渡輪

9、船頭朝向與軸夾角五、模型的建立和求解5.1問題一模型的建立和求解5.1.1模型一的建立以北岸碼頭為原點,以沿北岸碼頭指向南岸碼頭的射線為軸,沿北岸碼頭向東方向的射線為軸,建立平面直角坐標系,如圖3所示:圖3設渡輪由南岸碼頭(A點)出發,駛向北岸碼頭(B點)。在時刻,渡輪在方向上的位移為,在方向上的位移為;故渡輪在方向上的速度為,在方向上的速度為。再設渡輪的船頭朝向與水平軸的夾角為,故將水速與船速分解后有:又因為渡輪運行時船頭始終朝向北岸碼頭(B點),所以有:當時,渡輪還在南岸碼頭,故,。綜合上述條件,可得微分方程組: 將,帶入微分方程求解即可。5.1.2模型一的求解利用MATLAB編寫程序,發

10、現無法得出解析解,故采取4階Runge-Kutta算法求其數值解。在建立的boat1.m文件,加入(norm(x)>1e-5)的限制條件,以保證渡輪在離北岸碼頭(B點)足夠近的時候可以終止運算。求解后得出在水速、船速下,渡輪從南岸碼頭駛向北岸碼頭的運行路線(如圖4),以及,關于時間的響應曲線圖(如圖5): 圖4 圖5由數值解法可知按照這條路線行駛所需要的渡河時間,合11分鐘6.7秒。5.2問題二模型的建立和求解5.2.1模型二的建立與模型一不同,在模型二中我們以北岸碼頭2(D點,下同)為原點,以沿北岸碼頭2指向南岸碼頭2(C點)的射線為軸,沿北岸碼頭1(B點)向北岸碼頭2方向的射線為軸,

11、建立平面直角坐標系,如圖6所示:圖6設渡輪由南岸碼頭1(A點)出發,駛向北岸碼頭2(D點)。在時刻,渡輪在方向上的位移為,在方向上的位移為;故渡輪在方向上的速度為,在方向上的速度為。與模型一相似,渡輪的船頭朝向與水平軸的夾角為,渡輪運行時船頭始終朝向北岸碼頭2(D點),故有與模型一相同的方程組: , 與模型一相比,A點坐標的變化,使得初值條件發生改變:當時,渡輪還在南岸碼頭1(A點),故,。綜合上述條件,可得微分方程組:將,帶入微分方程求解即可。但是,值得考慮的是:當小船到達北岸碼頭2后,需要逆水行駛到北岸碼頭1,才能實現二次利用,該過程中小船速度和水流速度在同一條水平線上,故它們的合速度保持

12、恒定,且,時間,即可求出。5.2.2模型二的求解利用MATLAB編程,與模型一相同,無法得出解析解,采取4階Runge-Kutta算法求其數值解。在建立的boat2.m文件中做與模型一一致的要求。求解后得出在水速、船速下,渡輪從南岸碼頭1出發,駛向北岸碼頭2的運行路線(如圖7),以及,關于時間的響應曲線圖(如圖8): 圖7 圖8由數值解法可知按照這條路線行駛,乘客從南岸到北岸所需要的渡河時間。渡輪到達后,從北岸碼頭2逆水行駛到北岸碼頭1,該過程中合速度保持恒定,且,時間。綜上可知,利用模型二方案,乘客從南岸碼頭1到北岸碼頭2需要花費時間,合9分鐘38.6秒。渡輪從南岸碼頭1到北岸碼頭1總共需要

13、花費的時間為。5.2.3模型一與模型二的比較模型一經過適當的修改,例如A點的坐標及微分方程的初值,便可以得到模型二,兩個模型的本質及算法是相同的。就兩岸人民出行目的而言,模型二下渡輪的航行路線雖然長,但其所花費時間更少,更符合人們的實際生活需求;但渡輪在到達北岸碼頭2后,需逆水行駛到北岸碼頭1才能執行下一趟任務,這樣花費的時間和資源將會更多,而模型一就沒有這個缺陷。5.3問題三模型的建立和求解5.3.1河水流速的擬合在實際生活中,河水中水流的速度并不會均勻分布。根據表1中測出的水流速度沿離北岸邊距離的分布數據,利用MATLAB擬合出水流速度關于離北岸的距離的關系曲線,如下圖9: 圖9因為使用M

14、ATLAB擬合出的水速分布的曲線方程的二次項系數很小,故將數據表示改為長整型,并保留六位小數,使得二次項系數數據得以保留,曲線方程如下:5.3.2模型三的建立針對問題一:在模型一的條件下,用替換,其他條件保持不變,于是有: , 當時,渡輪還在南岸碼頭,故,。改變后的微分方程組: 將帶入微分方程求解即可。針對問題二:在模型二的條件下,用替換,其他條件保持不變,于是有: , 當時,渡輪在南岸碼頭,故,。改變后的微分方程模型為:同樣地,渡輪在放下乘客后,需要從北岸碼頭2逆水行駛到北岸碼頭1,此時,時間,即可求出。5.3.2模型三的求解針對問題一:利用MATLAB編程,采取4階Runge-Kutta法

15、求其數值解。求解后得出在水速、船速下,渡輪從南岸碼頭駛向北岸碼頭的運行路線(如圖10),以及,關于時間的響應曲線圖(如圖11): 圖10 圖11由數值解法可知按照這條路線行駛所需要的渡河時間,合12分鐘15.5秒。針對問題二:利用MATLAB編程,求其數值解。求解后得出在水速、船速下,渡輪從南岸碼頭1出發,駛向北岸碼頭2的運行路線(如圖12),以及,關于時間的響應曲線圖(如圖13): 圖12 圖13由數值解法可知按照這條路線行駛,乘客從南岸到北岸所需要的渡河時間。渡輪到達北岸碼頭2后,再從北岸碼頭2逆水行駛到北岸碼頭1,該過程中,所需要花費的時間。綜上可知,乘客從南岸碼頭1到北岸碼頭2需要花費

16、時間;渡輪從南岸碼頭1到北岸碼頭1總共需要花費的時間為。6、 模型的評價對于模型一,考慮到要準確無誤的到達對面,我們將船頭始終指向目的地。并按照該方法設計出一條航行路線,簡單易行,不管是從路程還是從時間上來分析,都達到了較為滿意的結果。該模型在生活中的適用性較強,適合水流速度較慢但兩岸距離較遠的地域。正是因為如此,該模型的不足在于這種渡輪航行方案不適用水流湍急的地區。對于模型二,在兩邊分別建立了兩個碼頭。讓渡輪順著水流到達對岸,該方法積極利用了大自然的力量,減小了水流對渡輪行駛的阻力,減輕渡輪的行駛難度,推動渡輪行駛,可節約資源。對于旅游景區的游客可以觀光到更多的景色,但是對一些只是想到達正對

17、岸的游客,他們還需要逆著水流行走一段路程,這樣無疑會浪費他們的時間。與模型一正相反,模型二更適用于河水流速比較快的地方。不足之處在于渡輪公司為了積極利用渡輪,需沿岸邊逆水遷移渡輪,這樣會浪費一些時間和資源在該條路線上。對于模型三,考慮到現實生活中水速在不同段往往不同。通過擬合得到水速方程并代入,這樣做使得模型更加的貼切生活。然而,在現實生活中,渡輪的行駛,不可能只考慮能否到達這一因素。渡輪的行駛航線往往與經濟效益相掛鉤。而經濟效益卻與渡輪行駛的時間,行駛過程的耗油量以及乘客的人數有關。因此,在考慮渡輪行駛航線時。在確保渡輪能夠到達對岸的情況下。還應該考慮渡輪行駛的時間,逆流行駛與順流行駛對油耗

18、量的影響,以及乘客的人數。通過分析對三者分別賦予權值,計算得出經濟效益最高的路線。參考文獻1 羅萬成.大學生數學建模案例精選M. 成都:西南交通大學出版社,20072 李漢龍、繆淑賢、韓婷、王金寶.數學建模入門與提高M. 北京:國防工業出版社,20133 司守奎、孫璽菁.數學建模算法與運用M. 北京: 國防工業出版社,2017(1):105-1254 嚴喜祖、宋中民、畢春加.數學建模及其實驗M. 北京:科學出版社,20095 余勝威.數學建模經典案例實戰M. 北京:清華大學出版社,20146 佚名.小船過河matlab實現D. 百度文庫,2013-06-26附 錄1. 代碼(一)問題一代碼M文

19、件function f=boat1(t,x)if(norm(x)>1e-5) %限制條件,以保證x足夠小的時候可以終止運算f=-2*x(1)/sqrt(x(1).2+x(2).2);1-2*x(2)/sqrt(x(1).2+x(2).2)%微分方程組else f=0,0end主程序>> y0=1000,0; %微分方程組的初值>> t,x=ode45(boat1,0,1000,y0) %求微分方程組的數值解>> subplot(1,2,1),plot(t,x); %畫出x(1),x(2)關于時間的響應曲線>>plot(x(:,1),x(:,

20、2) %畫出x(1)與x(2)的關系函數圖>>axis(-1 1000,0 1000) %限定區間>>text(10,15,'B') %標注B點>>text(1000,0,'A') %標注A點xlabel('X')ylabel('Y')(二)問題二代碼M文件function f=boat2(t,x)if(norm(x)>1e-5) %限制條件,以保證x足夠小的時候可以終止運算f=-2*x(1)/sqrt(x(1).2+x(2).2);1-2*x(2)/sqrt(x(1).2+x(2).2)

21、%微分方程組else f=0,0end主程序>> y0=1000,-500; %微分方程組的初值>> t,x=ode45(boat2,0,1000,y0) %求微分方程組的數值解>> subplot(1,2,1),plot(t,x); %畫出x(1),x(2)關于時間的響應曲線plot(x(:,1),x(:,2) %畫出x(1)與x(2)的關系函數圖axis(-1 1000,-500 500) %限定區間xlabel('X')ylabel('Y')text(10,0,'D') %標注D點text(1000,-5

22、00,'A') %標注A點(三)問題三代碼擬合曲線的代碼>> format long>> x1=100:100:900;>> y=1,1.22,1.38,1.45,1.5,1.46,1.37,1.23,1.02;>> p=polyfit(x1,y,2) %求擬合后函數系數p = -0.000003004329004 0.003020995670996 0.733095238095237>>x=0:0.1:1000;>> z=polyval(p,x);>> plot(x1,y,'o',x,z,'r')M文件function f=boat3(t,x)if(norm(x)>1e-5) f=-2*x(1)/sqrt(x(1).2+x(2).2);-0.000003*x(1).2+0.003021*x(1)+0.733095-2*x(2)/sqrt(x(1).2+x(2).2)else f=0,0end主程序運行1>> y0=1000,0; %微分方程組的初值>> t,x=ode45(boat3,0,1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論