58 Commits

Author SHA1 Message Date
Mazzoleni Alice Francesca
54def26334 added ClusterFile tests fixed some bugs in ClusterFile
All checks were successful
Build on RHEL9 / buildh (push) Successful in 1m55s
2025-04-14 15:48:09 +02:00
Mazzoleni Alice Francesca
76f050f69f solved merge conflict
Some checks failed
Build on RHEL9 / buildh (push) Failing after 1m22s
2025-04-10 09:21:50 +02:00
Erik Fröjdh
f16273a566
Adding support for Jungfrau .dat files (#152)
All checks were successful
Build on RHEL9 / buildh (push) Successful in 1m48s
closes #150 

**Not addressed in this PR:** 

- pixels_per_frame, bytes_per_frame and tell should be made cost in
FileInterface
2025-04-08 15:31:04 +02:00
Mazzoleni Alice Francesca
50eeba4005 restructured GainMap to have own class and generalized
Some checks failed
Build the package using cmake then documentation / build (ubuntu-latest, 3.12) (push) Failing after 40s
2025-04-02 17:58:26 +02:00
Mazzoleni Alice Francesca
61af1105a1 templated eta and updated test 2025-04-02 14:42:38 +02:00
Mazzoleni Alice Francesca
4240942cec solved merge conflict 2025-04-01 17:48:48 +02:00
Mazzoleni Alice Francesca
745d09fbe9 changed push_back to take Cluster as input argument 2025-04-01 15:30:10 +02:00
Erik Fröjdh
9d8e803474
Merge branch 'main' into developer 2025-04-01 14:35:27 +02:00
Erik Fröjdh
a42c0d645b
added roi, noise and gain (#143)
- Moved definitions of Cluster_2x2 and Cluster_3x3 to it's own file
- Added optional members for ROI, noise_map and gain_map in ClusterFile

**API:**

After creating the ClusterFile the user can set one or all of: roi,
noise_map, gain_map

```python
f = ClusterFile(fname)
f.set_roi(roi) #aare.ROI
f.set_noise_map(noise_map) #numpy array
f.set_gain_map(gain_map) #numpy array
```

**When reading clusters they are evaluated in the order:**

1. If ROI is enabled check that the cluster is within the ROI
1. If noise_map is enabled check that the cluster meets one of the
conditions
    - Center pixel above noise
    - Highest 2x2 sum above 2x noise
    - 3x3 sum above 3x noise
1. If gain_map is set apply the gain map before returning the clusters
(not used for noise cut)

**Open questions:**
1. Check for out of bounds access in noise and gain map?

closes #139 
closes #135 
closes #90
2025-04-01 14:31:25 +02:00
Mazzoleni Alice Francesca
508adf5016 refactoring of remaining files
Some checks failed
Build the package using cmake then documentation / build (ubuntu-latest, 3.12) (push) Failing after 40s
Build the package using cmake then documentation / deploy (push) Has been skipped
2025-04-01 10:01:23 +02:00
Mazzoleni Alice Francesca
e038bd1646 refactored and put calculate_eta function in seperate file 2025-03-31 17:35:39 +02:00
Mazzoleni Alice Francesca
7e5f91c6ec added benchmark to time generalize calculate_eta - twice as long so will keep specific version for 2x2 and 3x3 clusters 2025-03-31 17:04:57 +02:00
f8f98b6ec3 Generalized calculate_eta2 function to work with general cluster types 2025-03-28 14:29:20 +01:00
Erik Fröjdh
5d8ad27b21
Developer (#138)
All checks were successful
Build the package using cmake then documentation / build (ubuntu-latest, 3.12) (push) Successful in 1m45s
- Fully functioning variable size cluster finder
- Added interpolation
- Bit reordering for ADC SAR 05

---------

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 <xiangyu.xie@psi.ch>
2025-03-20 12:52:04 +01:00
Erik Fröjdh
11cd2ec654
Interpolate (#137)
- added eta based interpolation
2025-03-18 17:45:38 +01:00
froejdh_e
332bdeb02b modified algo 2025-03-14 11:07:09 +01:00
froejdh_e
5614cb4673 WIP 2025-03-05 17:40:08 +01:00
froejdh_e
8ae6bb76f8 removed warnings added clang-tidy 2025-02-21 11:18:39 +01:00
Erik Fröjdh
b7a47576a1
Multi threaded fitting and returning chi2 (#132)
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>
2025-02-19 07:19:59 +01:00
Erik Fröjdh
fc1c9f35d6
Merge branch 'main' into developer 2025-02-18 21:52:20 +01:00
Erik Fröjdh
6a83988485
Added chi2 to fit results (#131)
- fit_gaus and fit_pol1 now return a dict
- calculate chi2 after fit
- cleaned up code
2025-02-18 21:13:27 +01:00
froejdh_e
8ff6f9f506 fixed linking to lmfit 2025-02-18 15:49:46 +01:00
Erik Fröjdh
dadf5f4869
Added fitting, fixed roi etc (#129)
Co-authored-by: Patrick <patrick.sieberer@psi.ch>
Co-authored-by: JulianHeymes <julian.heymes@psi.ch>
2025-02-12 16:50:31 +01:00
Erik Fröjdh
7309cff47c
Added fitting with lmfit (#128)
- added stand alone fitting using:
https://jugit.fz-juelich.de/mlz/lmfit.git
- fit_gaus, fit_pol1 with and without errors
- multi threaded fitting

---------

Co-authored-by: JulianHeymes <julian.heymes@psi.ch>
2025-02-12 16:35:48 +01:00
Erik Fröjdh
f7031d7f87
Update CMakeLists.txt
Removed flto=auto which caused issues with gcc 8.5
2025-02-12 10:52:55 +01:00
Erik Fröjdh
d86cb533c8
Fix minor warnings (#126)
- Unused variables
- signed vs. unsigned
- added -flto=auto
2025-02-11 11:48:01 +01:00
Erik Fröjdh
4c750cc3be
Fixing ROI read of RawFile (#125)
- Bugfixes
- New abstraction for detector geometry
- Tests for updating geo with ROI
2025-02-11 11:08:22 +01:00
Erik Fröjdh
5a3ca2ae2d
Decoding for ADC SAR 05 64->16bit (#124)
Co-authored-by: Patrick <patrick.sieberer@psi.ch>
2025-02-05 14:40:26 +01:00
froejdh_e
29b1dc8df3 missing header 2024-12-13 14:57:36 +01:00
froejdh_e
a0f481c0ee mod pedestal 2024-12-12 14:34:10 +01:00
froejdh_e
b3a9e9576b WIP 2024-12-11 16:27:36 +01:00
31b834c3fd added AARE_INSTALL_PYTHONEXT option to install python in make install, which also installs the python files in the aare folder 2024-11-28 15:18:13 +01:00
Erik Fröjdh
9f7cdbcb48 conversion warnings 2024-11-18 18:18:55 +01:00
Erik Fröjdh
75f83e5e3b detecting need to link with stdfs 2024-11-18 15:33:09 +01:00
Erik Fröjdh
30d05f9203 detecting need to link with stdfs 2024-11-18 15:19:57 +01:00
Erik Fröjdh
37d3dfcf71 WIP 2024-11-18 14:46:28 +01:00
Erik Fröjdh
35c6706b3c docs 2024-11-18 14:39:46 +01:00
Erik Fröjdh
13394c3a61 cmake targets 2024-11-18 11:30:33 +01:00
Erik Fröjdh
9d4459eb8c linking json with PUBLIC to avoid errors 2024-11-18 09:22:28 +01:00
Erik Fröjdh
e77b615293
Added expression templates (#98)
- Works with NDArray
- Works with NDView
2024-11-15 15:17:52 +01:00
Erik Fröjdh
7ffd732d98
ported reading clusters (#95) 2024-11-14 16:22:38 +01:00
Erik Fröjdh
dc889dab76 removed subfile from cmake 2024-11-14 07:48:59 +01:00
Erik Fröjdh
a0b6c4cc03
Merge branch 'main' into developer 2024-11-11 18:52:23 +01:00
froejdh_e
ecf1b2a90b WIP 2024-11-11 17:13:48 +01:00
Erik Fröjdh
d8d1f0c517
Taking v1 as the first release (#92)
- file reading
- decoding master file
2024-11-07 10:14:20 +01:00
Erik Fröjdh
9c220bff51 added simple decoding of scan parameters 2024-11-07 08:14:33 +01:00
Erik Fröjdh
25812cb291 RawFile is now using RawMasterFile 2024-11-06 09:10:09 +01:00
Erik Fröjdh
80a39415de added CtbRawFile 2024-11-05 14:36:18 +01:00
Erik Fröjdh
b8a4498379 WIP 2024-10-31 18:03:17 +01:00
Erik Fröjdh
19c6a4091f improved docs and added PixelMap 2024-10-31 08:56:12 +01:00