NanoLanguage is a scripting interface built on top of the interpreted programming language Python, and is primarily intended for simulation of physical and chemical properties of nanoscale systems.
Over the years, several electronic-structure codes based on density functional theory have been developed by different groups of academic researchers; VASP, Abinit, SIESTA, and Gaussian are just a few examples. The input to these programs is usually a simple text file written in a code-specific format with a set of code-specific keywords. [1] [2] [3]
NanoLanguage was introduced by Atomistix A/S as an interface to Atomistix ToolKit (version 2.1) in order to provide a more flexible input format. A NanoLanguage script (or input file) is just a Python program and can be anything from a few lines to a script performing complex numerical simulations, communicating with other scripts and files, and communicating with other software (e.g. plotting programs). NanoLanguage is not a proprietary product of Atomistix and can be used as an interface to other density functional theory codes as well as to codes utilizing e.g. tight-binding, k.p, or quantum-chemical methods. [4] [5]
Built on top of Python, NanoLanguage includes the same functionality as Python and with the same syntax. Hence, NanoLanguage contains, among other features, common programming elements (for loops, if statements, etc.), mathematical functions, and data arrays.
In addition, a number of concepts and objects relevant to quantum chemistry and physics are built into NanoLanguage, e.g. a periodic table, a unit system (including both SI units and atomic units like Ångström), constructors of atomic geometries, and different functions for density-functional theory and transport calculations. [6]
This NanoLanguage script uses the Kohn–Sham method to calculate the total energy of a water molecule as a function of the bending angle.
# Define function for molecule setupdefwaterConfiguration(angle,bondLength):frommathimportsin,costheta=angle.inUnitsOf(radians)positions=[(0.0,0.0,0.0)*Angstrom,(1.0,0.0,0.0)*bondLength,(cos(theta),sin(theta),0.0)*bondLength,]elements=[Oxygen]+[Hydrogen]*2returnMoleculeConfiguration(elements,positions)# Choose DFT method with default argumentsmethod=KohnShamMethod()# Scan different bending angles and calculate the total energyforiinrange(30,181,10):theta=i*degreesh2o=waterConfiguration(theta,0.958*Angstrom)scf=method.apply(h2o)print"Angle = ",theta," Total Energy = ",calculateTotalEnergy(scf)
Computational chemistry is a branch of chemistry that uses computer simulation to assist in solving chemical problems. It uses methods of theoretical chemistry, incorporated into computer programs, to calculate the structures and properties of molecules, groups of molecules, and solids. It is essential because, apart from relatively recent results concerning the hydrogen molecular ion, the quantum many-body problem cannot be solved analytically, much less in closed form. While computational results normally complement the information obtained by chemical experiments, it can in some cases predict hitherto unobserved chemical phenomena. It is widely used in the design of new drugs and materials.
Assisted Model Building with Energy Refinement (AMBER) is a family of force fields for molecular dynamics of biomolecules originally developed by Peter Kollman's group at the University of California, San Francisco. AMBER is also the name for the molecular dynamics software package that simulates these force fields. It is maintained by an active collaboration between David Case at Rutgers University, Tom Cheatham at the University of Utah, Adrian Roitberg at University of Florida, Ken Merz at Michigan State University, Carlos Simmerling at Stony Brook University, Ray Luo at UC Irvine, and Junmei Wang at Encysive Pharmaceuticals.
Molecular mechanics uses classical mechanics to model molecular systems. The Born–Oppenheimer approximation is assumed valid and the potential energy of all systems is calculated as a function of the nuclear coordinates using force fields. Molecular mechanics can be used to study molecule systems ranging in size and complexity from small to large biological systems or material assemblies with many thousands to millions of atoms.
MOLPRO is a software package used for accurate ab initio quantum chemistry calculations. It is developed by Peter Knowles at Cardiff University and Hans-Joachim Werner at Universität Stuttgart in collaboration with other authors.
Molecular modelling encompasses all methods, theoretical and computational, used to model or mimic the behaviour of molecules. The methods are used in the fields of computational chemistry, drug design, computational biology and materials science to study molecular systems ranging from small chemical systems to large biological molecules and material assemblies. The simplest calculations can be performed by hand, but inevitably computers are required to perform molecular modelling of any reasonably sized system. The common feature of molecular modelling methods is the atomistic level description of the molecular systems. This may include treating atoms as the smallest individual unit, or explicitly modelling protons and neutrons with its quarks, anti-quarks and gluons and electrons with its photons.
Molecular geometry is the three-dimensional arrangement of the atoms that constitute a molecule. It includes the general shape of the molecule as well as bond lengths, bond angles, torsional angles and any other geometrical parameters that determine the position of each atom.
Multi-configurational self-consistent field (MCSCF) is a method in quantum chemistry used to generate qualitatively correct reference states of molecules in cases where Hartree–Fock and density functional theory are not adequate. It uses a linear combination of configuration state functions (CSF), or configuration determinants, to approximate the exact electronic wavefunction of an atom or molecule. In an MCSCF calculation, the set of coefficients of both the CSFs or determinants and the basis functions in the molecular orbitals are varied to obtain the total electronic wavefunction with the lowest possible energy. This method can be considered a combination between configuration interaction and Hartree–Fock.
SIESTA is an original method and its computer program implementation, to efficiently perform electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. SIESTA uses of strictly localized basis sets and from the implementation of linear-scaling algorithms. Accuracy and speed can be tuned in a wide range, from quick exploratory calculations to highly accurate simulations matching the quality of other approaches, such as plane-wave and all-electron methods.
PQS is a general purpose quantum chemistry program. Its roots go back to the first ab initio gradient program developed in Professor Peter Pulay's group but now it is developed and distributed commercially by Parallel Quantum Solutions. There is a reduction in cost for academic users and a site license. Its strong points are geometry optimization, NMR chemical shift calculations, and large MP2 calculations, and high parallel efficiency on computing clusters. It includes many other capabilities including Density functional theory, the semiempirical methods, MINDO/3, MNDO, AM1 and PM3, Molecular mechanics using the SYBYL 5.0 Force Field, the quantum mechanics/molecular mechanics mixed method using the ONIOM method, natural bond orbital (NBO) analysis and COSMO solvation models. Recently, a highly efficient parallel CCSD(T) code for closed shell systems has been developed. This code includes many other post Hartree–Fock methods: MP2, MP3, MP4, CISD, CEPA, QCISD and so on.
MOLCAS is an ab initio computational chemistry program, developed as a joint project by a number of international institutes. MOLCAS is developed by scientists to be used by scientists. It is not primarily a commercial product and it is not sold in order to produce a fortune for its owner.
General Atomic and Molecular Electronic Structure System is computer software for computational chemistry program. The original code started on October 1, 1977 as a National Resources for Computations in Chemistry project. In 1981, the code base split into GAMESS (US) and GAMESS (UK) variants, which now differ significantly. GAMESS (US) is maintained by the members of the Gordon Research Group at Iowa State University. GAMESS (US) source code is available as source-available freeware, but is not open-source software, due to license restrictions.
Atomistix Virtual NanoLab (VNL) is a commercial point-and-click software for simulation and analysis of physical and chemical properties of nanoscale devices. Virtual NanoLab is developed and sold commercially by QuantumWise A/S. QuantumWise was then acquired by Synopsys in 2017.
The fragment molecular orbital method (FMO) is a computational method that can compute very large molecular systems with thousands of atoms using ab initio quantum-chemical wave functions.
Atomistix A/S was a software company developing tools for atomic scale modelling. It was headquartered in Copenhagen, Denmark, with a subsidiary for Asia Pacific in Singapore and for the Americas in California. In September 2008 Atomistix A/S went bankrupt, but in December 2008 the newly founded company QuantumWise announced that they had acquired all assets from the Atomistix estate and would continue the development and marketing of the products Atomistix ToolKit and Atomistix Virtual NanoLab. QuantumWise was then acquired by Synopsys in 2017.
Atomistix ToolKit (ATK) is a commercial software for atomic-scale modeling and simulation of nanosystems. The software was originally developed by Atomistix A/S, and was later acquired by QuantumWise following the Atomistix bankruptcy. QuantumWise was then acquired by Synopsys in 2017.
Yambo is a computer software package for studying many-body theory aspects of solids and molecule systems. It calculates the excited state properties of physical systems from first principles, e.g., from quantum mechanics law without the use of empirical data. It is an open-source software released under the GNU General Public License (GPL). However the main development repository is private and only a subset of the features available in the private repository are cloned into the public repository and thus distributed.
Quantemol Ltd is based in University College London initiated by Professor Jonathan Tennyson FRS and Dr. Daniel Brown in 2004. The company initially developed a unique software tool, Quantemol-N, which provides full accessibility to the highly sophisticated UK molecular R-matrix codes, used to model electron polyatomic molecule interactions. Since then Quantemol has widened to further types of simulation, with plasmas and industrial plasma tools, in Quantemol-VT in 2013 and launched in 2016 a sustainable database Quantemol-DB, representing the chemical and radiative transport properties of a wide range of plasmas.
Python-based Simulations of Chemistry Framework (PySCF) is an ab initio computational chemistry program natively implemented in Python program language. The package aims to provide a simple, light-weight and efficient platform for quantum chemistry code developing and calculation. It provides various functions to do the Hartree–Fock, MP2, density functional theory, MCSCF, coupled cluster theory at non-relativistic level and 4-component relativistic Hartree–Fock theory. Although most functions are written in Python, the computation critical modules are intensively optimized in C. As a result, the package works as efficient as other C/Fortran-based quantum chemistry program. PySCF is developed by Qiming Sun. PySCF2.0 is the latest version of the program.
Qbox is an open-source software package for atomic-scale simulations of molecules, liquids and solids. It implements first principles molecular dynamics, a simulation method in which inter-atomic forces are derived from quantum mechanics. Qbox is released under a GNU General Public License (GPL) with documentation provided at http://qboxcode.org. It is available as a FreeBSD port.