VNL-ATK 2016 released

Jul 22 2016

Welcome to the official release of VNL-ATK 2016! This version features, among many other things, better parallel performance, improved DFT accuracy, a new MD framework, as well as a very exciting new NEGF algorithm for surface calculation - and it's available also for Mac! Read more below!

Download links

Note: a bugfix update 2016.4 was released 8 March 2017.

We recommend all users to use 64-bit versions of VNL-ATK: 

If you have an old computer, or for some other reason are running a 32-bit operating system, you can also obtain 32-bit binaries for Windows and Linux. The performance will however be very limited compared to the 64-bit versions!

NOTE: RedHat 5.x (and derived distributions like CentOS) is no longer supported by VNL-ATK 2016; the minimal version is 6.7.




  • New basis sets and pseudopotentials (SG15) which improve the accuracy of ATK-DFT substantially (GGA only)
  • Faster electron-phonon coupling calculations - up to 10x improvement in the general code, plus a new approximate spectral method that is even faster
  • Support for noncollinear spin and spin-orbit in the electron-phonon coupling module
  • More quantities can be obtained from a mobility calculation: Seebeck coefficient, thermal conductivity, and the Hall-coefficient and Hall-conductivity tensors
  • Multi-core parallelization per k-point turned on by default - scale bulk calculations to 100s of cores without using any extra options in the input file
  • Enhancements to the Script Generator, making it a lot easier to use also for more advanced features
  • Improved MD/NEB/AKMC framework - multilevel parallel, and entirely new, highly flexible back-engine code
  • State-of-the-art Martyna–Tobias–Klein barostat for MD
  • Lots of new plotting methods in VNL
  • SurfaceConfiguration, a.k.a. one-probe: a new unique approach to simulating real surfaces without resorting to the slab approximation, using NEGF with physically correct boundary conditions
  • PEXSI solver, for large-scale DFT calculations (10,000+ atoms)
  • New k-point grids: Γ-centered odd meshes, and regular grids to span the Brillouin zone edge-to-edge (or cut out a small region) for transmission spectra
  • New Hubbard-U method, with shifts applied to the pseudopotential projectors for each angular momentum channel (similar approach as used in plane-wave codes)
  • Ozaki equilibrium contour; highly stable calculation of the equilibrium density matrix in device calculations. Particularly useful if the electronic eigenvalue spectrum is very deep
  • Verbosity framework, to control the level of output from an ATK calculation in detail
  • Mac OS X version


To run this version you need to have the 16.0 (2016) license feature.

Don't forget to visit the new documentation portal QuantumDocs with technical notes, manuals, publication list, and tutorials. docs manuals

New features in ATK-VNL 2016

Electron-phonon improvements

  • Electron-phonon coupling is now also supported also for noncollinear/spin-orbit calculations
  • General code optimization, giving about 10x better performance and reduced memory usage
  • Generate energy-dependent scattering rates from the fully k-point dependent ones, for mobility calculations
    • A smallish approximation (often) which reduces computation time - and memory usage - substantially; cf. picture to the right
  • All output is now in tensor form (conductivity/resitstivity, mobility etc)
  • New analysis options: First moment, Seebeck coefficient, thermal conductance (so, it's now possible to compute ZT with electron-phonon coupling included), Hall coefficient / Hall conductivity tensor
  • New inelastic transmission spectrum (IETS) analyzer (cf. the analysis part of the tutorial on IETS of a H-molecule between 1D Au chains - this can now be done in the GUI, without scripts)
  tau e k tau e

General performance improvements

  • Automatic multi-core parallelization per k-point - available already in 2015 but hard to use, now it's default which means ATK can scale out-of-the-box to 100s of cores even for systems with few k-points (cf. picture on the right)
  • Improved performance of the LabFloor when project is located on a remote drive
  • Multi-level MPI parallelization implemented for
    • HTST events
    • Adaptive Kinetic Monte Carlo (AKMC)
    • DynamicalMatrix computations
    • GlobalOptimization (aka crystal structure prediction tool)
    • IVCurve
    • Also fixed logging of these functions (all output now going to separate files)
    • For example, 3-level deep parallelization for AKMC (saddle searches, k-points, and multi-core per k-point) and similarly for DynamicalMatrix
  • Improved parallelization of the contour integration in NEGF
  • Brand new NEB implementation, a lot faster
  • PEXSI solver
    • Order(N) for very (very!) large bulk systems
    • Can also be really useful for equivalent bulk (often a big bottleneck for devices)
    • Gamma point only and non-polarized, for now
    • Opens up for DFT calculations with 10,000+ atoms, as demonstrated by SIESTA ( but requires parallelization over 100s or 1000s of cores
  • Optimize forces and stress simultaneously, instead of leap-frogging stress/force steps as the old algorithm did, giving substantial improvements in calculation time (cf. picture on the right)
  • Significant performance improvements in ATK-Classical (2-10x over 2015)
    • Benchmarks show that ATK-Classical is as fast as LAMMPS on a single machine (MPI is not yet implemented)


The blue curve will be obtained using default settings in ATK 2016, while the red would be the possible case for ATK 2014.

alh3 A10x speed-up for optimization of cell size and atomic positions can be obtained in ATK 2016 compared to 2015.

New basis sets and pseudopotentials

  • Full set of SG15 pseudopotentials for the periodic table H-Bi (excl. the lantanoids)
  • OMX basis sets have also been improved slightly

sg15 high

Delta-test results for the GGA SG15 pseudopotentials with the new "high" basis sets in ATK 2016 show that almost all elements are below 2 meV (dark green).

Ion dynamics / MD

  • Entirely new MD framework in ATK
    • All thermostats and barostats support linear heating and cooling
    • All barostats support both isotropic and anisotropic pressure coupling, as well as linear compression
    • All MD methods are improved wrt. stability, flexibility, and performance
    • Martyna–Tobias–Klein barostat, state-of-the-art algorithm, replaces the NPTMelchionna method
    • Corrections for some mistakes in the ASE MD routines
    • Allows for more flexibility to implement e.g. meta-dynamics
  • New constraints framework for MD and geometry optimization
    • XYZ constraints added
    • Fix center of mass in MD
    • Can now constrain the Bravais lattice also when target stress is applied
    • New MD framework also allows implementation of custom constraints (example: implement a simple force field as a constraint)
  • Quick estimate of the HTST rate pre-factor using the curvature of the NEB reaction path
  • Show warning (at beginning and end of simulation) if NEB end-points are not optimized
  • New potential type in ATK-Classical
    • MEAM: a very flexible potential type, that is applicable to both metallic and covalent systems


  • Brand new, revolutionzing concept - compute real surfaces without resorting to the slab approximation, but instead using an NEGF approach with real physical boundary conditions
  • Calculate the surface properties of materials with more systematic convergence and effort (order of magnitude) than the slab approach
  • Numerical contour integration of the surface Green's functions, coupled to DFT - i.e. just like for two-probe devices, but with only one electrode (the substrate)
  • Properly describes charge transfer from bulk to surface/molecule (in a slab, moving charge to the surface leaves the "bulk" charged which shifts the Fermi level)
  • Allows inclusion of real bias on surface, without dipole correction, which is particularly important for reaction barriers on surface
Example applications:
  • Work function calculations
  • Molecular absorption
  • Heterogeneous catalysis
  • Surface reactions (MD, NEB)



Script Generator updates

  • Set MGGA-TB09 "c"-parameter
  • Improved functionality in "Analysis from File"
    • Read also DynamicalMatrix and HamiltonianDerivatives and other quantities
    • Query the NC file for available object IDs
  • Set solvent dielectric constant for the Poisson equation
  • Set checkpoint file and time interval
  • New constraints editor
    • Also used for the DynamicalMatrix, etc.
  • Much more flexible approach for setting initial spins
  • Setup of parallelization and other performance options

Job Manager updates

  • New diagnostics tool to help setting up remote clusters
  • Possibility to set working directory for each job separately for remote jobs (still a unique subdirectory is created in the working directory)
  • Many stability improvements

  initial spin

3D and 2D plotting in VNL

  • Autowrap atoms (outside the cell) in movies and other 3D windows
  • Show equivalent atoms in bulk (periodically repeated)
  • More flexibility for determining which atoms are bonded or not ("fuzz factor" control)
  • Multiple light sources in 3D
  • All 2D plots modernized, using Matplotlib
  • New plot style for complex band structure plots, both in 2D and 3D
  • Brillouin zone viewer, tooltips, and other improvements
  • New volume rendering styles in 3D: voxel plots, point clouds (with carving options)
  • Polyhedral view of crystals

polyhedra   polyhedra with atoms


Plugins for external codes

  • New QuantumEspresso "Custom Scripter" to generate QE input files
    • Also some added features for visualizing results
  • VASP Scripter updates
    • Set up constraints
    • Preview INCAR
    • Add your own custom lines to INCAR
  • 20x faster LAMMPS import
  • MBNExplorer import/export
  • Cclib, for importing files from various quantum chemistry codes
  • Packmol is now shipped as a plugin in the Builder, letting you set up initial structures for MD with molecules packed into a certain volume
  • PyMatGen (pre-compiled) is now included in the package

qe scripter


The pymatgen module is now part of ATKPython, and above is a water model made in VNL using Packmol.

Licensing updates

  • Licenses that are checked out will never be checked in until the end of the script
    • This means, you will never end up in a situation where e.g. you are looping over DFT calculations, and the license is "stolen" by someone else midway in the script
  • A parallel NEB calculation will now use only 1 master and N-1 slaves to run on N cores (earlier M masters where M=number of images).
    • Similar rules apply for AKMC, IVCurve, and other high-level parallel schemes
  • Added command line parameter -X for faster start-up without auto-loading of the NanoLanguage module
  • LM-X update to 4.8.1 for Linux
    • Fixes bugs in the license server scripts
  • New license setup procedure, inside VNL
    • Guides the user, also when they have no license
    • Available from within VNL, to reconfigure the setup
    • More obvious how to obtain the "automatic" demo license
    • Much better error checking

Platform updates

  • Mac OS X version introduced
  • Better Unicode support: you can now name your project Д汉字խ
  • RedHat/CentOS 5 are no longer supported
  • libXC upgraded
  • Switched from Qt4 to Qt5 - auto-solved some bugs and added new features in the API we can take advantage of
    • We still use PyQt4 however
  license wizard mac


  • Database tool to query the Crystallography Online Database
  • Ozaki equilibrium contour; highly stable calculation of the equilibrium density matrix in device calculations, particularly useful if the electronic eigenvalue spectrum is very deep
  • Verbosity framework, allows you to control how many details ATK should print out while running
  • New k-point grids
    • Gamma-centered even Monkhorst-Pack k-point grids
    • General k-point shift also possible
    • Regular k-point mesh sampling for (Phonon)TransmissionSpectrum, which include the edge of the Brillouin zone
    • Also added possibility to sample only a segment of the Brillouin zone
  • Full Hartree potential can now be obtained
    • As a result, the old "ElectrostaticDifferencePotential" is now called "HartreeDifferencePotential" (unit eV)
    • ElectrostaticDifferencePotential and ElectrostaticPotential are now available with unit Volt (they are simply -1/e*HartreePotential)
  • New "pseudopotential project shift" method - a semi-empirical way to tune the band gap of semiconductors and still obtain a good lattice constant (thus, a bit like Hubbard+U, but not self-consistent) which maintains possibity to optimize geometries (unlike with MGGA)
  • New public methods for configurations, like setCartesianCoordinates (to move atoms)
  • Added keyword Evac for DFTB, like in Hückel
  • All correlation functionals and basis sets are now available for MGGA
  • Icosahedron builder
  • PhysicalQuantity engine radically improved
    • Avoid some annoying errors and allow more flexible notation, also allowing unit and unitless quantities to interact more easily
  • Possibility to use different primitive-to-conventional transformation matrices
    • Also for UnitCell lattices
  • VNL "crashlog" now pops up when generated, to give the user clear information about what went wrong





Known bugs and issues

Since the release of 2016.3, only a few bugs are known in VNL-ATK 2016, none of which are critical. Of course we plan to address these in 2017 or a 2016.4 update if necessary.

  • Unicode support is still not properly working
  • Grimme dispersion correction is not copied to the electrodes, if you use it in a device
  • Polyhedra plots, when you manipulate the visibility of atoms or the polyhedra, sometimes the settings get mixed up
  • Possible issue with negative phonon frequencies
  • And smaller ones