mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2025-06-03 19:40:40 +02:00

Co-authored-by: Patrick <patrick.sieberer@psi.ch> Co-authored-by: JulianHeymes <julian.heymes@psi.ch> Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch> Co-authored-by: Xiangyu Xie <45243914+xiangyuxie@users.noreply.github.com> Co-authored-by: xiangyu.xie <xiangyu.xie@psi.ch> Co-authored-by: AliceMazzoleni99 <alice.mazzoleni@psi.ch> Co-authored-by: Mazzoleni Alice Francesca <mazzol_a@pc17378.psi.ch> Co-authored-by: siebsi <sieb.patr@gmail.com>
89 lines
2.4 KiB
Python
89 lines
2.4 KiB
Python
import sys
|
|
sys.path.append('/home/l_msdetect/erik/aare/build')
|
|
|
|
|
|
from aare import RawSubFile, DetectorType, RawFile
|
|
|
|
from pathlib import Path
|
|
path = Path("/home/l_msdetect/erik/data/aare-test-data/raw/jungfrau/")
|
|
f = RawSubFile(path/"jungfrau_single_d0_f0_0.raw", DetectorType.Jungfrau, 512, 1024, 16)
|
|
|
|
# f = RawFile(path/"jungfrau_single_master_0.json")
|
|
|
|
|
|
# from aare._aare import ClusterVector_i, Interpolator
|
|
|
|
# import pickle
|
|
# import numpy as np
|
|
# import matplotlib.pyplot as plt
|
|
# import boost_histogram as bh
|
|
# import torch
|
|
# import math
|
|
# import time
|
|
|
|
|
|
|
|
# def gaussian_2d(mx, my, sigma = 1, res=100, grid_size = 2):
|
|
# """
|
|
# Generate a 2D gaussian as position mx, my, with sigma=sigma.
|
|
# The gaussian is placed on a 2x2 pixel matrix with resolution
|
|
# res in one dimesion.
|
|
# """
|
|
# x = torch.linspace(0, pixel_size*grid_size, res)
|
|
# x,y = torch.meshgrid(x,x, indexing="ij")
|
|
# return 1 / (2*math.pi*sigma**2) * \
|
|
# torch.exp(-((x - my)**2 / (2*sigma**2) + (y - mx)**2 / (2*sigma**2)))
|
|
|
|
# scale = 1000 #Scale factor when converting to integer
|
|
# pixel_size = 25 #um
|
|
# grid = 2
|
|
# resolution = 100
|
|
# sigma_um = 10
|
|
# xa = np.linspace(0,grid*pixel_size,resolution)
|
|
# ticks = [0, 25, 50]
|
|
|
|
# hit = np.array((20,20))
|
|
# etahist_fname = "/home/l_msdetect/erik/tmp/test_hist.pkl"
|
|
|
|
# local_resolution = 99
|
|
# grid_size = 3
|
|
# xaxis = np.linspace(0,grid_size*pixel_size, local_resolution)
|
|
# t = gaussian_2d(hit[0],hit[1], grid_size = grid_size, sigma = 10, res = local_resolution)
|
|
# pixels = t.reshape(grid_size, t.shape[0] // grid_size, grid_size, t.shape[1] // grid_size).sum(axis = 3).sum(axis = 1)
|
|
# pixels = pixels.numpy()
|
|
# pixels = (pixels*scale).astype(np.int32)
|
|
# v = ClusterVector_i(3,3)
|
|
# v.push_back(1,1, pixels)
|
|
|
|
# with open(etahist_fname, "rb") as f:
|
|
# hist = pickle.load(f)
|
|
# eta = hist.view().copy()
|
|
# etabinsx = np.array(hist.axes.edges.T[0].flat)
|
|
# etabinsy = np.array(hist.axes.edges.T[1].flat)
|
|
# ebins = np.array(hist.axes.edges.T[2].flat)
|
|
# p = Interpolator(eta, etabinsx[0:-1], etabinsy[0:-1], ebins[0:-1])
|
|
|
|
|
|
|
|
|
|
# #Generate the hit
|
|
|
|
|
|
|
|
|
|
# tmp = p.interpolate(v)
|
|
# print(f'tmp:{tmp}')
|
|
# pos = np.array((tmp['x'], tmp['y']))*25
|
|
|
|
|
|
# print(pixels)
|
|
# fig, ax = plt.subplots(figsize = (7,7))
|
|
# ax.pcolormesh(xaxis, xaxis, t)
|
|
# ax.plot(*pos, 'o')
|
|
# ax.set_xticks([0,25,50,75])
|
|
# ax.set_yticks([0,25,50,75])
|
|
# ax.set_xlim(0,75)
|
|
# ax.set_ylim(0,75)
|
|
# ax.grid()
|
|
# print(f'{hit=}')
|
|
# print(f'{pos=}') |