




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中南大學(xué)本科生課程設(shè)計(jì)(實(shí)踐)設(shè)計(jì)報(bào)告(程序設(shè)計(jì)基礎(chǔ))題目常微分方程數(shù)值解學(xué)生偉指導(dǎo)教師紅雨學(xué)院 土木建筑學(xué)院專業(yè)班級(jí)土建類0908學(xué)生學(xué)號(hào)1208090814計(jì)算機(jī)基礎(chǔ)教學(xué)實(shí)驗(yàn)中心2010年07月07日FORTRAN課程設(shè)計(jì)報(bào)告摘要本題是通過長(zhǎng)期的觀察統(tǒng)計(jì),得到一個(gè)食餌一捕食者系統(tǒng)的數(shù)學(xué) 模型如下:Xi(ri 1X2)dtdx2 X2( r22X1)dt,食餌:rk 1,入 i= 0.1, xi(0)= 25;捕食者(鯊魚):2=0.5,入 2=0.02, X2(0)= 2;繪制食餌和鯊魚數(shù)量隨時(shí)間的變化情況圖。再由已知的初始條件,通過一階線性微分方程組得到食餌和鯊魚 數(shù)量隨時(shí)間變化關(guān)系曲線
2、。這一過程首先要通過四階龍格庫(kù)塔法得到 多組鯊魚和食餌隨時(shí)間變化的數(shù)據(jù),再通過FORTRAN編譯程序,QuickWin的圖形操作得到變化曲線。關(guān)鍵詞:四階龍格一庫(kù)塔法、FORTRAN、QuickWin圖形操作一、設(shè)計(jì)思想(一)總體設(shè)想1、生成數(shù)據(jù)用四階龍格庫(kù)塔法,取不同的時(shí)刻對(duì)應(yīng)鯊魚和食餌數(shù)量,得到多組數(shù)據(jù)。2、QuickWin圖形操作畫出基本圖形界面模仿課本及例題做出一個(gè)基本的圖形界面,包括界面的大小、顏色、名稱等,以為后面繪圖作準(zhǔn)備。將得到的多組數(shù)據(jù)與繪圖程序連接起來(lái),并最終繪制鯊魚、食餌隨時(shí)間變化曲線。(二)系統(tǒng)模塊結(jié)構(gòu)簡(jiǎn)介常微分方程的數(shù)值解設(shè)計(jì)主程序連接數(shù) 據(jù)文件和圖形界面, 繪制曲線
3、系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)數(shù)據(jù)生成模塊首先要查閱資料了解四階龍格庫(kù)塔法的原理及其數(shù)學(xué)形式:dy dt dx dtf (t, x, y)y(to)yog(t,x,y)”中 x(to) x01 ,yi 1 V -(fl 2f2 2f3 f4) 6fl hf(ti,Xi, yi)rr111 r則f2 hf(ti 2h,為-g1,yi/),同理可得rr111 rf3 hf(tih,Xig2, yif2)2 22f4 hf(ti h,x g3,yif3)Xi 1, g,g2, g3, g,首先在FORTRANPOWER STATION中建立一個(gè)項(xiàng)目文件,命名為my files,之后新建一個(gè)text.f90文件命名為
4、數(shù)據(jù),開 始編程。算法NS圖如下:定義數(shù)組X1,X2 ,并將x1,x2的初值賦給數(shù) 組的A個(gè)元素根 據(jù) 公 式 計(jì) 算f1,f2, f3, f4,和g1,g2,g3,g4再計(jì)算 X1(i+1)和 X2(i+1)直到i=250止,其中步長(zhǎng)為1即h數(shù)組兀素均被賦值后,新建文件“鯊魚數(shù)據(jù).txt ”、“食餌數(shù)據(jù).txt”并將數(shù)組中的t值 和x1,x2值分別輸出到兩個(gè)文件當(dāng)中圖形基本界面模塊與之前所編譯的程序性質(zhì)完全不同,因此需要重新建立一個(gè)新的項(xiàng)目mywin,并選擇類型TYPE為QuickWin Application ,再新建TEXT可以開始繪圖程序的編譯了。關(guān)于圖形程序的設(shè)計(jì),需要考慮到大量的界
5、面屬性,如像素點(diǎn)的多少,窗口的大小、標(biāo)題,除此之外,很重要的一點(diǎn)是要設(shè)置窗口為視窗坐標(biāo),即我們通常用的笛卡爾坐標(biāo)系,以便后面觀察圖形更直觀。首先要定義繪圖類型的變量,定義如下:use msflibinteger(2) statusreal(8) df,yf,i,p,qcharacter*2 ctype(wxycoord) wxytype(windowconfig) wctype(qwinfo) winfo定義了繪圖類型之后就可以設(shè)置圖形界面的基本屬性了,需要設(shè)置像素為800*600,窗口最大化,背景顏色為白色等。N S圖如下:設(shè)置窗口最大化winfo.type=qwin$max設(shè)置視窗大小st
6、atus=setwindow(.true.,0,0,df,yf)設(shè)置背景為白色status=setbkcolorrgb(#ffffff)刷新屏幕call clearscreen($gclearscreen)再繪制坐標(biāo)軸,N S圖如下:繪制X軸call moveto_w(2d0,2d0,wxy)status=lineto_w(350,2d0)繪制Y軸call moveto_w(2d0,2d0,wxy)status=lineto_w(2d0,350)繪制坐標(biāo)軸時(shí)需注意,各坐標(biāo)點(diǎn)均需要雙精度實(shí)型的數(shù)據(jù) 類型,否則編譯時(shí)會(huì)出現(xiàn)數(shù)據(jù)類型錯(cuò)誤的提示。然后開始在坐標(biāo)軸下面標(biāo)注坐標(biāo)刻度,由于在讀入數(shù)據(jù)繪 圖之
7、前不知道所需刻度即窗口大小,可先預(yù)設(shè),在真正開始繪 圖時(shí)再更正:設(shè)置坐標(biāo)顏色為紅色status=setcolorrgb(#0000ff) 1輸出橫坐標(biāo)刻度call moveto_w(i,2d0,wxy) write(c,"(i2)") int(i-2) call outgtext(c)苜至i=35,步長(zhǎng)為1輸出縱坐標(biāo)刻度call moveto_w(1d0,i,wxy) write(c,"(i2)") int(i-2) call outgtext(c)苜至i=90,步長(zhǎng)為2最后,要在圖形界面輸出必要的標(biāo)識(shí),如圖名、注釋等:添加圖形題目,顏色為黑色statu
8、s=setcolorrgb(#000000)call moveto_w(10d0,70d0,wxy)call outgtext("食餌和鯊魚數(shù)量隨時(shí)間的變化情況圖")紅色連續(xù)直線的是鯊魚曲線call setlinestyle(#ffff)status=setcolorrgb(#0000ff)call moveto_w(30d0,20d0,wxy)藍(lán)色虛線的是食餌曲線call setlinestyle(#f0f0)status=setcolorrgb(#ff0000)call moveto_w(30d0,25d0,wxy)主程序模塊主程序模塊主要功能是把數(shù)據(jù)生成模塊所輸出的文
9、件與繪圖程序連接起來(lái),繪制圖形定義動(dòng)態(tài)數(shù)組real,allocatable:t(:),x1(:),x2(:)open(10,file="鯊魚數(shù)據(jù).txt") n=0當(dāng)文件未讀到取舟-條(.not.eof(10)確定數(shù)組兀素個(gè)數(shù) read(10,200) n=n+1確定數(shù)組兀素個(gè)數(shù)allocate(t(n),x1(n),x2(n)open(12,file="食餌數(shù)據(jù).txt")將文件中數(shù)據(jù)傳送到所定義的數(shù) 組中read(10,200) t(i),x1(i)read(12,200) t(i),x2(i)t(i)=t(i)+2 x1(i)=x1(i)+2 x2
10、(i)=x2(i)+2直至U i=n調(diào)用子程序繪圖call tx(t,x1,x2,n)這其中,需要把前面編譯的圖形程序改為主程序的子程序subroutine tx(t,x1,x2,n)tx(t,x1,x2,n)dimension t(n),x1(n),x2(n)畫出圖形三、設(shè)計(jì)總結(jié)編譯程序的過程枯燥卻也充滿樂趣,在編程的過程中,只有不斷嘗 試,不斷發(fā)現(xiàn)問題、分析問題、解決問題,才能使自己的程序更臻 蘭羊01、編譯過程中出現(xiàn)的問題題目的分析根據(jù)對(duì)題目的分析可知,只有使用數(shù)值分析中的經(jīng)典方法一 四階龍格一庫(kù)塔法才能完成該常微分方程的求解過程,因此,首先 要知道龍格庫(kù)塔法的基本原理及其數(shù)學(xué)表達(dá)式。數(shù)
11、據(jù)的生成過程在由龍格庫(kù)塔法生成多組數(shù)據(jù)的過程中,我使用了簡(jiǎn)單地翻譯數(shù)學(xué)表達(dá)式的方法,這是十分不明智的,如果在之前定義一個(gè)函數(shù),然后在循環(huán)過程中調(diào)用,就會(huì)使程序簡(jiǎn)單很多了。繪圖程序的編譯在繪圖程序中,最重要的是過程中所用到各點(diǎn)的坐標(biāo),一定要注意坐標(biāo)一定要是雙精度實(shí)型的數(shù)據(jù)類型,否則總會(huì)出現(xiàn)數(shù)據(jù)類型錯(cuò)誤。主程序的連接主程序與子程序的連接過程中,總是可能因?yàn)樽x入文件過程不對(duì)而出現(xiàn)連接錯(cuò)誤,注意一定要把數(shù)據(jù)生成模塊生成的文件放在主程序文件夾下,這樣才不會(huì)出現(xiàn)連接錯(cuò)誤。2、編譯過程中的優(yōu)點(diǎn)生成數(shù)據(jù)多在數(shù)據(jù)生成過程中使用了較小的步長(zhǎng)間隔,這樣可以生成多組數(shù)據(jù),使結(jié)果更精確,繪圖時(shí)所繪制的曲線自然也更流暢優(yōu)美。繪圖細(xì)節(jié)精細(xì)在繪制圖形界面的基本情況時(shí),考慮到圖形的直觀性,較清晰地繪出了坐標(biāo)軸及其坐標(biāo)刻度,除此之外,還有圖形名稱、以及對(duì)兩條曲線的注釋等,便于讀圖。3、心得體會(huì)在編譯程序時(shí),細(xì)心是最重要的一環(huán),萬(wàn)不能粗心大意,有時(shí)自己一點(diǎn)點(diǎn)的疏忽就會(huì)導(dǎo)致整個(gè)程序運(yùn)行錯(cuò)誤,并在很長(zhǎng)一段時(shí)間里找不到答案,因而浪費(fèi)了很多時(shí)間,這一點(diǎn)一定要吸取教訓(xùn),不能重蹈覆轍。一方面在程序設(shè)計(jì)過程中,發(fā)現(xiàn)了自己掌握的只是在文件與數(shù)據(jù)傳輸兩方面有所欠缺,但
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《曾子殺豬》課本?。河梦枧_(tái)詮釋傳統(tǒng)美德
- 2025紡織品輔料采購(gòu)合同模板
- 春季高血壓知識(shí)
- 2025年云浮貨運(yùn)從業(yè)資格證考試題及答案
- 肺動(dòng)脈瓣疾病的健康宣教
- 主動(dòng)脈瘤的健康宣教
- 特發(fā)性心肌病的健康宣教
- 2025年烏魯木齊貨運(yùn)從業(yè)資格實(shí)操模擬考試
- 上干型胸廓出口綜合征的健康宣教
- 時(shí)尚派對(duì)設(shè)計(jì)培訓(xùn)
- (二模)衢州、麗水、湖州2025年4月三地市高三教學(xué)質(zhì)量檢測(cè) 語(yǔ)文試卷(含答案解析)
- 第9課《木蘭詩(shī)》教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版語(yǔ)文七年級(jí)下冊(cè)
- 中央2025年中國(guó)日?qǐng)?bào)社及所屬事業(yè)單位招聘5人筆試歷年參考題庫(kù)附帶答案詳解
- 2024年成都市新都區(qū)教育局所屬事業(yè)單位招聘中小學(xué)教師筆試真題
- 2025-2030中國(guó)露酒行業(yè)市場(chǎng)深度分析及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 生產(chǎn)車間5S管理制度
- 2025年吉林鐵道職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)一套
- 2023學(xué)年杭州市余杭區(qū)七年級(jí)語(yǔ)文下學(xué)期期中考試卷附答案解析
- 《道路交通安全法》課件完整版
- 加快形成農(nóng)業(yè)新質(zhì)生產(chǎn)力
- 全國(guó)園地、林地、草地分等定級(jí)數(shù)據(jù)庫(kù)規(guī)范1123
評(píng)論
0/150
提交評(píng)論