Physics > Computational Physics
[Submitted on 7 Feb 2020]
Title:DFTpy: An efficient and object-oriented platform for orbital-free DFT simulations
View PDFAbstract:In silico materials design is hampered by the computational complexity of Kohn-Sham DFT, which scales cubically with the system size. Owing to the development of new-generation kinetic energy density functionals (KEDFs), orbital-free DFT (OFDFT, a linear-scaling method) can now be successfully applied to a large class of semiconductors and such finite systems as quantum dots and metal clusters. In this work, we present DFTpy, an open source software implementing OFDFT written entirely in Python 3 and outsourcing the computationally expensive operations to third-party modules, such as NumPy and SciPy. When fast simulations are in order, DFTpy exploits the fast Fourier transforms (FFTs) from PyFFTW. New-generation, nonlocal and density-dependent-kernel KEDFs are made computationally efficient by employing linear splines and other methods for fast kernel builds. We showcase DFTpy by solving for the electronic structure of a million-atom system of aluminum metal which was computed on a single CPU. The Python 3 implementation is object-oriented, opening the door to easy implementation of new features. As an example, we present a time-dependent OFDFT implementation (hydrodynamic DFT) which we use to compute the spectra of small metal cluster recovering qualitatively the time-dependent Kohn-Sham DFT result. The Python code base allows for easy implementation of APIs. We showcase the combination of DFTpy and ASE for molecular dynamics simulations (NVT) of liquid metals. DFTpy is released under the MIT license.
Current browse context:
physics.comp-ph
Change to browse by:
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.