Commit adf85240 authored by Zhang, Yuanpeng's avatar Zhang, Yuanpeng
Browse files

updating

parent f7e07625
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
{
    "Diamond": "/SNS/NOM/IPTS-31346/nexus/NOM_193698.nxs.h5",
    "Diamond": "/SNS/NOM/IPTS-33585/nexus/NOM_198571.nxs.h5",
    "Instrument": "NOM",
    "Date": "2023-07-06",
    "SampleEnv": "furnace",
    "OutputDir": "/SNS/NOM/shared/CALIBRATION/autoreduce",
    "GenShadowMask": "shadow_mask_shifter_193698.in",
    "Date": "2024-08-13",
    "SampleEnv": "shifter",
    "OutputDir": "/SNS/NOM/shared/autoreduce/calibration",
    "GenShadowMask": "shadow_mask_shifter_198571.in",
    "DiaLattParam": 3.5671299351,
    "GroupMethod": "KMEANS_ED",
    "SaveInitCalTable": true,
+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ echo "+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

# Generate mask
if [ ! $gen_mask_file = "no" ]; then
    echo "Generating mask..."
    mantidpython $working_dir/inputs/mask_gen/nom_shadow_mask_gen.py $dia_file
    rm -rf $running_dir/manual_mask_cache/gen_mask/$gen_mask_file
    Rscript $working_dir/inputs/mask_gen/find_dip.R $gen_mask_file
+17 −17
Original line number Diff line number Diff line
@@ -192,7 +192,7 @@ ax.set_xlabel('d-spacing')
ax.set_ylabel('Detectors')

tmpfile = BytesIO()
fig.savefig(tmpfile, format='png')
fig.savefig(tmpfile, format='png', dpi=300)
encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')

diag1_out = os.path.join(
@@ -209,22 +209,22 @@ html += "<div>{}</div>".format(html_tmp)
#                      |||||      Diagnostics-2      |||||
#                      vvvvv  Calib versus Engineer  vvvvv
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
fig, ax = diagnostics.difc_plot2d("_cal", "_cal_eng", instr_ws="_group",
                                  mask="_mask", vrange=(0, 5))

tmpfile = BytesIO()
fig.savefig(tmpfile, format='png')
encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')

diag2_out = os.path.join(
    out_cal_diag_dir,
    f"{diag_file_stem}_diag2.png"
)
fig.savefig(diag2_out, format='png', dpi=300)

html_tmp = '<h4>Calibrated vs. Engineering calibration constant</h4>'
html_tmp += '<img src=\'data:image/png;base64,{}\'>'.format(encoded)
html += "<div>{}</div>".format(html_tmp)
# fig, ax = diagnostics.difc_plot2d("_cal", "_cal_eng", instr_ws="_group",
#                                   mask="_mask", vrange=(0, 5))
# 
# tmpfile = BytesIO()
# fig.savefig(tmpfile, format='png')
# encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')
# 
# diag2_out = os.path.join(
#     out_cal_diag_dir,
#     f"{diag_file_stem}_diag2.png"
# )
# fig.savefig(diag2_out, format='png', dpi=300)
# 
# html_tmp = '<h4>Calibrated vs. Engineering calibration constant</h4>'
# html_tmp += '<img src=\'data:image/png;base64,{}\'>'.format(encoded)
# html += "<div>{}</div>".format(html_tmp)

# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
#                      |||||      Diagnostics-3     |||||
+50 −30
Original line number Diff line number Diff line
@@ -226,6 +226,7 @@ for wksp_index in range(num_det):
        # if the chi square is larger than the pre-set threshold.
        chi_s_min = 1.E5
        for sigma_trial in sigma_trials:
            try:
                FitPeak(InputWorkspace=wksp_check,
                        OutputWorkspace="dia_calibrant_d_fit",
                        ParameterTableWorkspace="dia_calibrant_d_table",
@@ -241,6 +242,22 @@ for wksp_index in range(num_det):
                        FitBackgroundFirst=False,
                        RawParams=False,
                        CostFunction="Rwp")
            except:
                FitPeak(InputWorkspace=wksp_check,
                        OutputWorkspace="dia_calibrant_d_fit",
                        ParameterTableWorkspace="dia_calibrant_d_table",
                        WorkspaceIndex=wksp_index,
                        PeakFunctionType="Gaussian",
                        PeakParameterNames="Height, PeakCentre, Sigma",
                        PeakParameterValues=f"{height_init}, {c_est}, {sigma_trial}",
                        BackgroundType="Linear",
                        BackgroundParameterNames="A0, A1",
                        BackgroundParameterValues="10, 0",
                        FitWindow="1.2, 1.45",
                        PeakRange="1.2, 1.45",
                        FitBackgroundFirst=True,
                        RawParams=False,
                        CostFunction="Rwp")
            if mtd["dia_calibrant_d_table"].row(0)["Value"] < chi_s_min:
                chi_s_min = mtd["dia_calibrant_d_table"].row(0)["Value"]
                dia220_c_fitted = mtd["dia_calibrant_d_table"].row(2)["Value"]
@@ -678,6 +695,7 @@ for bank in range(mtd["dia_calibrant_d_cc_f_tof"].getNumberHistograms()):
                tof_cent_trials = [tof_cent + item for item in np.arange(-5 , 6, 0.1)]
                chi2_min_tmp = 500.
                tof_cent_opt = tof_cent_trials[0]
                int_tmp = -1
                for tof_cent_trial in tof_cent_trials:
                    try:
                        FitPeak(InputWorkspace=f"dia_calibrant_d_cc_f_tof_{bank + 1}",
@@ -727,6 +745,8 @@ for bank in range(mtd["dia_calibrant_d_cc_f_tof"].getNumberHistograms()):
                    d_tmp = mtd[f"dia_calibrant_d_cc_f_tof_{bank + 1}_{row_i}_table"].row(2)["Value"]
                    d_tmp /= difc_arb
                    d_fitted.append(d_tmp)
                else:
                    print(f"[Warning] dia_calibrant_d_cc_f_tof_{bank + 1}_{row_i} is failing the peak fitting.")
            else:
                d_norm.append(float(peak_list[row_i][0]))
                d_tmp = mtd[f"pdcal_diag_{bank + 1}_fitparam"].row(row_i)["centre"]
@@ -1119,21 +1139,21 @@ html += "<div>{}</div>".format(html_tmp)
#                      vvvvv  Calib versus Engineer  vvvvv
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

fig, ax = diagnostics.difc_plot2d("_cal", "_cal_eng", instr_ws="_group",
                                  mask="_mask", vrange=(0, 5))
tmpfile = BytesIO()
fig.savefig(tmpfile, format='png')
encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')

diag_file_name = f"{diag_file_stem}_diag2.png"
diag_file_png = os.path.join(out_cal_diag_dir, diag_file_name)
fig.savefig(diag_file_png, format='png', dpi=300)
diag_file_png = os.path.join(out_cal_diag_dir_alt, diag_file_name)
fig.savefig(diag_file_png, format='png', dpi=300)

html_tmp = '<h4>Calibrated vs. Engineering calibration constant</h4>'
html_tmp += '<img src=\'data:image/png;base64,{}\'>'.format(encoded)
html += "<div>{}</div>".format(html_tmp)
# fig, ax = diagnostics.difc_plot2d("_cal", "_cal_eng", instr_ws="_group",
#                                   mask="_mask", vrange=(0, 5))
# tmpfile = BytesIO()
# fig.savefig(tmpfile, format='png')
# encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')
# 
# diag_file_name = f"{diag_file_stem}_diag2.png"
# diag_file_png = os.path.join(out_cal_diag_dir, diag_file_name)
# fig.savefig(diag_file_png, format='png', dpi=300)
# diag_file_png = os.path.join(out_cal_diag_dir_alt, diag_file_name)
# fig.savefig(diag_file_png, format='png', dpi=300)
# 
# html_tmp = '<h4>Calibrated vs. Engineering calibration constant</h4>'
# html_tmp += '<img src=\'data:image/png;base64,{}\'>'.format(encoded)
# html += "<div>{}</div>".format(html_tmp)

# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
#                      |||||      Diagnostics-3     |||||

utils/nom_cal_test.py

0 → 100644
+1179 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading