小船過河 matlab實現(xiàn)講解_第1頁
小船過河 matlab實現(xiàn)講解_第2頁
小船過河 matlab實現(xiàn)講解_第3頁
小船過河 matlab實現(xiàn)講解_第4頁
小船過河 matlab實現(xiàn)講解_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、問題分析一只小船要渡過一條寬為d的河流,目標是起點A正對著的另一岸B點。已知 河水的流速v1與船在靜水中的速度v2之比為k。建立小船的航線模型,并求其解析解。設(shè)d=100m,v1=1m/s,v2=2m/s,用數(shù)值解法求渡河所需時間,任意時刻小 船的位置及航行曲線,作圖,并于解析解比較;若流速 v1=0,0.5,1.5,2(m/s),結(jié)果如何。這個問題涉及的主要變量有:船在靜水中的速度v2,河水的速度v1,v1與v2速 度之比為k,船的航行時間t,船在任意時刻的位置x,y。由于k未知,所以船 過河的具體航線有多種情況,但針對本題過河問題為了更好的解決問題,不妨做 以下假設(shè):船的速度方向始終指向終

2、點B;船在航行的過程中任意時刻的總速度與航線相切。通過以上假設(shè),小船過河問題就簡化為:速度求曲線軌跡問題,微分方程問題。建立數(shù)學模型建立直角坐標系,為方便起見,將B點設(shè)為坐標原點,河岸為x軸,垂直于河 岸方向為y軸,如圖所示。設(shè)在t時刻,小船的位置為(x,y),船頭指向與水平 方向的夾角為a。則此時水平方向的速度為 v1-v2*cos(a),豎直方向的速度為 v2*sin(a)。又由于水平方向的速度為dx/dt,豎直方向的速度為dy/dt。則可列出小 船航線的微分方程:dx/dt=v1-v2*cos(a)dy/dt v2*sin(a)又由于 cos(a)=x/sqrt(xA2+yA2),sin

3、(a)=-y/sqrt(xA2+yA2)0則微分方程為:dx/dt=v1-v2* x/sqrt(xA2+yA2)dy/dt=-v2* y/sqrt(xA2+yA2)初始條件為:x(0)=0,y(0)=-100;6以上就是小船航線的數(shù)學模型。求解模型的數(shù)學方法(解析解與數(shù)值解)解析解的得出,matlab算法的具體實現(xiàn),以及解析解的圖形根據(jù)dx/dt=v1-v2* x/sqrt(xA2+yA2)dy/dt=-v2* y/sqrt(xA2+yA2)兩式相除得到 dy/dx=v2*y/(v1* sqrt(xA2+yA2)-v2)分離變量得到:dx/x=du/(-u*v1*sqrt(1+uA2)/(v1

4、*sqrt(1+uA2)-v2)其中u=y/x;然后利用微分方程得到x關(guān)于y的解析表達式:x=1/2*cA(-k)*yA(1-k)-1/2*cAk*yA(k+1)然后根據(jù)初始條件:x(0)=0,y(0)=-d,d=100;得到:c=-0.01.則小船航線的解析數(shù)學表達式為:x=1/2*(-0.01)A(-k)*yA(-k+1)-1/2*(-0.01)A(k)*yA(k+1).解析解的matlab程序:xiaochuan.mfunction x=xiaochuan(y) k=0.3;x=1/2*(-0.01).A(-k).*y.A(-k+1)-1/2.*(-0.01).A(k).*y.A(k+1

5、); hangxing.my=0:-0.1:-100;for i=0:1:1000 x(:,i+1)=xiaochuan(-i/10);endplot(x,y);title(小船過河1)xlabel(x軸);ylabel(y軸); hangxing.m小船過河1 TOC o 1-5 h z -10 -20 -、-XI -40 -J-雪-50 -/ -60 -70 -80 -90 -10L! -11;-1-U.600.611.52-.2:633.5(2)數(shù)值解法的具體實現(xiàn)與matlab算法:根據(jù)此模型的微分方程:dx/dt=v1-v2* x/sqrt(xA2+yA2)dy/dt=-v2* y/s

6、qrt(xA2+yA2)并且初始條件:x(0)=0,y(0)=-d通過龍格一一庫塔方程求其數(shù)值解:由于該模型的參數(shù)為:河寬d,船在靜水中的速度v2,河水流速v1,船在任意 時刻的位置(x,y),時間t,船在a點時t=0。則小船航線的微分方程的matlab 算法如下:xiaochuanl.m :function dx=xiaochuan1(t,x,v1,v2)s=(x(1)A2+x(2)A2)A0.5;%x(1),x(2)表示x,ydx=v1-v2*x(1)/s;-x(2)*v2/s; %以列向量的形式表示小船過河的微分方程在編寫運行程序時設(shè)定時間t的起終點和中間的等分點,終點時間根據(jù)船在靜水

7、中速度和水的流速設(shè)為150s,時間間隔為0.01s。Iv.mts=0:0.01:150;d=input(輸入河寬d=);x0=0,-d;opt=odeset(reltol,1e-6,abstol,1e-9);v1=input(輸入河水流速v1=);v2=input(輸入船在靜水中速度v2=);t,x=ode15s(xiaochuan1,ts,x0,opt,v1,v2);t,xsubplot(1,2,1),plot(t,x),title(xt 圖),gtext(t軸),gtext(x軸);grid;subplot(1,2,2),plot(x(:,1),x(:,2),title(小船過河圖2);g

8、text(x軸),gtext(y軸);grid;(四)計算所得結(jié)果(1)當 v1=1m/s,v2=2m/s,d=100m 時 Iv輸入河寬d=100輸入河水流速v1=1輸入船在靜水中速度v2=2t,x,y值如下:15.260012.6707-69.631315.270012.6771-69.611615.280012.6835-69.591915.290012.6899-69.572315.300012.6963-69.552666.57000.0970-0.000466.58000.0870-0.000366.59000.0770-0.000266.60000.0670-0.000266.6

9、1000.0570-0.000166.62000.0470-0.000166.63000.0370-0.000166.64000.0270-0.000066.65000.0170-0.000066.66000.0070-0.0000則當d=100m, v1=1m/s, v2=2m/s時t=66.64s時小船到達對岸b點,渡河所需時 間t=66.64s,小船任意時刻的位置如xt圖所示,航線如“小船過河圖2”所示(2) d=100m, v1=0, 0.5, 1.5, 2m/s;v2=2m/s 時所得結(jié)果當 d=100,v1=0,v2=2 時, Iv輸入河寬d=100輸入河水流速v1=0輸入船在靜水

10、中速度v2=2t,x值如下:47.12000-5.760047.13000-5.740047.14000-5.720047.15000-5.700047.16000-5.680047.17000-5.660049.94000-0.120049.95000-0.100049.96000-0.080049.97000-0.060049.98000-0.040049.99000-0.020050.00000-0.0000此時由于t=100, v1=0, v2=2, t=100/2=50,小船過河時間t=50s,小船任意時刻的位置如xt圖所示,航線如“小船過河圖2”所示,結(jié)果與解析解相符合。當 d=1

11、00,v1=0.5,v2=2 時, lv輸入河寬d=100輸入河水流速v1=0.5輸入船在靜水中速度v2=2t,x 值如下:00 -100.00000.01000.0050-99.98000.02000.0100-99.96000.03000.0150-99.94000.04000.0200-99.92000.05000.0250-99.900053.26000.1071-0.028353.27000.0928-0.023353.28000.0783-0.018553.29000.0638-0.014153.30000.0493-0.009953.31000.0346-0.006253.320

12、00.0199-0.002953.33000.0050-0.0005小船過河圖2則根據(jù)t=53.33s時小船到達對岸,小船任意時刻的位置如xt圖所示,航線如 “小船過河圖2”所示,結(jié)果與解析解相符合。當 d=100,v1=1.5,v2=2 時 lv輸入河寬d=100輸入河水流速v1=1.5輸入船在靜水中速度v2=2t,x值如下:62.250025.4391-7.250762.260025.4349-7.245262.270025.4307-7.239762.280025.4264-7.234262.290025.4222-7.228862.300025.4180-7.223362.310025

13、.4137-7.217862.320025.4095-7.2124111.57001.3581-0.0001111.58001.3531-0.0001111.59001.3481-0.0001111.60001.3431-0.0001111.61001.3381-0.0001111.62001.3331-0.0001111.63001.3281-0.0000111.64001.3231-0.0000111.65001.3181-0.0000111.66001.3131-0.0000此時由于d=100, v1=0, v2=1.5, t=111.63,小船任意時刻的位置如xt圖所示,航線如“小船過河圖2”所示,結(jié)果與解析解相符合當 d=100,v1=2,v2=2 時 lv輸入河寬d=100輸入河水流速v1=2輸入船在靜水中速度v2=2t,x 值如下:96.180049.9382-3.516196.190049.9383-3.514796.200049.9383-3.513396.210049.9384-3.511996.220049.9384-3.510596.230049.9385-3.509196.2400

溫馨提示

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

評論

0/150

提交評論