From c6ea38f2d32c38f3a7019664c72926470970049f Mon Sep 17 00:00:00 2001 From: xiaoguangbin Date: Tue, 30 Jul 2024 10:44:29 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9AviewBeta=20calibration=E8=A1=A5?= =?UTF-8?q?=E5=85=85gamma=20energy=20=E8=BD=AC=E5=8C=96=20channel=E5=85=AC?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/service/impl/SelfStationServiceImpl.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java index 8b5a973a..29266874 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java @@ -1844,6 +1844,8 @@ public class SelfStationServiceImpl implements ISelfStationService { // E_β=661.6-E_γ,E_γ=F(C) //中心:C_β=F(E_β),范围:左[C_β-3√(C_β ), C_β+3√(C_β )]右 // 高斯函数拟合得到拟合的中心道址,显示Energy vs. Channel + // 得到gamma谱 e2c公式 + List gFittingPara = EnergySpectrumHandler.GetFileFittingPara(gEnergy, gCentroidChannel); //页面展示的表单数据数组 List table = new LinkedList<>(); List> gammaEnergy = (List>) map.get("gammaEnergy"); @@ -1854,8 +1856,8 @@ public class SelfStationServiceImpl implements ISelfStationService { Double bc = fittingParaToUi.get(0) + fittingParaToUi.get(1) * be + fittingParaToUi.get(2) * Math.sqrt(be); // 计算得到gamma energy Double ge = 661.656 - be; - // todo 需要换成gamma公式 - Double gc = 1.51421142654972 + 3.018099280336795 * ge + 2.6690095368611742E-6 * Math.sqrt(ge); + // gamma energy 转化 channel + Double gc = gFittingPara.get(0) + gFittingPara.get(1) * ge + gFittingPara.get(2) * Math.sqrt(ge); // 通过gamma channel获取gammaGate数据 List seriseDatas = getGateGamma(5, 4096, gc.intValue(), betaDataFile); // 开始计算中心道址, 范围:左[C_β-3√(C_β ), C_β+3√(C_β )]右 @@ -1872,7 +1874,7 @@ public class SelfStationServiceImpl implements ISelfStationService { // GaussianCurveFitter fitter = GaussianCurveFitter.create(); // fitter.fit(points.toList()); // todo 高斯拟合有问题,暂时使用平均值 - double v = sum / (right - left); + Double v = sum / (right - left); //表单数据信息 TableWidget tableWidget = new TableWidget(); tableWidget.setRowCount(i+1);