Octopus is a software package for performing Kohn‍–‍Sham density functional theory (DFT) and time-dependent density functional theory (TDDFT) calculations.[1]

Octopus employs pseudopotentials and real-space numerical grids to propagate the Kohn‍–‍Sham orbitals in real time under the influence of time-varying electromagnetic fields. Specific functionality is provided for simulating one-, two-, and three-dimensional systems. Octopus can calculate static and dynamic polarizabilities and first hyperpolarizabilities, static magnetic susceptibilities, absorption spectra, and perform molecular dynamics simulations with Ehrenfest and Car–Parrinello methods.

The code is written predominantly in Fortran and is released under the GPL.

The latest version 14.1 was released on May 3rd, 2024.

Target problems

edit
  • Linear optical (i.e. electronic) response of molecules or clusters, also second-order nonlinear response.
  • Non-linear response to classical high-intensity electromagnetic fields, taking into account both the ionic and electronic degrees of freedom.
  • Ground-state and excited state electronic properties of systems with lower dimensionality, such as quantum dots.
  • Photo-induced reactions of molecules (e.g., photo-dissociation, photo-isomerization, etc.).
  • In the immediate future, extension of these procedures to systems that are infinite and periodic in one or more dimensions (polymers, slabs, nanotubes, solids), and to electronic transport.

Theoretical basis

edit
  • The underlying theories are DFT and TDDFT. Also, the code may perform dynamics by considering the classical (i.e. point-particle) approximation for the nuclei. These dynamics may be non-adiabatic, since the system evolves following the Ehrenfest path. It is, however, a mean-field approach.
  • Regarding TDDFT, one can use three different approaches:
    • the standard TDDFT-based linear-response theory of Casida, which provides the excitation energies and oscillator strengths for ground-state to excited-state transitions.
    • the explicit time-propagation of the TDDFT equations, which allows for the use of large external potentials, well beyond the range of validity of perturbation theory.
    • the Sternheimer equation (density-functional perturbation theory) in the frequency domain, using only occupied states.

Methodology

edit
  • As numerical representation, the code works without a basis set, relying on numerical meshes. Nevertheless, auxiliary basis sets (plane waves, atomic orbitals) are used when necessary. Recently, the code offers the possibility of working with non-uniform grids, which adapt to the inhomogeneity of the problem, and of making use of multigrid techniques to accelerate the calculations.
  • For most calculations, the code relies on the use of pseudopotentials[2] of two types: Troullier-Martins,[3] and Hartwigsen-Goedecker-Hutter.[4]
  • In addition to being able to treat systems in the standard 3 dimensions, 2D and 1D modes are also available. These are useful for studying, e.g., the two-dimensional electron gas that characterizes a wide class of quantum dots.

Technical aspects

edit
  • The code has been designed with emphasis on parallel scalability. In consequence, it allows for multiple task divisions, this utilises mesh division software, MPI and OpenMP.
  • The language of most of the code is Fortran 90. Other languages, such as C, are also used.
  • The package is licensed under the GNU General Public License (GPL). In consequence, it is available for use, inspection, and modification for anyone, at the Octopus git repository.

See also

edit

References

edit
  1. ^ Castro, Alberto; Heiko Appel; Micael Oliveira; Carlo A. Rozzi; Xavier Andrade; Florian Lorenzen; M. A. L. Marques; E. K. U. Gross; Angel Rubio (2006). "octopus: a tool for the application of time-dependent density functional theory". Physica Status Solidi B. 243 (11): 2465–2488. Bibcode:2006PSSBR.243.2465C. doi:10.1002/pssb.200642067. hdl:10316/8208. S2CID 55356805.
  2. ^ Pickett, Warren E. (1989). "Pseudopotential methods in condensed matter applications". Computer Physics Reports. 9 (3). Elsevier BV: 115–197. Bibcode:1989CoPhR...9..115P. doi:10.1016/0167-7977(89)90002-6. ISSN 0167-7977.
  3. ^ Troullier, N.; Martins, José Luriaas (1991-01-15). "Efficient pseudopotentials for plane-wave calculations". Physical Review B. 43 (3). American Physical Society (APS): 1993–2006. Bibcode:1991PhRvB..43.1993T. doi:10.1103/physrevb.43.1993. ISSN 0163-1829. PMID 9997467.
  4. ^ Hartwigsen, C.; Goedecker, S.; Hutter, J. (1998-08-15). "Relativistic separable dual-space Gaussian pseudopotentials from H to Rn". Physical Review B. 58 (7). American Physical Society (APS): 3641–3662. arXiv:cond-mat/9803286. Bibcode:1998PhRvB..58.3641H. doi:10.1103/physrevb.58.3641. ISSN 0163-1829. S2CID 119450371.
edit