diff --git a/doc/BOZ analysis part I.a Correction determination.ipynb b/doc/BOZ analysis part I.a Correction determination.ipynb index 28fb78d89edda631c98e1fb41518a846b9ef9af1..ae50811741325895f8d86564f63a559e8c1d4273 100644 --- a/doc/BOZ analysis part I.a Correction determination.ipynb +++ b/doc/BOZ analysis part I.a Correction determination.ipynb @@ -65,6 +65,21 @@ "rois_th = 4" ] }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "proposal = int(proposal)\n", + "darkrun = int(darkrun)\n", + "run = int(run)\n", + "module = int(module)\n", + "gain = int(gain)\n", + "sat_level = int(sat_level)\n", + "rois_th = int(rois_th)" + ] + }, { "cell_type": "code", "execution_count": 3, diff --git a/scripts/boz_parameters_job.sh b/scripts/boz_parameters_job.sh index f66bac4ef45b603cd2aef003d05af77cbb7c4ede..f8c199a10f4883798c5e415c8195a5110123b64f 100644 --- a/scripts/boz_parameters_job.sh +++ b/scripts/boz_parameters_job.sh @@ -5,7 +5,7 @@ #SBATCH --mail-type=END,FAIL #SBATCH --output=logs/%j-%x.out -PROPOSAL=2619 +PROPOSAL=2784 DARK=$1 RUN=$2 GAIN=$3 @@ -19,10 +19,25 @@ module load exfel_anaconda3/1.1 echo processing run $RUN PDIR=$(find-proposal $PROPOSAL) +PPROPOSAL="p$(printf '%06d' $PROPOSAL)" RDIR="$PDIR/usr/processed_runs/r$(printf '%04d' $RUN)" mkdir $RDIR -papermill 'BOZ analysis part I.a Correction determination.ipynb' \ - $RDIR/output.ipynb \ - -p proposal $PROPOSAL -p darkrun $DARK -p run $RUN -p module $MODULE \ - -p gain $GAIN -p rois_th $ROISTH -p sat_level $SATLEVEL -k xfel +NB='BOZ analysis part I.a Correction determination.ipynb' +KERNEL="SCS Toolbox ($PPROPOSAL)" + +#activate the proposal environment +ACTIVATE="$PDIR/usr/Software/envs/toolbox_$PPROPOSAL/bin/activate" +source $ACITVATE + +python -c "import papermill as pm; pm.execute_notebook(\ + '$NB', \ + '$RDIR/output.ipynb', \ + parameters=dict(proposal='$PROPOSAL', \ + darkrun='$DARK', \ + run='$RUN', \ + module='$MODULE', \ + gain='$GAIN', \ + rois_th='$ROISTH', \ + sat_level='$SATLEVEL', \ + kernel='$KERNEL'))" diff --git a/src/toolbox_scs/routines/boz.py b/src/toolbox_scs/routines/boz.py index b37726f5854078caa78444962a6929c52164f57b..0b11c5b8600bca7e6ca1322f0719bb93900ef365 100644 --- a/src/toolbox_scs/routines/boz.py +++ b/src/toolbox_scs/routines/boz.py @@ -536,15 +536,16 @@ def inspect_histogram(arr, arr_dark=None, mask=None, extra_lines=False): from matplotlib.ticker import MultipleLocator f = plt.figure(figsize=(6, 3)) + ax = plt.gca() h = histogram_module(arr, mask=mask) Sum_h = np.sum(h) - plt.plot(np.arange(2**9), h/Sum_h, marker='o', + ax.plot(np.arange(2**9), h/Sum_h, marker='o', ms=3, markerfacecolor='none', lw=1) if arr_dark is not None: hd = histogram_module(arr_dark, mask=mask) Sum_hd = np.sum(hd) - plt.plot(np.arange(2**9), hd/Sum_hd, marker='o', + ax.plot(np.arange(2**9), hd/Sum_hd, marker='o', ms=3, markerfacecolor='none', lw=1, c='k', alpha=.5) else: hd = None @@ -552,19 +553,19 @@ def inspect_histogram(arr, arr_dark=None, mask=None, extra_lines=False): if extra_lines: for k in range(50, 271): if not (k - 2) % 8: - plt.axvline(k, c='k', alpha=0.5, ls='--') + ax.axvline(k, c='k', alpha=0.5, ls='--') if not (k - 3) % 16: - plt.axvline(k, c='g', alpha=0.3, ls='--') + ax.axvline(k, c='g', alpha=0.3, ls='--') if not (k - 7) % 32: - plt.axvline(k, c='r', alpha=0.3, ls='--') + ax.axvline(k, c='r', alpha=0.3, ls='--') - plt.axvline(271, c='C1', alpha=0.5, ls='--') + ax.axvline(271, c='C1', alpha=0.5, ls='--') - plt.xlim([0, 2**9-1]) - plt.yscale('log') - plt.axes().xaxis.set_minor_locator(MultipleLocator(10)) - plt.xlabel('DSSC pixel value') - plt.ylabel('count frequency') + ax.set_xlim([0, 2**9-1]) + ax.set_yscale('log') + ax.xaxis.set_minor_locator(MultipleLocator(10)) + ax.set_xlabel('DSSC pixel value') + ax.set_ylabel('count frequency') return (h, hd), f @@ -1337,7 +1338,7 @@ def inspect_correction(params, gain=None): good_d[n].values.flatten()/good_d[r].values.flatten(), [photon_scale, np.linspace(0.95, 1.05, 150)*m], cmap='Blues', - norm=LogNorm(vmax=200), + norm=LogNorm(vmin=0.2, vmax=200), # alpha=0.5 # make the plot looks ugly with lots of white lines ) h, xedges, yedges, img2 = axs[l, k].hist2d( @@ -1345,7 +1346,7 @@ def inspect_correction(params, gain=None): sat_d[n].values.flatten()/sat_d[r].values.flatten(), [photon_scale, np.linspace(0.95, 1.05, 150)*m], cmap='Reds', - norm=LogNorm(vmax=200), + norm=LogNorm(vmin=0.2, vmax=200), # alpha=0.5 # make the plot looks ugly with lots of white lines )