Software projects

I develop scientific software with two different purposes. On one hand I develop libraries capable of studying a variety of problems based on certain types of Hamiltonians (tight binding, spin models), those libraries are Python compatible so they can be used with any other Python code . On the other hand, I create user interfaces so that calculations can be performed without the need of actually writing any script, but simply changing certain parameters in a window. These last makes use of the Python libraries.

Below you can find a list of the libraries that I have written, most of them still under heavy development. All of them are released under the GPL open source license., you are totally free to use them in any personal project.

Library based software

  • KPMPY: Python package implementing the kernel polynomial method (stable)
  • pygra: Python package oriented towards tight binding modeling and quantum transport (stable)
  • dmrgpy: Python package to study many body fermionic and spin systems using DMRG-MPS techniques, based on the library ITensor (under development)

Interface based software

This program allows to calculate different properties in graphene like systems as non colliner magnetism, Berry curvatures and, of course, band structures. The present link will download a version which has a built in user interface adapted for different 0d,1d and 2d systems. It makes use of the library pygra. This program works both in Linux and Mac.

Some youtube videos showing how to use it are linked below

https://www.youtube.com/watch?v=8gO1yRmwgAs

https://www.youtube.com/watch?v=FQlkqAW7Nhs

https://www.youtube.com/watch?v=R7Kt3_DHTtM

https://www.youtube.com/watch?v=tQKG_h0FaTM

Quantum Honeycomp system selection

Quantum Spin Hall state computed with Quantum Honeycomp

SpinFlare is an interactive program that allows to solve one-dimensional quantum many-body spin Hamiltonians. It allows the computation of ground state magnetization, static spin-spin correlators, dynamic spin-spin correlators and excited states. The program uses the matrix-product state formalism, allowing to solve systems with 100 quantum spins in a a few seconds.

The example below shows the calculation of the dynamical structure factor for a S=1 Heisenberg model, showing the emergence of a bulk spin gap and fractionalized zero edge modes.



Qutranpy is an interactive program to perform quantum transport calculations by means of the Landauer and scattering matrix formalism, in a two terminal geometry. The Hamiltonians of leads and scattering region can be modified, adding exchange fields, mass, spin-orbit coupling or superconductivity. It makes use of the library pygra

This is a program with a user friendly interface that allows tu study electronic properties of transition metal atoms over surfaces. It allows to include different types of crystal fields, spin orbit coupling and electronic interactions. It solves the Hamiltonian in the full many body space of the d orbitals, using the configuration interaction (CI) method. It shows automatically all the results in a pdf created in Latex, projecting different operators onto the ground state manifold and showing their representation, as well as the different eigenstates of the system in an easy to read fashion. It also allows to see how degeneracies and eigenvalues evolve with different parameters, allowing the obtain results in a couple seconds.

This is an old program that basically allows to calculate electronic properties in graphene ribbons, solving selfconsistently electronic interactions and performing transport using non equilibrium Green's functions. I am not updating this program anymore, so that I recommend you to download Quantum Honeycomp instead of this one.