Feature List

featurelistbar head

QuantumATK is an integrated software suite for atomic-scale modelling. It combines the power of a scripting engine, based on Python scripting, with the ease-of-use provided by an intuitive graphical user interface. All simulation engines share common infrastructure for analysis, ion dynamics and parallel performance. The platform consists of the following components

  • DFT-LCAO: Simulation engine for Density Functional Theory (DFT) using pseudo-potentials and Linear Combinations of Atomic Orbitals (LCAO) basis sets.
  • DFT-PlaneWave: Simulation engine for Density Functional Theory using pseudo-potentials and Plane-Wave (PW) basis sets.
  • SemiEmpirical: Semi-empirical simulation engine for using DFTB, Huckel, Slater-Koster or other tight-binding models.
  • NEGF: Module for nano-scale device simulations using Non Equilibrium Greens Function (NEGF) methodology. The package uses either the DFT-LCAO or the Semi-empirical package for describing the Hamiltonian of the system.
  • ForceField: Simulation engine for atomic-scale simulations containing more than 300 classical potentials like bonded force fields, reactive force fields, pair potentials, and other parameterized interaction models for atoms.
  • NanoLab: This is the graphical user interface (GUI) for the QuantumATK calculators.
  • NanoLab Links: The nanolab links allows for setting up calculations with external codes, like Quantum Espresso, VASP, GPAW, ORCA and LAMMPS.

Below you can find the complete feature list:



LCAO Total Energy Methods

PlaneWave Total Energy Methods

SemiEmpirical Total Energy Methods

ForceField Total Energy Methods

Ion Dynamics for LCAO, PlaneWave, SemiEmpirical and ForceField

Poisson Equation Solvers for LCAO, PlaneWave and SemiEmpirical

Performance Options for LCAO, PlaneWave and SemiEmpirical

Electronic Structure Analysis for LCAO, PlaneWave and SemiEmpirical

Additional Electronic Structure Analysis for LCAO and SemiEmpirical

Specialized Features for LCAO, PlaneWave and SemiEmpirical

NEGF for LCAO and SemiEmpirical

Electron-Phonon Interaction for LCAO and SemiEmpirical


NanoLab Links

Python Scripting and Automatization

Platform Support



featurelistbar 1

LCAO Total Energy Methods

  • Numerical atomic orbital basis sets with compact support
  • Optimized basis sets for most elements with low, medium and high accuracy
  • Norm-conserving Troullier-Martins pseudopotentials
    • FHI/SG15/PseudoDojo potentials provided for almost all elements of the periodic table, including semi-core potentials for many elements
    • PseudoDojo and SG15 potentials are fully relativistic
  • Over 300 LDA/GGA/MGGA exchange-correlation functionals via libXC
  • Methods for accurate band gap calculations of semiconductors and insulators
    • MetaGGA
    • DFT+1/2 method
    • Empirical "pseudopotential projector shift" method (parameters provided for Si and Ge)
  • Van der Waals models (DFT-D2 and DFT-D3)
  • Non-collinear, restricted and unrestricted (spin-polarized) calculations
  • Spin-orbit coupling
  • Hubbard U term in both LDA and GGA (also spin-dependent)
    • "Dual", "on-site", and "shell-wise" models
  • Counterpoise correction for basis set superposition errors (BSSE)
  • Ghost atoms (vacuum basis sets) for higher accuracy in the description of surfaces and vacancies
  • Virtual crystal approximation (VCA)
  • Analytical Force and Stress

featurelistbar 2

PlaneWave Total Energy Methods

  • Plane-wave basis sets with default mesh cutoff setting for all elements (link to delta tests)
  • Hybrid functionals using the ACE approximation
  • Norm-conserving Troullier-Martins pseudopotentials
    • FHI/SG15/PseudoDojo potentials provided for almost all elements of the periodic table, including semi-core potentials for many elements
    • PseudoDojo and SG15 potentials are fully relativistic
  • Over 300 LDA/GGA/MGGA exchange-correlation functionals via libXC
  • Methods for accurate band gap calculations of semiconductors and insulators
    • MetaGGA
    • DFT+1/2 method
    • Empirical "pseudopotential projector shift" method (parameters provided for Si and Ge)
  • van der Waals models (DFT-D2 and DFT-D3)
  • Non-collinear, restricted and unrestricted (spin-polarized) calculations
  • Spin-orbit coupling
  • Eigensolvers
    • Default: Generalized Davidson method – stable and robust method
    • Also includes (as the first code) the Projected Preconditioned Conjugate Gradient (PPCG) algorithm for computing many extreme eigenpairs of a Hermitian matrix (cf. https://arxiv.org/abs/1407.7506 & https://doi.org/10.1016/j.jcp.2015.02.030); provides better scaling for large scale parallel calculations (single k-point, many processes per k-point)
  • Analytical Force and Stress

featurelistbar 3

SemiEmpirical Total Energy Methods

  • DFTB-type model, 30 different parameter sets are shipped with the product, and more can be downloaded and used directly
  • Built-in Slater-Koster models for group IV and III-V semiconductors (including strained models)
    • Interface for input of user-defined Slater-Koster parameters
  • Extended Hückel model with over 300 basis sets for (almost) every element in the periodic table
  • Tight-Binding models for strained systems (T. B. Boykin et al., Phys. Rev. B 81, 125202 (2010))
  • Spin polarization term can be added via internal database of spin-split parameters
  • Non-collinear spin
  • Spin-orbit interaction (parameterized)
  • Hartree term for self-consistent response to the electrostatic environment
  • All models adapted for self-consistent calculations
  • Analytical Force and Stress

featurelistbar 4

ForceField Total Energy Methods

  • Over 280 bond-order potentials included
    • Two/three-body potentials: Lennard-Jones (various versions), Coulomb (various versions), Stillinger-Weber, Tersoff (various versions), Brenner, Morse, Buckingham, Vessal, Tosi-Fumi, user-defined tabulated
    • Many-body: EAM, MEAM, Finnis-Sinclair, Sutton-Chen, charge-optimized many-body (COMB)
    • Polarizable: Madden/Tangney-Scandolo, core-shell
    • ReaxFF
    • Valence force field (VFF) models
  • BYOP (Bring Your Own Potential)
    • Python interface for adding your own or literature potential of any of the supported types
    • Support for custom combinations of potentials
      • E.g. use a Stillinger-Weber potential with a Lennard-Jones term to account for van der Waals interaction
      • Several such potentials from literature are already provided: Pedone, Guillot-Sator, Marian-Gastreich, Feuston-Garofalini, Matsui, Leinenweber, Madden, and more
  • Coulomb solvers
    • Ewald (smooth particle mesh), DSF, Debye, simple pairwise
  • Interface for adding your own or literature potential of any of the above types
  • Support for custom combinations of potentials
    • E.g. use a Stillinger-Weber potential with a Lennard-Jones term to account for van der Waals interaction
    • Several such potentials from literature are already provided: Pedone, Guillot-Sator, Marian-Gastreich, Feuston-Garofalini, Matsui, Leinenweber, Madden, and more
  • Parallelized via OpenMP for optimal multicore performance (MPI parallelization in implementation) 

featurelistbar 12

Ion Dynamics for LCAO, PlaneWave, SemiEmpirical and ForceField

  • Quasi-Newton LBFGS and FIRE methods for geometry and unit cell optimization (forces and stress)
    • Simultaneous optimization of forces and stress
    • Optimize structure to specified target stress (hydrostatic or tensor)
    • Pre/post step hooks for custom on-the-fly analysis
  • Computation of dynamical matrix
    • Phonon band structure, DOS, and thermal transport
    • Compute and visualize phonon vibration modes
    • Compute the Seebeck coefficient, ZT, and other thermal transport properties by combining ionic and electronic results
    • Zero-point energy and free lattice energy can be obtained from the PhononDensityOfStates analysis object (vibrational free energy in quasi-harmonic approximation of molecules and bulk)
    • Wigner-Seitz approximation for large supercells
  • Geometry optimization of device structures (also under finite source–drain bias)
  • Calculation of transition states, reaction pathways, and energies
  • Nudged elastic bands (NEB) method, enhanced version developed in-house
  • Support for varying cell shape and size, to simulate e.g. phase changes
  • Climbing image method
  • Pre-optimized path using the image-dependent pair potential (IDPP) method
  • Parallelized over images
  • Molecular Dynamics (MD)
  • State-of-the-art MD dynamics methods
    • Runs with DFT, semi-empirical models, or classical potentials
    • All thermostats and barostats support linear heating and cooling
    • All barostats support isotropic and anisotropic pressure coupling and linear compression
  • Thermostats and barostats
    • NPT with stress mask
    • NVT Nosé-Hoover with chains
    • NVE Velocity Verlet
    • NVT/NPT Berendsen
    • Martyna-Tobias-Klein barostat
    • Langevin
  • Several options for initialization of velocities
  • Pre/post step hooks in Python for custom on-the-fly analysis or custom constraints
  • Flexible contraints
    • Fix atoms
    • Separate X, Y, Z constraints
    • Fix center of mass in MD
    • Constrain Bravias lattice type (even when target stress is applied)
  • Partial charge analysis
  • Visualization of velocities
  • Interactive analysis tool for trajectory and single configuration properties (also for imported trajectories from LAMMPS, VASP, etc)
    • radial/angular distribution function
    • velocity autocorrelation
    • local mass density profile
    • coordination number
    • mean-square displacement
    • nearest neighbor number
    • neutron scattering factor
    • velocity/kinetic energy distribution
    • local structure analysis (Voronoi type)
    • centrosymmetry
    • In scripting, the above analysis can be performed very efficiently for a selected subset of atoms, also in very large structures
  • Mechanical properties
    • Forces and stress (analytic Hellmann–Feynman)
    • Elastic constants
    • Local stress
  • Global optimization
    • Genetic algorithm for crystal structure prediction
  • Adaptive Kinetic Monte Carlo (AKMC)
    • Long time scale molecular dynamics for finding unknown reaction mechanisms and estimating reaction rates
  • Harmonic transition state theory (HTST) analysis of transition rates
    • Two options: detailed analysis via phonon partition function, or quick estimate via curvature of NEB path
  • Metadynamics via the PLUMED library
  • Export movies of MD trajectories, phonon vibrations, NEB paths, etc.

featurelistbar 7

Poisson Equation Solvers for LCAO, PlaneWave and SemiEmpirical

  • FFT (for periodic systems)
  • Two solvers for systems including metallic/dielectric regions:
    • Multigrid
    • Conjugent gradient method (parallelized in memory and execution)
  • FFT2D solver for transport systems with different dipols (no need for dipole correlations)
  • "Direct" solver for large-scale calculations (parallelized in memory)
  • Multipole expansion for molecules
  • Dirchlet, von Neumann, or periodic boundary conditions can be specified independently in each direction
  • Metallic gate electrodes and dielectric screening regions
    • Allows for computation of transistor characteristics (gated structures) as well as charge stability diagrams of single-electron transistors

featurelistbar 6

Performance Options for LCAO, PlaneWave and SemiEmpirical

  • Consistent use of "best in class" standard libraries/algorithms like Intel MKL, ELPA, PETSc, SLEPc, ZMUMPS and FEAST
  • Proprietary sparse matrix library
  • Parallel memory distribution of e.g. the mixing history
  • Automatic adjustment of number of bands above the Fermi level to include
  • Multilevel parallelism
    • Over images in NEB and similarly for other complex tasks
    • Over k-points
    • Over basis functions (using multiple processes per k-point)
    • Also for band structure, DOS etc.
    • Automatic algorithm to determine the default (optimal) number of processes per k-point
  • Caching of data for higher memory usage vs. faster performance - or opposite
  • Use disk space instead of RAM to store grids for Poisson solver
  • PEXSI solver for O(N) calculations of very large systems (10,000+ atoms in DFT); cf. http://arxiv.org/abs/1405.0194
  • Automatic threading intelligence
    • the number of threads is automatically controlled to make the best use of the available resources, taking into account the number of MPI processes used
  • Possible to combine MPI and openMP parallelization

featurelistbar 8

Electronic Structure Analysis for LCAO, PlaneWave and SemiEmpirical

  • Band structure [...]
    • User defined Brillouin zone path through selection of high symmetry points
    • Fat bandstructure, shows projection onto atoms, spin, orbitals or angular momenta, in any desired combination
    • Effective bandstructure, i.e. unfolding of bandstructure for alloys and other supercells
  • Molecular spectrum [...]
    • One-electron spectrum of molecules
  • Density of states (DOS) [...]
    • Calculated using the tetrahedron method of gaussian smearing
    • Projection onto atoms, spin, orbitals or angular momenta, in any desired combination
  • Projections of band structure and DOS onto atoms, spin, orbitals or angular momenta, in any desired combination
  • Mulliken populations of atoms, bonds and orbitals [...]
  • Real-space 3D grid quantities as Python objects allowing for manipulations, evaluation at points, [...]
    • Electron density
    • Effective potential
    • Full Hartree or Hartree difference potential
    • Exchange-correlation potential
    • Full electrostatic or electrostatic difference potential
    • Electron localization function (ELF) [...]
    • Molecular orbitals [...]
    • Bloch functions, complex wavefunction with phase information [...]
  • Total/free energy, divided into [...]
    • Entropy contribution
    • Polarization and piezoelectric tensor
      • Calculated using the Berry phase approach
      • Calculation of Born effective changes
      • Optional internal ion relaxation
  • Polarization and piezoelectric tensor (Berry phase) [...]
    • Optional internal ion relaxation
  • Effective mass analysis calculated using Finite Difference or Perturbation Theory [...]
    • 2nd order perturbation theory or analytic tensor
  • Bader charges [...]
  • Born effective charges
  • Fermi surface
  • Effective band structure (zone unfolding for supercells)
  • Optical properties [...]
    • Kubo-Greenwood formalism for linear optical properties
    • Calculation of optical adsorption, dielectric function, refractive index, etc.
  • Local Bandstructure
  • Effective mass
  • Charge point defect study object
    • A framework for studying point defects in bulk materials: vacancies, substitutionals, interstitials
    • Neutral and charged defects
    • Calculate relaxed defect structures, formation energies and thermodynamic transition levels
    • Can use with the new PlaneWave calculator
    • Can specify different calculators for the relaxation and the calculation of formation energies
    • Ghost atoms enabled for vacancy sites, also during relaxation, for significantly better accuracy
    • FNV correction scheme for charged defects with automatic Gaussian model charge fitting
    • Check convergence of defect properties with cell size and extrapolate to infinite size
    • Automatic adjustment of k-point sampling for different cell sizes to ensure best possible consistency between sizes

featurelistbar 9

Additional Electronic Structure Analysis for LCAO and SemiEmpirical

  • Complex band structure
  • Bulk transmission spectrum
  • Heisenberg exchange analysis module
    • A novel method of computing exchange coupling constants for the Heisenberg model, using the Green's-function method
    • Works within the framework of density functional theory (DFT+U) combined with the LCAO basis set approach
    • The Heisenberg spin-lattice model is an empirical approach to study various magnetic properties at finite temperatures, e.g., to understand phase diagrams, phase transitions, and magnetization dynamics of the magnetic system
    • The main difference from the traditional approach, which is based on total energy calculations for multiple magnetic configurations, is that all the exchange coupling constants can be computed from a single magnetic configuration calculation
    • Easy to set up the HeisenbergExchange analysis such that only couplings between certain atoms are considered
  • Spin life time
    • At technologically relevant temperatures (>100 K) the spin life time will be limited by electron-phonon interactions, mediated by spin-orbit coupling (Elliot-Yafet mechanism [1])
    • QuantumATK 2018.06 can calculate the phonon-limited spin life time from an ElectronPhononCoupling object (if computed with noncollinear spin and spin-orbit coupling)

featurelistbar 10

Specialized Features for LCAO, PlaneWave and SemiEmpirical

  • Initialization of a new calculation via the self-consistent density matrix of a converged one (with automatic spin realignment)
  • Initialization of noncollinear spin calculations from collinear or spin-unpolarized ones for improved convergence
  • Custom initial spin-filling schemes
  • Odd/even k-point grids (Monkhorst-Pack or edge-to-edge zone filling), Gamma-centered or with custom shifts
  • Fractional hydrogen pseudopotentials and basis sets (for surface passivation)
  • Low-level interface to extract Green's function, Hamiltonian, overlap matrices, self-energies, etc.
  • Delta test module for benchmark of pseudopotential/basis set accuracy
  • Flexible and customizable verbosity framework to control the level of output to the log files
  • Region-dependent "c" parameter for TB09 Mega-GGA
  • Occupation functions: Fermi, Methfessel-Paxton, Gaussian, ColdSmearing
  • Local atomic shifts
  • Simulate external fields
  • Implicit solvent model
  • Support for charged systems
  • Compensation charges
    • Mimic charge doping
    • Passivate surface atoms 

featurelistbar 5

Electron-Phonon interaction for LCAO and SemiEmpirical

  • Extract electron-phonon coupling matrix elements
  • Compute deformation potentials and conductivity/mobility tensor, via the Boltzmann equation, with constant, k-point and/or only energy-dependent relaxation times
  • Compute Hall coefficient and Hall conductivity tensor, Seebeck coefficient and ZT, first moment, and thermal conductance utomated workflows for dynamical matrix (D) and Hamiltonian derivatives (dH/dR)
  • Wigner-Seitz approximation for calculations of both D and dH/dR
  • Tetrahedron integration method for calculating mobility and resistivity of states

featurelistbar 11

NEGF for LCAO and SemiEmpirical

  • NEGF method for two-probe systems
    • Non-equilibrium Green's function (NEGF) description of the electron distribution in the scattering region, with self-energy coupling to two semi-infinite leads (source/drain electrodes)
    • Open boundary conditions (Dirichlet/Dirichlet) allows application of finite bias between source and drain for calculation of I-V curve
    • Includes all spill-in contributions for density and matrix elements
    • Use of electronic free energy instead of total energy, as appropriate for open systems
    • Ability to treat two-probe systems with different electrodes (enables studies of single interfaces like metal-semiconductor or p-n junctions, for instance)
    • Ability to add electrostatic gates for transistor characteristics (see above under "Electrostatic models")
  • Surface Green's function method for single surfaces
    • NEGF description of the surface layers, with self-energy coupling to a semi-infinite substrate (replaces the slab approximation with a more physically correct description of surfaces)
    • Appropriate boundary conditions for infinite substrate and infinite vacuum above the surface, both for zero and finite applied bias on the surface
  • Performance and stability options
    • Scattering states method for fast contour integration in non-equilibrium (finite bias)
    • O(N) Green’s function calculation and sparse matrix description of central region
    • Double or single semi-circle contour integration for maximum stability at finite bias
    • Ozaki contour integration to capture deep states
    • Sparse self-energy methods to save memory
    • Options to store self-energies to disk, either during calculation (instead of RAM) or permanently, to reuse in other calculations
    • Adaptive (non-regular) k-point integration for transmission coefficients
    • Minimal Electrode Concept
      • Reduced electrode - automatically repeated for computing self-energies
      • Saves time in the electrode calculation which is O(N3)
  • Calculation of I-V curves [...]
    • Elastic, coherent tunneling transport
    • IV Characteristics Study Object
      • Combined framework for running multiple source-drain/gate voltage calculations and collecting and analyzing the results
      • Multilevel parallelism
      • “Smart restart“
      • Custom settings for individual voltages
      • State persistence (via data in HDF5)
      • Custom drain-source voltages, plot current as function of gate source; current as function of drain-source for one or many gate voltages
      • Show on/off ratio, subthreshold slope, transconductance, DIBL, source-drain saturation voltage
    • Quasi-inelastic (LOE) and fully inelastic (XLOE) electron-phonon scattering
      • Works with any combination of methods for the electronic and ionic degrees of freedom (DFT, tight-binding, DFTB, classical potentials)
      • Many performance options, such as averaging over phonon modes (bunching), using energy-dependent relaxation energies, and repeating the density matrix for homogeneous systems
      • Inelastic transmission spectrum (IETS) analysis
    • Special thermal displacement (STD) approximation to efficiently capture the effect of phonon scattering on the I-V curve by creating a canonical average over all phonon modes. For more details, see arXiv:1706.09290
  • Photocurrent Module
    • New analysis module for calculating the photocurrent and photon-mediated transmission in a device using first-order perturbation theory within the 1st Born approximation [1,2,3]
    • Also gives the total current based on illumination by the AM1.5 standard solar spectrumOptimize
  • Device Configuration Study Object for Relaxation of Devices
    • This study object fully automates the Bulk Rigid Relaxation (BRR) method, making it very simple to optimize the geometry of a device
    • Can relax also complex device systems
  • Analysis of transport mechanisms
    • Transmission coefficients (k-point/energy resolved)
    • Monkhorst-Pack or edge-to-edge zone filling k-point scheme, or sample only part of the Brillouin zone for detailed information
    • Spectral current
    • Transmission spectrum, eigenvalues, and eigenchannels
    • Device density of states, also projected on atoms and angular momenta
    • Voltage drop
    • Molecular projected self-consistent Hamiltonian (MPSH) eigenvalues
    • Current density and transmission pathways
    • Spin-torque transfer (STT) for collinear/non-collinear spin
    • Atomic-scale band diagram analysis via LDOS or device DOS


featurelistbar 13


  • Atomic geometry builder for molecules, crystals, nanostructures and devices
    • Symmetry information tool
    • Supercells
    • Interactive control of structure, select, edit, move, by atom, fragment, etc.
    • Surface cleaver [...]
      • Select Miller indices
      • Surface Bravais lattices and cleavage planes
      • Create slabs or supercell geometries 
    • Interface builder [...]
      • Analyze strain for different supercell sizes and crystal rotations
      • Optimize interface geometry
    • Icosahedron builder plugin
      • Build icosahedron nanoparticles
    • Wulff construction tool
      • Build nanoparticles with minimal surface energy
    • NEB tools: set up path, edit images collectively or individually [...]
      • Set up path
      • Edit images collectively or individually
      • Pre-optimize NEB path with Image Dependent Pair Potentials (IDPP) 
      • Access interpolation algorithms  (LI-LinearInterpolation, HLC-HalgrenLipscomb, and IDDP-ImageDependentPairPotential) in Python scripts for easier automation of NEB path generation
    • Create device structures for transport calculations
    • Builders for nanostructures like graphene, nanotubes, nanowires
    • Molecular builder
    • Polycrystalline builder
    • Passivation tool for surfaces to remove bonds 
    • Import/export of most common atomic-scale modeling file formats (extendable by plugins; embedded version of OpenBabel)
    • Packmol plugin
    • Special Quasi-random Structures (SQS) algorithm for generating random alloys
      • Use a genetic algorithm (unlike other codes that perform an open-ended Monte Carlo simulation, which can be very slow)
      • Supports 2-component systems like SiGe or InGaAs
      • Any type of geometry, also nanowires etc.
    • Python Console
      • Provides direct Python access to interact with the configurations in the Builder
      • Maps (some) operations in the Builder to Python commands
      • Create pre-defined scripts (”snippets”) to automate repeated tasks
    • Databases
      • Internal structure library with several hundred basic molecules and crystal structures
      • Interface to query online databases such as
        • Crystallography Online Database
        • Materials Project
      • Support for custom, internal databases based on MongoDB or MySQL
    • Easy setup of calculations, even advanced work-flows
      • Full range of functionality for LCAO, PlaneWave, SemiEmpirical and FordeField
    • Viewer for 3D data
      • High-performance shader-based rendering engine for very large data sets (1M+ atoms and bonds)
      • Isosurfaces, isolines, and contour plots, with graphical repetition with data range control
      • Control atom color, size, transparency, etc.
      • Color atoms by computed quantities, like forces, velocities
      • Also works in movies, e.g. MD trajectories
      • Polyhedral rendering of crystals
      • Voxel plot (point cloud) rendering of 3D grids
      • Vector field plots
      • 3D extrusion of contour plans
      • 3D scene control, multiple light sources
      • Brillouin zone explorer [...]
      • Export images in most common graphical formats
      • Export (and import) CUBE or simple xyz data files for external plotting
      • Export movies of MD trajectories, phonon vibrations, NEB paths, etc
      • Auto-rotated views can be exported as animated GIFs
      • Interactive 3D measurement tool for distances and angles
    • 2D plot framework
      • Save and reuse customized plots by converting plots to Python scripts
      • Combine plots, e.g. band structure and DOS
      • Add annotations like arrows and labels to plots
    • Project management
      • Organize data files into projects
      • Easily transfer projects between computers, or share with other users
      • Overview all data in a project, or focus on particular subsets, then combine data sets from different files for advanced analysis
    • Editor
      • Search-and-replace
      • Syntax highlighting
      • Python code completion
      • Select font
    • Job Manager [...]
      • Submit and run jobs from the GUI in serial, using threading and in parallel using MPI [...]
      • Submit jobs from the GUI to local machines
      • Submit jobs from the GUI to remote machines [...]
        • A variety of queue types: Torque/PBS, LSF, SLURM, and direct execution (no queue)
        • Additional queue types can be added by plugins
        • Special plugin for ATK On-Demand on Sabalcore [...]
        • Requires only SSH access from client to server (no server-side daemon is required, all is controlled by the client)
        • Automatically copies input and output files to/from remote resources
        • Built-in SHH key generation and transfer to remote host (no need of 3rd party programs)
        • Diagnostics tool checks that added machine settings are correct
    • Python scripting interface, directly coupled to GUI
      • Can also be used interactively
      • Parallel scheduler
      • Includes PyQt4
      • PyMatGen included (pre-compiled)

NanoLab Links

  • Support for external codes
    • VASP
      • Input file generation via interactive scripter, supporting most VASP functionality
      • Add custom lines to and preview the INCAR file
      • Read data files for plotting and data analysis (OUTCAR, CONTCAR, CHGCAR, DOSCAR, EIGENVAL, CHG, PARCHG, ELFCAR, XDATCAR)
      • Plot band structures, FatBandstructure (for analysis of the spd- and site projected character of the bandstructure), DOS, etc.
      • Generate initial NEB paths using the IDPP method
      • Set up constraints
      • Visualize NEB paths and barriers
      • Import and analyze MD trajectories
      • Visualize vibrational modes
    • QuantumESPRESSO
      • Scripter for advanced input file generation
      • Read and plot charge densities, DOS, band structures
    • GPAW
      • Scripter for advanced input file generation
      • Read and plot charge densities
    • LAMMPS
      • Create and export advanced structures
      • Import trajectories to make movies, calculate local structure, plot RDF, etc
    • ORCA
      • Scripter for advanced input file generation
      • Read and plot charge densities
    • Plugin API
      • Users can write addons and plugins in Python, using our API to add new functionality to VNL
      • Add support for additional external codes
      • Add new features to the Builder (anything from simple operations to fully interactive widgets)
      • Import/export of structures in external file formats
      • Add new data analysis capabilities and plot types
      • Add-on manager for installing plugins from server
    • MBNExplorer import/export
    • CCLib included, for importing files from various quantum chemistry codes

Python Scripting and Automatization

Component that binds all the calculators together in a common interface and allows them to synergistically work together. It also enables users to automate and customize task (also in NanoLab). atkpython is a python 2.7 interpreter with a large number of python modules preconfigured. It can run in interactive mode and in batch mode. The input format for QuantumATK is a python script which setup the simulation using native python commands together with QuantumATK python functions for

  • Structure generation
    • Define molecule, bulk, surface and device geometries
    • Define Bravais lattices
    • Build special geometries like nanowires, graphene sheets, nanotubes
    • Reproduce workflows from the Nanolab builder using builder python commands
  • Simulation Setup
    • Define simulation setup for QuantumATK DFT-LCAO, DFT-PlaneWave, TightBinding or ForceField
    • Define workflows which combine simulation engines
    • Add post or pre-hooks to Molecular Dynamics simulations, thereby tailoring the MD simulation algorithm
  • Post Analysis
    • Automate analysis and plotting
    • Access internal QuantumATK variables for specialized analysis
    • Batch processing of Analysis
    • Combine analysis of different simulations
  • There are more than 400 QuantumATK classes and functions available to the user, see list here.
  • Variables are defined with physical units and QuantumATK allows for conversion between different units
    Units: nm, Ang, Bohr, Meter, Rydberg, eV, meV, Hartree, Joule, Calorie, kiloCaloriePerMol, kiloJoulePerMol, Newton, nanoNewton, kilogram, Kelvin, fs, femtoSecond, picoSecond, nanoSecond, microSecond, millisecond, Second, Minute, Hour, Day, Ampere, Volt, Siemens, G0, Coulomb, bar, Pa, Gpa, hbar, Mol, Radians, Degrees

  • Physical Constants: boltzmann_constant, planck_constant, Avogadro_number, speed_of_light, atomic_mass_unit, hbar, electron_mass, elementary_charge, vacuum_permitivity

  • 3rd party Python modules available from atkpython: ADODBAPI, ASE, CCLIB, Certifi, Colorama, Crypto, Decorator, H5py, Ipykernel, Ipython, Isapi, Jinja, Jupyter_core, markupsafe, matplotlib, monotonic,  monti, mpi4py, networkx, numpy, packaging, paramiko, pexpect, pickleshare, pillow, pkgconfig, plumed, psutil, pupynere, pybtex, pycrypto, pygments, pymatgen, pymongo, pymysql, PyOpenGL, PyQt5, pythonwin, pytz, pywin32, pyyaml, pyzmq, qtconsole, requests, scandir, scipy, simplegeneric, singledispatch, sip, six, spglib,  tornado, tabulate, traitlets, wcwidth, win_unicode_console, win32, win32com, zmq

featurelistbar 14

Platform Support

  • Self-contained binary installer - no compilation needed, no external library dependencies beyond standard operating system packages
  • Support for all modern 64-bit Windows and Linux versions (both ATK and VNL) (detailed system requirements)
  • Provides a complete Python environment with precompiled optimized libraries like numpy/scipy/ScaLAPACK (based on MKL), matplotlib/pylab, Py4MPI, SSL bindings, Qt/PyQt, etc.
  • Parallelization (Windows/Linux)
  • QuantumATK is compiled against Intel MPI and the Intel Math Kernel Library (MKL) which in combination automatically provide an optimized balance between OpenMP threading and MPI
  • Intel MPI is included in the shipment
  • Support for MPICH2/MPICH3 (Ethernet), MVAPICH2 (Infiniband), and other MPICH-compatible libraries
  • Floating license system (SCL from Synopsys)

Calculation of I-V curves

  • Elastic, coherent tunneling transport
  • Quasi-inelastic (LOE) and fully inelastic (XLOE) electron-phonon scattering | improved in 2015
    • Works with any combination of methods for the electronic and ionic degrees of freedom (DFT, tight-binding, DFTB, classical potentials)
    • Inelastic transmission spectrum (IETS) analysis | new in 2016

Band structure

Band structure is used to describe many electronic and optical properties of solid-state devices (transistors, solar cells, etc.). In ATK, you can trim the Brillouin zone route through the high-symmetry points of your choice, and decide the number of points per segment. Apart from the standard band structure, ATK provides functions to calculate effective band structure and complex band structure. They are not used to describe bulk materials, but are very useful in alloys, surfaces or interfaces.

bandstructure1 bandstructure2 bandstructure3 bandstructure4 bandstructure5 bandstructure6

Effective mass analysis

It is well known that DFT methods, or to be more specific the LDA and GGA exchange-correlation functionals, are not particularly adept at predicting the band gap of semiconductors. They do, however, in many cases give rather accurate curvatures of the bands, which are used in ATK to compute the effective mass of holes and electrons by fitting a parabola to the minimum/maximum of the conduction/valence bands.

effectivemass1 effectivemass2 effectivemass3

Density of states

Alongside the DOS, ATK also enables easy access to projected LDOS (local density of state), which provides a highly useful visualization of the band diagram of the interface.

dos1 dos2 dos3

Optical properties

TB09 is a semi-empirical functional that is fitted to give a good description of the band gaps in non-metals. The results obtained with the method are often comparable with very advanced many-body calculations, however, with a computational expense that is comparable with LDA, i.e. several order of magnitudes faster. Thus, the meta-GGA functional in ATK is a very practical tool for optical simulation of insulators and semiconductors.

  • Kubo-Greenwood formalism for linear optical properties
  • Optical adsorption
  • Dielectric function
  • Refractive index
opticalprops1 opticalprops2

Mulliken populations

Mulliken population provides the estimation of partial atomic charges. In VNL, you can project it onto different dimensions, atoms, bonds or orbitals for detailed analysis.

Real-space 3D grid quantities

VNL provides iso-surface, cut-planes with all directions, and grid comparison. Using the user-interface, you can complete a beautiful and high quality plot without coding or any commercial software.

  • Electron density
  • Bloch state Electron Density
  • Effective potential
  • Exchange-correlation potential
  • Electrostatic potential

Polarization and piezoelectric tensor (Berry phase)

Piezoelectric materials exhibit an induced electric polarization upon the application of an external macroscopic strain. The polarization can be reversed by applying an external electric field. These materials have applications in a variety of Microelectromechanical Systems (MEMS). In ATK, you can compute the piezoelectric tensor and the polarization of the material.

Molecular orbitals and Eigenstates

Plotting out the molecular orbitals and eigenstates provides a visualized quantum description.


Electron localization function (ELF)


Bloch functions

blochfunctions1 blochfunctions2

Molecular spectra


Total energy

Bader charge maxima and location

Bader charge maxima and location.

Brillouin Zone explorer


Surface Cleaver

molorbitals1 -->

Job Manager Features and Updates

VNL has a convenient tool, Job Manager, for managing your ATK jobs. You can use Job Manager to send jobs to run locally on your PC, or remotely in a high-performance cluster.


With Job Manager you can manage these simulation tasks:

• Customise job settings

• View job properties

• Submit jobs

• Autorun added jobs

• Monitor state of your jobs/tasks:


• View output files as your simulation is running (log):


• Debug logs

If an error occurs during a job execution, this will be indicated by a red square in the queue. You can then click the Debug logs icon to open the job debugs information window, which will show you details about the error.

• Resubmit

• Automatically transfer input and output files between the client and the server of the remote cluster:


Running Jobs in serial and in parallel

One can run jobs in serial, using threading or in parallel. We do in general recommend MPI parallelization over threading for parallelizing DFT calculations. However, threading is often more efficient for parallelizing ATK-ForceField calculations.

Submit Jobs (from the GUI) to Remote Machines


With the job manager you can:

  • • Add a remote machine to the machine manager
  • • Use custom Machine settings (Resources and Notifications) for individual jobs such as number of nodes, queue name, number of MPI processes, max amount of physical memory, maximum wall-clock time, how often a log file should be updated, email notifications and many others.
  • • Check that all added settings are correct by running Diagnostics
  • • Add several different machines
  • • Import/export machine settings of an existing machine and use those as a template for new machines.

Special plugin for ATK On-Demand on Sabalcore


QuantumWise, in partnership with Sabalcore Computing, Inc., is offering a flexible and cost-effective new model to run ATK in the cloud. To take advantage of this approach for running ATK, all you need is a license for Virtual NanoLab and an ATK On-Demand account on Sabalcore. Then you can submit jobs directly from the Job Manager in VNL on Sabalcore's cluster, using anywhere from just a few to several hundred cores to run both small or very demanding jobs. You get access to state-of-the-art parallel hardware and on-demand licenses for ATK in a single, convenient solution. You can create an account on Sabalcore and get 150 free core-hours of ATK On-Demand license by signing up at this link. Sabalcore will assign you a specific username, e.g. “atkuser01”.

Interface Builder

The Interface Builder of VNL allows the construction of complex interfaces by automatically matching the 2D unit cells of two different surfaces and compare the strain. The input is two crystal surfaces which can be created from bulk systems using the Surface (Cleave) tool. A specified number of atomic layers can be added for each material, an atomic layer being defined as the atoms that lie with the same distance to the AB-plane of the unit cell.