康震宇,袁書強
(中國兵器科學研究院寧波分院, 浙江寧波 315103)
破片分布預測是彈藥領域的一項難題。目前對于彈藥破片的空間分布、速度分布都有相應軟件進行較為準確的預測,而破片的形成與彈體材料性能、微觀組織、炸藥種類、裝藥結構等因素都有關系[1],準確預測彈藥破片質量分布、數(shù)量分布難度較高,但對威力預測意義重大。
中國兵器工業(yè)集團有限公司第五二研究所(以下簡稱五二研究所)于1986年研發(fā)了《彈丸破片質量與數(shù)量分布預測計算軟件》(以下簡稱86版軟件),其預測精度達到了國內先進水平。但隨著彈體材料、處理工藝、炸藥及彈藥結構設計的不斷發(fā)展,計算機技術的不斷進步,該軟件版本已經(jīng)不能適應當前彈丸破片質量與數(shù)量分布預測的科研生產(chǎn)要求,亟待升級改造。文中闡述了新版軟件的系統(tǒng)架構、工作機理及成效。
86版軟件采用傳統(tǒng)面向過程設計,Basic解釋型語言開發(fā)。其科學計算、圖形處理能力弱;輸入/輸出(I/O)操作為命令行模式,可視化程度低、操作不便;無存儲機制,實驗參數(shù)、過程數(shù)據(jù)、預測結果無法二次利用。圖1為86版軟件Basic語言源代碼和運行環(huán)境。
圖1 86版軟件源代碼及遠行環(huán)境
在預測能力提升與發(fā)展方面,新版軟件采用面向對象設計,從架構上保證系統(tǒng)的通用性、可擴展性;采用Python、Pycharm等先進開發(fā)工具與技術,提升科學計算、圖形處理、接口開發(fā)等能力,同時為今后機器學習與知識庫建設提供技術支撐。
在易操作、可視化方面,新版軟件采用UI圖形化界面設計及研發(fā)工具,實現(xiàn)I/O數(shù)據(jù)電子化、模板化管理及歷史數(shù)據(jù)電子歸檔。
采用UML(unified modeling language)[2]進行設計。圖2是新版軟件核心類圖,描述了軟件總體框架與核心類功能。破片分布計算支持多種預測模型,計算處理后得到主報告及3個分報告,使用Excel工具包進行I/O處理。
圖2 新版軟件核心類圖
圖3是新版軟件核心功能交互視圖[3]。破片質量與數(shù)量分布預測需要執(zhí)行主控程序,讀取分析員提供的預測參數(shù)Excel文件以及系統(tǒng)內部計算參數(shù)配置,然后執(zhí)行破片分布計算處理,依次計算:
1)計算各單元的質量,前(N-2)個單元的外圓臺體積和內圓臺體積;
2)計算每個單元的炸藥質量、各單元A值;
3)計算每個單元的外錐角、內錐角以及各單元B值;
4)計算每個單元單位長度payman參數(shù)和每個單元payman參數(shù);
5)計算每個單元對破片質量分布的貢獻;
6)計算每個單元對破片數(shù)量分布的貢獻,計算每個單元在某質量范圍的質量、破片數(shù);
7)計算大于各質量區(qū)間的破片質量和數(shù)量,其中用Mott方程計算最大破片重量[4]。
圖3 執(zhí)行系統(tǒng)交互視圖
I/O數(shù)據(jù)的電子化、模板化管理。采用Excel文件作為I/O接口,通過定制Excel I/O模板,方便分析人員導入預測指標參數(shù),預測分布報告二次處理,以及歷史數(shù)字化文檔歸檔與檢索。
采用Python作為主開發(fā)語言。Python有免費/開源、自動內存管理、支持面向對象開發(fā)、可移植性和可擴展性好、第三方支持庫豐富等諸多優(yōu)勢[5-6]。同時采用PyCharm IDE作為集成開發(fā)平臺,以提高開發(fā)效率,方便調試、Project管理、單元測試等項目管理。
圖形用戶界面(GUI)應用開發(fā)。使用PyQt中間件作為GUI應用開發(fā)工具包,Qt庫是目前最強大的圖形界面開發(fā)庫之一,具有優(yōu)良的跨平臺、面向對象及豐富的API;支持2D/3D圖形渲染,支持OpenGL[7-8]。
1)預測指標參數(shù)導入。如圖4所示,分析人員只需按模板格式填寫相關參數(shù),或修改已有模板參數(shù),導入工作由軟件自動完成。
2)破片質量與數(shù)量分布預測計算。如圖5所示,在圖形用戶界面GUI中,分析人員通過點擊鼠標即可完成相關預測計算任務。
圖4 預測指標參數(shù)導入模板
圖5 破片質量與數(shù)量分布預測計算GUI
3)預測結果報告
預測結果分為主報告及3個附件子報告,如圖6~圖9。其中,主報告為“破片質量、數(shù)量分布預測結果”;附件1為“破片質量分布情況”;附件2為“破片數(shù)量分布情況”;附件3為“各單元諸參數(shù)的計算結果”。
圖6 破片質量、數(shù)量分布預測結果(主報告)
圖7 破片質量分布情況(附件1)
圖8 破片數(shù)量分布情況(附件2)
圖9 各單元諸參數(shù)的計算結果(附件3)
1)通用性驗證
86版軟件針對彈丸不同型號存在通用版和若干定制版,需要根據(jù)情況分別執(zhí)行不同小版本軟件,給軟件使用和維護帶來諸多不便。新版軟件通過優(yōu)化設計,將86版軟件各小版本進行了整合,用戶只需簡單選擇預測模型即可在不同預測算法間靈活切換。通過執(zhí)行各預測模型算法,有效破片數(shù)量/質量與歷史實驗結果平均相對誤差小于±3%;殺傷破片數(shù)量/質量與歷史實驗結果相對誤差小于±1.9%。
2)準確性驗證
下面以給定材料和裝藥的130加榴彈為例,通過對比新版軟件與實驗數(shù)據(jù)的破片質量/數(shù)量分布情況,來驗證新版軟件的準確性,如表1所示。
表1 新版軟件與實驗數(shù)據(jù)分布情況對比
該軟件的成功開發(fā)解決了86版破片預測程序圖形處理能力弱、可視化程度不高、無存儲機制等問題,擴大了預測程序適用范圍,提高了計算精度;通過采用面向對象技術、Python等現(xiàn)代技術,保證了系統(tǒng)的先進性,為后續(xù)機器學習、智能預測以及與威力預測程序信息共享開發(fā)提供了技術支撐;彌補了傳統(tǒng)商業(yè)威力預測軟件破片分布預測誤差過大的問題,具有重要的使用價值。