Skip to content
Snippets Groups Projects
user avatar
Andreas Schenk authored
Changed in detail:
------------------

- removed DEPRECATED and unused code (slice and row pointers) in value holder
- switched from new allocatd array to std::vector
- removed explicit data initialization loop
- using size_t instead of unsigned int for memory allocation
- removed padding code
- removed try catch(...) statements
- added overflow check for big volumes
- optimized 3D index to linear index calculation
- removed physical extent for spatial domain (identical to logical extend not that padding is gone)
- switched FFT to out of place transforms

Benefits
--------

- memory for large images is correctly allocated
- if the memory can't be allocated an exception is thrown instead of crashing the program
- speed increase for FFT ca. 12% and for algorithms using direct value access (e.g. Stat) ca. 7%

Issues
-----

- FFTs are not out of place, leading to increased memory usage for c2c DFT backtransform and
  hc2r FFT/DFT backtransform (3x image size instead of 2x image size). If necessary it would
  be possible to add a fallback for these cases (i.e. catch bad_alloc for the tmp state) and
  do them in place in low memory conditions. Padding for the in-place transform could be added
  to the std::vector either at construction time or otherwise using reserve().
5161efae
History
===============OPENSTRUCTURE molecular modelling framework ===============


OpenStructure is the next generation molecular modelling tailored at anybody
 using 3D Structures or electron density maps.

Please refer to www.openstructure.org for more information or try out
 directly one of the binary packages available for download.

Thank you for you interest and enjoy the straightforward way of handling 
protein structure data!

Please do not hesitate to contact us for feedback or troubleshooting:

ost-users@maillist.unibas.ch 


=============== The OpenStructure Team ===================================