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 electron, phonon, optical, thermal, mechanical, and other properties of nanostructures and materials, using a wide variety of methods such as DFT, DFTB, Slater-Koster tight-binding, and classical potentials. In addition, ATK can perform electronic and thermal transport and analysis of nanoscale devices in the ballistic tunneling regime, while taking electron-phonon scattering into account. The code also provides a state-of-the-art molecular dynamics engine, which can use forces both from DFT and classical potentials.
- 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.
All our code, including the DFT and classsical potential engines, is developed in-house by software engineering experts working in close collaboration with scientists. No compilation is needed to install ATK and VNL - we deliver a fully optimized, parallelized, self-contained package, which combines the power of a scripting engine, based on Python, with the ease-of-use provided by an intuitive graphical user interface.
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 2017
- 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 | updated in 2017
- Methods for accurate band gap calculations of semiconductors and insulators
- MetaGGA
- DFT+1/2 method | new in 2017
- Empirical "pseudopotential projector shift" method (parameters provided for Si and Ge) | new in 2017
- van der Waals models (DFT-D2 and DFT-D3) | updated in 2016
- 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
- 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)
- All-electron DFT method: FHI-aims | updated in 2017
- 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
- Currently at beta-version stage, scheduled for release in 2018
- Semi-empirical tight binding
- 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) | updated in 2017
- 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
- Spin polarization term can be added via internal database of spin-split parameters
- Noncollinear spin
- Spin-orbit interaction (parameterized)
- 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 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 | 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.
- 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 | updated in 2017
- Region-dependent "c" parameter for TB09 Mega-GGA
- Occupation functions: Fermi, Methfessel-Paxton, Gaussian, ColdSmearing | updated in 2017
- Performance options
- Consistent use of "best in class" standard libraries/algorithms like Intel MKL, ELPA, PETSc, SLEPc, ZMUMPS and FEAST | updated in 2016
- Proprietary sparse matrix library
- Parallel memory distribution of e.g. the mixing history | updated in 2017
- Automatic adjustment of number of bands above the Fermi level to include | new in 2017
- Multi-level parallelism with automatic process assignment for scaling to a very large number of MPI processes for various types of calculations | updated in 2017
- 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 | new in 2016
Classical empirical potentials (ATK-ForceField)
- 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 | 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
- ReaxFF
- ReaxFF+ (from AQcomputare)
- Valence force field (VFF) models | new in 2017
- 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)
- Two solvers for systems including metallic/dielectric regions:
- Multigrid
- Conjugent gradient method (parallelized in memory and execution) | new in 2017
- FFT2D solver for transport systems
- "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
- Local atomic shifts
- 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")
- Surface Green's function method for single surfaces | updated in 2017
- 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 | improved in 2017
- 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
- Options to store self-energies to disk, either during calculation (instead of RAM) or permanently, to reuse in other calculations | updated in 2017
- Adaptive (non-regular) k-point integration for transmission coefficients
- Calculation of I-V curves [...]
- Elastic, coherent tunneling transport
- Quasi-inelastic (LOE) and fully inelastic (XLOE) electron-phonon scattering | improved in 2017
- 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 | new in 2017
- 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 | new in 2017
- 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
- 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
- Transport properties of fully periodic systems
- Complex band structure
- Bulk transmission spectrum
- Band structure [...]
- Molecular spectrum [...]
- Projected Gamma-point molecular spectrum for periodic systems
- Density of states (DOS) [...]
- Projections of band structure and DOS onto atoms, spin, orbitals or angular momenta, in any desired combination | updated in 2017
- 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
- Electron localization function (ELF) [...]
- Molecular orbitals [...]
- Bloch functions [...]
- Total/free energy [...] | updated in 2017
- Polarization and piezoelectric tensor (Berry phase) [...]
- Optional internal ion relaxation
- Effective mass analysis [...]
- 2nd order perturbation theory or analytic tensor
- Bader charges [...]
- Born effective charges | new in 2017
- Fermi surface | new in 2017
- 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.
- 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)
- Pre/post step hooks for custom on-the-fly analysis | updated in 2016
- 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) | new in 2017
- Wigner-Seitz approximation for large supercells | new in 2017
- 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 | improved in 2016
- Support for varying cell shape and size, to simulate e.g. phase changes | new in 2017
- Climbing image method
- Pre-optimized path using the image-dependent pair potential (IDPP) method
- Parallelized over images
- Molecular dynamics (MD) | updated in 2017
- 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
- NVT Nosé-Hoover with chains
- 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
- 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
- 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
- Metadynamics via the PLUMED library | new in 2017
- Export movies of MD trajectories, phonon vibrations, NEB paths, etc.
- Electron-phonon interaction
- 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 | improved in 2017
- 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 [...]| updated in 2017
- Icosahedron builder plugin | new in 2016
- Wulff construction tool | updated in 2017
- 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
- Polycrystalline builder
- Passivation tool for surfaces
- Import/export of most common atomic-scale modeling file formats (extendable by plugins; embedded version of OpenBabel)
- Packmol plugin | new in 2016
- Databases
- Internal structure library with several hundred basic molecules and crystal structures
- Interface to query online databases such as
- Support for custom, internal databases based on MongoDB or MySQL | new in 2017
- 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)
- Isosurfaces, isolines, and contour plots, with graphical repetition with data range control | updated in 2017
- Control atom color, size, transparency, etc.
- Color atoms by computed quantities, like forces, velocities | new in 2017
- Also works in movies, e.g. MD trajectories
- Polyhedral rendering of crystals | new in 2016
- Voxel plot (point cloud) rendering of 3D grids | new in 2016
- Vector field plots | new in 2017
- 3D extrusion of contour plans
- 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
- Interactive 3D measurement tool for distances and angles | updated in 2017
- 2D plot framework | new in 2017
- 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 [...] | updated in 2017
- 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 3^{rd} 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) | new in 2016
- Support for external codes
- VASP | updated in 2017
- 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
- Visualize vibrational modes
- QuantumESPRESSO
- Scripter for advanced input file generation | new in 2016
- Read and plot charge densities, DOS, band structures | updated in 2017
- 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 | 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
- 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 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. | updated in 2017
- Parallelization (Windows/Linux)
- ATK 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 | new in 2017
- Intel MPI is included in the shipment | new in 2017
- Support for MPICH2/MPICH3 (Ethernet), MVAPICH2 (Infiniband), and other MPICH-compatible libraries
- Floating license system (LM-X from X-Formation)