velph init#
velph init reads a crystal structure and writes velph.toml in a new project
folder.
% velph init [OPTIONS] CELL_FILENAME PROJECT_FOLDER
velph init --help shows short documents of the options. Two arguments have to
be specified, a POSCAR-format crystal structure and the name of the folder where
velph.toml is written. The available options are explained below. The options
except --force, --template-toml and --toml-filename can also be given in
the [init] section of a template (see velph init template).
The settings of velph.toml come from the default settings of velph init, from
the template given by --template-toml, and from the command-line options. A
command-line option takes priority over the template, and the template takes
priority over the default settings (see Order of precedence).
Project folder#
velph init creates PROJECT_FOLDER and writes velph.toml in it.
When
PROJECT_FOLDERalready exists,velph initstops with an error. With--force, it writesvelph.tomlin the existing folder.With
.asPROJECT_FOLDER,velph initwritesvelph.tomlin the current folder.When
velph.tomlalready exists in the folder,velph initstops with an error. With--force, it overwrites the file.When the current folder has
POTCAR,velph initshows the elements and the largestENMAXofPOTCAR, and copies it toPROJECT_FOLDERunless the folder already has one.
velph init options#
--template-toml#
Using this option, a template in TOML is read, and its settings are used instead
of the default settings of velph init. See velph init template.
--code#
This chooses the codes whose sections, [phelel], [phonopy] and [phono3py],
are written in velph.toml. Repeat it for more than one code, for example
--code phelel --code phonopy. By default all three codes are chosen. The input
sets of [vasp] that a code uses are written only for the chosen codes (see
velph.toml-[vasp] section).
A code needs a supercell, which is given by --dim, --supercell-matrix or
--max-num-atoms, or by the template.
When the codes are not chosen, a code without a supercell is not written. For example,
velph initwithout any option writesvelph.tomlwith the input setsrelax,nac,el_bandsandel_dosonly.A code chosen with
--code, or withcodesin[init]of the template, has to have a supercell. Otherwisevelph initstops with an error that says which option or key gives the supercell.
--tolerance#
This is used for the symmetry check tolerance in Angstrom. Symmetry is searched
always even without --symmetrize-cell.
--symmetrize-cell#
By default (no-symmetrize), the input POSCAR-type structure is simply used as
the unit cell. With --symmetrize-cell, input POSCAR-type structure is
symmetrized and standardized conventional unit cell and primitive cell
(“unitcell” and “primitive_cell”, respectively) are written in velph.toml.
--no-find-primitive#
By this option, the input POSCAR-type structure is used as the primitive cell even if it is not a primitive cell.
--kspacing and --kspacing-dense#
The k-point meshes are calculated from these values, in 1/Angstrom. --kspacing
is used for the kpoints blocks and --kspacing-dense for the kpoints_dense
blocks. The number of divisions along each reciprocal basis vector b_i is
max(1, ceiling(|b_i| 2π / kspacing)), the same rule as the VASP INCAR tag
KSPACING. The mesh is computed on the cell of each input set: the supercell for
phelel, phonopy and phono3py, and the unit cell or the primitive cell for
the others.
A k-point block of the template that gives mesh or kspacing takes priority
over these options. For example, with kspacing = 0.3 in
[vasp.relax.kpoints] of the template and --kspacing 0.2, the mesh of relax
is computed from 0.3 and those of the other input sets from 0.2. The default
settings give mesh = [1, 1, 1] in [vasp.ph_bands.kpoints], so these options
do not change the mesh of ph_bands.
--max-num-atoms, --dim, and --supercell-matrix#
These three options give the supercell in different ways.
--max-num-atoms determines the supercell shape so that its number of atoms is
equal or less than this number respecting the crystallographic point group. Use
of this option requires --symmetrize-cell.
--dim determines the supercell shape by three integer values that extend
along a, b, and c axes of the unit cell, respectively.
--supercell-matrix determines the supercell shape by nine integer values
(v1, …, v9) that correspond to the 3x3 matrix
[[v1, v2, v3], [v4, v5, v6], [v7, v8, v9]].
Give only one of --max-num-atoms, --dim, and --supercell-matrix. When two
or more of them are given, velph init stops with an error. The supercell given
by one of these options is used for all the chosen codes, instead of the
supercell settings in the template (see Order of precedence).
--cell-for-relax#
This chooses unit cell or primitive cell for structure optimization (relax).
The default is unitcell. Specify primitive to use primitive cell.
--cell-for-nac#
This chooses unit cell or primitive cell for NAC calculation (nac). The
default is primitive. Specify unitcell to use unit cell.
--primitive-cell-choice#
Primitive cell choice, “standardized” (default) or “reduced”.
--use-grg#
Use generalized regular grid for the k-point meshes computed from --kspacing
and --kspacing-dense, except those of the supercells. Even without this
option, a generalized regular grid is used when a (conventional) regular mesh
breaks the symmetry of the cell, and velph init says so.
--amplitude#
Distance of displacements in Angstrom. The value is used for [phelel],
[phonopy], and [phono3py]. Without this option, velph init writes 0.03 in
[phelel] and [phono3py] and 0.01 in [phonopy], which are the default
displacement distances of phono3py and phonopy for VASP.
--diagonal#
Whether to also generate displacements along diagonal (non-axis) directions. By
default, only axis-aligned displacements are used. This corresponds to the
diagonal key of [phelel], [phonopy], and [phono3py].
--plusminus / --auto#
--plusminus (default) adds the opposite (minus) displacement for every
displacement. --auto adds the minus displacement only when it is not
symmetrically equivalent to the plus one. This corresponds to the plusminus
key of [phelel], [phonopy], and [phono3py].
--nosym#
Disable symmetry reduction of the displacements (equivalent to running
phonopy --nosym). This corresponds to the nosym key of [phelel],
[phonopy], and [phono3py].
--magmom#
String corresponding to INCAR MAGMOM tag value for unit cell, e.g., “24*1” or “0
0 1”. This is similar to MAGMOM tag in phonopy, see
https://phonopy.github.io/phonopy/setting-tags.html#magmom. In velph, the
asterisk symbol (*) is supported.
--force#
Write velph.toml in an existing project folder, and overwrite velph.toml
when it exists.
--toml-filename#
File name of the velph.toml-type file written in the project folder. The
default is velph.toml.
Note
--force, --template-toml, and --toml-filename are command-line only and
have no corresponding [init] key in the template file (see
velph init template).