mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2026-09-03 02:50:43 +02:00
d14b2c00887fc4db1e714fd8d9a6930ba6cfac20
Resolve a terminology collision where "floor" meant both max(H2D, kernel, D2H) and the best sustained rate. They coincide at 3x3 (16.17) and diverge at 9x9 f64 (32.66 profiled max vs 30.01 sustained), so the deck read as self-contradictory only at 9x9. Unify on "floor" across the deck, split A1 into separate `engine max [s4]` and `FLOOR = lower of max, sustained` rows, and document in the report that the two numbers come from two different runs made by two different tools -- 30.01 is unprofiled ladder wall clock, not an nsys number. Rebuild fig_f32_kernel as paired s1/s4 panels: the old one was hardcoded to cap-1500 s1 values and showed the kernel binding in both arms, refuting the D2H-handover claim on the same slide. Move that conclusion to 22/34, the end of the Act III arc. Redraw the opt2/opt3 timelines from a real schedule honouring one copy engine per direction (measured overlap 1.00), with 3x3 proportions instead of unsourced ones. Retires the "all four in flight" claim -- three are. Redraw fig_cancellation's error floor from 42 to the documented +-3-4 ADU2; 42 was 6.5 squared, i.e. the line and the shading were each other's source. Normalise 9x9 numbers to cap 1700 and fix eight cap-1500 residues in the report, plus the per-instance kernel figure (43.2 us at s4, not 39.9).
aare
Data analysis library for PSI hybrid detectors
Documentation
Detailed documentation including installation can be found in Documentation
License
This project is licensed under the MPL-2.0 license. See the LICENSE file or https://www.mozilla.org/en-US/MPL/ for details.
Build and install
Prerequisites
- cmake >= 3.14
- C++17 compiler (gcc >= 8)
- python >= 3.10
Development install (for Python)
git clone git@github.com:slsdetectorgroup/aare.git --branch=v1 #or using http...
mkdir build
cd build
#configure using cmake
cmake ../aare -DAARE_PYTHON_BINDINGS=ON
#build (replace 4 with the number of threads you want to use)
make -j4
Now you can use the Python module from your build directory
import aare
f = aare.File('Some/File/I/Want_to_open_master_0.json')
To run from other folders either add the path to your conda environment using conda-build or add the module to your PYTHONPATH
export PYTHONPATH=path_to_aare/aare/build:$PYTHONPATH
Install using conda/mamba
#enable your env first!
conda install aare -c slsdetectorgroup # installs latest version
Install to a custom location and use in your project
Working example in: https://github.com/slsdetectorgroup/aare-examples
#build and install aare
git clone git@github.com:slsdetectorgroup/aare.git --branch=v1 #or using http...
mkdir build
cd build
#configure using cmake
cmake ../aare -DCMAKE_INSTALL_PREFIX=/where/to/put/aare
#build (replace 4 with the number of threads you want to use)
make -j4
#install
make install
#Now configure your project
cmake .. -DCMAKE_PREFIX_PATH=SOME_PATH
Local build of conda pkgs
conda build . --variants="{python: [3.11, 3.12, 3.13]}"
Developer's guide
We are looking forward to your contributions via pull requests!
If you want to fix an existing bug or propose a new feature:
- Install
pre-commitpython package and setup itpre-commit install - Create a new branch with
git branch branch_name - Implement your changes and make a commit (
pre-commitwill check your code automatically) - Push your commit and open a pull request if needed
Languages
Jupyter Notebook
68.1%
C++
28.3%
Python
2.7%
CMake
0.9%