ph keywords

Phonon calculator

ph.klist

This keyword is obsolete, please refer to ph.qpointSympoints. High-symmetry k-point paths for calculating phonon structures.

type: array

size: [inf,3]

example: ph.klist = [0.0,0.0,0.0;0.0,0.0,0.5;0.0,0.0,0.5;0.0,0.5,0.5]

ph.nk

This keyword is obsolete, please refer to ph.qpointGridn. Number of total data points along high-symmetry k-points.

type: scalar

default: 20

example: ph.nk = 20

ph.qpointGridn

ph.qpointGridn is a scalar determining the total number of points along the q-point line. The q-points are distributed as uniformly as possible.

type: scalar

default: 20

example: ph.qpointGridn = 20

ph.sympoints

This keyword is obsolete, please refer to ph.qpointSympoints. List of points visited during the phonon band structure calculation. The points can be string labels or k-points in direct coordinates. If ph.klist is defined, ph.sympoints are not used. If neither is defined, a line going along the different edges of the irreducible Brillouin zone is generated.

type: cell array

example: ph.sympoints = {'L','G','X','W','K'}

ph.qpointSympoints

List of points visited during the phonon band structure calculation. The points can be string labels or k-points in direct coordinates. If it is not defined, a line going along the different edges of the irreducible Brillouin zone is generated.

type: cell array

example: ph.qpointSympoints = {'L','G','X','W','K'}

ph.labels

Labels for high-symmetry k-points. Used for ploting.

type: cell array, string

default: {'G','X'}

example: ph.labels={'G','M','K','G'}

ph.mass

Mass of atomic species. The zero components of input masses will be replaced by default ones.

type: array

size: [1,inf]

example: ph.mass = [12, 12]

ph.unitcellMass

Mass of atoms in the given unit cell.

type: array

size: [1,inf]

example: ph.unitcellMass = [12, 12]

ph.supercellDimension

Supercell size for calculating phonons.

type: array

size: [1,3]

example: ph.supercellDimension = [2,2,1]

ph.ASR

Use Acoustic Sum Rules correction (1) or not (0).

type: scalar

default: true

allowed: true,false

example: ph.ASR = true

ph.dr

Displacement of atoms for calculating forces of a displaced configuration. In unit of Bohr.

type: scalar

default: 0.2

example: ph.dr = 0.2

ph.plot

Plot phonon band structures or not.

type: scalar

default: true

allowed: true,false

example: ph.plot = true

ph.dispStartNumber

Forces calculation starts from the designated number of displaced configuration.

type: scalar

default: 1

example: ph.dispStartNumber = 1

ph.dispEndNumber

Forces calculation ends at the designated number of displaced configuration.

type: scalar

example: ph.dispEndNumber = 1

ph.mode

Working modes of the phonon code

type: string

default: 'phonon'

allowed: 'bands','displacement','dos','force sets','force constants’,’gamma’,’phonon’,’post’,’symmetry’

example: ph.mode = 'phonon'

ph.supercellXyzFile

Use an external input for the supercell structure (units must be Angstrom).

type: string

default: []

example: ph.supercellXyzFile = 'SPOSCAR.xyz'

ph.unitCellIndex

Atom index of the unit cell structure embedded in the supercell structure.

type: array

size: [1,inf]

example: ph.unitCellIndex = [1:2]

ph.tol

Tolerance for determining whether two atoms are in the same position or not. It is unitless as the code uses fractional coordinates for symmetry operations.

type: scalar

default: 1e-05

example: ph.tol = 1e-5

ph.usePsi

Determines whether to use provided wave function in info.savepath as the initial subspace or not.

type: scalar

default: false

allowed: true,false

example: ph.usePsi = true

ph.wUnit

Units for output phonon frequencies.

type: string

default: 'THz'

allowed: 'THz','eV','meV','cm','cm-1'

example: ph.wUnit = 'THz'

ph.isMinus

Use positive-minus displaced structures or not.

type: scalar

default: true

allowed: true,false

example: ph.isMinus = true

ph.dos.projXYZ

Determines whether to compute the phonon density of states. It is only used in Phonon DOS calculation to indicate which direction is wanted. 1, 2, 3 stands for x, y, z directions, respectively.

type: array

default: []

allowed: [1,2,3]

example: ph.dos.projXYZ = 1

ph.dos.projAtom

Calculate the phonon density of states projected on specific atoms. For example, setting ph.dos.projAtom = [221,223] will project the DOS on the atoms 221 and 223. It can be combined with other conditions such as ph.dos.projXYZ. The default is [] which sums up the contributions of all atoms.

type: array

default: []

example: ph.dos.projAtom = 501:520

ph.dos.projSpecies

Calculate the phonon density of states projected on the atoms of specific species. For example, setting ph.dos.projSpecies = 2 will project the phonon DOS on the atoms of element 2. It can be combined with other conditions such as dos.projXYZ. The default is [] which sums up the contributions of all species.

type: array

default: []

example: ph.dos.projSpecies = [5,6]

ph.dos.range

1 x 2 array describing the energy range for which the phonon DOS is calculated. The unit is determined by ph.wUnit.

type: array

default: [0, 45]

example: ph.dos.range = [0,45]

ph.dos.resolution

Determines the resolution of the phonon DOS energy axis. The unit is determined by ph.wUnit.

type: scalar

default: 0.001

example: ph.dos.resolution = 0.01