Commit 178aee43 authored by Zhang, Yuanpeng's avatar Zhang, Yuanpeng
Browse files

config save dir to add autoreduce saving

parent 0ab2a5a0
Loading
Loading
Loading
Loading
−1.78 MiB

File deleted.

+5 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ gen_mask_file=$(python utils/mg_config.py cal_config.json)
running_dir="/SNS/NOM/shared/CALIBRATION/.cache/"
group_method=$(python utils/gm_config.py cal_config.json)
out_dir=$(python utils/od_config.py cal_config.json)
out_dir_alt="/SNS/NOM/shared/autoreduce/calibration"

# Create the output directory if not existing
if [ ! -d $out_dir ] ; then
@@ -86,9 +87,13 @@ mantidpython $working_dir/utils/nom_cal.py $working_dir
if [ ! -d $out_dir/input_configs ] ; then
    mkdir $out_dir/input_configs
fi
if [ ! -d $out_dir_alt/input_configs ] ; then
    mkdir $out_dir_alt/input_configs
fi

file_name=NOMAD_${run_num}_${run_date}_${sam_env}.json
cp cal_config.json $out_dir/input_configs/$file_name
cp cal_config.json $out_dir_alt/input_configs/$file_name

echo ""
echo "+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
+27 −3
Original line number Diff line number Diff line
@@ -99,10 +99,20 @@ out_dir_info = input_config["OutputDir"]
run_num = os.path.basename(dia_file).split(".")[0].split("_")[1]
file_name = f"{instr_map[instr_info]}_{run_num}_{date_info}_{se_info}.h5"
out_cal_file = os.path.join(out_dir_info, file_name)
out_cal_file_alt = os.path.join(
    "/SNS/NOM/shared/autoreduce/calibration",
    file_name
)
out_cal_diag_dir = os.path.join(out_dir_info, "diagnostics")
out_cal_diag_dir_alt = os.path.join(
    "/SNS/NOM/shared/autoreduce/calibration"
    , "diagnostics"
)
diag_file_stem = f"{instr_map[instr_info]}_{run_num}_{date_info}_{se_info}"
if not os.path.exists(out_cal_diag_dir):
    os.makedirs(out_cal_diag_dir)
if not os.path.exists(out_cal_diag_dir_alt):
    os.makedirs(out_cal_diag_dir_alt)

save_init_cal = input_config["SaveInitCalTable"]

@@ -815,6 +825,9 @@ for bank in range(mtd["dia_calibrant_d_cc_f_tof"].getNumberHistograms()):
    with open(os.path.join(out_cal_diag_dir, diag_file_name), "w") as f:
        for count, item in enumerate(d_norm):
            f.write("{0:15.8F}{1:15.8F}\n".format(item, d_fitted[count]))
    with open(os.path.join(out_cal_diag_dir_alt, diag_file_name), "w") as f:
        for count, item in enumerate(d_norm):
            f.write("{0:15.8F}{1:15.8F}\n".format(item, d_fitted[count]))

    if bank == 5:
        # For the forward scattering bank, sometimes the scattering pattern will
@@ -925,6 +938,10 @@ SaveDiffCal(CalibrationWorkspace="_cal_final",
    GroupingWorkspace="_group",
    MaskWorkspace="mask",
    Filename=out_cal_file)
SaveDiffCal(CalibrationWorkspace="_cal_final",
    GroupingWorkspace="_group",
    MaskWorkspace="mask",
    Filename=out_cal_file_alt)

end_time = time.time()
print(f"Time taken: {end_time - start_time}")
@@ -992,6 +1009,12 @@ def plot_bank_rel(bank, d_norm, d_fitted):
    fig.savefig(tmpfile, format='png')
    encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')

    diag_png_name = f"{diag_file_stem}_diag3_B{bank + 1}.png"
    diag_file_png = os.path.join(out_cal_diag_dir, diag_png_name)
    fig.savefig(diag_file_png, format='png', dpi=300)
    diag_file_png = os.path.join(out_cal_diag_dir_alt, diag_png_name)
    fig.savefig(diag_file_png, format='png', dpi=300)

    html = '<h4>Relative Diff &mdash; Bank-{}</h4>'.format(bank)
    html += '<img src=\'data:image/png;base64,{}\'>'.format(encoded)
    
@@ -1077,6 +1100,8 @@ encoded = base64.b64encode(tmpfile.getvalue()).decode('utf-8')
diag_file_name = f"{diag_file_stem}_diag1.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>Pixel-by-pixel line-up for diamond</h4>'
html_tmp += '<img src=\'data:image/png;base64,{}\'>'.format(encoded)
@@ -1096,6 +1121,8 @@ 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)
@@ -1109,9 +1136,6 @@ html += "<div>{}</div>".format(html_tmp)
for i in range(6):
    if i == 5 and fb_bad:
        continue
    diag_png_name = f"{diag_file_stem}_diag3_B{i + 1}.png"
    diag_file_png = os.path.join(out_cal_diag_dir, diag_png_name)
    fig.savefig(diag_file_png, format='png', dpi=300)

    diag_file_name = f"{diag_file_stem}_B{i + 1}.diag"
    data = np.loadtxt(os.path.join(out_cal_diag_dir, diag_file_name))