Releases: michaltykac/proshade
Apple Silicon Support
This is the version 0.7.6.7 (JUL 2022)
There are only a few modifications in this release, including:
- Support for the Apple Silicon chipset
- Removal of two rare bugs, which could cause segmentation faults
NOTE: The examples were not tested on this version, so the expected values in them may be slightly off.
Multiple symmetry predictions
This is the version 0.7.6.6 (JUL 2022).
This version improves on the symmetry detection, specifically by:
a) Allowing for simple and fast symmetry detection using multiple average FSC value thresholds.
b) Resolving the polyhedral symmetries primer selection problem that has re-occured after the introduction of over-sampling in the last version.
Furthermore, this version improves upon the installation of ProSHADE on most platforms by better usage of compiler flags and other minor issues.
Improved FSC and re-sampling
The main changes from the previous release are:
1) The FSC computation now uses the first rotation against the original position instead of the average of all pairs of rotations against the original position in most cases. The only situation where the average would be used instead of the single rotation would be where the map resolution is too low for clear distinction of the next rotation and where the first rotation gives high FSC value.
2) The map re-sampling is now done in a way that the map is over-sampled (compared to the Shannon sampling) and therefore allows more accurate interpolation onto the concentric spheres. Also, the E matrices are zero-padded to produce over-sampled rotation function to similarly allow better accuracy of mapping onto the angle-axis space spheres.
3) The symmetry detection now uses a combination of peak height (un-weighted correlation) and FSC (bin-weighted correlation) as opposed to previously used mostly FSC.
4) Seg. fault caused by integration order being supplied by the user while the progressive integration order method is being used has now been resolved.
5) Minor bug fixes and improvements.
0.7.6.4 (APR 2022) - Faster symmetry detection
This commit introduces the new version 0.7.6.4 (APR 2022). The major changes are:
- Considerable speed-up in the E-matrix computation.
- Removal of trace sigma descriptor bug occuring when progressive sphere mapping is used.
- Improvements in thresholding and deciding the recommended symmetry.
- Now FSC is used to decide which non-prime axes are to be considered. This may be slightly slower in some cases, but in a few cases this makes 100x time difference.
- Other minor bug removals and improvements.
Re-worked FSC computation and improved symmetry detection
This is the new version 0.7.6.3 (FEB 2022).
The main new features include:
- The stripe on sphere mapped rotation function for angle 180deg around the equator is now gone.
a) The cause was an error in rotation matrix to euler angles conversion in the singularity case.
b) The Euler angles are in ZYZ and NOT in ZXZ format. All references changed. - Completely re-worked FSC computation - now it is faster and much more accurate. More specifically:
a) Binning is improved.
b) Resolution cut-off for faster computation.
c) Map rotation now done in reciprocal space (i.e. faster). - Improved the symmetry detection logic
a) There was a wrong axis in the pre-computed optimal Icosahedron, now resolved.
b) D symmetries are now not simply taken as the highest fold and passing threshold, now smoothened histogram approach is used.
c) C symmetries and D symmetries are both considered, instead of just taking any D over any C. - Speed improvements
a) If mask is supplied, the inner settings (bandwidth) use the non-zero mask size instead of full map size.
b) Radius in which the structure is considered and outside of which it is ignored can now be supplied for faster calculations
c) Improved the peak detection threshold detection, which was causing some structures to take be 10 times slower for symmetry detection. - Minor bug fixes and code clean-ups.
Symmetry centre detection
This is the new version 0.7.6.2.
The main new features are:
- Symmetry centre detection can be run using -I option. This allows finding the centre of symmetry
- Removed boundary condition bug that was causing some extra false positives in the axes list in symmetry detection.
- General bugs removal and speed-up.
Improved map re-sampling
The changes to previous version include:
- Map re-sampling: Map re-sampling slightly moves (sub-index) position of the internal map, which causes issue for translation map. This has been improved, but not completely removed.
- Symmetry detection: All polyhedral symmetries are always sought, no longer stopping if larger polyhedral symmetry is found.
- getopt_port only: Now the external getopt library is used exclusively instead of only on Windows. This is because older GCC version were mixing system and external getopt files, causing segfaults.
- M_PI: Older GCC version have cmath.h header without M_PI definition (which is not necessarily part of the header, but Unix libraries typically have it there). This has now been remedied and M_PI definition is no longer required.
Group Elements in Python
This release introduces minor changes:
- The functions for computing cyclic group elements from axis and fold as well as for joining multiple cyclic group elements lists into a single list for a larger group are now exposed to python.
v0.7.5.2
This release introduces two major changes:
- The polyhedral symmetry detection now works as intended.
- ProSHADE now installs from Pip and from source on Windows 10 (64-bit only)