The cp2k input structure
CP2K input reference
Version information
This html manual can be generated automatically from a given cp2k executable using the --html-manual command line option. The manual describes exactly that version of the code. This version has been generated using a cp2k version compiled on Wed Jul 22 15:44:55 WEDT 2009. The latest CVS entry found is /qs_gspace_mixing.F/1.7/Mon May 25 22:07:06 2009//.
Search the online input reference manual
Journal papers
List of references cited in the CP2K input manual.
Units of Measurement
List of unites organized into groups based on the physical quantity they measure. The units can be used to specify an alternative unit of measurement for keyword values, for which a default unit has been explicitly defined.
Internal Input Preprocessor
Before the input is parsed, the input is run through a very simple internal preprocessor.
The preprocessor recognizes the following directives independent of capitalization:
- @INCLUDE 'filename.inc'
- The file referenced by filename.inc is included into the input file and parsed.
Recursive inclusions are not allowed and the files have to exist in the current working
directory. There can be only one @INCLUDE statement per line. Single or double quotes
can be used and have to be used if the filename contains blanks.
- @SET VAR value
- Assigns the text value to the preprocessing variable VAR. value
is the text following VAR with the outer whitespace removed. The variable can be
recalled with a ${VAR} statement. There can be only one @SET statement per line.
- ${VAR}
- Expand the variable VAR. The text ${VAR} is replaced with the value assigned
to VAR in the last corresponding @SET directive. There can be multiple variables per line.
The expansion process is repeated until no more variables are found.
- @IF / @ENDIF
- Conditional block. The text from the @IF line up to the next line with a valid
@ENDIF is skipped, if the expression following @IF resolves to false.
Available expressions are lexical comparisons for equality '==' or inequality '/='.
If none of the two operators are found, a '0' or whitespace resolves to false
while any text resolves to true. @IF/@ENDIF blocks cannot be nested and
cannot span across files. There can be only one test (== or /=) per @IF statement.
Input structure
All sections that can be part of a cp2k input file are shown with their allowed nestings.
A description of each section, and a list of keywords can be obtained clicking on the links.
Back to the CP2K homepage