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

下載本文檔

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

文檔簡(jiǎn)介

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

2、)船的速度方向始終指向終點(diǎn)B;(2)船在航行的過程中任意時(shí)刻的總速度與航線相切。通過以上假設(shè),小船過河問題就簡(jiǎn)化為:速度求曲線軌跡問題,微分方程問題。(二)建立數(shù)學(xué)模型建立直角坐標(biāo)系,為方便起見,將B點(diǎn)設(shè)為坐標(biāo)原點(diǎn),河岸為x軸,垂直于河岸方向?yàn)閥軸,如圖所示。設(shè)在t時(shí)刻,小船的位置為(x,y),船頭指向與水平方向的夾角為a。則此時(shí)水平方向的速度為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(

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

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

5、my=0:-0.1:-100;for i=0:1:1000 x(:,i+1)=xiaochuan(-i/10);end plot(x,y);title(小船過河1)xlabel(x軸);ylabel(y軸); hangxing.m(2)數(shù)值解法的具體實(shí)現(xiàn)與matlab算法:根據(jù)此模型的微分方程:dx/dt=v1-v2* x/sqrt(x2+y2)dy/dt=-v2* y/sqrt(x2+y2)并且初始條件:x(0)=0,y(0)=-d通過龍格庫(kù)塔方程求其數(shù)值解:由于該模型的參數(shù)為:河寬d,船在靜水中的速度v2,河水流速v1,船在任意時(shí)刻的位置(x,y),時(shí)間t,船在a點(diǎn)時(shí)t=0。則小船航線的微

6、分方程的matlab算法如下:xiaochuan1.m:function dx=xiaochuan1(t,x,v1,v2)s=(x(1)2+x(2)2)0.5;%x(1),x(2)表示x,ydx=v1-v2*x(1)/s;-x(2)*v2/s;%以列向量的形式表示小船過河的微分方程在編寫運(yùn)行程序時(shí)設(shè)定時(shí)間t的起終點(diǎn)和中間的等分點(diǎn),終點(diǎn)時(shí)間根據(jù)船在靜水中速度和水的流速設(shè)為150s,時(shí)間間隔為0.01s。lv.mts=0:0.01:150;d=input(輸入河寬d=);x0=0,-d;opt=odeset(reltol,1e-6,abstol,1e-9);v1=input(輸入河水流速v1=);

7、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);gtext(x軸),gtext(y軸);grid;(四)計(jì)算所得結(jié)果(1)當(dāng)v1=1m/s,v2=2m/s,d=100m時(shí) lv輸入河寬d=100輸入河水流速v1=1輸入船在靜水中速度v2=2t,x,y值如下:15.2600 12.6707 -69.6

8、313 15.2700 12.6771 -69.6116 15.2800 12.6835 -69.5919 15.2900 12.6899 -69.5723 15.3000 12.6963 -69.5526. 66.5700 0.0970 -0.0004 66.5800 0.0870 -0.0003 66.5900 0.0770 -0.0002 66.6000 0.0670 -0.0002 66.6100 0.0570 -0.0001 66.6200 0.0470 -0.0001 66.6300 0.0370 -0.0001 66.6400 0.0270 -0.0000 66.6500 0.0

9、170 -0.0000 66.6600 0.0070 -0.0000則當(dāng)d=100m,v1=1m/s,v2=2m/s時(shí)t=66.64s時(shí)小船到達(dá)對(duì)岸b點(diǎn),渡河所需時(shí)間t=66.64s,小船任意時(shí)刻的位置如xt圖所示,航線如“小船過河圖2”所示(2)d=100m, v1=0, 0.5, 1.5, 2m/s; v2=2m/s時(shí)所得結(jié)果當(dāng)d=100,v1=0,v2=2時(shí), lv輸入河寬d=100輸入河水流速v1=0輸入船在靜水中速度v2=2t,x值如下: 47.1200 0 -5.7600 47.1300 0 -5.7400 47.1400 0 -5.7200 47.1500 0 -5.7000 4

10、7.1600 0 -5.6800 47.1700 0 -5.6600.49.9400 0 -0.1200 49.9500 0 -0.1000 49.9600 0 -0.0800 49.9700 0 -0.0600 49.9800 0 -0.0400 49.9900 0 -0.0200 50.0000 0 -0.0000此時(shí)由于t=100,v1=0,v2=2,t=100/2=50,小船過河時(shí)間t=50s, 小船任意時(shí)刻的位置如xt圖所示,航線如“小船過河圖2”所示,結(jié)果與解析解相符合。當(dāng)d=100,v1=0.5,v2=2時(shí), lv輸入河寬d=100輸入河水流速v1=0.5輸入船在靜水中速度v2=

11、2t,x值如下: 0 0 -100.0000 0.0100 0.0050 -99.9800 0.0200 0.0100 -99.9600 0.0300 0.0150 -99.9400 0.0400 0.0200 -99.92000.0500 0.0250 -99.9000. 53.2600 0.1071 -0.0283 53.2700 0.0928 -0.0233 53.2800 0.0783 -0.0185 53.2900 0.0638 -0.0141 53.3000 0.0493 -0.0099 53.3100 0.0346 -0.0062 53.3200 0.0199 -0.0029 5

12、3.3300 0.0050 -0.0005則根據(jù)t=53.33s時(shí)小船到達(dá)對(duì)岸,小船任意時(shí)刻的位置如xt圖所示,航線如“小船過河圖2”所示,結(jié)果與解析解相符合。當(dāng)d=100,v1=1.5,v2=2時(shí) lv輸入河寬d=100輸入河水流速v1=1.5輸入船在靜水中速度v2=2t,x值如下:62.2500 25.4391 -7.2507 62.2600 25.4349 -7.2452 62.2700 25.4307 -7.2397 62.2800 25.4264 -7.2342 62.2900 25.4222 -7.2288 62.3000 25.4180 -7.2233 62.3100 25.41

13、37 -7.2178 62.3200 25.4095 -7.2124.111.5700 1.3581 -0.0001 111.5800 1.3531 -0.0001 111.5900 1.3481 -0.0001 111.6000 1.3431 -0.0001 111.6100 1.3381 -0.0001 111.6200 1.3331 -0.0001 111.6300 1.3281 -0.0000 111.6400 1.3231 -0.0000 111.6500 1.3181 -0.0000 111.6600 1.3131 -0.0000此時(shí)由于d=100,v1=0,v2=1.5,t=111.63, 小船任意時(shí)刻的位置如xt圖所示,航線如“小船過河圖2”所示,結(jié)果與解析解相符合當(dāng)d=100,v1=2,v2=2時(shí) lv輸入河寬d=100輸入河水流速v1=2輸入船在靜水中速度v2=2t,x值如下:96.1800 49.9382 -3.5161 96.1900 49.9383 -3.5147 96.2000 49.9383 -3.5133 96.2100 49.9384 -3.5119 96.2200 49.9384 -3.5105 96.2300 49.9385 -3.5091 96.2400 4

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論