基于Excel,VBA在铝土矿勘查中快速计算单工程化学样平均品位、厚度的方法
报告》、《河南省曹窑以西煤下铝五门沟矿段详查报告》、《河南省曹窑以西煤下铝柴洼矿段详查报告》、《河南省曹窑以西煤下铝关底沃-扣门山矿段详查报告》和《河南省曹窑以西煤下铝青阳沟矿段详查报告》等五个报告,累计施工钻孔451个,进尺131190.51m,基本分析样3551个。
另收集以往工作中及邻区已施工的钻孔75个,收集596个基本化学分析样资料。本次工作和以往工作的钻孔合计526个,基本化学样4147个。
面对如此巨大的数据量,过去地勘单位估算资源量/储量时,一般采用计算器来计算,计算周期长,计算过程复杂、繁琐,效率极低、容易出错,如果中间结果出错或者需要修改,后面结果推倒重来,往往形成一个报告需要数月、甚至一两年才能完成。报告完成人员工作强度大、任务重;随着计算机开始逐渐普及,地勘单位人员开始使用计算机软件如WPS、Excel等处理数据,但水平不高,一般采用简单的公式和函数计算,效率提升不多,计算过程仍然存在繁琐、任务重、易出错等缺点。因此,编写一种当前满足铝土矿资源储量报告估算需要,并且实现自动化,使计算过程工作高效、准确成为当务之急。
1 地质特征
1.1 矿床地质
本区铝土矿含矿岩系为石炭系上统本溪组,铝土矿矿体形态多呈层状、似层状或透镜状。矿床类型为沉积型,总体为特大型铝土矿。本区无矿层露头,均为隐伏矿体。
本区铝土矿共生矿种有粘土矿(分上下层,个别报告还要求计算夹层粘土矿)、菱铁矿、赤铁矿、铁矾土等。另有镓、氧化锂、轻稀土等伴生元素或有益组分。
化学分析样品中铝土矿基本分析项目为Al2O3、SiO2、Fe2O3、S、TiO2、烧失量(LOSS);共生矿种基本分析项目与铝土矿基本相同,粘土矿另要求分析耐火度(SK)。铝土矿及其共生矿种之间的区分除了以矿石的颜色、结构、构造特征区分外,还主要以各个分析项目品位的多少区分,如铝土矿边界品位要求Al2O3≥40%,A/S(铝硅比)≥1.8;Ⅲ级硬质粘土矿品位要求Al2O3≥40%,Fe2O3≥3.5%。
该区铝土矿体均为层状或似层状,倾角平缓(5~16度),探矿工程按勘探线布置,工程分布比较均匀,为便于生产利用,资源量估算选用地质块段法,在水平投影图上进行。
1.2 单工程圈定原则
依据各单工程中样品分析结果,凡单样品位等于或大于边界品位要求者均圈入矿体内;夹石样品厚度小于相应夹石剔除厚度时并入相应矿体中。
2 程序设计
2.1 程序设计基础
本人结合工作实际情况,经过长期摸索,利用微软公司的Excel VBA,编写了计算铝土矿单工程厚度、平均品位的程序,以及计算块段平均厚度、平均品位的程序,用于该工作区的资源量估算工作。
Microsoft Excel是美国微软公司编写的一款电子表格软件。界面直观,有非常出色的计算功能和图表工具,功能强大,普及率高;VBA是内嵌于office软件中的一个开发模块,这个模块提供程序自主开发,语言基础和Visual Basic相似。在Excel的“工具--宏--编辑器”可以打开。
2.2 原始数据格式要求
本程序对原始数据格式要求不高,只需要对每个钻孔的原始化验结果按从上到下的顺序排列,不需要单独提取含矿样品。在Excel中表中A到V列对所有钻孔样品数据按表1格式整理。
2.3 程序設计原理及流程图
为计算加权平均值(平均品位),为此特别编写了一个加权平均自定义函数WeightedAverage,具体实现原理和代码见本人的相关参考论文。
对于大批量工程的计算单工程平均品位、平均厚度的程序流程图如图1:
例如为了计算工程ZK4016的铝土矿厚度和平均品位,依次对ZK4016的每个样品进行比较,因为ZK4016的1号样品为炭质页岩,非铝土矿,忽略后比较下一个样品;2号样品为铝土矿,记录ZK4016的铝土矿excel单元格地址为$L$657,然后依次比较3号样品,非铝土矿,忽略;4号样品是铝土矿,且与2号铝土矿样品的夹层真厚度0.85m(3号样品的真厚度)≥0.8m(最大夹石剔除厚度),故夹石不能合并到铝土矿中,此时记录ZK4016的铝土矿样品地址为$L$657,$L$659,然后依次比较5至11号样品,记录ZK4016的铝土矿地址为$L$657,$L$659, $L$661:$L$664。由于$L$657的真厚度为0.62m,≤最低可采厚度(0.80m),故应忽略,最终ZK4016的铝土矿样品地址为$L$659, $L$661:$L$664,然后依次计算ZK4016的样品编号、各种厚度、单工程平均品位。真厚度的公式为“=SUM($G$659,$G$661:$G$664)”,A12O3的单工程平均品位公式为“=ROUND(weightedaverage($M$659,$M$661:$M$664,-5),2)”,其中参数“-5”为真厚度所在列(G列)相对于A12O3品位所在列(M列)的偏移列数值。ROUND为Excel中的四舍五入函数。
2.4 程序具体实现过程
为了在excel表格中记录铝土矿采样位置、样品编号、地址编写了一个结构体:
Public Type OreLayer
LayerFirstSampleRow&‘记录每铝土矿层的第一个样品单元格所在行
LayerLastSampleRow&‘记录每铝土矿层的最后一个样品单元格所在行
LayerSampleIDs$‘记录单工程铝土矿样品编号(包含一层或多层)
LayerTopPosition#‘记录每铝土矿层的第一个样品的采样位置
LayerBottomPosition#‘记录每铝土矿层的最后一个样品的采样位置
LayerThickness#‘记录每铝土矿层的视厚度
LayerSampleAddress$‘记录每个工程中铝土矿样品的单元格地址
LayerTrueThickness#‘記录每铝土矿层的真厚度
End Type
为了方便直观显示计算每个钻孔的铝土矿样长、品位等信息,在excel的基本样品分析结果表的W到AF列依次计算出钻孔的样号、视厚度、铅直厚度、Al2O3(%)品位、SiO2(%)品位、Fe2O3(%)品位、S(%)品位、LOSS(%)等,并按单工程合并单元格。最终计算结果如表2(由于页面太窄,为了方便显示,C:V列隐藏)。
由于源代码比较长,限于篇幅无法显示,有兴趣的读者可以与本人联系。
3 结论
所有代码在Excel2016环境下全部编译通过,并且在本矿区先后提交的五个报告经过实际运用和检验,数据计算快速、准确、效率高,其中的关底沃--扣门山矿区的112个钻孔的运算时间不到1秒,远远超过传统的计算方法。
经检验,本程序在计算超大量数据时快速、准确,体现了高效率、高准确度、灵活性强。得到了甲方单位和报告评审单位人员的认可和好评,值得进一步推广应用。在贵金属、有色金属、非金属计算资源储量中也有利用和借鉴的价值。
参考文献:
[1]何文平,董运如等.河南省渑池县曹窑以西煤下铝关底沃-扣门山矿段详查报告[M].郑州:河南省国土资源科学研究院,2008.
[2]朱晓冰.资源量、储量估算中求加权平均值方法探讨[J].华北国土资源,2015(5):69-72.
作者简介:
上一篇:工程化学电化学实验的改革与创新
下一篇:另辟蹊径还是其他