michael-herbst.com Research and projects

michael-herbst.com
  • Blog
    • Recent articles
    • Article archives
  • Research
    • Collaborations
    • Software / DFTK / adcc
    • Reliable and efficient DFT
    • Robust error control / algorithmic differentiation
    • Core-excited states
  • Publications
  • Upcoming
  • Curriculum Vitae
  • Teaching
    • Mathematical Aspects of Computational Chemistry
    • RWTH Julia workshop 2022
    • Juliacon DFTK workshop 2021
    • All teaching resources
  • Contact

Interdisciplinary software development in electronic structure theory (MQM Poster)

At the beginning of the month, from 30th June till 5th July, I attended the 9th Molecular Quantum Mechanics Conference in my old home Heidelberg. This occasion was a great opportunity to catch up with friends and colleges both in science and from my old circle in Heidelberg as well.

At the conference I presented a poster entitled Modern interdisciplinary software development in electronic-structure theory. which was highly related to my former talk in Lille a couple of weeks ago. In the poster I wanted to to motivate the use of modern languages and software development techniques and demonstrate its opportunities for enabling different communities (like mathematicians and chemists) to work jointly on the same codes. As examples I discuss three projects of my own.

Out of these, the molsturm code for basis-function-independent method development I have described in detail in our paper last year. Some words about our mathematically-driven approach in the development of the density-functional toolkit (DFTK) I already gave in my previous article. In this article I will thus focus on the third code presented on the poster, namely adcc, short for ADC connect.

The adcc project is a project I started a few years ago during my time at the Dreuw group in Heidelberg. I continue to work on it as a side project during my time at the CERMICS, jointly with some of my old group members. Our main aim is to provide one independent building block for excited states computations using the algebraic-diagrammatic construction (ADC). This means that adcc does not implement any self-consistent field algorithm itself, much rather it runs on top of any Hartree-Fock code. In practice as of now four SCF codes have been connected to adcc via our Python interface, including pyscf, Psi4 and molsturm. But Python is not only used as a glue language between SCF and ADC, much rather it allows to orchestrate the full computational procedure. See the attached poster or the introductory chapter of the adcc documentation for some examples.

A third aspect where Python plays a crucial role in adcc are the iterative solver algorithms. For example the Davidson procedure we use for solving the ADC equations is implemented purely in high-level Python code. This allows to rapidly investigate new numerical schemes and approaches in the context of ADC. We are, however, not loosing too much performance by this choice, because the time-consuming tensor contractions we require are still done in a C++ core library and only called from Python. Inside our core library we in turn use the libtensor code for tensor computations. Overall adcc therefore shows a comparable performance to the adcman code, a pure C++ implementation of ADC also developed in Heidelberg on top of libtensor.

Currently adcc is not yet publicly available, but we are in the stage of finalising adcc for a first public release within the Gator framework. A first standalone release of the code is planned within the upcoming months as well. The adcc documentation, however, is already available and gives an idea of adcc in practice.

As usual I attach my poster as a pdf below.

Link
Poster Modern interdisciplinary software development in electronic structure theory
Posted on Di 30 Juli 2019 in Research.

Tags: poster electronic structure theory Julia HPC molsturm DFTK theoretical chemistry MQM adcc and algebraic-diagrammatic construction

Social

  • Blog articles (Atom)
  • github.com/mfherbst
  • 0000-0003-0378-7921
  • arXiv.org preprints

Recent publications

  • Efficient response property calculations in DFT
  • Surrogate models for quantum spin systems
  • QCDB / QCEngine
  • Adaptive damping for SCFs
  • Q-Chem 5 paper
  • Full list of publications ...

Recent talks

  • GdR nbody meeting
  • GdR REST ML discussion
  • VMD 2021: Black-box DFT methods
  • Full list of talks ...

Recent teaching

  • DFTK workshop: Mathematics and numerics of density-functional theory
  • Mathematical Aspects of Computational Chemistry
  • An introduction to the Julia programming language
  • Full list of teaching ...

Blog categories

  • Chaos
  • Publications
  • Research
  • System Administration
  • Teaching
  • Uncategorised

    Blog tags

  • adcc
  • algebraic-diagrammatic construction
  • computer science
  • convergence
  • Coulomb Sturmians
  • DFT
  • DFTK
  • electronic structure theory
  • high-throughput
  • HPC
  • invited talk
  • Julia
  • Kohn-Sham
  • lazy matrices
  • numerical analysis
  • programming and scripting
  • solid state
  • talk
  • theoretical chemistry
  • workshop
Powered by pelican, python and Jinja2.