We present an algorithm and its implementation to calculate the propertiesof electronic excitations in molecules and clusters from first principles, using time-dependent density functional theory (TDDFT). The algorithm assumes the use of some localized functions as a basis set to represent the spatial degrees of freedom. It relies on an iterative computation of the induced density according to the Dyson-like equation for the linear response function. The current implementation is built upon so-called numerical atomic orbitals. It is suitable for a wide variety of density functional theory (DFT) software. In this work, we demonstrate TDDFT calculations starting from preceding DFT runs with SIESTA, GPAW and PySCF packages, while a coupling with the other DFT packages such as Fireball and OpenMX is planned. The mentioned packages are capable of performing ab initio molecular dynamics simulations, and the speed of our TDDFT implementation makes feasible to perform a configuration average of the optical absorption spectra. Our code is written mostly in Python language allowing for a quick and compact implementation of most numerical methods and data-managing tasks with the help of NumPy/SciPy libraries and Python intrinsic constructs. Part of the code is written in C and Fortran to achieve a competitive speed in particular sections of the algorithm. Many parts of the current algorithm and implementation are useful in other ab initio methods for electronic excited states, such as Hedin’s GW, Bethe–Salpeter equation and DFT with hybrid functionals. Corresponding proof-of-principles implementations are already part of the code. Program summaryProgram Title:PySCF-NAOProgram Files doi:http://dx.doi.org/10.17632/9wgp6255hn.1Licensing provisions: Apache License, Version 2.0Programming language: Python (2 or 3), Fortran90 and CSupplementary material: We provide the source code and input files to organize example and benchmark calculations discussed in the paper.Nature of the problem: The study of the interaction of photons and charged particles with matter depends upon understanding of electronic excitations in matter. A description of the electronic excitations within time-dependent density functional theory (TDDFT) is popular due to the combination of its reasonable accuracy and its relatively low computational cost. Despite the relative simplicity of TDDFT, its application becomes difficult for quantum systems containing several hundreds of atoms. Such microscopically small systems are relevant in organic electronics, plasmonics and surface science. Therefore, much work has been devoted to the development of adequate electronic structure methods. Moreover, thermal motion of atoms and the presence of solvents affects the properties of electronic excited states in a decisive manner. Modeling of the electronic excited states including the system’s dynamics within the Born–Oppenheimer approximation leads to even stronger efficiency requirements from the corresponding electronic structure methods.Solution method: We discretize the Kohn–Sham Hamiltonian using a basis of numerical atomic orbitals. The induced electronic density is determined in response to a dipolar external perturbation, according to linear response TDDFT, using an iterative algorithm. The method takes advantage of the sparsity generated by the finite support of the numerical atomic orbitals. This allows computing the dynamical polarizability of molecules and clusters containing up to several thousands of atoms.Additional comments including Restrictions and Unusual features: The current algorithm is formulated within the formalism of density response functions. Therefore, one needs to know explicitly an exchange–correlation kernel (second-derivative of energy with respect to variation of the density). The exchange–correlation kernel is analytically known for (semi-)local density functionals, but not for the hybrid density functionals. To date, we implemented only the local density approximation (LDA) for the exchange–correlation kernel to be used with the iterative TDDFT in PySCF-NAO. Spin-restricted formalism for finite systems is covered in the current implementation. Moreover, although our code is prepared to compute the electronic response of all-electron systems, our current implementation of an auxiliary product basis (density-fitting basis) is working best in combination with the use of pseudopotentials.
Read full abstract