国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

多組分纖維定量順序溶解方案的算法實(shí)現(xiàn)

2018-07-23 03:54:04陳健偉
福建輕紡 2018年7期
關(guān)鍵詞:回潮率百分率單元格

陳健偉

(福建出入境檢驗(yàn)檢疫局檢驗(yàn)檢疫技術(shù)中心,福建 福州 350003)

為適應(yīng)現(xiàn)代紡織品的性能需求,越來越多的紡織品采用了多組分纖維混紡的方式,從而對紡織纖維檢測工作提出了更高的要求?,F(xiàn)行標(biāo)準(zhǔn)FZ/T 01026-2017《紡織品 定量化學(xué)分析 多組分纖維混合物》給出了4組分乃至更多組分纖維混紡比的計(jì)算模型[1],其基本操作方法是將混合物中的各組分逐一溶解,類似于GB/T 2910.2-2009中的方案4[2]。該標(biāo)準(zhǔn)給出了n組分纖維混合物試樣凈干質(zhì)量百分率的計(jì)算公式(以下簡稱“通用計(jì)算式”),并以此為基礎(chǔ),對4/5/6組分混紡織物定量化學(xué)分析結(jié)果計(jì)算進(jìn)行了示例。若混合物纖維組分?jǐn)?shù)大于6,則應(yīng)利用通用計(jì)算式進(jìn)行計(jì)算。為簡化計(jì)算過程,避免因變量過多導(dǎo)致計(jì)算出錯(cuò),有必要利用計(jì)算機(jī)語言實(shí)現(xiàn)纖維定量順序溶解方案的算法。

VBA的英文全稱是Visual Basic for Application,是VB語言的子集,不但繼承了VB的開發(fā)機(jī)制,而且與VB有著相同的程序結(jié)構(gòu)和開發(fā)環(huán)境。它能簡單直觀地訪問Office軟件的各個(gè)部分,比如可以直接讀寫Excel單元格。這使我們學(xué)習(xí)程序設(shè)計(jì)變得非常直觀,能利用編程輕松地解決實(shí)際工作問題[3]。故選擇Excel中自帶的VBA開發(fā)工具實(shí)現(xiàn)上述算法,并開發(fā)出計(jì)算工具。

1 計(jì)算工具的界面設(shè)計(jì)

先新建一個(gè)Excel文件,另存為xlsm格式,然后打開此文件進(jìn)行計(jì)算工具界面的設(shè)計(jì)。確定需要輸入的內(nèi)容包括:試樣凈干質(zhì)量m、組分?jǐn)?shù)n、每一組分的名稱和公定回潮率、每一步溶解采用的試劑(用于確定質(zhì)量損失修正系數(shù),即d值)、每一步溶解完剩余的質(zhì)量r;需要輸出的內(nèi)容是各組分的凈干質(zhì)量百分率P或者公定質(zhì)量百分率PA(根據(jù)需要選擇)。

由于纖維類型及其回潮率、溶解試劑都是種類較多而相對固定的,這幾類數(shù)據(jù)通過下拉選擇的形式輸入較為合適;計(jì)算方式也可以設(shè)計(jì)成選擇的形式,備選項(xiàng)包括“凈干含量”和“結(jié)合回潮率含量”兩種。另外,由于d值較多,在點(diǎn)擊需要輸入d值的單元格時(shí),可根據(jù)纖維類型和溶解試劑給出相應(yīng)提示。根據(jù)這些思路,先在Sheet1工作表設(shè)計(jì)出工具主界面,見表1。

表1 計(jì)算工具主界面

其中,B1單元格用于輸入組分?jǐn)?shù),設(shè)置其數(shù)據(jù)有效性條件為“允許整數(shù),介于2到20”。D1單元格用于輸入凈干質(zhì)量m,設(shè)置其小數(shù)位數(shù)為4位。F1單元格設(shè)置其有效性條件為“允許序列,來源:凈干含量,結(jié)合回潮率”。第1列從A4開始往后的單元格用于輸入組分名稱,第2行從C2開始往后的單元格用于輸入試劑名稱;第3行從C3開始往后的單元格用于輸入每一步溶解完剩余的質(zhì)量r(小數(shù)位數(shù)也設(shè)為4位),第2列從B4開始往后的單元格用于顯示計(jì)算結(jié)果。此外,H1單元格用于顯示d值填寫提示。

為了便于纖維類型及其回潮率、溶解試劑的選擇輸入,在Sheet2工作表中設(shè)計(jì)出如圖2的備選資料界面(此表可擴(kuò)展)。然后將上述用于輸入組分名稱的單元格的有效性條件設(shè)置為“允許序列,來源==Sheet2!$A$2:$A$99”,用于輸入試劑名稱的單元格的有效性條件設(shè)置為“允許序列,來源=Sheet2!$C$2:$C$99”。至此完成工具界面設(shè)計(jì)。

圖2 備選資料界面

2 用VBA語言實(shí)現(xiàn)結(jié)果計(jì)算

首先,定義普通變量n、m和一維數(shù)組變量r、P、PA、A,以及二維數(shù)組變量d,以上變量的意義與標(biāo)準(zhǔn)一致;定義各個(gè)循環(huán)用的整型變量i、j、k,以及存放臨時(shí)計(jì)算數(shù)據(jù)的double型變量temp1、temp2。以下是各個(gè)模塊的主要功能。

2.1 組分?jǐn)?shù)n改變觸發(fā)事件

當(dāng)B1單元格內(nèi)容改變時(shí)觸發(fā)兩個(gè)事件,一是重新對n賦值,二是根據(jù)n的大小確定需要填寫的單元格區(qū)域,并用其他顏色高亮;同時(shí)參照FZ/T 01026-2017中表1的形式,在相應(yīng)單元格填上“溶解”、“--”等字樣,以便于辨識(shí)。代碼從略。

2.2 d值填寫提示

當(dāng)點(diǎn)擊需要填寫d值的單元格時(shí),根據(jù)此單元格位置,先找到對應(yīng)的纖維類型和溶解試劑,然后在H1單元格給出相應(yīng)的填寫提示,例如“聚酯纖維 在75%硫酸中損失系數(shù)”。代碼從略。

2.3 結(jié)果計(jì)算模塊

此模塊為核心模塊。先用各單元格填寫的內(nèi)容對相應(yīng)變量進(jìn)行賦值,然后計(jì)算。

先計(jì)算Pn:

temp1 = 1

For i = 1 To n - 1

temp1 = temp1 ? d(n, i)

Next

P(n) = Round(100 ? r(n - 1) ? temp1 / m, 2)

再計(jì)算Pk(2≤k≤n-1):

For k = n - 1 To 2 Step -1

temp1 = 0

For i = k + 1 To n

temp2 = 1

For j = 1 To k - 1

temp2 = temp2 ? d(i, j)

Next

temp2 = P(i) / temp2

temp1 = temp1 + temp2

Next

temp1 = 100 ? r(k - 1) / m - temp1

For j = 1 To k - 1

temp1 = temp1 ? d(k, j)

Next

P(k) = Round(temp1, 2)

Next

計(jì)算P1,完成凈干含量的求解:

P(1) = 100

For i = 2 To n

P(1) = P(1) - P(i)

Next

P(1) = Round(P(1), 2)

計(jì)算公定質(zhì)量百分率PA:

temp1 = 0

For i = 1 To n

A(i) = Application.VLookup(Cells(i + 3, 1),Sheet2.Range("A2:B99"), 2, False)

PA(i) = P(i) ? (1 + 0.01 ? A(i))

temp1 = temp1 + PA(i)

Next

PA(n) = 100

For i = 1 To n - 1

PA(i) = Round(100 ? PA(i) / temp1, 1)

PA(n) = Round(PA(n) - PA(i), 1)

Next

最后根據(jù)需要,將凈干質(zhì)量百分率P或公定質(zhì)量百分率PA填寫回對應(yīng)單元格,模塊結(jié)束。

2.4 其他模塊

包括“清空質(zhì)量記錄和結(jié)果”和“初始化”兩個(gè)模塊,前者用于同樣的實(shí)驗(yàn)條件下輸入新的m、r值進(jìn)行結(jié)果計(jì)算,后者用于初始化界面以設(shè)計(jì)新的實(shí)驗(yàn)條件。代碼從略。

3 計(jì)算結(jié)果驗(yàn)證

以FZ/T 01026-2017的附錄A~附錄C給出的示例[1],用本工具進(jìn)行計(jì)算,結(jié)果如表1(按照第1組分、第2組分、第3組分……的順序排列,用斜杠分隔開)。

由表1可見,本工具的計(jì)算結(jié)果與標(biāo)準(zhǔn)對比,在凈干質(zhì)量百分率P的結(jié)果里面僅有≤0.01%的計(jì)算誤差,由于足夠小可以忽略;而公定質(zhì)量百分率PA的結(jié)果則與標(biāo)準(zhǔn)完全一致;在填完各組數(shù)據(jù)后,運(yùn)行“計(jì)算”模塊馬上能得到結(jié)果,計(jì)算效率高。

表1 本工具計(jì)算結(jié)果與標(biāo)準(zhǔn)結(jié)果對照

4 小結(jié)

文章所描述的工具對于順序溶解方案通用性強(qiáng),計(jì)算結(jié)果準(zhǔn)確、計(jì)算過程高效,對簡化多組分纖維定量結(jié)果計(jì)算過程具有指導(dǎo)意義。使用時(shí)可以根據(jù)需要在工具中加入更多的功能,例如坩堝和稱量瓶質(zhì)量的輸入模塊,以及平行實(shí)驗(yàn)計(jì)算功能等,使之更加便于實(shí)際使用。

猜你喜歡
回潮率百分率單元格
棉花回潮率檢測技術(shù)研究現(xiàn)狀與發(fā)展趨勢
微波籽棉回潮率測量儀技術(shù)試驗(yàn)報(bào)告分析
機(jī)采棉回潮率對纖維長度影響的實(shí)例分析
求百分率的實(shí)際問題(部級優(yōu)課)
玩轉(zhuǎn)方格
玩轉(zhuǎn)方格
塔式氣流皮棉加濕機(jī)特點(diǎn)分析
淺談Excel中常見統(tǒng)計(jì)個(gè)數(shù)函數(shù)的用法
西部皮革(2018年6期)2018-05-07 06:41:07
基于距平百分率的萬源市氣象干旱灰色預(yù)測
Excel?。玻埃埃爸袉卧駭?shù)據(jù)的自動(dòng)更新
松潘县| 南投县| 长子县| 新绛县| 伽师县| 阳山县| 乌拉特前旗| 阿坝| 遂川县| 米林县| 应用必备| 泉州市| 上林县| 襄樊市| 光山县| 钟祥市| 井研县| 高要市| 灌阳县| 怀远县| 徐水县| 石河子市| 仲巴县| 贵南县| 毕节市| 镇平县| 东港市| 布尔津县| 济源市| 海原县| 芦溪县| 杂多县| 镇赉县| 崇阳县| 沾益县| 通化市| 谷城县| 凌云县| 海南省| 耒阳市| 仪征市|