資源描述:
《vb與fortran混合編程及在管網(wǎng)中的應(yīng)用》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、VB與FORTRAN混合編程及在管網(wǎng)中的應(yīng)用第25卷第3期2006年6月建筑熱能通風(fēng)空調(diào)BuildingEnergy&EnvironmentV0l-25No.3Jun.2oo6.96—99文章編號:1003.0344(2006)03.096.4VB與FORTRAN混合編程及在管網(wǎng)中的應(yīng)用徐楠王樹剛李持佳z王楠?(1大連理工大學(xué)土木水利學(xué)院;2哈爾濱T業(yè)大學(xué)市政環(huán)境工程學(xué)院)摘要:本文論述了VB和FORTRAN兩種語言混合編程的方法,探討如何在FORTRAN語言中建立動態(tài)連接庫以及在VB中實現(xiàn)對動態(tài)連接庫的調(diào)用,
2、最終實現(xiàn)VB語言優(yōu)秀的界面開發(fā)功能與F0RTRAN語言強大計算功能的結(jié)合.基于熱水管網(wǎng)流量調(diào)節(jié)的一個示例,給出這兩種算法語言混合編程的具體實現(xiàn)過程.關(guān)鍵詞:混合編程動態(tài)連接庫管網(wǎng)調(diào)節(jié)VisualBasic/FORTRANMixed—LanguageProgrammingandItsApplicationinPipeNetworksXuNan,WangShugang.LiChijiaandWangNan(1SchoolofCivilandHydraulicEngineering,DalianUniversityofTec
3、hnology;2SchoolofMunicipalandEnvironmentalEngineering,HarbinInstituteofTechnology)Abstract:Themethodofmixed—languageprogrammingofVisualBasic(VB)andFORTRANispresented.PerfectcombinationofVB'SexcellentinterfaceandFORTRAN'Spowerfulcalculatingfunctioniscometruebystu
4、dyingonhowtocallFORTRAN'Sdynamic—linklibrary(DEE)inVisualBasic.Basedontheexampleofhotwaterpipenetworkadjusting,implementationprocedureofVB/FORTRANmixed—languageprogrammingisintroduced.Keywords:mixed—languageprogramming,DLL,pipenetwork,adjusting0引言不論是編制暖通空調(diào)管網(wǎng)系統(tǒng)的水
5、力計算程序還是開發(fā)管網(wǎng)水力計算軟件,都將涉及到大量的數(shù)學(xué)計算,用FORTRAN算法語言很容易實現(xiàn).現(xiàn)有的有關(guān)工程應(yīng)用領(lǐng)域的大量計算資源大多也是用FORTRAN語言編寫的.然而其不足之處在于它進(jìn)行可視化編程難度較大,開發(fā)前后處理功能明顯不如其他高級語言方便,實用.VisualBasic語言(以下簡稱為VB)以其能迅速有效地編制優(yōu)良的交互界面設(shè)計性能,被越來越廣泛地應(yīng)用于Windows環(huán)境下系統(tǒng)的可視化界面設(shè)計.但VB的缺點在于運算速度慢,不適合進(jìn)行大型數(shù)值計算.如果能將FORTRAN與VB語言結(jié)合起來,則可以充分發(fā)揮它們
6、的優(yōu)勢.這樣使用混合編程的方法即可充分利用前者強大的計算功能,又能方便地設(shè)計友好的用戶界面.在暖通空調(diào)管網(wǎng)系統(tǒng)的初調(diào)節(jié)和運行調(diào)節(jié)中,常常采用計算機模擬分析方法.這些模擬程序往往采用FORTRAN語言編制,遠(yuǎn)遠(yuǎn)落后于目前流行的基于Windows的可視化應(yīng)用環(huán)境.本文介紹如何用FORTRAN與VB語言混和編程.結(jié)合管網(wǎng)系統(tǒng)調(diào)節(jié)的示例,提供這兩種語言混合編程的具體實現(xiàn)過程.1VB和FORTRAN語言混合編程方法用FORTRAN語言編寫計算程序通過CompaqVisualFortran6.5(CVF6.5)編譯成Dynamic
7、LinkLibra(動態(tài)鏈接庫,簡寫為DLL),用VB語言構(gòu)造界收稿日期2005.5.23作者簡介:徐楠(1980~),女,在讀碩士研究生;大連理工大學(xué)暖通教研室(I16024);041卜84707684;E'mail:xunan369@yahoo?corn?cn第25卷第3期徐楠等:VB與FORTRAN混合編程及在管網(wǎng)中的應(yīng)用.97.面,并調(diào)用FORTRAN程序的DLL文件.通過參數(shù)傳遞來實現(xiàn)它們之間的數(shù)據(jù)交換,計算結(jié)束后,最終結(jié)果顯示在VB圖形界面上.1.1VB和FORTRAN混合語言編程中的難點VB和FORTRA
8、N混合編程所應(yīng)考慮的問題有:調(diào)用過程問題,傳遞參數(shù)問題和命名約定問題.對于FORTRAN基本調(diào)用約定有三種,即:STDCALL約定,C約定和FORTRAN缺省調(diào)用約定.使用這三種調(diào)用約定,在凋用子過程時,參數(shù)的傳遞都是按照從左到右的順序?qū)?shù)表中的變量對應(yīng)的傳遞給子過程.值得注意的問題是,FORTRAN語言是以引用傳遞為缺省傳遞方