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 <S^2> 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