About

GOLLUM is a program written Matlab that computes the electrical and thermal transport properties of multi-terminal nano-scale systems. The program can compute transport properties of either user-defined systems described by a tight-binding (or Huckel) Hamiltonian, or more material-specific properties of systems composed of real atoms described by DFT Hamiltonians. The program has been designed to interface easily with any DFT code, which uses a localized basis set e.g. SIESTA and plane wave codes using the Wannier90 code.

GOLLUM is based on equilibrium transport theory, which means that it consumes much less memory than NEGF codes. The program has been designed for user-friendliness and takes a considerable leap towards the realization of ab initio multi-scale simulations of conventional and more sophisticated transport functionalities. These include:

Simulates multi-terminal devices

Gollum simulates the transport properties of a junction connected to an arbitrary number of leads. These leads can be narrow or wide.

Reads either Tight-Binding or DFT Hamiltonians

Gollum assumes that the Hamiltonians describing the junction expanded in terms of a localized basis set. Gollum reads this Hamiltonians from files. For tight-binding models, these files can easily be written by hand (for very simple systems), or using a tight-binding Hamiltonian if the junction is too big. They can also be generated by any localized basis set-based DFT code. Notice that for wide enough leads displaying a high crystalline structure, a mixed localized basis set that includes transverse k-points might be needed. Gollum can simulate easily these junctions. In addition to interface to Siesta code which uses a localized basis set, Gollum can read output Wannier Hamiltonians from the Wannier90 code . So Gollum2 interfaces now with plane wave codes such as Castep, VASP, ABINIT and Quantum-Espresso.

Computes the full scattering matrix

Gollum computes the full scattering matrix of the junction for all open incoming and outgoing channels, including their modules and phases. Because the information is too long, it prints only those channels placed at the Fermi energy (Mode-2 of Gollum).

Computes charge transport

Gollum computes the spin-dependent transmission and shot-noise coefficients among any two given leads of a junction in equilibrium conditions, as well as the number of open channels and reflection coefficient of each lead (Mode-1 of Gollum). 

Computes phonon transport

Gollum computes the phonon transmission among any two given leads of a junction and the number of open phononic channels of leads (Mode-5 of Gollum).

Computes heat transport

Gollum computes the electrical and thermal conductance due to both electrons and phonons, the Peltier and Seebeck coefficients and full thermoelectric figure of merit between any two leads of the junctions, as a function of Temperature and the Fermi energy of leads (Mode-3 of Gollum). 

Computes spin transport

Gollum can treat paramagnetic junctions, as well as those displaying spin-polarized collinear magnetic properties. More generally, Gollum can also handle junctions possessing any non-trivial non-collinear spin arrangement. Furthermore, it can also compute the transport properties of junctions displaying strong spin-orbit effects, like those made of Topological Insulator materials, or where the scattering region has strong magnetic anisotropies (Mode-1, 2 and 4 of Gollum).

Computes I-V curves

Gollum computes the spin-dependent transmission coefficients of a junction whose leads are subjected to arbitrary voltages. It can automatically ramp up the voltage of one of the leads to generate I-V curves (Mode-4 of Gollum).

Handles vdW and LDA+U functionals

The flexible file format used in Gollum has enabled us to create interfaces to all the latest flavours of the SIESTA code, including those featuring the vdW and LDA+U functionals.

    Scissors corrections scheme for strongly correlated systems

DFT-based estimates of the electronic structure of nanometer-sized quantum systems tend to under-estimate their HOMO-LUMO gap (e.g.: the energy separation between the highest occupied and the lowest unoccupied eigen-states of the quantum system). If the quantum system is connected to external leads to make a junction, the above fault translates into a gross overestimation of the conductance of the junction. The scissors correction scheme is a phenomenological correction to the DFT Hamiltonian that places the quantum levels at roughly their correct energy position, rendering transport results that compare satisfactorily with experiments. Furthermore, the scheme is enhanced to include screening effects on the quantum system due to the presence of nearby metallic surfaces – the electrodes.

Computes band-structure of the leads and density of states (DOS) in the scattering region

Gollum computes the band structure of the crystalline leads. These bands structures are plotted having k in the y-axis and E in the x-axis, as GOLLUM fixes E and then find those wave-vectors satisfying the Schrodinger equation. Gollum also picks the Hamiltonian of the scattering region, isolates it from the electrodes and computes its DOS with and without scissors corrections.

Covers large samples enabling to analize ballistic to diffusive regime

Gollum can compute the transport properties of very large samples for any given Hamiltonian (tight-binding or DFT). This fact enables us to go over from the ballistic to the diffusive regimes. 

Computes band-structure, density of state and number of open chanells of leads

Gollum can compute the band-structure, density of state and number of open chanells of a given lead (Mode-0 of Gollum). 

Gollum interface to AiiDA

 Gollum has interfaced to AiiDA as explained in http://aiida-gollum.readthedocs.io to manage, preserve, and disseminate the simulations, data, and workflows of modern-day computational science.

See Gollum manual for more details.

Version info

The current GOLLUM "version" is: Gollum2 released on July 2018.

The other versions of GOLLUM are

v.1.0 which was released on 10 July 2014.

v1.1.1 released on May 2015.

v1.1.2 released on April 2016.

GOLLUM is updated continuously. Whenever we fix a bug or add a feature, we release it immediately, and post a notice on the website and email to GOLLUM mailing list.

If you have a problem that you are convinced is a GOLLUM code issue or have suggestions for further development, please send an email to Prof. Hatef Sadeghi (hatef.sadeghi@warwick.ac.uk).

Version 3.0 will come with