No description
Find a file
2025-08-22 17:08:22 +02:00
.fmf fedora: Optimize builds (#3268) 2024-03-28 21:07:23 +01:00
arch Update Apple M1 arch file (macOS Darwin) 2025-08-19 17:46:51 +02:00
benchmarks Update CSCS CI workflow for eiger 2025-02-20 12:28:04 +01:00
ci cray-mpich 2025-08-22 17:08:22 +02:00
cmake cray-mpich 2025-08-22 17:08:22 +02:00
data Correct the error metric terminology in the BASIS_RI_AUG_MOLOPT file 2025-08-14 19:56:10 +02:00
docs Increase development version after 2025.2 release 2025-07-23 13:02:06 +02:00
exts DBCSR/build: improved finding OpenCL header file (#4168) 2025-04-25 16:23:25 +02:00
src Update RELAX_MULTIPLICITY description 2025-08-22 16:21:28 +02:00
tests Activate handling of GTH-SOC PP in Sirius (#4363) 2025-08-14 15:46:53 +02:00
tools cray-mpich 2025-08-22 17:08:22 +02:00
.dockerignore Docker: Migrate coverage test to CMake 2025-07-24 15:48:42 +02:00
.git-blame-ignore-revs Add 2b6ea5 to .git-blame-ignore-revs 2023-12-19 13:46:10 +01:00
.gitattributes add Github Action workflow to create release tarball 2019-12-06 14:23:21 +01:00
.gitignore DLA-Future Documentation 2024-12-20 11:59:26 +01:00
.gitmodules Move prettify into precommit folder and inline fprettify submodule 2024-08-04 12:45:16 +02:00
.packit.yaml Fix fedora builds 2024-11-18 11:40:33 +01:00
CMakeLists.txt Do not set INSTALL_LIBDIR 2025-08-20 10:53:47 +02:00
INSTALL.md FFTW: removed distinction with MKL 2025-07-13 21:39:08 +02:00
LICENSE LICENSE: initial commit 2018-10-02 16:53:44 +02:00
Makefile add ace support 2025-05-06 08:32:16 +02:00
README.md Add Badges! 2024-04-26 18:26:01 +02:00

CP2K

Release Status Debian Status Fedora Status Ubuntu Status Arch Status Homebrew Status Docker Status Spack Status Conda Status

CP2K is a quantum chemistry and solid state physics software package that can perform atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems. CP2K provides a general framework for different modeling methods such as DFT using the mixed Gaussian and plane waves approaches GPW and GAPW. Supported theory levels include DFT, MP2, RPA, GW, tight-binding (xTB, DFTB), semi-empirical methods (AM1, PM3, PM6, RM1, MNDO, ...), and classical force fields (AMBER, CHARMM, ...). CP2K can do simulations of molecular dynamics, metadynamics, Monte Carlo, Ehrenfest dynamics, vibrational analysis, core level spectroscopy, energy minimization, and transition state optimization using NEB or dimer method.

CP2K is written in Fortran 2008 and can be run efficiently in parallel using a combination of multi-threading, MPI, and CUDA.

Downloading CP2K source code

To clone the current master (development version):

git clone --recursive https://github.com/cp2k/cp2k.git cp2k

Note the --recursive flag that is needed because CP2K uses git submodules.

To clone a release version vx.y:

git clone -b support/vx.y --recursive https://github.com/cp2k/cp2k.git cp2k

For more information on downloading CP2K, see Downloading CP2K. For help on git, see Git Tips & Tricks.

Install CP2K

The easiest way to build CP2K with all of its dependencies is as a Docker container.

For building CP2K from scratch see the installation instructions.

  • CP2K.org for showcases of scientific work, tutorials, exercises, presentation slides, etc.
  • The manual with descriptions of all the keywords for the CP2K input file
  • The dashboard to get an overview of the currently tested architectures
  • The Google group to get help if you could not find an answer in one of the previous links
  • Acknowledgements for list of institutions and grants that help to fund the development of CP2K

Directory organization

  • arch: Collection of definitions for different architectures and compilers
  • benchmarks: Inputs for benchmarks
  • data: Simulation parameters e.g. basis sets and pseudopotentials
  • exts: Access to external libraries via GIT submodules
  • src: The source code
  • tests: Inputs for tests and regression tests
  • tools: Mixed collection of useful scripts related to cp2k

Additional directories created during build process:

  • lib: Libraries built during compilation
  • obj: Objects and other intermediate compilation-time files
  • exe: Where the executables will be located