58 NULLIFY (keyword, section, print_key)
61 description=
"Controls the printing properties during an MD/Optimization run", &
62 n_keywords=1, n_subsections=1, repeats=.true.)
65 variants=[
"MEMORY"], &
66 description=
"Whether overall memory usage should be sampled and printed "// &
67 "at each MD/Optimization step.", &
68 usage=
"MEMORY_INFO LOGICAL", &
69 default_l_val=.true., lone_keyword_l_val=.true.)
74 description=
"Controls the output of the trajectory", &
76 filename=
"", unit_str=
"angstrom")
78 description=
"Specifies the format of the output file for the trajectory.")
83 print_key, __location__,
"SHELL_TRAJECTORY", &
84 description=
"Controls the output of the trajectory of shells when the shell-model is used ", &
86 filename=
"", unit_str=
"angstrom")
88 description=
"Specifies the format of the output file for the trajectory of shells.")
93 description=
"Controls the output of the trajectory of cores when the shell-model is used ", &
95 filename=
"", unit_str=
"angstrom")
97 description=
"Specifies the format of the output file for the trajectory of cores.")
102 description=
"Controls the output of the simulation cell. "// &
103 "For later analysis of the trajectory it is recommendable that the "// &
104 "frequency of printing is the same as the one used for the trajectory file.", &
111 description=
"Controls the output of the atomic velocities. "// &
112 "The default unit for the atomic velocities $v$ is bohr/au_time. "// &
113 "The kinetic energy $K_i$ in [hartree] of an atom $i$ with mass $m_i$ in "// &
114 "atomic mass units [amu] (or just [u]) and velocity $v_i$ can be obtained by "// &
115 "$K_i = \frac{1}{2}f_u\,m_i\,v_i^2$ with $f_u = 1822.888$ as conversion factor "// &
116 "from [u] to [a.u.]. $f_u$ is printed in full precision in the top of the CP2K "// &
117 "output for print level MEDIUM or higher.", &
119 filename=
"", unit_str=
"bohr*au_t^-1")
121 description=
"Specifies the format of the output file for the velocities.")
126 description=
"Controls the output of the velocities of shells when the shell model is used", &
128 filename=
"", unit_str=
"bohr*au_t^-1")
130 description=
"Specifies the format of the output file for the velocities of shells.")
135 description=
"controls the output of the velocities of cores when the shell model is used", &
137 filename=
"", unit_str=
"bohr*au_t^-1")
139 description=
"Specifies the format of the output file for the velocities of cores.")
148 description=
"Controls the dumping of the final geometry "// &
149 "and cell for optimization tasks. Currently CIF and XYZ "// &
150 "formats are available, as controlled independently by "// &
151 "PRINT_CIF and PRINT_XYZ respectively, with the same "// &
152 "file name except for extension suffix.", &
156 description=
"Print the final structure as CIF. Currently "// &
157 "the structure will always be dumped with the asymmetric "// &
158 "space group `P 1` as a triclinic system with a single "// &
159 "symmetry-equivalent position `x, y, z` for all atoms. "// &
160 "All fractional coordinates are in the range [0,1] and "// &
161 "all occupancies are unity.", &
162 usage=
"PRINT_CIF T", default_l_val=.true., &
163 lone_keyword_l_val=.true.)
168 description=
"Print the final structure as XYZ. The cell "// &
169 "information is available in the comment line according "// &
170 "to the extended XYZ specification as the `Lattice=...` "// &
171 "field, and the unit is angstrom for both the cell vectors "// &
172 "and the atomic coordinates.", &
173 usage=
"PRINT_XYZ T", default_l_val=.true., &
174 lone_keyword_l_val=.true.)
178 CALL keyword_create(keyword, __location__, name=
"PRINT_ATOM_KIND", &
179 description=
"Write the atom kind given in the subsys section instead "// &
180 "of the element symbol in the extended XYZ file.", &
181 usage=
"PRINT_ATOM_KIND {LOGICAL}", &
182 default_l_val=.false., lone_keyword_l_val=.true.)
190 print_key, __location__,
"FORCE_MIXING_LABELS", &
191 description=
"Controls the output of the force mixing (FORCE_EVAL&QMMM&FORCE_MIXING) labels", &
195 description=
"Specifies the format of the output file for the force mixing labels.")
200 description=
"Controls the output of the forces", &
202 filename=
"", unit_str=
"hartree*bohr^-1")
204 description=
"Specifies the format of the output file for the forces.")
209 description=
"Controls the output of the forces on shells when shell-model is used", &
211 filename=
"", unit_str=
"hartree*bohr^-1")
213 description=
"Specifies the format of the output file for the forces on shells.")
218 description=
"Controls the output of the forces on cores when shell-model is used", &
220 filename=
"", unit_str=
"hartree*bohr^-1")
222 description=
"Specifies the format of the output file for the forces on cores.")
227 description=
"Controls the output of the energies of the two "// &
228 "regular FORCE_EVALS in the MIXED method "// &
229 "printed is step,time,Etot,E_F1,E_F2,CONS_QNT", &
236 description=
"Controls the output of the stress tensor", &
243 description=
"Controls the output of the polarisability tensor during an MD run", &
250 description=
"Controls the dumping of the latest motion restart file "// &
251 "during runs. The file suffix will be .restart by default, which is "// &
252 "ASCII plain-text in the same format as an input file, unless the "// &
253 "SPLIT_RESTART_FILE keyword is specified. A plain-text file can be "// &
254 "used directly or parsed by the EXT_RESTART section for fine controls "// &
255 "over the reuse of different information. See also RESTART_HISTORY.", &
256 each_iter_names=
s2a(
"MD"), each_iter_values=[20], &
260 CALL keyword_create(keyword, __location__, name=
"SPLIT_RESTART_FILE", &
261 description=
"If specified selected input sections, which are growing with the "// &
262 "number of atoms in the system, are written to another restart file "// &
263 "in binary format instead of the default restart file in human "// &
264 "readable ASCII format. This split of the restart file may "// &
265 "provide significant memory savings and an accelerated I/O for "// &
266 "systems with a very large number of atoms", &
267 usage=
"SPLIT_RESTART_FILE yes", &
268 default_l_val=.false., &
269 lone_keyword_l_val=.true.)
277 description=
"Dumps unique motion restart files during the run, "// &
278 "keeping all of them. Most useful if recovery is needed at a "// &
279 "later point. For the latest motion restart file, see RESTART.", &
281 each_iter_names=
s2a(
"MD",
"GEO_OPT",
"ROT_OPT"), each_iter_values=[500, 500, 500], &
287 description=
"Dumps the translation vector applied along an MD (if any). Useful"// &
288 " for postprocessing of QMMM trajectories in which the QM fragment is continuously"// &
289 " centered in the QM box", &
308 LOGICAL,
INTENT(IN) :: pos
309 CHARACTER(LEN=*),
INTENT(IN) :: description
311 cpassert(
ASSOCIATED(section))
312 cpassert(.NOT.
ASSOCIATED(keyword))
317 keyword, __location__, name=
"FORMAT", &
318 description=description, usage=
"FORMAT (ATOMIC|DCD|PDB|XMOL|XYZ|EXTXYZ)", &
320 enum_c_vals=
s2a(
"ATOMIC",
"DCD",
"DCD_ALIGNED_CELL",
"PDB",
"XMOL",
"XYZ",
"EXTXYZ"), &
322 enum_desc=
s2a(
"Write only the coordinates X,Y,Z without element symbols to a formatted file", &
323 "Write the coordinates (no element labels) and the cell information to a binary file", &
324 "Like DCD, but the dumped coordinates refer to an aligned cell following the common convention: "// &
325 "the cell vector **a** is aligned with the *x* axis and the cell vector **b** lies in "// &
326 "the *xy* plane. This allows the reconstruction of scaled coordinates from the DCD data only.", &
327 "Write the atomic information in PDB format to a formatted file", &
328 "Mostly known as XYZ format, provides in a formatted file: element_symbol X Y Z", &
329 "Alias name for XMOL", &
330 "Extended XYZ format including cell information. "// &
331 "For details see [ASE](https://ase-lib.org/ase/io/formatoptions.html#extxyz) "// &
332 "and [OVITO](https://www.ovito.org/manual/reference/file_formats/input/xyz.html)."))
337 variants=[
"CHARGE_O"], &
338 description=
"Write the MM charges to the OCCUP field of the PDB file", &
339 usage=
"CHARGE_OCCUP logical", &
340 default_l_val=.false., lone_keyword_l_val=.true.)
345 variants=[
"CHARGE_B"], &
346 description=
"Write the MM charges to the BETA field of the PDB file", &
347 usage=
"CHARGE_BETA logical", &
348 default_l_val=.false., lone_keyword_l_val=.true.)
352 CALL keyword_create(keyword, __location__, name=
"CHARGE_EXTENDED", &
353 description=
"Write the MM charges to the very last field of the PDB file (starting from column 81)", &
354 usage=
"CHARGE_EXTENDED logical", &
355 default_l_val=.false., lone_keyword_l_val=.true.)
362 description=description, usage=
"FORMAT (ATOMIC|DCD|XMOL|XYZ|EXTXYZ)", &
364 enum_c_vals=
s2a(
"ATOMIC",
"DCD",
"XMOL",
"XYZ",
"EXTXYZ"), &
366 enum_desc=
s2a(
"Write only the coordinates X,Y,Z without element symbols to a formatted file", &
367 "Write the coordinates (no element labels) and the cell information to a binary file", &
368 "Mostly known as XYZ format, provides in a formatted file: element_symbol X Y Z", &
369 "Alias name for XMOL", &
370 "Extended XYZ format including cell information. "// &
371 "For details see [ASE](https://ase-lib.org/ase/io/formatoptions.html#extxyz) "// &
372 "and [OVITO](https://www.ovito.org/manual/reference/file_formats/input/xyz.html)."))
378 CALL keyword_create(keyword, __location__, name=
"PRINT_ATOM_KIND", &
379 description=
"Write the atom kind given in the subsys section instead of the element symbol. "// &
380 "Only valid for the XMOL and EXTXYZ format.", &
381 usage=
"PRINT_ATOM_KIND logical", &
382 default_l_val=.false., lone_keyword_l_val=.true.)