- Nov 26, 2019
-
-
Joseph Weston authored
The removed logic is an artifact from when vectorized and unvectorized systems shared the same logic for 'hamiltonian_submatrix'. This was accidentally left in when we reverted to the old logic for unvectorized systems.
-
- Nov 13, 2019
-
-
Joseph Weston authored
Add the 'subgraphs', 'terms', and 'site_arrays' attributes, and 'hamiltonian_term' method and implement 'hamiltonian_submatrix', 'cell_hamiltonian' and 'inter_cell_hopping' in a vectorized way.
-
- Apr 01, 2019
-
-
Christoph Groth authored
When System.parameters was introduced, we thought it would be a good idea to also use this new attribute. The plan was to check in hamiltonian_submatrix() whether any unneeded parameters are provided by the user. This turned out to be impossible, so the only check that remained was whether all the necessary parameters are indeed provided. However, this check is not necessary, because the 'hamiltonian' method is in any way obliged to signal an error when it does not obtain the necessary parameters.
-
- Feb 15, 2019
-
-
Joseph Weston authored
Additionally update all associated docstrings to say that 'args' is deprecated in favor of 'params'.
-
Joseph Weston authored
This means we don't need to create a dummy class that implements __get__ just so we can use hamiltonian_submatrix as a method.
-
- Feb 14, 2019
-
-
Joseph Weston authored
-
- Jun 20, 2017
-
-
Joseph Weston authored
Remove fixes for unsupported versions of numpy, scipy and matplotlib.
-
- Feb 21, 2017
-
-
Joseph Weston authored
Hamiltonian value functions may now have signatures that depend on different parameters. On finalization, Builders now inspect all of their value functions and store the names of the parameters on which the value function depends. Then, when evaluating the Hamiltonian, a particular value function is only passed the parameters on which it depends. 'System.hamiltonian' has been updated to accept an extra keyword-only parameter, 'params', which is a dictionary mapping parameter names to values. This is mutually exclusive with the existing '*args'. All top-level API that takes an 'args' parameter now also takes a keyword-only parameter, 'params'
-
- Oct 30, 2016
-
-
Anton Akhmerov authored
-
- Aug 30, 2016
-
-
Anton Akhmerov authored
Summary of changes: * Add a test for trailing whitespace, remove all trailling whitespace * Add a test for broken URLs in docs, fix all broken URLs and permanent redirects * Switch sphinx doc build to strict (warnings to errors) and nitpicky (broken links to warnings). Fix all sphinx warnings. * Deploy docs from any commit to [kwant/kwant](https://gitlab.kwant-project.org/kwant/kwant) to https://test.kwant-project.org/doc/dev * Deploy docs from any commit to master at kwant/kwant to https://kwant-project.org/doc/dev * Deploy docs from any tag release tag (so anything that is vX.Y.Z) at kwant/kwant to https://kwant-project.org/doc/X.Y
-
- Dec 08, 2015
-
-
Christoph Groth authored
-
- Nov 05, 2015
-
-
Joseph Weston authored
Under Python 3, `scipy.sparse.coo_matrix` fails when passed memoryviews. We coerce the memoryviews to numpy arrays before passing them to the `coo_matrix`. Even though this is kind of a hack it shouldn't be very inefficient as no data is actually copied. See https://github.com/scipy/scipy/issues/5123 for details.
-
Joseph Weston authored
Unbound methods are not longer a thing in Python 3 [1]. Instead, functions use the descriptor protocol [2] to properly bind the `self` argument if they are being called as a method. Cython functions do not have a `__get__` attribute and so don't satisfy the descriptor protocol. They therefore can't be used as methods. As a workaround we create a wrapper class with the proper __get__ method. The advantage of this over creating a Python wrapper is that the function signature is preserved. [1]: https://docs.python.org/3.0/whatsnew/3.0.html [2]: https://docs.python.org/3/howto/descriptor.html
-
- Oct 20, 2015
-
-
Christoph Groth authored
-
- Aug 03, 2015
-
-
Christoph Groth authored
This still does not allow to import kwant under other names: http://thread.gmane.org/gmane.comp.python.cython.user/13809 Once we depend on Python 3.5, and "proper" relative cimports are supported by Cython, we could add a test for exclusive use of relative imports.
-
- May 21, 2014
-
-
Christoph Groth authored
-
- Aug 26, 2013
-
-
Christoph Groth authored
-
- Jul 31, 2013
-
-
Christoph Groth authored
-
- May 22, 2013
-
-
Christoph Groth authored
-
- Apr 25, 2013
-
-
- Apr 24, 2013
-
-
- Mar 12, 2013
-
-
- Feb 18, 2013
-
-
- Feb 06, 2013
-
-
Christoph Groth authored
-
- Nov 06, 2012
-
-
Christoph Groth authored
-
- Sep 27, 2012
-
-
Christoph Groth authored
Relative cimports are not supported by Cython so far. Once this has been solved we can switch to relative cimports as well and kwant will be importable under different names.
-
- Sep 18, 2012
-
-
Christoph Groth authored
-
- Sep 11, 2012
-
-
Christoph Groth authored
-