Feature List


Virtual NanoLab with Atomistix ToolKit is a general-purpose atomic-scale modeling and simulation platform that combines a wide range of methods and models.

  • Atomistix ToolKit (ATK) can compute electronic, optical, thermal, mechanical, and other properties of nanostructures and materials. In addition, ATK can perform electron transport and analysis of nanoscale devices, both in the ballistic tunneling regime and taking electron-scattering into account. The code also provides a state-of-the-art molecular dynamics engine.

  • Virtual NanoLab (VNL) is an easy-to-use graphical user interface which makes it simple to carry out tasks, while a Python programming interface enables experienced users to efficiently implement complex work-flows and perform advanced data analysis. VNL can also act as a standalone interface to other codes, with capabilities to build geometries and set up calculations, and read and plot output results produced by VASP, LAMMPS, ABINIT, QuantumEspresso, etc. Users can furthermore extend the capabilities and interfaces of the package by implementing their own plugins to support additional file formats, combine and plot data in other ways, set up new types of structures, etc. 

ATK and VNL are constantly developed. Check out our news section for more detailed information on product updates.

            CONTENTS         [Download pdf]



Quantum-mechanical computational methods

  • LCAO-based Density Functional Theory (DFT)
    • Numerical atomic orbital basis sets (SIESTA type)
    • Inclusion of indirect atom pairs for improved accuracy
    • Norm-conserving Troullier-Martins pseudopotentials | updated in 2016
      • FHI/HGH/OMX/SG15 potentials provided for almost all elements of the periodic table, including semi-core potentials for many elements
      • OMX and SG15 potentials are fully relativistic
    • Over 300 LDA/GGA exchange-correlation functionals via libXC
      • Including Meta-GGA for accurate band gap calculations of semiconductors and insulators
    • van der Waals models (DFT-D2 and DFT-D3) | updated in 2016
    • Non-collinear, restricted and unrestricted (spin-polarized) calculations | updated in 2015
    • Spin-orbit coupling
    • Hubbard U term in both LDA and GGA (also spin-dependent)
      • "Dual", "on-site", and "shell-wise" models
    • Semi-empirical "pseudopotential projector shift" method to tune band gaps of semiconductors | new in 2016
    • Counterpoise correction for basis set superposition errors (BSSE)
    • Ghost atoms (vacuum basis sets) for higher accuracy in the description of surface and vacancies
    • Virtual crystal approximation (VCA) | new in 2015
  • All-electron DFT method: FHI-aims | new in 2015
    • The ATK package includes a precompiled, parallel version of FHI-aims, a leading all-electron code
    • Control FHI-aims from Python and set up calculations from the graphical user interface
    • Visit the FHI-aims page for details on FHI-aims features
  • Plane wave DFT method
    • The ATK package includes a precompiled, parallel version of ABINIT, a leading plane-wave code
    • Control ABINIT from Python and set up calculations from the graphical user interface
    • Visit the ABINIT homepage for details on ABINIT features
  • Semi-empirical tight binding
    • DFTB-type model, 30 different parameter sets are shipped with the product, and more can be downloaded and used directly
    • Interface for input of user-defined Slater-Koster parameters; built-in models for group IV and III-V semiconductors
    • Extended Hückel model with over 300 basis sets for (almost) every element in the periodic table
    • Spin polarization term can be added via internal database of spin-split parameters
    • Noncollinear spin | updated in 2015
    • Spin-orbit interaction (parameterized) | updated in 2015
    • Hartree term for self-consistent response to the electrostatic environment
    • All models adapted for self-consistent calculations
  • Specialized features
    • Initialization of a new calculation via the self-consistent density matrix of a converged one (with automatic spin alignment)
    • Initialization of noncollinear spin calculations from collinear or spin-unpolarized ones for improved convergence | updated in 2015
    • Custom initial spin-filling schemes
    • Odd/even k-point grids (Monkhorst-Pack or edge-to-edge zone filling), Gamma-centered or with custom shifts | updated in 2016
    • Fractional hydrogen pseudopotentials and basis sets (for surface passivation)
    • Low-level interface to extract Green's function, Hamiltonian, overlap matrices, self-energies, etc. | updated in 2015
    • Delta test module for benchmark of pseudopotential/basis set accuracy | new in 2015
    • Flexible and customizable verbosity framework to control the level of output to the log files | new in 2016
    • Region-dependent "c" parameter for TB09 Mega-GGA | new in 2015
  • Performance options | updated in 2016
    • Consistent use of "best in class" standard libraries/algorithms like Intel MKL, ELPA, PETSc, SLEPc, ZMUMPS and FEAST
    • Proprietary sparse matrix library
    • Distributed memory options
    • Multi-level parallelism for scaling to a very large number of MPI processes for various types of calculations
    • Caching of data for higher memory usage vs. faster performance - or opposite
    • Use disk space instead of RAM to store grids for Poisson solver instead of recomputing
    • PEXSI solver for O(N) calculations of very large systems (10,000+ atoms in DFT); cf. http://arxiv.org/abs/1405.0194| new in 2016

Classical empirical potentials (ATK-ForceField)

  • Over 160 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 | updated in 2016
    • Many-body: EAM, MEAM, Finnis-Sinclair, Sutton-Chen, charge-optimized many-body (COMB) | updated in 2016
    • Polarizable: Madden/Tangney-Scandolo, core-shell | new in 2015
    • ReaxFF
    • ReaxFF+ (from AQcomputare)
  • 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)

Electrostatic models

  • Poisson equation solvers
    • FFT for periodic systems
    • Multigrid method for systems including metallic/dielectric regions (see below)
    • FFT2D Poisson solver for transport (multigrid in transport direction, FFT transversely)
    • Multipole expansion for molecules
    • "Direct" solver, parallelized in memory, for large-scale systems
    • Dirchlet, von Neumann, or periodic boundary conditions can be specified independently in each direction| updated in 2015
  • 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
  • Local atomic shifts
    • Simulate external fields
  • Implicit solvent model
  • Support for charged systems
  • Compensation charges
    • Mimic charge doping
    • Passivate surface atoms



These models can be combined with all DFT or semi-empirical methods in ATK

  • 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")
  • NEGF method for single surfaces | new in 2016
    • 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 | new in 2016
    • Sparse self-energy methods to save memory | updated in 2015
    • Adaptive (non-regular) k-point integration for transmission coefficients | new in 2015
  • 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
  • Deep-level 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 | updated in 2016
    • Spectral current | new in 2015
    • 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 | new in 2015
  • Transport properties of fully periodic systems
    • Complex band structure
    • Bulk transmission spectrum



  • Band structure [...]
    • Project onto atoms and angular momenta
  • Molecular spectra [...]
    • Projected molecular spectra for periodic systems
  • Density of states (DOS) [...]
    • Projection onto atoms and angular momenta
  • Mulliken populations [...]
  • Real-space 3D grid quantities [...]
    • Electron density
    • Effective potential
    • Full Hartree or Hartree difference potential | updated in 2016
    • Exchange-correlation potential
    • Full Electrostatic or electrostatic difference potential | updated in 2016
    • Molecular orbitals [...]
    • Electron localization function (ELF) [...]
    • Bloch functions [...]
  • Total energy [...]
    • With entropy contribution
  • Polarization and piezoelectric tensor (Berry phase) [...]
    • Optional internal ion relaxation
  • Effective mass analysis [...]
    • 2nd order perturbation theory or analytic tensor | new in 2015
  • Bader charges [...]
  • Effective band structure (zone unfolding for supercells) | new in 2015
  • Optical properties [...]
    • Kubo-Greenwood formalism for linear optical properties
    • Calculation of optical adsorption, dielectric function, refractive index, etc.



  • Quasi-Newton LBFGS and FIRE methods for geometry and unit cell optimization (forces and stress)
    • Simultaneous optimization of forces and stress | new in 2016
    • Optimize structure to specified target stress (hydrostatic or tensor) | new in 2015
    • Pre/post step hooks for custom on-the-fly analysis | new in 2015
  • 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
  • Geometry optimization of device structures (also under finite source–drain bias) | updated in 2015
  • Calculation of transition states, reaction pathways, and energies
    • Nudged elastic bands (NEB) method, enhanced version developed in-house | improved in 2016
    • Climbing image method
    • Pre-optimized path using the image-dependent pair potential (IDPP) method
    • Parallelized over images | new in 2015
  • Molecular dynamics | updated in 2016
    • State-of-the-art MD engine, developed from scratch by QuantumWise | new in 2016
      • 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
    • All relevant thermostats and barostats
      • NPT with stress mask | new in 2015
      • NVT Nosé-Hoover with chains | new in 2015
      • NVE Velocity Verlet
      • NVT/NPT Berendsen
      • Martyna-Tobias-Klein barostat | new in 2016
      • 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 | new in 2016
    • Fix center of mass in MD
    • Constrain Bravias lattice type (even when target stress is applied) | new in 2016
  • Partial charge analysis
  • Visualization of velocities | new in 2015
  • Interactive analysis tool for trajectory (and single configuration) properties (also for imported trajectories from LAMMPS, VASP, etc) | new in 2015
    • 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
  • Global optimization
    • Genetic algorithm for crystal structure prediction | updated in 2016
  • Adaptive Kinetic Monte Carlo (AKMC) | updated in 2016
    • 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
  • Export movies of MD trajectories, phonon vibrations, NEB paths, etc.
  • Electron-phonon interaction | enhanced in 2016
    • Extract electron-phonon coupling matrix elements
    • Compute deformation potentials and conductivity/mobility tensor, via the Boltzmann equation, with 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 | new in 2016



  • Atomic geometry builder for molecules, crystals, nanostructures and devices
    • Bulk tools: symmetry information tool, supercells, Crystal Builder, etc.
    • Surface cleaver [...] and interface builder
    • Icosahedron builder plugin | new in 2016
    • NEB tools: set up path, edit images collectively or individually
    • Create device structures for transport calculations
    • Builders for nanostructures like graphene, nanotubes, nanowires
    • Molecular builder | new in 2015
    • Polycrystalline builder
    • Passivation tool for surfaces
    • Import/export of most common atomic-scale modeling file formats, extendable by plugins | updated in 2015 by inclusion of OpenBabel
    • Packmol plugin | new in 2016
  • Databases
    • Internal structure library with several hundred basic molecules and crystal structures
    • Interface to query the Crystallography Online Database | new in 2016
  • Easy setup of calculations, even advanced work-flows
    • Full range of functionality for ATK DFT, SemiEmpirical, Classical, FHI-aims | updated in 2016
    • Basic functionality of ABINIT
  • Viewer for 3D data
    • High-performance shader-based rendering engine for very large data sets (1M+ atoms and bonds) | updated in 2015
    • Isosurfaces, isolines, and contour plots, with graphical repetition with data range control | updated in 2015
    • Control atom color, size, transparency, etc. | updated in 2015
    • Polyhedral rendering of crystals | new in 2016
    • Voxel plot (point cloud) rendering of 3D grids | new in 2016
    • 3D extrusion of contour plans | new in 2015
    • 3D scene control, multiple light sources | updated in 2016
    • Brillouin zone explorer [...] | updated in 2016
    • 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
  • 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 | new in 2015
  • Job Manager | updated in 2016
    • Submit jobs from the GUI to local or remote machines
    • Local modes: serial, threaded, and parallel
    • Remote modes: Torque/PBS and direct execution (no queue)
    • Automatically copies input and output files to remote resources
      • No server-side daemon required, all is controlled by the client
      • Requires only SSH access from client to server
      • Additional queue types can be added by plugins
  • Python scripting interface, directly coupled to GUI
    • Can also be used interactively
    • Parallel scheduler | new in 2015
    • Includes PyQt4 | new in 2015
    • PyMatGen included (pre-compiled) | new in 2016
  • Support for external codes
    • VASP | updated in 2016
      • Input file generation via interactive scripter, supporting most VASP functionality
      • Add custom lines to and preview the INCAR file | new in 2016
      • Read data files for plotting and data analysis (OUTCAR, CONTCAR, CHGCAR, DOSCAR, EIGENVAL, CHG, PARCHG, ELFCAR, XDATCAR)
      • Plot band structures, DOS, etc.
      • Generate initial NEB paths using the IDPP method
      • Set up constraints | new in 2016
      • Visualize NEB paths and barriers
      • Import and analyze MD trajectories | updated in 2015
      • Visualize vibrational modes | new in 2015
    • QuantumESPRESSO
      • Scripter for advanced input file generation | new in 2016
      • Read and plot charge densities, DOS, band structures | updated in 2016
    • GPAW| updated in 2015
      • Scripter for advanced input file generation
      • Read and plot charge densities
    • LAMMPS | updated in 2015
      • Create and export advanced structures
      • Import trajectories to make movies, calculate local structure, plot RDF, etc | improved in 2016
    • 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 | updated in 2015
    • MBNExplorer import/export | new in 2016
    • CCLib included, for importing files from various quantum chemistry codes | new in 2016



  • Self-contained binary installer - no compilation needed, no external library dependencies beyond standard OS packages
    • ATK (calculations) and VNL (GUI) available for Windows, Linux (32-bit/64-bit) and Mac OS X (64-bit)
    • Provides a complete, standard Python environment with optimized libraries like
      numpy/scipy/ScaLAPACK (based on MKL), matplotlib/pylab, SSL bindings, PyQt, etc. | updated in 2015
  • MPI parallelization (Windows/Linux)
    • Support for MPICH2 (Ethernet), MVAPICH2 (Infiniband), Intel MPI
  • OpenMP threading on multi-core processors
    • ATK is compiled with the Intel Math Kernel Library (MKL)
  • Floating license system (LM-X from X-Formation)


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 loation

Bader charge maxima and loation.

Brillouin Zone explorer


Surface Cleaver

molorbitals1 -->