***** 0.9.6 ***** Released 18 of June 2019. Contributors ============ A total of 2 people contributed to this release. People with a "+" by their names contributed a patch for the first time. * Jonas Lundholm Bertelsen + * Nick Papior Pull requests merged ==================== A total of 7 pull requests were merged for this release. * #94: Added option to plot atom indices in sisl.plot(Geometry) * #105: Minor fix on rotate documentation: degrees/rads * #107: Sub orbital * #108: travis: fixing build-system * #111: Added rudimentary support for Path objects in get_sile * #113: Added some noisy files to gitignore * #116: Adding geometries preserves named regions * Officially added real-space self-energy calculations * Cleaned TBT vs. PHT for class name structures * Bugfix for reading MD output from Siesta out-files #130 * Bugfix for tbtse files when requesting pivoting indices using this combination ``in_device=True, sort=False`` which in most cases return wrong indices, thanks to J. Bertelsen for bug-find! * Added several routines for retrieving transposed coupling elements. When having connections `i -> j` it may be beneficial to easily get the transposed connection `j -> i` by taking into account the supercell. `Geometry.a2transpose` enables this functionality making construct functions much simpler when having edges/boundaries. * Bug-fix for reading white-space prefixed keywords in XSF files, #127 * Performance increase for self-energy calculations for very small systems * Huge memory reduction for `Geometry.o2a` with very large system * Enabled pickling on `BrillouinZone` objects * Added `spin_moment` to `Hamiltonian` * Removed ``rotate[abc]`` methods since they were cluttering the name-space Codes should simply replace with: >>> geometry.rotate(angle, geometry.cell[{012}, :], *) for the same effect. * Finally removed deprecated `write_geom` from the API * Enabled calculation of ```` for spin-polarized calculations, this may be used for calculating spin-contaminations * added checks for `SparseCSR` to disallow out-of-bounds keys * Bug fixed for reading POSCAR files from VASP (only when multiple species are used in a non-ordered fashion) * added `sisl` command line utility, it is exactly the same as `sdata` * Enabled pickling sparse matrices, this allows dask usage of sparse matrices * Performance increase for sparse matrix handling * Fixed a problem with Fortran IO + Jupyter notebooks, now the file-handles are re-used if a code block is terminated before closing the file * Added `SparseOrbital` `append` + `transpose` This enables appending Hamiltonian's (append) and makes hermiticity checks possible (transpose) * Enabled complex averaged calculations using `oplist` The `oplist` object is a container allowing inter-element operations >>> l1 = oplist([0, 1]) >>> l2 = oplist([2, 3]) >>> l = l1 + l2 >>> print(l) [2, 4] This is extremely handy for `BrillouinZone.asaverage`/`assum` when calculating multiple values using `eigenstate` objects. * Added reflection calculation to `tbtncSileTBtrans` * Added more distribution functions (step and heaviside) * Removed numpy deprecated class numpy.matrix, now everything is array * Removed possibility of using `kavg=list(...)` due to complexity, now single `kavg` requests are *not* k-averaged. * Bugfix in calculating `shot_noise`, `noise_power` and `fano` factors in `tbtncSileSiesta` They were only correct for Gamma-point calculations * Fixed `*.EIG` `sdata` processing when using `--dos` * Fixed reading geometries from grids from VASP (grid values were correct) * Toolboxes: * Added a toolbox to calculate the Poisson solution for arbitrary electrodes for TranSiesta