gamma生成RRR报告前调用分析算法进行分析

beta重新分析计算结果数组空值问题修改
This commit is contained in:
qiaoqinzheng 2023-11-08 10:11:26 +08:00
parent f865b1045e
commit f4319af362
2 changed files with 73 additions and 29 deletions

View File

@ -840,10 +840,17 @@ public class PHDFileUtil extends AbstractLogOrReport {
gammaCalibrationSpectrumList.add(gammaCalibrationS); gammaCalibrationSpectrumList.add(gammaCalibrationS);
} else { } else {
GardsCalibrationSpectrum gammaCalibrationS = new GardsCalibrationSpectrum(); GardsCalibrationSpectrum gammaCalibrationS = new GardsCalibrationSpectrum();
gammaCalibrationS.setDataType(DataTypeAbbr.SAMPLEPHD.getType()); if (bgAnalyseResult.s_g_fitting_c_e.size() < 0) {
gammaCalibrationS.setCoeff1(bgAnalyseResult.s_g_fitting_c_e.get(0)); gammaCalibrationS.setDataType(DataTypeAbbr.SAMPLEPHD.getType());
gammaCalibrationS.setCoeff2(bgAnalyseResult.s_g_fitting_c_e.get(1)); gammaCalibrationS.setCoeff1(Double.valueOf(gammaFittingPara.get(0)));
gammaCalibrationS.setCoeff3(bgAnalyseResult.s_g_fitting_c_e.get(2)); gammaCalibrationS.setCoeff2(Double.valueOf(gammaFittingPara.get(1)));
gammaCalibrationS.setCoeff3(Double.valueOf(gammaFittingPara.get(2)));
} else {
gammaCalibrationS.setDataType(DataTypeAbbr.SAMPLEPHD.getType());
gammaCalibrationS.setCoeff1(bgAnalyseResult.s_g_fitting_c_e.get(0));
gammaCalibrationS.setCoeff2(bgAnalyseResult.s_g_fitting_c_e.get(1));
gammaCalibrationS.setCoeff3(bgAnalyseResult.s_g_fitting_c_e.get(2));
}
gammaCalibrationSpectrumList.add(gammaCalibrationS); gammaCalibrationSpectrumList.add(gammaCalibrationS);
} }
if (betaDataFile.isBGammaEnergyValidGas()) { if (betaDataFile.isBGammaEnergyValidGas()) {
@ -855,10 +862,18 @@ public class PHDFileUtil extends AbstractLogOrReport {
gammaCalibrationSpectrumList.add(gammaCalibrationG); gammaCalibrationSpectrumList.add(gammaCalibrationG);
} else { } else {
GardsCalibrationSpectrum gammaCalibrationG = new GardsCalibrationSpectrum(); GardsCalibrationSpectrum gammaCalibrationG = new GardsCalibrationSpectrum();
gammaCalibrationG.setDataType(DataTypeAbbr.GASBKPHD.getType()); if (bgAnalyseResult.g_g_fitting_c_e.size() < 0) {
gammaCalibrationG.setCoeff1(bgAnalyseResult.g_g_fitting_c_e.get(0)); gammaCalibrationG.setDataType(DataTypeAbbr.GASBKPHD.getType());
gammaCalibrationG.setCoeff2(bgAnalyseResult.g_g_fitting_c_e.get(1)); gammaCalibrationG.setCoeff1(Double.valueOf(gammaFittingPara.get(0)));
gammaCalibrationG.setCoeff3(bgAnalyseResult.g_g_fitting_c_e.get(2)); gammaCalibrationG.setCoeff2(Double.valueOf(gammaFittingPara.get(1)));
gammaCalibrationG.setCoeff3(Double.valueOf(gammaFittingPara.get(2)));
} else {
gammaCalibrationG.setDataType(DataTypeAbbr.GASBKPHD.getType());
gammaCalibrationG.setCoeff1(bgAnalyseResult.g_g_fitting_c_e.get(0));
gammaCalibrationG.setCoeff2(bgAnalyseResult.g_g_fitting_c_e.get(1));
gammaCalibrationG.setCoeff3(bgAnalyseResult.g_g_fitting_c_e.get(2));
}
gammaCalibrationSpectrumList.add(gammaCalibrationG); gammaCalibrationSpectrumList.add(gammaCalibrationG);
} }
if (betaDataFile.isBGammaEnergyValidDet()) { if (betaDataFile.isBGammaEnergyValidDet()) {
@ -870,10 +885,17 @@ public class PHDFileUtil extends AbstractLogOrReport {
gammaCalibrationSpectrumList.add(gammaCalibrationD); gammaCalibrationSpectrumList.add(gammaCalibrationD);
} else { } else {
GardsCalibrationSpectrum gammaCalibrationD = new GardsCalibrationSpectrum(); GardsCalibrationSpectrum gammaCalibrationD = new GardsCalibrationSpectrum();
gammaCalibrationD.setDataType(DataTypeAbbr.DETBKPHD.getType()); if (bgAnalyseResult.d_g_fitting_c_e.size() < 0) {
gammaCalibrationD.setCoeff1(bgAnalyseResult.d_g_fitting_c_e.get(0)); gammaCalibrationD.setDataType(DataTypeAbbr.DETBKPHD.getType());
gammaCalibrationD.setCoeff2(bgAnalyseResult.d_g_fitting_c_e.get(1)); gammaCalibrationD.setCoeff1(Double.valueOf(gammaFittingPara.get(0)));
gammaCalibrationD.setCoeff3(bgAnalyseResult.d_g_fitting_c_e.get(2)); gammaCalibrationD.setCoeff2(Double.valueOf(gammaFittingPara.get(1)));
gammaCalibrationD.setCoeff3(Double.valueOf(gammaFittingPara.get(2)));
} else {
gammaCalibrationD.setDataType(DataTypeAbbr.DETBKPHD.getType());
gammaCalibrationD.setCoeff1(bgAnalyseResult.d_g_fitting_c_e.get(0));
gammaCalibrationD.setCoeff2(bgAnalyseResult.d_g_fitting_c_e.get(1));
gammaCalibrationD.setCoeff3(bgAnalyseResult.d_g_fitting_c_e.get(2));
}
gammaCalibrationSpectrumList.add(gammaCalibrationD); gammaCalibrationSpectrumList.add(gammaCalibrationD);
} }
betaDataFile.setGammaCalibrationSpectrumList(gammaCalibrationSpectrumList); betaDataFile.setGammaCalibrationSpectrumList(gammaCalibrationSpectrumList);
@ -889,10 +911,17 @@ public class PHDFileUtil extends AbstractLogOrReport {
betaCalibrationSpectrumList.add(betaCalibrationS); betaCalibrationSpectrumList.add(betaCalibrationS);
} else { } else {
GardsCalibrationSpectrum betaCalibrationS = new GardsCalibrationSpectrum(); GardsCalibrationSpectrum betaCalibrationS = new GardsCalibrationSpectrum();
betaCalibrationS.setDataType(DataTypeAbbr.SAMPLEPHD.getType()); if (bgAnalyseResult.s_b_fitting_c_e.size() < 0) {
betaCalibrationS.setCoeff1(bgAnalyseResult.s_b_fitting_c_e.get(0)); betaCalibrationS.setDataType(DataTypeAbbr.SAMPLEPHD.getType());
betaCalibrationS.setCoeff2(bgAnalyseResult.s_b_fitting_c_e.get(1)); betaCalibrationS.setCoeff1(Double.valueOf(betaFittingPara.get(0)));
betaCalibrationS.setCoeff3(bgAnalyseResult.s_b_fitting_c_e.get(2)); betaCalibrationS.setCoeff2(Double.valueOf(betaFittingPara.get(1)));
betaCalibrationS.setCoeff3(Double.valueOf(betaFittingPara.get(2)));
} else {
betaCalibrationS.setDataType(DataTypeAbbr.SAMPLEPHD.getType());
betaCalibrationS.setCoeff1(bgAnalyseResult.s_b_fitting_c_e.get(0));
betaCalibrationS.setCoeff2(bgAnalyseResult.s_b_fitting_c_e.get(1));
betaCalibrationS.setCoeff3(bgAnalyseResult.s_b_fitting_c_e.get(2));
}
betaCalibrationSpectrumList.add(betaCalibrationS); betaCalibrationSpectrumList.add(betaCalibrationS);
} }
if (betaDataFile.isBBetaEnergyValidGas()) { if (betaDataFile.isBBetaEnergyValidGas()) {
@ -904,10 +933,17 @@ public class PHDFileUtil extends AbstractLogOrReport {
betaCalibrationSpectrumList.add(betaCalibrationG); betaCalibrationSpectrumList.add(betaCalibrationG);
} else { } else {
GardsCalibrationSpectrum betaCalibrationG = new GardsCalibrationSpectrum(); GardsCalibrationSpectrum betaCalibrationG = new GardsCalibrationSpectrum();
betaCalibrationG.setDataType(DataTypeAbbr.GASBKPHD.getType()); if (bgAnalyseResult.g_b_fitting_c_e.size() < 0) {
betaCalibrationG.setCoeff1(bgAnalyseResult.g_b_fitting_c_e.get(0)); betaCalibrationG.setDataType(DataTypeAbbr.GASBKPHD.getType());
betaCalibrationG.setCoeff2(bgAnalyseResult.g_b_fitting_c_e.get(1)); betaCalibrationG.setCoeff1(Double.valueOf(betaFittingPara.get(0)));
betaCalibrationG.setCoeff3(bgAnalyseResult.g_b_fitting_c_e.get(2)); betaCalibrationG.setCoeff2(Double.valueOf(betaFittingPara.get(1)));
betaCalibrationG.setCoeff3(Double.valueOf(betaFittingPara.get(2)));
} else {
betaCalibrationG.setDataType(DataTypeAbbr.GASBKPHD.getType());
betaCalibrationG.setCoeff1(bgAnalyseResult.g_b_fitting_c_e.get(0));
betaCalibrationG.setCoeff2(bgAnalyseResult.g_b_fitting_c_e.get(1));
betaCalibrationG.setCoeff3(bgAnalyseResult.g_b_fitting_c_e.get(2));
}
betaCalibrationSpectrumList.add(betaCalibrationG); betaCalibrationSpectrumList.add(betaCalibrationG);
} }
if (betaDataFile.isBBetaEnergyValidDet()) { if (betaDataFile.isBBetaEnergyValidDet()) {
@ -919,10 +955,17 @@ public class PHDFileUtil extends AbstractLogOrReport {
betaCalibrationSpectrumList.add(betaCalibrationD); betaCalibrationSpectrumList.add(betaCalibrationD);
} else { } else {
GardsCalibrationSpectrum betaCalibrationD = new GardsCalibrationSpectrum(); GardsCalibrationSpectrum betaCalibrationD = new GardsCalibrationSpectrum();
betaCalibrationD.setDataType(DataTypeAbbr.DETBKPHD.getType()); if (bgAnalyseResult.d_b_fitting_c_e.size() < 0) {
betaCalibrationD.setCoeff1(bgAnalyseResult.d_b_fitting_c_e.get(0)); betaCalibrationD.setDataType(DataTypeAbbr.DETBKPHD.getType());
betaCalibrationD.setCoeff2(bgAnalyseResult.d_b_fitting_c_e.get(1)); betaCalibrationD.setCoeff1(Double.valueOf(betaFittingPara.get(0)));
betaCalibrationD.setCoeff3(bgAnalyseResult.d_b_fitting_c_e.get(2)); betaCalibrationD.setCoeff2(Double.valueOf(betaFittingPara.get(1)));
betaCalibrationD.setCoeff3(Double.valueOf(betaFittingPara.get(2)));
} else {
betaCalibrationD.setDataType(DataTypeAbbr.DETBKPHD.getType());
betaCalibrationD.setCoeff1(bgAnalyseResult.d_b_fitting_c_e.get(0));
betaCalibrationD.setCoeff2(bgAnalyseResult.d_b_fitting_c_e.get(1));
betaCalibrationD.setCoeff3(bgAnalyseResult.d_b_fitting_c_e.get(2));
}
betaCalibrationSpectrumList.add(betaCalibrationD); betaCalibrationSpectrumList.add(betaCalibrationD);
} }
betaDataFile.setBetaCalibrationSpectrumList(betaCalibrationSpectrumList); betaDataFile.setBetaCalibrationSpectrumList(betaCalibrationSpectrumList);

View File

@ -722,8 +722,8 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi
phd.getMapNucActMda().get(str_key).setEfficiency(nuclLinesIdedSpectrum.getEffic()); phd.getMapNucActMda().get(str_key).setEfficiency(nuclLinesIdedSpectrum.getEffic());
phd.getMapNucActMda().get(str_key).setEffi_err(nuclLinesIdedSpectrum.getUnEffic()); phd.getMapNucActMda().get(str_key).setEffi_err(nuclLinesIdedSpectrum.getUnEffic());
phd.getMapNucActMda().get(str_key).setMda(nuclLinesIdedSpectrum.getMda()); phd.getMapNucActMda().get(str_key).setMda(nuclLinesIdedSpectrum.getMda());
phd.getMapNucActMda().get(str_key).setMdc(nuclLinesIdedSpectrum.getMdc().equalsIgnoreCase("inf") ? 0.0 : Double.valueOf(nuclLinesIdedSpectrum.getMdc())); phd.getMapNucActMda().get(str_key).setMdc(nuclLinesIdedSpectrum.getMdc().equalsIgnoreCase("inf") ? null : Double.valueOf(nuclLinesIdedSpectrum.getMdc()));
phd.getMapNucActMda().get(str_key).setConcentration(nuclLinesIdedSpectrum.getConcentration().equalsIgnoreCase("inf") ? 0.0 : Double.valueOf(nuclLinesIdedSpectrum.getConcentration())); phd.getMapNucActMda().get(str_key).setConcentration(nuclLinesIdedSpectrum.getConcentration().equalsIgnoreCase("inf") ? null : Double.valueOf(nuclLinesIdedSpectrum.getConcentration()));
if (phd.getMapNucActMda().get(str_key).getActivity() > 0) { if (phd.getMapNucActMda().get(str_key).getActivity() > 0) {
phd.getMapNucActMda().get(str_key).setBCalculateMDA(true); phd.getMapNucActMda().get(str_key).setBCalculateMDA(true);
} }
@ -1244,7 +1244,6 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi
insertInput.curChan = curChan; insertInput.curChan = curChan;
insertInput.vCount = m_vCount; insertInput.vCount = m_vCount;
StructInsertOutput structInsertOutput = CalValuesHandler.insertPeaks(insertInput); StructInsertOutput structInsertOutput = CalValuesHandler.insertPeaks(insertInput);
List<PeakInfo> newPeak = new LinkedList<>();
List<PeakInfo> newPeaks = new LinkedList<>(); List<PeakInfo> newPeaks = new LinkedList<>();
newPeaks.addAll(phd.getVPeak()); newPeaks.addAll(phd.getVPeak());
if (structInsertOutput.vIdx.size() > 0) { if (structInsertOutput.vIdx.size() > 0) {
@ -1256,9 +1255,7 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi
PeakInfo peak = new PeakInfo(); PeakInfo peak = new PeakInfo();
peak.index = a + 1; peak.index = a + 1;
peak.left = structInsertOutput.vLeft.get(j).intValue(); peak.left = structInsertOutput.vLeft.get(j).intValue();
;
peak.right = structInsertOutput.vRight.get(j).intValue(); peak.right = structInsertOutput.vRight.get(j).intValue();
;
peak.peakCentroid = structInsertOutput.peakCentroid.get(j); peak.peakCentroid = structInsertOutput.peakCentroid.get(j);
peak.energy = structInsertOutput.energy.get(j); peak.energy = structInsertOutput.energy.get(j);
peak.area = structInsertOutput.area.get(j); peak.area = structInsertOutput.area.get(j);
@ -3790,6 +3787,10 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi
result.error500("Please select the parse file first"); result.error500("Please select the parse file first");
return result; return result;
} }
//分析gamma文件
Map<String, NuclideLines> nuclideLinesMap = (Map<String, NuclideLines>) redisUtil.get(userName+"-"+phd.getHeader().getSystem_type());//GetNuclideLines(nuclides);
gammaFileUtil.AnalyseSpectrum(phd, nuclideLinesMap);
//生成对应报告内容
String reportContent = gammaFileUtil.GetReportContent(phd, userName, false, "log"); String reportContent = gammaFileUtil.GetReportContent(phd, userName, false, "log");
result.setSuccess(true); result.setSuccess(true);
result.setResult(reportContent); result.setResult(reportContent);