版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> XXXX 石 油 大 學(xué)</p><p> 課 程 設(shè) 計</p><p><b> 年 月 日</b></p><p> XXXX石油大學(xué)課程設(shè)計任務(wù)書</p><p> 課程 石油工程課程設(shè)計</p><p>
2、; 題目 威布爾模型與乙型水驅(qū)曲線的聯(lián)解法</p><p> 專業(yè) 石油工程 姓名 學(xué)號 </p><p> 主要內(nèi)容、基本要求、主要參考資料等</p><p><b> 主要內(nèi)容:</b></p><p> 推
3、導(dǎo)威布爾模型及其與乙型水驅(qū)曲線聯(lián)解關(guān)系式的預(yù)測模型;</p><p> 根據(jù)油氣田實際生產(chǎn)數(shù)據(jù),進行線性回歸,求得乙型水驅(qū)曲線的截距、斜率;</p><p> 根據(jù)相關(guān)公式,確定威布爾(Weibull)模型常數(shù)a、b、c;</p><p><b> 計算油田年產(chǎn)油量;</b></p><p> 計算油田累積產(chǎn)油量
4、;</p><p><b> 計算含水率;</b></p><p><b> 計算可采儲量;</b></p><p> 計算最高年產(chǎn)量發(fā)生的時間;</p><p><b> 計算最高年產(chǎn)量;</b></p><p> (10)繪制油田實際年產(chǎn)量
5、與預(yù)測產(chǎn)量對比曲線;</p><p> (11)繪制油田實際累積產(chǎn)量與預(yù)測累積產(chǎn)量對比曲線。</p><p><b> 基本要求:</b></p><p> 該專題設(shè)計最終要求是,學(xué)生通過自選基礎(chǔ)數(shù)據(jù),利用威布爾模型與乙型水驅(qū)曲線聯(lián)解預(yù)測模型,結(jié)合油田實際生產(chǎn)資料,預(yù)測選定油氣田的年產(chǎn)量、累積產(chǎn)量、含水率、可采儲量、最高年產(chǎn)量、最高年產(chǎn)量
6、發(fā)生的時間等開發(fā)指標(biāo),并編制相應(yīng)軟件,并提交規(guī)范設(shè)計報告。</p><p><b> 主要參考資料</b></p><p> [1]陳元千.預(yù)測油氣田產(chǎn)量的Weibull模型[J].新疆石油地質(zhì),1995,16(3):250-255.</p><p> [2]童憲章.天然水驅(qū)和人工注水油藏的統(tǒng)計規(guī)律探討[J].石油勘探與開發(fā),1978,4
7、(6):38-64.</p><p> [3] 陳元千.一種新型水驅(qū)曲線關(guān)系式的推導(dǎo)及應(yīng)用[J].石油學(xué)報,1993,14(2):65-73.</p><p> [4] 陳元千.水驅(qū)曲線關(guān)系式的推導(dǎo)[J]. 石油學(xué)報,1985,6(2):69-78.</p><p> 完成期限 </p><p
8、> 指導(dǎo)教師 </p><p> 專業(yè)負責(zé)人 </p><p><b> 年 月 日</b></p><p><b> 目 錄</b></p><p><b> 1 前 言1
9、</b></p><p> 1.1 設(shè)計的目的意義1</p><p> 1.2 設(shè)計的主要內(nèi)容1</p><p><b> 2 基礎(chǔ)數(shù)據(jù)2</b></p><p><b> 3 基礎(chǔ)理論3</b></p><p> 3.1威布爾預(yù)測模型的建立
10、3</p><p> 3.2威布爾模型與乙型水驅(qū)曲線的聯(lián)解法4</p><p> 3.3模型的求解方法5</p><p><b> 4 設(shè)計結(jié)果7</b></p><p><b> 認識與結(jié)論8</b></p><p><b> 參考文獻9&l
11、t;/b></p><p> 附錄:計算機程序與結(jié)果10</p><p><b> 1 前 言</b></p><p> 1.1 設(shè)計的目的意義</p><p> 本課題的目的是讓學(xué)生通過自選一組數(shù)據(jù),利用所學(xué)專業(yè)知識在指導(dǎo)教師的指導(dǎo)下獨立完成對某一油田或區(qū)塊開發(fā)指標(biāo)的預(yù)測。本課題要求學(xué)生對威布爾(We
12、ibull)模型及其與乙型水驅(qū)曲線聯(lián)解關(guān)系式進行推導(dǎo),其結(jié)果包括,對油氣田的年產(chǎn)量、累積產(chǎn)量、含水率、可采儲量、最高年產(chǎn)量、最高年產(chǎn)量發(fā)生的時間的預(yù)測方法。從而將理論知識和實際問題相結(jié)合,通過該專題設(shè)計的訓(xùn)練,加強學(xué)生理論知識運用能力,計算機技術(shù)應(yīng)用能力及解決實際問題的工程應(yīng)用能力。</p><p> 1.2 設(shè)計的主要內(nèi)容</p><p> 根據(jù)已有的基礎(chǔ)數(shù)據(jù),利用所學(xué)的專業(yè)知識,在
13、指導(dǎo)教師指導(dǎo)下獨立完成并提交一個油田或一個區(qū)塊油田開發(fā)指標(biāo)預(yù)測結(jié)果,設(shè)計主要內(nèi)容如下:</p><p> ?。?)推導(dǎo)威布爾模型及其與乙型水驅(qū)曲線聯(lián)解關(guān)系式;</p><p> ?。?)根據(jù)油氣田實際生產(chǎn)數(shù)據(jù),進行線性回歸,求得乙型水驅(qū)曲線的截距、斜率;</p><p> (3)根據(jù)相關(guān)公式,確定威布爾(Weibull)模型常數(shù)a、b、c;</p>
14、<p> (4)計算油田年產(chǎn)油量;</p><p> ?。?)計算油田累積產(chǎn)油量;</p><p><b> ?。?)計算含水率;</b></p><p> ?。?)計算可采儲量;</p><p> (8)計算最高年產(chǎn)量發(fā)生的時間;</p><p> ?。?)計算最高年產(chǎn)量;<
15、/p><p> ?。?0)繪制油田實際年產(chǎn)量與預(yù)測產(chǎn)量對比曲線;</p><p> (11)繪制油田實際累積產(chǎn)量與預(yù)測累積產(chǎn)量對比曲線。</p><p><b> 2 基礎(chǔ)數(shù)據(jù)</b></p><p> 某油田的開發(fā)數(shù)據(jù)如下:</p><p> 表2-1 某油田開發(fā)數(shù)據(jù)</p>
16、<p><b> 3 基礎(chǔ)理論</b></p><p> 威布爾(Weibull)預(yù)測模型能夠很好地預(yù)測油田產(chǎn)油量隨時間的變化關(guān)系,但卻不能預(yù)測油田的含水率、產(chǎn)水量、產(chǎn)液量及累積產(chǎn)水量和累積產(chǎn)液量,而這些開發(fā)指標(biāo)正是水驅(qū)開發(fā)油田所需要預(yù)測的。乙型水驅(qū)曲線法是油藏工程中重要的預(yù)測方法,但它只能預(yù)測累積產(chǎn)水量與累積產(chǎn)油量之間的關(guān)系,卻不能預(yù)測開發(fā)指標(biāo)與開發(fā)時間的關(guān)系,而油田開發(fā)
17、指標(biāo)的預(yù)測,都離不開與開發(fā)時間的聯(lián)系。將Weibull預(yù)測模型和乙型水驅(qū)曲線法相結(jié)合,則能夠預(yù)測水驅(qū)油田的含水率、產(chǎn)油量、產(chǎn)水量、產(chǎn)液量、可采儲量及其相應(yīng)的累積產(chǎn)量隨開發(fā)時間變化的聯(lián)解法。聯(lián)解法既能保持兩種方法原有的預(yù)測功能,又克服了兩者的局限性。</p><p> 3.1威布爾預(yù)測模型的建立</p><p> Weibull(威布爾)于1939年提出的統(tǒng)計分布模型已成為生命試驗和可靠
18、性理論研究的基礎(chǔ)。該模型的分布密度表示為:</p><p><b> (3-1)</b></p><p> 式中 f(x)——威布爾分布的分布密度函數(shù);</p><p> x——分布變量,根據(jù)實際問題,分布區(qū)間為0~∞;</p><p> α——控制分布形態(tài)的形狀參數(shù);</p><p>
19、 β——控制分布峰位和峰值的尺度參數(shù)。</p><p> 若對(3-l)式進行積分,在x為0~∞區(qū)間內(nèi),可以得到Weibu11的分布函數(shù)值等于1,推證如下:</p><p><b> ?。?-2)</b></p><p> 為將Weibull分布模型用于油氣田開發(fā)指標(biāo)的預(yù)測,將(3-l)式改寫為</p><p>&
20、lt;b> (3-3)</b></p><p> 式中 Q——油氣田的年產(chǎn)量,104t/a(油)或108m3/a(氣);</p><p> t ——油氣田的開發(fā)時間,a;</p><p> C——由Weibull分布模型轉(zhuǎn)換為油氣田開發(fā)實用模型的模型轉(zhuǎn)換常數(shù)。</p><p> 油氣田的累積產(chǎn)量表達式為:<
21、/p><p><b> ?。?-4)</b></p><p> 式中 NP——油氣田的累積產(chǎn)量,104t或108t(油);108m(氣)。</p><p> 式中 NP——油氣田的累積產(chǎn)量,104t或108t(油);108m(氣)。</p><p> 將(3-3)代入(3-4)式并考慮(3-2)式中的變量變換法,t
22、從0到t積分得:</p><p><b> ?。?-5)</b></p><p> 當(dāng)時,,則,因此(3-5)式又可改寫為:</p><p><b> ?。?-6)</b></p><p> 在得到上面的結(jié)果之后,便可對模型轉(zhuǎn)換常數(shù)的性質(zhì)和作用做這樣的說明:由于Weibull分布模型,在x從0到
23、區(qū)間的分布函數(shù)F(x)=1.0,這相當(dāng)于實際開發(fā)的油氣田,在t從0到區(qū)間的累積產(chǎn)量,即油氣田的可采儲量。因此,為了能夠得到(3-5)式的結(jié)果,就必須在(3-3)中引入模型轉(zhuǎn)換常數(shù)C。而該模型轉(zhuǎn)換常數(shù)就是油氣田的可采儲量。因此,可以將(3-3)式再改寫為:</p><p><b> ?。?-7)</b></p><p> 為了確定最高年產(chǎn)量發(fā)生的時間,有(3-7)式對
24、時間t求導(dǎo)數(shù)得:</p><p><b> (3-8)</b></p><p> 當(dāng)=0時,必然有=0,故可以得到最高年產(chǎn)量發(fā)生的時間tm為:</p><p><b> ?。?-9)</b></p><p> 將(3-9)式代入(3-7)式,得到油氣田的最高年產(chǎn)量(Qmax)的表達式:<
25、/p><p><b> ?。?-10)</b></p><p> 再將(3-9)式代入(3-6)式,得到油氣田最高年產(chǎn)量發(fā)生時的累積產(chǎn)量(Npm)為:</p><p><b> (3-11)</b></p><p> 油氣田的剩余可采儲量NRR表示為:</p><p>&l
26、t;b> ?。?-12)</b></p><p> 將(3-6)式代入(3-12)式得:</p><p><b> ?。?-13)</b></p><p> 剩余可采儲量的儲采比ω表示為:</p><p><b> ?。?-14)</b></p><p>
27、; 將(3-7)式和(3-13)式代入(3-14)式得:</p><p><b> ?。?-15)</b></p><p> 剩余可采儲量的采油速度為儲采比的倒數(shù),故由(3-15)式得到剩余可采儲量采油速度的表達式:</p><p><b> ?。?-16)</b></p><p> 式中以小
28、數(shù)f表示,若改以百分?jǐn)?shù)%表示時,(3-16)式改為下式:</p><p><b> ?。?-17)</b></p><p> 3.2威布爾模型與乙型水驅(qū)曲線的聯(lián)解法</p><p> 利用數(shù)理統(tǒng)計學(xué)中的威布爾(Weibull)分布,研究與推導(dǎo)得到了威布爾(Weibull)預(yù)測模型[1]。該模型具有預(yù)測油田產(chǎn)量、累積產(chǎn)量和可采儲量的功能,其基
29、本關(guān)系式分別為:</p><p><b> (3-18)</b></p><p><b> ?。?-19)</b></p><p><b> (3-20)</b></p><p> 乙型水驅(qū)曲線法,首先是由我國著名專家童憲章先生[2]以經(jīng)驗公式的形式,于1978年提出。它
30、的理論推導(dǎo)由文獻[3]完成,其基本關(guān)系式為:</p><p><b> ?。?-21)</b></p><p> 由(3-21)式對時間t求導(dǎo)數(shù)得:</p><p><b> ?。?-22)</b></p><p><b> 已知:;;</b></p><
31、;p> 故由(3-22)式得:</p><p><b> (3-23)</b></p><p> 將(3-23)式代入(3-21)式得:</p><p><b> ?。?-24)</b></p><p> 取經(jīng)濟極限水油比(Rwo) L,由(24)式得到預(yù)測油田可采儲量的關(guān)系式:<
32、;/p><p><b> ?。?-25)</b></p><p> 已知水油比與含水率的關(guān)系為:</p><p><b> ?。?-26)</b></p><p> 將(3-26)式代入(3-24)式得:</p><p><b> ?。?-27)</b>
33、</p><p> 將(3-19)式代入(3-27)式得:</p><p><b> ?。?-28)</b></p><p> 當(dāng)由(3-18)式和(3-28)式得到預(yù)測的產(chǎn)油量和含水率之后,可由下面的公式分別預(yù)測油田的產(chǎn)水量和產(chǎn)液量:</p><p><b> ?。?-29)</b></
34、p><p><b> ?。?-30)</b></p><p> 最高年產(chǎn)量發(fā)生的時間tm的計算公式如下:</p><p> 最高年產(chǎn)量Qmax為:</p><p> 3.3模型的求解方法</p><p> 為了確定預(yù)測模型的模型常數(shù)a、b、c以及可采儲量NR的數(shù)值,對(3-18)式可進行如下處
35、理:</p><p><b> (3-31)</b></p><p><b> 若設(shè):</b></p><p><b> ?。?-32)</b></p><p><b> ?。?-33)</b></p><p><b>
36、; 則得:</b></p><p><b> ?。?-34)</b></p><p> 根據(jù)實際的開發(fā)數(shù)據(jù),首先利用(3-34)式進行線性試差求解,根據(jù)最大線性相關(guān)系數(shù)求出b,然后利用最小二乘法求得α和β。再由(3-32)式和(3-33)式改寫的下式,分別確定模型的常數(shù)a和c的數(shù)值:</p><p><b> ?。?-
37、35)</b></p><p><b> ?。?-36)</b></p><p> 確定出預(yù)測模型參數(shù)a、b、c后,即可根據(jù)(3-20)式求解出可采儲量NR。</p><p> 在確定預(yù)測模型常數(shù)a、b、c、NR時,其值是否正確可靠,要利用(3-18)式、(3-19)式、(3-28)式預(yù)測的理論產(chǎn)油量、累積產(chǎn)油量和含水率,與實際
38、產(chǎn)油量、累積產(chǎn)油量和含水率進行對比加以確定,而達到最佳擬合效果的參數(shù)才是最準(zhǔn)確、可靠的。</p><p><b> 4 設(shè)計結(jié)果</b></p><p> 將表1中的累積產(chǎn)液量(Lp)和相應(yīng)的累積產(chǎn)油量(NP)數(shù)據(jù),按照(3-21)式的直線關(guān)系繪于圖4-1,得到了一條很好的直線。經(jīng)線性回歸求得直線的截距A=2.50;直線的斜率B=0.000502;直線的相關(guān)系數(shù)r
39、=0.9999。</p><p> 圖4-1 該油田的乙型水驅(qū)曲線</p><p> 將表1中的Log(Qo/t)和相應(yīng)的t^(b+1)數(shù)據(jù),按照(3-34)式的直線關(guān)系繪于圖4-2,得到了一條很好的直線。經(jīng)線性回歸求得直線的截距=1.32;直線的斜率=-0.00132;參數(shù)a=21.002,b=1.1,c=328.039,直線的相關(guān)系數(shù)r=0.9990。</p><
40、;p> 圖4-2 該油田的weibull曲線</p><p> 在確定預(yù)測模型常數(shù)a、b、c后,利用(3-18)式、(3-19)式、(3-28)式計算油田年產(chǎn)油量、計算油田累積產(chǎn)油量、計算含水率如下表:</p><p><b> 表4-1 數(shù)據(jù)表</b></p><p> 計算可采儲量:NR =3280.639(104t),計算最
41、高年產(chǎn)量發(fā)生的時間:11.897a,計算最高年產(chǎn)量:Qmax=184.302(104t)。</p><p> 預(yù)測的理論產(chǎn)油量、累積產(chǎn)油量和含水率,與實際產(chǎn)油量、累積產(chǎn)油量和含水率進行對比。按照(3-18)式的關(guān)系在同一坐標(biāo)系中繪制實際產(chǎn)量與預(yù)測產(chǎn)量及其對應(yīng)時間t之間的關(guān)系曲線,繪于圖4-3。</p><p> 圖4-3 產(chǎn)量與時間關(guān)系曲線</p><p>
42、按照(3-19)式的關(guān)系在同一坐標(biāo)系中繪制實際累計產(chǎn)量與預(yù)測累計產(chǎn)量及其對應(yīng)時間t之間的關(guān)系曲線,繪于圖4-4。</p><p> 圖4-4 累計產(chǎn)量與時間關(guān)系曲線</p><p> 按照(3-28)式的關(guān)系在同一坐標(biāo)系中繪制實際含水率與預(yù)測含水率及其對應(yīng)時間t之間的關(guān)系曲線,繪于圖4-5。</p><p> 圖4-5 含水率與時間關(guān)系曲線</p>
43、<p><b> 認識與結(jié)論</b></p><p> 通過本次課程設(shè)計,得出如下認識與結(jié)論:</p><p> ?。?)通過此次油田開發(fā)的課程設(shè)計,我基本掌握了威布爾(Weibull)模型與乙型水驅(qū)曲線聯(lián)解法,并能初步對油田進行預(yù)測分析。</p><p> (2)通過這次的課程設(shè)計,培養(yǎng)了我獨立思考和動手操作的能力,也使我
44、在日常的學(xué)習(xí)與討論當(dāng)中增長了許多課外知識,認識到數(shù)學(xué)模型對油氣田的產(chǎn)量預(yù)測的重要性。雖然在課程設(shè)計的過程中遇到了一些問題,但經(jīng)過反復(fù)的思考與檢查找出原因所在并進行改正。</p><p> (3)通過計算機的編程學(xué)習(xí)與操作,使我對VB語言有了更進一步的認識和了解。同時,提高了使用計算機技應(yīng)用的能力以及解決實際問題的工程應(yīng)用能力,使理論與實踐相結(jié)合。</p><p> ?。?)現(xiàn)在能熟練掌握
45、、運用威布爾(Weibull)模型與乙型水驅(qū)曲線聯(lián)解法的原理、推導(dǎo)及公式,可以對油氣田的年產(chǎn)量、累計產(chǎn)量、含水率、可采儲量、最高年產(chǎn)量、最高年產(chǎn)量發(fā)生的時間以及與最高年產(chǎn)量對應(yīng)的累積產(chǎn)量進行預(yù)測。</p><p> (5)這次課程設(shè)計,使我認識到學(xué)好計算機的重要性與實踐操作的必要性,在老師的指導(dǎo)下和與同學(xué)的討論中,不斷地發(fā)現(xiàn)問題、不斷地解決問題、不斷地領(lǐng)悟、不斷地獲取,使自己的程序不斷完善。</p>
46、<p> ?。?)課程設(shè)計誠然是一門專業(yè)課,它給了我很多的專業(yè)知識以及專業(yè)上的提升。課程設(shè)計同時又是一門講道課,一門思辨課,給了我許多道,給了我許多思,得到很大的提升空間。</p><p><b> 參考文獻</b></p><p> [1]陳元千.預(yù)測油氣田產(chǎn)量的Weibull模型[J].新疆石油地質(zhì),1995,16(3):250-255.<
47、/p><p> [2]童憲章.天然水驅(qū)和人工注水油藏的統(tǒng)計規(guī)律探討[J].石油勘探與開發(fā),1978,4(6):38-64.</p><p> [3] 陳元千.一種新型水驅(qū)曲線關(guān)系式的推導(dǎo)及應(yīng)用[J].石油學(xué)報,1993,14(2):65-73.</p><p> [4] 陳元千.水驅(qū)曲線關(guān)系式的推導(dǎo)[J]. 石油學(xué)報,1985,6(2):69-78.</p&
48、gt;<p> 附錄:計算機程序與結(jié)果</p><p><b> 計算機程序</b></p><p> Option Base 0</p><p> Const e = 2.708281828</p><p> Dim a, t(200), qt(200), t0(200), q0(200), q
49、w(200), ye(200), wp(200)</p><p> Dim b, c, d</p><p> Dim afw, qmax, tm, NR, x, y, a1, a2, r, rmax, bmax, aa1, bb1, cc1, ub, aa, ab, ar, br, yt, an, bn, mn</p><p> Dim s(), px(),
50、py()</p><p> Dim sx, sy, sxy, sx2, sy2</p><p> Dim np(200), lp(200)</p><p> Dim yq0(200), ynp(200), yfw(200), ynr, fw(200)</p><p> Private Sub c1_Click()</p>
51、<p><b> yt = 50</b></p><p><b> Rem 源數(shù)據(jù)輸入</b></p><p> Open App.Path + "\cd.txt" For Input As #1</p><p><b> ub = -1</b></p&g
52、t;<p> Do Until EOF(1)</p><p> ub = ub + 1</p><p> Input #1, ye(ub), t(ub), q0(ub), qw(ub), np(ub), wp(ub), lp(ub)</p><p> lp(ub) = Log(lp(ub)) / Log(10)</p><p
53、><b> Loop</b></p><p><b> Close #1</b></p><p> Private Sub c5_Click()</p><p> Rem 乙型參數(shù)計算</p><p> For an = ub To 2 Step -1
54、 '求相關(guān)系數(shù)r,趨勢線</p><p> sx = 0: sy = 0: sxy = 0: sx2 = 0: sy2 = 0</p><p> l = ub - an</p><p> For i = l To an + l</p><p> sx = sx + np(i)</p&
55、gt;<p><b> Next i</b></p><p> For i = l To an + l</p><p> sy = sy + lp(i)</p><p><b> Next i</b></p><p> For i = l To an + l</p>
56、;<p> sxy = sxy + np(i) * lp(i)</p><p><b> Next i</b></p><p> For i = l To an + l</p><p> sx2 = sx2 + np(i) ^ 2</p><p><b> Next i</b>
57、;</p><p> For i = l To an + l</p><p> sy2 = sy2 + lp(i) ^ 2</p><p><b> Next i</b></p><p> a2 = ((an + 1) * sxy - sx * sy) / ((an + 1) * sx2 - sx ^ 2)<
58、;/p><p> a1 = (sx2 * sy - sx * sxy) / ((an + 1) * sx2 - sx ^ 2)</p><p> r = ((an + 1) * sxy - sx * sy) / (((an + 1) * sx2 - sx ^ 2) ^ 0.5 * ((an + 1) * sy2 - sy ^ 2) ^ 0.5)</p><p>&l
59、t;b> '取最大值r</b></p><p> If r > ar Then ar = r</p><p><b> Next an</b></p><p><b> aa = a1</b></p><p><b> ab = a2</b&
60、gt;</p><p> Form3.Text1.Text = aa '截距,參數(shù)A</p><p> Form3.Text2.Text = ab '斜率,參數(shù)B</p><p> Form3.Text3.Text = ar '最
61、大相關(guān)系數(shù)</p><p> Form3.Show</p><p> Rem weibull參數(shù)計算</p><p><b> bn = 12</b></p><p> l = ub - bn</p><p><b> bmax = 0</b></p>
62、<p><b> rmax = 0</b></p><p> For b = 1 To 2 Step 0.05</p><p> sx = 0: sy = 0: sxy = 0: sx2 = 0: sy2 = 0</p><p> For i = l To l + bn</p><p> t(i)
63、= i + 1</p><p><b> Next i</b></p><p> For i = l To l + bn</p><p> qt(i) = Log(q0(i) / (t(i) ^ b)) / Log(10)</p><p> t0(i) = t(i) ^ (b + 1)</p>&l
64、t;p><b> Next i</b></p><p> For i = l To l + bn</p><p> sx = sx + t0(i)</p><p><b> Next i</b></p><p> For i = l To l + bn</p><
65、p> sy = sy + qt(i)</p><p><b> Next i</b></p><p> For i = l To l + bn</p><p> sxy = sxy + qt(i) * t0(i)</p><p><b> Next i</b></p>
66、<p> For i = l To l + bn</p><p> sx2 = sx2 + t0(i) ^ 2</p><p><b> Next i</b></p><p> For i = l To l + bn</p><p> sy2 = sy2 + qt(i) ^ 2</p>
67、<p><b> Next i</b></p><p> r = Abs(((bn + 1) * sxy - sx * sy) / (((bn + 1) * sx2 - sx ^ 2) ^ 0.5 * ((bn + 1) * sy2 - sy ^ 2) ^ 0.5))</p><p><b> '最大相關(guān)系數(shù)</b><
68、;/p><p> If r > rmax Then 'r取最大值</p><p><b> rmax = r</b></p><p><b> bmax = b</b></p><p> a2 = ((bn + 1) * sxy - sx * sy) / ((b
69、n + 1) * sx2 - sx ^ 2)</p><p> a1 = (sx2 * sy - sx * sxy) / ((bn + 1) * sx2 - sx ^ 2)</p><p><b> End If</b></p><p><b> Next b</b></p><p> aa
70、1 = 10 ^ a1</p><p> bb1 = bmax</p><p> cc1 = -1 / (2.303 * a2)</p><p> afw = 100 * (1 - 10 ^ (-(aa + ab * aa1 * cc1 / (bb1 + 1) + Log(2.303 * ab) / Log(10))))</p><p>
71、; '極限含水率fw公式,fw=1-10(-A+B(a*c/(b+1)(1-exp(-t^(b+1)/c))))</p><p> tm = (bb1 * cc1 / (bb1 + 1)) ^ (1 / (bb1 + 1))</p><p> '最高年產(chǎn)量對應(yīng)時間tm公式,tm=(b*c/(b+1))^(1/(b+1))</p><p> q
72、max = aa1 * (bb1 * cc1 / (bb1 + 1)) ^ (bb1 / (bb1 + 1)) * Exp(-bb1 / (bb1 + 1))</p><p> '最高年產(chǎn)量Qmax公式,Qmax=a*(b*c/(b+1))^(b/(b+1))*exp(-b/(b+1))</p><p> NR = aa1 * cc1 / (bb1 + 1)</p>
73、<p> '可采儲量NR公式,NR=a*c/(b+1)</p><p> Form3.Text4.Text = a2 '斜率</p><p> Form3.Text5.Text = a1 '截距</p><p> Form3.Text6.Text = rmax
74、 '最大相關(guān)系數(shù)</p><p> Form3.Text7.Text = aa1 '參數(shù)a</p><p> Form3.Text8.Text = bb1 '參數(shù)b</p><p> Form3.Text9.Text = cc1 '參數(shù)c</p&
75、gt;<p> Form3.Text10.Text = afw '極限含水率</p><p> Form3.Text11.Text = qmax '最高年產(chǎn)量</p><p> Form3.Text12.Text = tm '最高年產(chǎn)量對應(yīng)時間</p><p>
76、; Form3.Text13.Text = NR '可采儲量</p><p><b> Rem 預(yù)測數(shù)據(jù)</b></p><p> For i = 0 To yt</p><p> t(i) = i + 1</p><p> yq0(i) = Round(aa1 * (t(i)
77、^ bb1) * (e ^ (-t(i) ^ (bb1 + 1) / cc1)), 2)</p><p> ynp(i) = Round(aa1 * cc1 * (1 - (e ^ (-t(i) ^ (bb1 + 1) / cc1))) / (bb1 + 1), 2)</p><p> If i <= ub Then fw(i) = Round(100 * qw(i) / (qw
78、(i) + q0(i)), 2)</p><p> yfw(i) = Round(100 * (1 - 10 ^ (-(aa + ab * ynp(i) + Log(2.303 * ab) / Log(10)))), 2)</p><p> If yfw(i) < 0 Then yfw(i) = 0</p><p><b> Next i<
79、;/b></p><p><b> mn = 50</b></p><p><b> Rem 表格輸出</b></p><p> MSFlexGrid1.ColWidth(0) = 1000 '表格行寬</p><p> MSFlexGrid
80、1.ColWidth(1) = 1200</p><p> MSFlexGrid1.ColWidth(2) = 1200</p><p> MSFlexGrid1.ColWidth(3) = 1200</p><p> MSFlexGrid1.ColWidth(4) = 1200</p><p> MSFlexGrid1.ColWid
81、th(5) = 1200</p><p> MSFlexGrid1.ColWidth(6) = 1200</p><p> MSFlexGrid1.Rows = 201</p><p> MSFlexGrid1.Cols = 7</p><p> MSFlexGrid1.Width = MSFlexGrid1.ColWidth(1)
82、* MSFlexGrid1.Cols + MSFlexGrid1.Cols * 12</p><p> 'MSFlexGrid1.Height = MSFlexGrid1.RowHeight(1) * MSFlexGrid1.Rows + MSFlexGrid1.Rows * 12</p><p> MSFlexGrid1.TextMatrix(0, 0) = "時間
83、/a"</p><p> MSFlexGrid1.TextMatrix(0, 1) = "實際產(chǎn)量"</p><p> MSFlexGrid1.TextMatrix(0, 2) = "預(yù)測產(chǎn)量"</p><p> MSFlexGrid1.TextMatrix(0, 3) = "實際累計產(chǎn)量"
84、</p><p> MSFlexGrid1.TextMatrix(0, 4) = "預(yù)測累計產(chǎn)量"</p><p> MSFlexGrid1.TextMatrix(0, 5) = "實際含水率%"</p><p> MSFlexGrid1.TextMatrix(0, 6) = "預(yù)測含水率%"<
85、/p><p> For i = 0 To mn</p><p> MSFlexGrid1.TextMatrix(i + 1, 0) = Format(t(i), "0.##")</p><p> MSFlexGrid1.TextMatrix(i + 1, 1) = Format(q0(i), "0.##")</p>
86、;<p> MSFlexGrid1.TextMatrix(i + 1, 2) = Format(yq0(i), "0.##")</p><p> MSFlexGrid1.TextMatrix(i + 1, 3) = Format(np(i), "0.##")</p><p> MSFlexGrid1.TextMatrix(i +
87、1, 4) = Format(ynp(i), "0.##")</p><p> MSFlexGrid1.TextMatrix(i + 1, 5) = Format(fw(i), "0.##")</p><p> MSFlexGrid1.TextMatrix(i + 1, 6) = Format(yfw(i), "0.##")&
88、lt;/p><p><b> Next i</b></p><p><b> '橫縱坐標(biāo)</b></p><p> With MSChart1</p><p> .ColumnCount = 2</p><p> .Plot.SeriesCollection(1
89、).Pen.Width = 15</p><p> .Plot.SeriesCollection(1).Pen.Style = VtPenStyleSolid</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.Auto = True</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.A
90、uto = True</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 0</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.Minimum = 0</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.MajorDivision
91、= 6</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 6</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.MinorDivision = 0</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.MinorDivi
92、sion = 0</p><p> .Plot.Axis(VtChAxisIdX).AxisGrid.MajorPen.Style = VtPenStyleDotted</p><p> .Plot.Axis(VtChAxisIdY).AxisGrid.MajorPen.Style = VtPenStyleDotted</p><p> MSChart1.Pl
93、ot.AutoLayout = False</p><p> MSChart1.Plot.UniformAxis = False</p><p> MSChart1.chartType = VtChChartType2dXY '二維坐標(biāo)</p><p> .Column = 1</p><p><b> End
94、With</b></p><p> With MSChart2</p><p> .ColumnCount = 2</p><p> .Plot.SeriesCollection(1).Pen.Width = 15</p><p> .Plot.SeriesCollection(1).Pen.Style = VtPenSt
95、yleSolid</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.Auto = True</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.Auto = True</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 0</
96、p><p> .Plot.Axis(VtChAxisIdX).ValueScale.Minimum = 0</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.MajorDivision = 6</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 6</p
97、><p> .Plot.Axis(VtChAxisIdX).ValueScale.MinorDivision = 0</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.MinorDivision = 0</p><p> .Plot.Axis(VtChAxisIdX).AxisGrid.MajorPen.Style = VtP
98、enStyleDotted</p><p> .Plot.Axis(VtChAxisIdY).AxisGrid.MajorPen.Style = VtPenStyleDotted</p><p> MSChart1.Plot.AutoLayout = False</p><p> MSChart1.Plot.UniformAxis = False</p&
99、gt;<p> MSChart1.chartType = VtChChartType2dXY</p><p> .Column = 1</p><p><b> End With</b></p><p> With MSChart3</p><p> .ColumnCount = 2</p&
100、gt;<p> .Plot.SeriesCollection(1).Pen.Width = 15</p><p> .Plot.SeriesCollection(1).Pen.Style = VtPenStyleSolid</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.Auto = True</p><p&g
101、t; .Plot.Axis(VtChAxisIdY).ValueScale.Auto = True</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 0</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.Minimum = 0</p><p> .Plot.Axi
102、s(VtChAxisIdX).ValueScale.MajorDivision = 6</p><p> .Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 6</p><p> .Plot.Axis(VtChAxisIdX).ValueScale.MinorDivision = 0</p><p> .Plo
103、t.Axis(VtChAxisIdY).ValueScale.MinorDivision = 0</p><p> .Plot.Axis(VtChAxisIdX).AxisGrid.MajorPen.Style = VtPenStyleDotted</p><p> .Plot.Axis(VtChAxisIdY).AxisGrid.MajorPen.Style = VtPenStyle
104、Dotted</p><p> MSChart1.Plot.AutoLayout = False</p><p> MSChart1.Plot.UniformAxis = False</p><p> MSChart1.chartType = VtChChartType2dXY</p><p> .Column = 1</p&g
105、t;<p><b> End With</b></p><p><b> End Sub</b></p><p> Private Sub c2_Click()</p><p> MSFlexGrid1.Visible = True '輸出數(shù)據(jù)在表格內(nèi)</
106、p><p><b> Rem 曲線繪制</b></p><p><b> Rem 數(shù)據(jù)輸出</b></p><p><b> End Sub</b></p><p> Private Sub c3_Click()</p><p><b>
107、 '文件輸出</b></p><p> Open App.Path + "3.txt" For Output As #2</p><p> Print #2, "年份", "時間", "預(yù)測產(chǎn)量", "預(yù)測累計產(chǎn)量", "預(yù)測含水率"</p&
108、gt;<p> For i = 0 To yt</p><p> Print #2, ye(0) + i, i + 1, yq0(i), ynp(i), yfw(i)</p><p><b> Next i</b></p><p><b> Close #2</b></p><p&
109、gt;<b> Print</b></p><p><b> End Sub</b></p><p> Private Sub c4_Click()</p><p><b> End</b></p><p><b> End Sub</b><
110、;/p><p> Private Sub d1_Click()</p><p> '理論產(chǎn)油量Qo與時間t的關(guān)系曲線繪制</p><p> MSChart1.Visible = True</p><p> ReDim px(yt), py(yt), s(yt, 3)</p><p> 'st =
111、yt / 500</p><p> For i = 1 To mn</p><p><b> px(i) = i</b></p><p> py(i) = aa1 * (px(i) ^ bb1) * (e ^ (-px(i) ^ (bb1 + 1) / cc1)) '理論產(chǎn)油量Qo公式</p><p>
112、<b> '實際散點</b></p><p> s(i, 0) = px(i)</p><p> s(i, 1) = q0(i)</p><p><b> '預(yù)測曲線</b></p><p> s(i, 2) = px(i)</p><p> s(
113、i, 3) = py(i)</p><p><b> Next i</b></p><p><b> '散點</b></p><p> Dim Index As Integer</p><p> Index = 1 '設(shè)置圖標(biāo)類型為非自動選擇,這樣可以設(shè)置為自己需要的類型&l
114、t;/p><p> MSChart1.Plot.SeriesCollection(Index).ShowLine = False '去除連線??!</p><p> MSChart1.Plot.SeriesCollection.Item(Index).SeriesMarker.Auto = False</p><p> With MSChart1.Plot.
115、SeriesCollection.Item(Index).DataPoints.Item(-1).Marker</p><p> .Visible = True '散點的點是否可見</p><p> .Size = 120 '散點的大小</p><p> .Style = VtMarkerStyleFilledDiamond
116、9;選擇菱形的</p><p> .FillColor.Automatic = False '顏色不自動填充</p><p> .FillColor.Set 400, 15, 400 '設(shè)置為紫紅色</p><p> .Pen.VtColor.Set 400, 15, 400 '同樣這個也必須設(shè)置,否則中間有默認的顏色</p>
117、;<p><b> End With</b></p><p><b> '橫縱坐標(biāo)表示</b></p><p> With Form1.MSChart1</p><p> .Plot.Axis(VtChAxisIdX, 0).AxisTitle = "t"</p>
118、;<p> .Plot.Axis(VtChAxisIdY, 0).AxisTitle = "Qo"</p><p> .Title.Text = "Qo與t關(guān)系曲線"</p><p><b> End With</b></p><p> MSChart1.ChartData = s
119、 '顯示圖形</p><p><b> End Sub</b></p><p> Private Sub d2_Click()</p><p> '累積產(chǎn)油量Np與時間t的關(guān)系曲線</p><p> MSChart2.Visible = True</p><p>
120、ReDim px(yt), py(yt), s(yt, 3)</p><p> 'st = yt / 500</p><p> For i = 1 To mn</p><p><b> px(i) = i</b></p><p> py(i) = aa1 * cc1 * (1 - (e ^ (-px(i)
121、 ^ (bb1 + 1) / cc1))) / (bb1 + 1) '累計產(chǎn)油量Np公式</p><p><b> '實際散點</b></p><p> s(i, 0) = px(i)</p><p> s(i, 1) = np(i)</p><p><b> '預(yù)測曲線&
122、lt;/b></p><p> s(i, 2) = px(i)</p><p> s(i, 3) = py(i)</p><p><b> Next i</b></p><p><b> '散點</b></p><p> Dim Index As In
123、teger</p><p> Index = 1 '設(shè)置圖標(biāo)類型為非自動選擇,這樣可以設(shè)置為自己需要的類型</p><p> MSChart2.Plot.SeriesCollection(Index).ShowLine = False '去除連線??!</p><p> MSChart2.Plot.SeriesCollection.Item(In
124、dex).SeriesMarker.Auto = False</p><p> With MSChart2.Plot.SeriesCollection.Item(Index).DataPoints.Item(-1).Marker</p><p> .Visible = True '散點的點是否可見</p><p> .Size = 120
125、'散點的大小</p><p> .Style = VtMarkerStyleFilledDiamond '選擇菱形的</p><p> .FillColor.Automatic = False '顏色不自動填充</p><p> .FillColor.Set 400, 15, 400 '設(shè)置為紫紅色</p><
126、;p> .Pen.VtColor.Set 400, 15, 400 '同樣這個也必須設(shè)置,否則中間有默認的顏色</p><p><b> End With</b></p><p> With Form1.MSChart2</p><p> .Plot.Axis(VtChAxisIdX, 0).AxisTitle = &qu
127、ot;t"</p><p> .Plot.Axis(VtChAxisIdY, 0).AxisTitle = "Np"</p><p> .Title.Text = "Np與t關(guān)系曲線"</p><p><b> End With</b></p><p><b&
128、gt; '顯示圖形</b></p><p> MSChart2.Column = 2</p><p> MSChart2.Plot.UniformAxis = False '自動調(diào)節(jié)圖形大小</p><p> MSChart2.ChartData = s</p><p><
129、;b> End Sub</b></p><p> Private Sub d3_Click()</p><p> '含水率fw與時間t的關(guān)系曲線</p><p> MSChart3.Visible = True</p><p> ReDim px(yt), py(yt), s(yt, 3)</p>
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微課程設(shè)計與開發(fā)模型研究
- 石油工程畢業(yè)論文-預(yù)測水驅(qū)油田開發(fā)指標(biāo)及可采儲量的聯(lián)解法
- 常微分方程數(shù)值解法課程設(shè)計報告
- 課程設(shè)計與開發(fā)
- 課程設(shè)計與開發(fā)
- 曲線軌道設(shè)計課程設(shè)計
- 威布爾分析方法
- 安卓開發(fā)課程設(shè)計報告
- vc++課程設(shè)計報告---橫向繪制余弦曲線
- 壽命資料威布爾分布模型的樣本量估算.pdf
- 企業(yè)網(wǎng)站與開發(fā)系統(tǒng)課程設(shè)計報告
- 水控課程設(shè)計
- web開發(fā)技術(shù)課程設(shè)計報告
- solidworks制作手機模型課程設(shè)計報告
- 管理數(shù)據(jù)庫原理與開發(fā)課程設(shè)計報告
- 隧道課程設(shè)計---曲線隧道加寬
- 旅游規(guī)劃與開發(fā)課程設(shè)計
- 培訓(xùn)課程設(shè)計與開發(fā)體系設(shè)計
- 化工原理課程設(shè)計報告---乙醇~水精餾裝置設(shè)計
- 課程設(shè)計報告--數(shù)獨小游戲的開發(fā)
評論
0/150
提交評論