Releases: EdoPro98/SimSiPM
Releases · EdoPro98/SimSiPM
v2.0.2
v2.0.1-beta
Fixed bug that broke v2.0.0-beta
v2.0.0-beta
Compatibility
Compatibility with previous versions (1.x.x) of the library is not ensured. Older code calling the library should work fine since most of changes are additions.
What's Changed
Added:
- [SiPM] New logic for XT and AP generation. AP and XT are generated in the same method allowing for XT to generate AP events and vice versa.
- [SiPM] Introduced delayed optical crosstalk (DXT). In some SiPMs a fraction of XT events is delayed from the generating event, DXT describes this effect. (Off by default)
- [SiPM] New namespace
math
contains advanced an high performance math functions that use intriscics (SSE - AVX2 - FMA) - [SiPM] Now each SiPMHit stores a pointer to the parent hit. If it is a photoelectron hit or a DCR hit just store
nullptr
. This is useful for debugging and to study the effect of different noise sources. - [SiPM] Now each SiPMHit stores a vector of pointers to the children hits.
- [SiPM] New interpolation method for SpectralPde borrowed from Geant4.
- [CMake] Use install prefix for python installation by @vvolkl in #4
- [README] Fix readme typo by @vvolkl in #2
Modified:
- [SiPM] Improved algorithm for SiPM hit creation and handling. All hits are created with amplitude 1 and then amplitude is calculated as last step. This allows for general better description of saturation and consecutive AP events.
- [SiPM] Improved and faster algorithm for hit amplitude calculation. Improved speed by looking only at hits that are located "before in time" the one being checked, no need to check at later times.
- [Pybind11] Better use of pybind11 module variables. Almost all functionality of C++ version is wrapped to Python.
- [Python] Updated setup.py file. Now versioning is handled in the SiPM.h file and copied in all other files.
- [PyTest/GTest] Overall better tests with looser constraints that should fail only in case of real bugs.
- [Doxygen] New file format as prescribed by new Doxygen version.
- [README] Updated readme with better instructions.
Removed:
- [SiPM] Removed superfluous
const
in return arguments - [SiPM] Removed unused methods
- [SiPM] Removed SiPMSimulator class. Never used and superfluous
- [OpenMP] Removed OpenMP support. It was used only in SiPMSimulator class.
New Contributors
Full Changelog: 1.2.3-beta...v2.0.0-beta
v1.2.4
1.2.3-beta
Changelog
Improved:
- New and faster way to convert bits from prng in double values [0-1].
- Minor performance improvements
- Minor changes and cleaner code
- Ready for beta version
Added:
- Tests for rng and most classes
- Added support also for pypy3 python version
Removed:
- Removed experimental support for Windows. Now supporting ONLY Linux and MacOS
v1.1.3alpha
Changelog:
Added:
- SiPMSimulator: class that automatically handles all the event loop given a SiPMSensor and a list of events to simulate
- Added operator==() method to identify hits on same cell
- Added some unit testing
- Improved random number generation with faster algorithms
- Added support for openMP
Removed:
- Removed cell ID. Cells are identified given row and column
- Removed many unused methods
v1.0.3-alpha
CHANGELOG:
- Added different hit types on SiPM surface
- Better Pybind11 compatibility (iostream)
- Bug fixes and performance impovements
First working release available on PyPi
v1.0.2-alpha v1.0.2-a
First release
First release