In [10]:
%pylab inline
plt.rcParams['image.cmap'] = 'viridis'
import h5py,os,sys
from flash_tools import *
root_dir = os.path.abspath(".") + "/../"
sys.path.append(root_dir)
import params
import seaborn as sns
sns.set_style("white")
In [11]:
runs = {}
types = ["sample", "holography", "cluster"]
params_fn = "%s/params.csv" % (root_dir)
for t in types:
runs[t] = params.run_numbers(params_fn, t)
In [15]:
# hit rates
hit_rates = {}
mul_rates = {}
for t in types:
hit_rates[t] = []
mul_rates[t] = []
for run_nr in runs[t]:
#print "Run: %i" % run_nr
if not file_exists(run_nr=run_nr, sub_folder="hummingbird",ol=1):
print "WARNING: File does not exist - skipping this run."
hr = 0
mr = 0
else:
hr = calc_hitrate(run_nr=run_nr)
mr = calc_mulrate(run_nr=run_nr)
hit_rates[t].append(0 if hr is None else hr)
mul_rates[t].append(0 if mr is None else mr)
if hr > 0.8:
print run_nr
hit_rates[t] = asarray(hit_rates[t])
mul_rates[t] = asarray(mul_rates[t])
In [ ]:
fig, (ax1, ax2) = subplots(2, 1, sharex=True, figsize=(12, 8))
for t,c in zip(types, ["red", "blue", "green"]):
ax1.semilogy(runs[t], 100*hit_rates[t], "+", ms=15, color=c)
ax2.semilogy(runs[t], 100*mul_rates[t], "+", ms=15, color=c)
ax1.legend(types)
ax1.set_xlim(None, 350)
ax1.set_ylim(0, 100)
ax2.set_ylim(0, None)
ax1.set_ylabel("Total hit rate [%]")
ax2.set_ylabel("Multiple hit rate [%]")
ax2.set_xlabel("Run number")
#savefig("rates.png", dpi=350)
In [66]:
d_root = "multiples"
os.system("mkdir %s" % d_root)
for t in types:
d = "%s/%s" % (d_root, t)
os.system("mkdir %s" % d)
for r in runs[t]:
print "run %i" % r
mulscores = read_mulscores(run_nr=r, ol=5)
if mulscores is None:
continue
ind = mulscores.argsort()[::-1]
for k,i in enumerate(ind):
print (k+1),len(ind)
I = read_intensities(run_nr=r, i=i, ol=5)
P = read_patterson(run_nr=r, i=i, ol=5)
#M = read_patterson_mask(run_nr=r, i=i)
imsave("%s/r%04i_%04i_intensitites.png" % (d,r,k), I, vmin=50, vmax=500, cmap='plasma')
imsave("%s/r%04i_%04i_patterson.png" % (d,r,k), P, vmin=0, vmax=10, cmap='gnuplot')
#imsave("%s/r%04i_%04i_patterson_mask.png" % (d,run_nr,k), M, cmap='viridis')
In [ ]:
In [ ]: