From a46b44f6d44c8018eef6b02a00e60d549ab539af Mon Sep 17 00:00:00 2001 From: beale_j Date: Wed, 22 Mar 2023 13:04:21 +0000 Subject: [PATCH] Delete convert-scan-for-pyfai-16M.py --- convert-scan-for-pyfai-16M.py | 92 ----------------------------------- 1 file changed, 92 deletions(-) delete mode 100644 convert-scan-for-pyfai-16M.py diff --git a/convert-scan-for-pyfai-16M.py b/convert-scan-for-pyfai-16M.py deleted file mode 100644 index 921ecf1..0000000 --- a/convert-scan-for-pyfai-16M.py +++ /dev/null @@ -1,92 +0,0 @@ -#!/usr/bin/env python3 - -# author J.Beale - -""" -# aim - - -16M=varient for large detectors -make image file to input into pyFAI for initial detector beam-centre and detector distance calibration -refer to Cristallina8M-calibration for complete protocol -https://docs.google.com/document/d/1RoeUUogvRxX4M6uqGwkjf3dVJBabiMUx4ZxwcA5e9Dc/edit# - -# protocol -take scan of LaB6 -## IMPORTANT ## -- save image as photon-counts - in slic/run_control scale=beam energy -- detector_geometry=TRUE - saves detector panels in their correct orientation -## scan inputs ## -- <0.01 trans -- motor scan > 10 um per step -- 10 images per step, 100 steps -- use scan.json as input for this script - -# usage -python make-tiff.py -j -s -n - -# output -creates a .npy file that can be loaded directly into pyFAI -""" - -# modules -from matplotlib import pyplot as plt -import numpy as np -from sfdata import SFScanInfo -from tqdm import tqdm -import argparse - -def convert_image( path_to_json, jungfrau, name ): - - # opens scan - scan = SFScanInfo( path_to_json ) - - # step through scan and average files from each positions - mean_image = [] - for step in tqdm( enumerate(scan) ): - # step is a SFDataFiles object - subset = step[1] - - # go through data in_batches so you don't run out of memory - means = np.empty(subset[jungfrau].data.shape) - for indices, batch in subset[jungfrau].in_batches(size=2): - means[indices] = np.mean(batch.data, axis=(0)) - - # take mean of means for batch opened data - mean_image.append(np.mean(means, axis=0)) - - # sum averaged imaged - sum_image = np.sum( mean_image, axis=0 ) - - # output to file - np.save( "{0}.npy".format( name ), sum_image ) - - # create plot of summed, averaged scan - fig, ax = plt.subplots() - ax.imshow(sum_image, vmin=0, vmax=1000) - plt.show() - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument( - "-j", - "--jungfrau", - help="name of the jungfrau used, i.e., JF17T16V01 for Cristallina MX", - type=str, - default="JF17T16V01" - ) - parser.add_argument( - "-s", - "--scan", - help="path to json scan file", - type=str, - default="/sf/cristallina/data/p20590/raw/run0003/meta/scan.json" - ) - parser.add_argument( - "-n", - "--name", - help="name of output file", - type=str, - default="sum_mean_scan" - ) - args = parser.parse_args() - - convert_image( args.scan, args.jungfrau, args.name )