Commit Graph

425 Commits

Author SHA1 Message Date
6604b733dc implemented matterhorn transformer for 4 bit dynamic range 2026-02-02 20:30:53 +01:00
ca03ff7e6b renamed Matterhorn decoders 2026-02-02 13:44:04 +01:00
d6e8b9c639 added all PixelMaps including Matterhorn 2026-01-30 17:18:06 +01:00
7f64b9a616 Read Xilinx CTB files (#271)
All checks were successful
Build on RHEL8 / build (push) Successful in 2m14s
Build on RHEL9 / build (push) Successful in 2m37s
Run tests using data on local RHEL8 / build (push) Successful in 3m16s
File content is the same as the normal ctb files so no changes needed
for reading.

- Accept DetectorType::Xilinx_ChipTestBoard in the CtbRawFile class
- Check if file is open in constructor
2026-01-27 09:49:17 +01:00
Erik Fröjdh
0bc0165c11 Merge branch 'main' into fix/xctb 2026-01-27 09:06:21 +01:00
f6e48182d1 Fix offset in ClusterFinding (#269)
All checks were successful
Build on RHEL8 / build (push) Successful in 2m20s
Build on RHEL9 / build (push) Successful in 2m31s
Run tests using data on local RHEL8 / build (push) Successful in 3m17s
Directly casting the values in the cluster finder would truncate the
resulting ADU value and create an offset when summing the cluster.

1. do pedestal subtraction and then round
2. static cast to result type only after rounding
3. if constexpr to avoid unnecessary rounding
2026-01-26 14:10:25 +01:00
Erik Fröjdh
8ac633dc75 open xilinx ctb 2026-01-26 10:44:09 +01:00
froejdh_e
9d6798b9c5 removed comment 2026-01-21 09:36:17 +01:00
froejdh_e
0ce6128b4f added rounding in cluster finder 2026-01-21 09:35:06 +01:00
b77a576f72 Dev/automate tests using data (#267)
All checks were successful
Build on RHEL8 / build (push) Successful in 2m13s
Build on RHEL9 / build (push) Successful in 2m37s
Run tests using data on local RHEL8 / build (push) Successful in 3m12s
- automatically run python tests 
- automatically run test using data files on local runner from gitea
- fixed some of the workflows

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2026-01-20 17:20:48 +01:00
cbefbc43e9 Fix/mt cluster finder dropping frames (#265)
All checks were successful
Build on RHEL8 / build (push) Successful in 3m9s
Build on RHEL9 / build (push) Successful in 3m36s
Issue from Jonathan. 

- writing to output queue did not check if queue is full - such that
frames were dropped.

## Dataset to recreata issue: 

data overf 10G interface can be accessed on pc: pc-highz-02
raw frames:
/mnt/sls_det_storage_10G/highZ_data/JMulvey/Calibration_From_HZ02/2025Jan_m343/Zr15800eV/250129_CZTsolo_Xray_Tp_15C_tint_100_master_0.json

pedestal frames:
/mnt/sls_det_storage_10G/highZ_data/JMulvey/Calibration_From_HZ02/2025Jan_m343/Zr15800eV/250129_CZTsolo_Pedestal_Tp_15C_tint_100_master_0.json

---------

Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2026-01-20 17:02:27 +01:00
siebsi
31f3a60cd3 added correct decoder for ADC-SAR-05-06-07-08 ASIC (#266)
Adding function to correctly decode the ADC-SAR-05-06-07-08 Chip. 

Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2026-01-20 16:38:06 +01:00
f79ee55430 fixed parsing of dynamic range (#268)
All checks were successful
Build on RHEL8 / build (push) Successful in 3m3s
Build on RHEL9 / build (push) Successful in 3m17s
1. fixed parsing of dynamic range (bug which I added during refactoring)
2. added tests for bitdepth!
3. updated path for test file
2026-01-19 16:54:19 +01:00
froejdh_e
dceda21496 fixed parsing of dynamic range 2026-01-19 15:20:37 +01:00
Erik Fröjdh
c0357e2020 Improvements to NDArray (#258)
All checks were successful
Build on RHEL9 / build (push) Successful in 3m11s
Build on RHEL8 / build (push) Successful in 3m25s
- Removed redundant arr.value(ix,iy...) on NDArray use arr(ix,iy...)
- Removed Print/Print_some/Print_all form NDArray (operator << still
works)
- Added const* version of .data()
- Comment for documentation
- Some extra tests
2025-12-19 14:49:41 +01:00
dfb29b719f fixed out of bounds in test (#259)
- fixed test (out of bounds access)
2025-12-19 13:15:49 +01:00
Erik Fröjdh
7f3123d68f Added parsing of exptime and period from master files (#256)
All checks were successful
Build on RHEL9 / build (push) Successful in 3m26s
Build on RHEL8 / build (push) Successful in 3m33s
- New aare:to_string/string_to similar to what we have in
slsDetectorPackage
- Added members period and exptime to RawMasterFile
- Parsing exposure time and period for json and raw master file formats
- Parsing of RawMasterFile from string stream to enable test without
files

Comments:

- to_string is at the moment not a public header. Can make it later if
needed. This gives us full freedom with the API
- FileConfig should probably be deprecated need to look into it.
Meanwhile removed python bindings and string conv
2025-12-18 17:04:12 +01:00
fb95e518b4 Dev/interpolation documentation (#255)
All checks were successful
Build on RHEL8 / build (push) Successful in 3m5s
Build on RHEL9 / build (push) Successful in 3m21s
- added transform_eta_values for easier debugging more control for the
user
- updated Documentation
2025-12-16 13:06:28 +01:00
Erik Fröjdh
80a2b02345 Dev/decode my302 (#254)
Some checks failed
Build on RHEL8 / build (push) Failing after 0s
Build on RHEL9 / build (push) Failing after 0s
This PR adds support for decoding digital data from the my320 test chip.
- Added BitOffset (strong type)
- Expand 24 to 32 bit 
- Python bindings for decoding my302
- Improved docs
2025-12-09 18:27:02 +01:00
e795310b16 fixed tests (#252)
All checks were successful
Build on RHEL8 / build (push) Successful in 3m11s
Build on RHEL9 / build (push) Successful in 3m46s
- fixed failed tests 
- removed import of pickle, scipy 
- still requires boost_histogram, pytest_check

Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2025-11-28 11:28:13 +01:00
1d8b68bf75 Run catch2 tests in CI (#253)
Some checks failed
Build on RHEL9 / build (push) Failing after 0s
Build on RHEL8 / build (push) Successful in 3m28s
- Build and run tests in CI
- Added macOS builds (and tests)
- Renamed workflow to build_with_docs.yml
2025-11-27 08:58:24 +01:00
Erik Fröjdh
cf53922bd3 restrict upload artifact 2025-11-26 20:21:57 +01:00
Erik Fröjdh
13cffb1ea8 WIP 2025-11-26 20:11:38 +01:00
Erik Fröjdh
bea373a112 with file 2025-11-26 20:09:05 +01:00
Erik Fröjdh
a66ce15a6c renamed workflow and added macos-latest 2025-11-26 20:07:32 +01:00
Erik Fröjdh
44fd015cfe added catch2 to dev env 2025-11-26 20:00:03 +01:00
Erik Fröjdh
6fe822d5dd WIP 2025-11-26 19:56:53 +01:00
Erik Fröjdh
8ed874a679 using tests 2025-11-26 19:54:43 +01:00
dd5ed138cf Dev/print filepath in error (#251)
Some checks failed
Build on RHEL8 / build (push) Failing after 0s
Build on RHEL9 / build (push) Successful in 3m15s
2025-11-25 11:25:44 +01:00
8201c5e999 Fix/mythenfilereading (#250)
Some checks failed
Build on RHEL8 / build (push) Failing after 0s
Build on RHEL9 / build (push) Successful in 3m23s
Add counter mask as member of RawFile
BugFix: temporarily handle -1 for ROI in mythenfile
2025-11-24 12:29:08 +01:00
03af5927ad Release 2025.11.21 (#249)
All checks were successful
Build on RHEL9 / build (push) Successful in 3m19s
Build on RHEL8 / build (push) Successful in 3m27s
- Updated VERSION and script 
- Updated release notes
2025.11.21
2025-11-21 16:34:57 +01:00
Erik Fröjdh
452cfcb60f updated release notes 2025-11-21 16:17:04 +01:00
Erik Fröjdh
e8402d9d36 updated version and version script 2025-11-21 16:14:05 +01:00
a9de336817 added license (#247)
- Added LICENSE file
- Added SPX identifier to source files
2025-11-21 15:11:30 +01:00
6f7cb4ae30 Merge branch 'main' into dev/license 2025-11-21 14:52:54 +01:00
267ca87ab0 Dev/rosenblatttransform (#241)
- added rosenblatttransform 
- added 3x3 eta methods 
- interpolation can be used with various eta functions
- added documentation for interpolation, eta calculation 
- exposed full eta struct in python 
- disable ClusterFinder for 2x2 clusters 
- factory function for ClusterVector

---------

Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
Co-authored-by: Erik Fröjdh <erik.frojdh@psi.ch>
2025-11-21 14:48:46 +01:00
Erik Fröjdh
5dbb969bcc Merge branch 'dev/license' of github.com:slsdetectorgroup/aare into dev/license 2025-11-21 14:45:12 +01:00
Erik Fröjdh
d58d8ea82f added comment in readme 2025-11-21 14:44:54 +01:00
f61f76ccf7 changed License in update_version.py added to etc
Some checks failed
Build on RHEL9 / build (push) Failing after 3m26s
Build on RHEL8 / build (push) Failing after 3m36s
2025-11-21 10:29:12 +01:00
Erik Fröjdh
200ae91622 also hpp 2025-11-21 10:14:14 +01:00
Erik Fröjdh
53aed8d8c6 added license 2025-11-20 09:01:28 +01:00
7fb500c44c Dev/expose sum 2x2 to python (#238)
Some checks failed
Build on RHEL8 / build (push) Failing after 3m15s
Build on RHEL9 / build (push) Failing after 3m16s
Saverio requested that max_sum_2x2 exposes index information in  python 
- max_sum_2x2 returns a corner as index
- replaced eta corner with corner enum class
- max_sum_2x2 now returns index as well in python 
- added link to Documenation in README

Note: Some Tests fail in EtaCalculation due to previous PR about
updating Eta 2x2 will fix in other PR
2025-10-27 20:04:16 +01:00
8989d2eb4a Merge branch 'main' into dev/expose_sum_2x2_to_python 2025-10-27 19:47:09 +01:00
c8c681faa8 updated release notes 2025-10-27 19:30:43 +01:00
0faaf2bbc7 updated release notes
Some checks failed
Build on RHEL8 / build (push) Failing after 3m9s
Build on RHEL9 / build (push) Failing after 3m16s
2025-10-27 18:45:23 +01:00
Erik Fröjdh
ac83eeff9b added tell and better error checking to cluster file (#239)
Some checks failed
Build on RHEL8 / build (push) Failing after 3m8s
Build on RHEL9 / build (push) Failing after 3m18s
- Check feof and ferror when reading frames
- added tell member function to ClusterFile
2025-10-27 15:46:31 +01:00
df7b9be5a5 added docstrings wrap struct into tuple
Some checks failed
Build on RHEL8 / build (push) Failing after 3m42s
Build on RHEL9 / build (push) Failing after 3m41s
2025-10-23 19:16:33 +02:00
dbffea15c0 fix: included deleted file 2025-10-23 17:50:17 +02:00
6e38c3259b added documentation link in README 2025-10-23 17:40:55 +02:00
73e8fd31c9 vector class no longer needed 2025-10-23 17:36:29 +02:00