宋晶晶
摘要: 船舶靜水力曲線是船舶設(shè)計(jì)過(guò)程中的重要技術(shù)資料,船舶浮性曲線是船舶靜水力曲線的一部分。傳統(tǒng)方法是用表格進(jìn)行數(shù)值計(jì)算,雖然計(jì)算原理比較簡(jiǎn)明,但由于船體線型的離散性,數(shù)據(jù)處理量相當(dāng)大,過(guò)程繁瑣。利用Visual FoxPro的強(qiáng)大功能,可以很方便地實(shí)現(xiàn)船舶浮性曲線的計(jì)算,不但能減輕計(jì)算的工作量,而且能提高精確度。
關(guān)鍵詞: 船舶靜水力曲線船舶浮性曲線Visual FoxPro
一、引言
船舶靜水力曲線是船舶設(shè)計(jì)過(guò)程中的重要技術(shù)資料,全面表達(dá)了船舶在靜止正浮狀態(tài)下浮性和穩(wěn)性要素隨吃水而變化的規(guī)律,并作為穩(wěn)性計(jì)算、縱傾計(jì)算及其他計(jì)算的基礎(chǔ),經(jīng)常用來(lái)計(jì)算與航海性能有關(guān)的性能參數(shù)。船舶浮性曲線是船舶靜水力曲線的一部分,傳統(tǒng)方法是用表格進(jìn)行數(shù)值計(jì)算。雖然計(jì)算原理比較簡(jiǎn)明,但由于船體線型的離散型,數(shù)據(jù)處理量相當(dāng)大,過(guò)程繁瑣,因此有必要開(kāi)發(fā)一套以計(jì)算機(jī)為平臺(tái)的船舶浮性曲線計(jì)算軟件。
二、開(kāi)發(fā)環(huán)境
Visual FoxPro 6.0是微軟公司推出的一款速度快、高效靈活、功能強(qiáng)大、面向?qū)ο蟮年P(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),它采用了可視化的操作界面、面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,使用Reshmore查詢優(yōu)化技術(shù)提高了系統(tǒng)性能。無(wú)論是組織信息、運(yùn)行查詢、創(chuàng)建集成的關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),還是為最終用戶建立功能全面的數(shù)據(jù)庫(kù)管理應(yīng)用系統(tǒng),Visual FoxPro6.0都能有效地完成。
三、船舶浮性曲線的計(jì)算
1.型值表端點(diǎn)坐標(biāo)修正
船舶浮性曲線的數(shù)據(jù)計(jì)算通常按梯形法進(jìn)行,各船舶設(shè)計(jì)單位所制定的表格形式上雖略有差異,但基本原理是完全一致的。由于船體型線在艏艉端和舭部曲度變化較大,為了提高計(jì)算精度,往往在進(jìn)行浮性參數(shù)計(jì)算之前運(yùn)用增加中間坐標(biāo)或端點(diǎn)坐標(biāo)修正的方法針對(duì)艏艉和舭部的型值進(jìn)行修正。
2.浮性曲線的介紹
型排水體積曲線▽=f(z)、總排水體積曲線▽k=f(z)、總排水量曲線△=f(z)、浮心縱向坐標(biāo)曲線X=f(z)、浮心豎向坐標(biāo)曲線Z=f(z)、漂心縱向坐標(biāo)曲線X=f(z)、水線面面積曲線A=f(z)、每厘米吃水噸數(shù)曲線TPC=f(z)。其計(jì)算公式如下:
A=2?蘩yd x≈2δL?∑′y
公式中,∑′y=y+y+…y+y-
3.計(jì)算浮性曲線的程序代碼
首先在text1中輸入站號(hào)數(shù),單擊“確定”按鈕Command1。
Command1的click事件代碼:
zh=val(thisform.text1.value)&&將text1.value轉(zhuǎn)換成數(shù)值,保存在變量zh中
public declare sxbk(zh),mjcs(zh),gjcs(zh),mjhs(zh),;
gjhs(zh),sxbklf(zh)
*定義后續(xù)相關(guān)的水線半寬、面矩乘數(shù)、慣矩乘數(shù)、面矩函數(shù)、慣矩函數(shù)、水線半寬立方等公共數(shù)組
thisform.Command4.enabled=.t.&&使“確定”按鈕Command4生效
相關(guān)參數(shù)輸入完畢,單擊“計(jì)算”按鈕Command5。
Command5的click事件代碼(只截取到AW有關(guān)的部分):
if fl=0 or fb=0
messagebox(′還未輸入垂線間長(zhǎng)或船寬!′,′系統(tǒng)提示′)
return
endif
dL=L/(zh-1)
for i=1 to zh
mjcs(i)=i-ceiling(zh/2)
endfor
for i=1 to zh
gjcs(i)=mjcs(i)^2 &&慣矩乘數(shù)
endfor
for i=1 to zh
mjhs(i)=sxbk(i)*mjcs(i)&&面矩函數(shù)
endfor
for i=1 to zh
gjhs(i)=sxbk(i)*gjcs(i) &&慣矩函數(shù)
endfor
for i=1 to zh
sxbklf(i)=sxbk(i)^3 &&水線半寬立方
endfor
s1=0
for i=1 to zh &&求各站點(diǎn)水線半寬總和
s1=s1+sxbk(i)&&水線半寬總和
endfor
sxbkxz=s1-(sxbk(1)+sxbk(zh))/2&&水線半寬修正后
thisform.label5.caption=′Aw′+alltrim(str(n1))
AW=2*dL*sxbkxz
四、結(jié)語(yǔ)
在Visual FoxPro中實(shí)現(xiàn)船舶浮性曲線的計(jì)算,不但減輕了船舶計(jì)算的工作量,而且提高了計(jì)算的精確度,為船舶設(shè)計(jì)提供了準(zhǔn)確的數(shù)據(jù),從而顯著提高了船舶設(shè)計(jì)工作的效率,縮短了整個(gè)造船的周期,在高校的教學(xué)示范中也起到了良好的演示作用。
參考文獻(xiàn):
[1]盛振邦.船舶靜力學(xué).上海:上海交通大學(xué)出版社,1991.
[2]劉雪梅.船舶原理.哈爾濱:哈爾濱工程大學(xué)出版社,2005.
[3]熊發(fā)涯.Visual FoxPro程序設(shè)計(jì).中國(guó)鐵道出版社,2005.