Table of Contents

CP2K Code Structure

CP2K is a large, complex application which has many features, methods and algorithms implemented. When looking at the code for the first time it can be very challenging to understand how it all works, or even where to start looking! This page is intended for novice developers who have read and understood the literature and wish to locate the relevant algorithms and data structures in the code.

File Names

Source files should have prefixes corresponding to their main functionalities. For example:

These prefixes are not exclusive, nor are they always logical. There are exceptions in code naming conventions, for example:

Overall Structure

Structure of Quickstep

Quickstep part of the CP2K code calculates the ab initio self-consistent Kohn-Sham energy and the associated forces of a periodic system. The calculation involves

Most of the computational time are spent on:

Data Structure of Key Variables

This subsection is the modules containing the definition the key data used in Quickstep calculations