PHONOPY(1)

๐Ÿซถ PHONOPY(1) โ€” phonopy 2.48.0, explained by your bestie ๐Ÿซถ

okay so bestie, you opened the manual page for phonopy, the phonopy command-line-tool, version 2.48.0, and it is long. like, unnecessarily long. but don't panic ๐Ÿ’– we're getting through every single flag together, no skipping, no summarising, because every one of these little guys matters. grab a strawberry drink ๐Ÿ“ and let's go.


๐ŸŒธ NAME

phonopy โ€” the manual page for phonopy 2.48.0 โœจ

๐Ÿ’… DESCRIPTION

here's the usage line in all its glory, and yes, it is giving "the whole keyboard got dumped into one line":

usage: phonopy [-h] [--abacus] [--abinit] [--aims] [--castep] [--cp2k]
       [--crystal] [--dftb+] [--elk] [--fleur] [--lammps] [--qlm] [--qe]
       [--siesta] [--turbomole] [--vasp] [--wien2k] [--pwmat] [--alm]
       [--amplitude DISPLACEMENT_DISTANCE] [--amax
       DISPLACEMENT_DISTANCE_MAX] [--anime ANIME [ANIME ...]]  [--band
       BAND_PATHS [BAND_PATHS ...]] [--band-connection]
       [--band-const-interval] [--band-labels BAND_LABELS [BAND_LABELS
       ...]]  [--band-format BAND_FORMAT] [--band-points BAND_POINTS]
       [--bi BAND_INDICES [BAND_INDICES ...]] [-c FILE] [--classical]
       [--cutoff-freq CUTOFF_FREQUENCY] [--cutoff-radius CUTOFF_RADIUS]
       [-d] [--dim SUPERCELL_DIMENSION [SUPERCELL_DIMENSION ...]]
       [--dm-decimals DYNAMICAL_MATRIX_DECIMALS] [--dos] [--eigvecs] [-f
       CREATE_FORCE_SETS [CREATE_FORCE_SETS ...]]  [--factor
       FREQUENCY_CONVERSION_FACTOR] [--fc FILE] [--fc-calc
       FC_CALCULATOR] [--fc-calc-opt FC_CALCULATOR_OPTIONS]
       [--fc-decimals FORCE_CONSTANTS_DECIMALS] [--fc-format FC_FORMAT]
       [--fc-spg-symmetry] [--fc-symmetry] [--fits-debye-model]
       [--full-fc] [--fz CREATE_FORCE_SETS_ZERO [CREATE_FORCE_SETS_ZERO
       ...]]  [--fmax FMAX] [--fmin FMIN] [--fpitch FPITCH] [--gc]
       [--gv] [--gv-delta-q GV_DELTA_Q] [--hdf5] [--hdf5-compression
       HDF5_COMPRESSION] [--irreps IRREPS_QPOINT [IRREPS_QPOINT ...]]
       [--include-fc] [--include-fs] [--include-disp] [--include-all]
       [--legend] [--legacy-plot] [--lcg] [--loglevel LOGLEVEL] [--mass
       MASSES [MASSES ...]] [--mass-ase-iupac2016] [--magmom MAGMOMS
       [MAGMOMS ...]] [--mesh-format MESH_FORMAT] [--modulation
       MODULATION [MODULATION ...]]  [--mp MESH_NUMBERS [MESH_NUMBERS
       ...]]  [--mlp-params MLP_PARAMS] [--moment] [--moment-order
       MOMENT_ORDER] [--nac] [--nac-method NAC_METHOD] [--nodiag]
       [--nomeshsym] [--nosym] [--nowritemesh] [-p] [--pa PRIMITIVE_AXES
       [PRIMITIVE_AXES ...]]  [--pd PROJECTION_DIRECTION
       [PROJECTION_DIRECTION ...]]  [--pdos PDOS [PDOS ...]] [--pm]
       [--pr] [--pt] [--pypolymlp] [--qpoints QPOINTS [QPOINTS ...]]
       [--qpoints-format QPOINTS_FORMAT] [--q-direction NAC_Q_DIRECTION
       [NAC_Q_DIRECTION ...]] [-q] [--random-seed RANDOM_SEED] [--rd
       RANDOM_DISPLACEMENTS] [--rd-auto-factor
       RD_NUMBER_ESTIMATION_FACTOR] [--rd-temperature TEMPERATURE]
       [--readfc] [--readfc-format READFC_FORMAT] [--read-qpoints]
       [--relax-atomic-positions] [-s] [--sp] [--show-irreps] [--sigma
       SIGMA] [--sscha SSCHA_ITERATIONS] [--symfc] [--symmetry] [-t]
       [--td] [--tdm] [--tdm-cif TEMPERATURE] [--temperature
       TEMPERATURE] [--tmax TMAX] [--tmin TMIN] [--tolerance
       SYMMETRY_TOLERANCE] [--trigonal] [--tstep TSTEP] [-v]
       [--wien2k-p1] [--writefc] [--writefc-format WRITEFC_FORMAT]
       [--writedm] [--xyz-projection] [filename ...]

Phonopy command-line-tool ๐Ÿ‘‘

one tool. a hundred-ish ways to tell it what you want. iconic honestly.


๐ŸŽ€ positional arguments

  • filename โ€” this is your Phonopy configure file. buuut if that file gets recognized as a phonopy.yaml-like file, then it gets read as a phonopy.yaml-like file instead. same slot, two personalities ๐Ÿ’…

โœจ options

deep breath. here we go.

  • -h, --help โ€” shows this help message and then dips. the classic escape hatch ๐Ÿ™ˆ
heads up bestie: a whole pile of these are just "which DFT code are we talking to" switches. pick your fave, no judgement.
  • --abacus โ€” Invoke ABACUS mode
  • --abinit โ€” Invoke Abinit mode
  • --aims โ€” Invoke FHI-aims mode
  • --castep โ€” Invoke CASTEP mode
  • --cp2k โ€” Invoke CP2K mode
  • --crystal โ€” Invoke CRYSTAL mode
  • --dftb+ โ€” Invoke dftb+ mode
  • --elk โ€” Invoke elk mode
  • --fleur โ€” Invoke Fleur mode
  • --lammps โ€” Invoke Lammps mode
  • --qlm โ€” Invoke Questaal/LMTO mode
  • --qe โ€” Invoke Quantum espresso (QE) mode
  • --siesta โ€” Invoke Siesta mode
  • --turbomole โ€” Invoke TURBOMOLE mode
  • --vasp โ€” Invoke Vasp mode
  • --wien2k โ€” Invoke Wien2k mode
  • --pwmat โ€” Invoke PWmat mode
  • --alm โ€” Use ALM for generating force constants. force constants, but make it ALM ๐Ÿซถ
  • --amplitude, --amin DISPLACEMENT_DISTANCE โ€” Distance of displacements โ€” and also the minimum distance of displacements in random displacements. two jobs, one flag, main character energy โœจ
  • --amax DISPLACEMENT_DISTANCE_MAX โ€” Minimum distance of displacements in random displacements
  • --anime ANIME [ANIME ...] โ€” Same as ANIME tag
  • --band BAND_PATHS [BAND_PATHS ...] โ€” Same behavior as BAND tag
  • --band-connection โ€” Treat band crossings. letting the bands actually touch, as they deserve ๐Ÿ’€
  • --band-const-interval โ€” Band paths are sampled with similar interval.
  • --band-labels BAND_LABELS [BAND_LABELS ...] โ€” Show labels at band segments
  • --band-format BAND_FORMAT โ€” Band structure output file-format
  • --band-points BAND_POINTS โ€” Number of points calculated on a band segment in the band structure mode
  • --bi, --band-indices BAND_INDICES [BAND_INDICES ...] โ€” Band indices to be included to calculate thermal properties
  • -c, --cell FILE โ€” Read unit cell
  • --classical โ€” Compute thermodynamic properties using classical statistics.
  • --cutoff-freq, --cutoff-frequency CUTOFF_FREQUENCY โ€” Thermal properties are not calculated below this cutoff frequency.
  • --cutoff-radius CUTOFF_RADIUS โ€” Out of cutoff radius, force constants are set zero.
  • -d, --displacement โ€” Create supercells with displacements
  • --dim SUPERCELL_DIMENSION [SUPERCELL_DIMENSION ...] โ€” Same behavior as DIM tag
  • --dm-decimals DYNAMICAL_MATRIX_DECIMALS โ€” Decimals of values of decimals ๐Ÿ˜ญ that's literally what it says, bestie. it's about how many decimals the dynamical matrix values get.
  • --dos โ€” Calculate (P)DOS
  • --eigvecs, --eigenvectors โ€” Output eigenvectors
  • -f, --force-sets CREATE_FORCE_SETS [CREATE_FORCE_SETS ...] โ€” Create FORCE_SETS
  • --factor FREQUENCY_CONVERSION_FACTOR โ€” Frequency unit conversion factor
  • --fc, --force-constants FILE โ€” Create FORCE_CONSTANTS from vaspurn.xml. vasprun.xml has to be passed as argument.
  • --fc-calc, --fc-calculator FC_CALCULATOR โ€” Force constants calculator
  • --fc-calc-opt, --fc-calculator-options FC_CALCULATOR_OPTIONS โ€” Options for force constants calculator as comma separated string with the style of key = values
  • --fc-decimals FORCE_CONSTANTS_DECIMALS โ€” Decimals of values of force constants
  • --fc-format FC_FORMAT โ€” Force constants input/output file-format
  • --fc-spg-symmetry โ€” Enforce space group symmetry to force constants
  • --fc-symmetry, --sym-fc โ€” Symmetrize force constants. symmetry check: passed ๐Ÿ’…
  • --fits-debye-model โ€” Fits total DOS to a Debye model
  • --full-fc โ€” Calculate full supercell force constants matrix
  • --fz, --force-sets-zero CREATE_FORCE_SETS_ZERO [CREATE_FORCE_SETS_ZERO ...] โ€” Create FORCE_SETS. disp.yaml in the current directory and vapsrun.xml's for VASP or case.scf(m) for Wien2k as arguments are required. The first argument is that of the perfect supercell to subtract residual forces
  • --fmax FMAX โ€” Maximum frequency used for DOS or moment calculation
  • --fmin FMIN โ€” Minimum frequency used for DOS or moment calculation
  • --fpitch FPITCH โ€” Frequency pitch used for DOS or moment calculation
  • --gc, --gamma-center โ€” Set mesh as Gamma center
  • --gv, --group-velocity โ€” Calculate group velocities at q-points
  • --gv-delta-q GV_DELTA_Q โ€” Delta-q distance used for group velocity calculation
  • --hdf5 โ€” Use hdf5 for force constants
  • --hdf5-compression HDF5_COMPRESSION โ€” hdf5 compression filter (default: "gzip") and "none" for no compression
  • --irreps, --irreps-qpoint IRREPS_QPOINT [IRREPS_QPOINT ...] โ€” A q-point where characters of irreps are calculated
  • --include-fc โ€” Include force constants in phonopy.yaml
  • --include-fs โ€” Include force sets in phonopy.yaml
  • --include-disp โ€” Include displacements in phonopy.yaml
  • --include-all โ€” Include all output file data in phonopy.yaml
  • --legend โ€” Legend of plots is shown in thermal displacements
  • --legacy-plot โ€” Legacy style band structure plot
  • --lcg, --little-cogroup โ€” Show irreps of little co-group (or point-group of wave vector q) instead of little group
  • --loglevel LOGLEVEL โ€” Log level
  • --mass MASSES [MASSES ...] โ€” Same as MASS tag
  • --mass-ase-iupac2016 โ€” Import atomic weights from ASE according to IUPAC 2016
  • --magmom MAGMOMS [MAGMOMS ...] โ€” Same as MAGMOM tag
  • --mesh-format MESH_FORMAT โ€” Mesh output file-format
  • --modulation MODULATION [MODULATION ...] โ€” Same as MODULATION tag
  • --mp, --mesh MESH_NUMBERS [MESH_NUMBERS ...] โ€” Same behavior as MP tag
  • --mlp-params MLP_PARAMS โ€” Parameters for machine learning potentials as comma separated string with the style of key = values
  • --moment โ€” Calculate moment of phonon states distribution
  • --moment-order MOMENT_ORDER โ€” Order of moment of phonon states distribution
  • --nac โ€” Non-analytical term correction
  • --nac-method NAC_METHOD โ€” Non-analytical term correction method: Gonze (default) or Wang
  • --nodiag โ€” Set displacements parallel to axes
  • --nomeshsym โ€” Symmetry is not imposed for mesh sampling.
  • --nosym โ€” Symmetry is not imposed.
  • --nowritemesh โ€” Do not write mesh.yaml or mesh.hdf5
  • -p, --plot โ€” Plot data ๐Ÿ“ˆ
  • --pa, --primitive-axis, --primitive-axes PRIMITIVE_AXES [PRIMITIVE_AXES ...] โ€” Same as PRIMITIVE_AXES tag
  • --pd, --projection-direction PROJECTION_DIRECTION [PROJECTION_DIRECTION ...] โ€” Same as PROJECTION_DIRECTION tag
  • --pdos PDOS [PDOS ...] โ€” Same as PDOS tag
  • --pm โ€” Set plus minus displacements
  • --pr, --pretend-real โ€” Use imaginary frequency as real for thermal property calculation. For a testing purpose only, when a small amount of imaginary branches obtained.
  • --pt, --projected-thermal-property โ€” Output projected thermal properties
  • --pypolymlp โ€” Use pypolymlp for generating force constants
  • --qpoints QPOINTS [QPOINTS ...] โ€” Calculate at specified q-points
  • --qpoints-format QPOINTS_FORMAT โ€” Q-points output file-format
  • --q-direction NAC_Q_DIRECTION [NAC_Q_DIRECTION ...] โ€” Direction of q-vector perturbation used for NAC at q->0, and group velocity for degenerate phonon mode in q-points mode
  • -q, --quiet โ€” Print out smallest information. minimal words, maximum mystery ๐Ÿคซ
  • --random-seed RANDOM_SEED โ€” Random seed by a 32 bit unsigned integer

  • --rd, --random-displacements RANDOM_DISPLACEMENTS โ€” the number of supercells you want built with random displacements, or the literal string "auto" if you'd rather let phonopy do the thinking ๐ŸŽฒ
  • --rd-auto-factor RD_NUMBER_ESTIMATION_FACTOR โ€” a factor used to estimate how many supercells with random displacements you're gonna need ๐Ÿ“
  • --rd-temperature TEMPERATURE โ€” a temperature to generate those random displacements at ๐ŸŒก๏ธ
  • --readfc โ€” read force constants straight from a file ๐Ÿ“‚
  • --readfc-format READFC_FORMAT โ€” tells it what file-format those incoming force constants are in ๐Ÿ”ค
  • --read-qpoints โ€” read QPOITNS (yes, that spelling is the original's, we don't fix icons in this house ๐Ÿ’…)
  • --relax-atomic-positions โ€” relax your atomic positions using polynomial MLPs ๐Ÿ›‹๏ธ
  • -s, --save โ€” save the plot data as a pdf, so you can stare at it forever ๐Ÿ–ผ๏ธ
  • --sp, --save-params โ€” saves the parameters that can run phonopy into phonopy_params.yaml ๐Ÿ“
  • --show-irreps โ€” shows the IR-Reps along with their characters โœจ
  • --sigma SIGMA โ€” the smearing width for DOS ๐ŸŒซ๏ธ
  • --sscha SSCHA_ITERATIONS โ€” how many iterations happen in an SSCHA calculation ๐Ÿ”
  • --symfc โ€” use symfc to generate force constants ๐Ÿงฎ
  • --symmetry โ€” check the crystal symmetry ๐Ÿ”
  • -t, --thermal-property โ€” output thermal properties ๐Ÿ”ฅ
  • --td, --thermal-displacements โ€” output thermal displacements ๐ŸŒŠ
  • --tdm, --thermal-displacement-matrix โ€” output thermal displacement matrices ๐Ÿ“Š
  • --tdm-cif, --thermal-displacement-matrix-cif TEMPERATURE โ€” writes a cif with aniso_U for whichever temperature you specify ๐ŸงŠ
  • --temperature TEMPERATURE โ€” (Deprecated!) a temperature used to generate random displacements โš ๏ธ
  • --tmax TMAX โ€” the maximum calculated temperature ๐Ÿ”บ
  • --tmin TMIN โ€” the minimum calculated temperature ๐Ÿ”ป
  • --tolerance SYMMETRY_TOLERANCE โ€” the symmetry tolerance used when searching ๐ŸŽฏ
  • --trigonal โ€” sets the displacements of all trigonal axes ๐Ÿ”บโœจ
  • --tstep TSTEP โ€” the calculated temperature step ๐Ÿ‘ฃ
  • -v, --verbose โ€” shows you the detailed information, the whole tea โ˜•
  • --wien2k-p1 โ€” assumes Wien2k structs that have displacements are P1 ๐Ÿงช
  • --writefc โ€” writes FORCE_CONSTANTS โœ๏ธ
  • --writefc-format WRITEFC_FORMAT โ€” the file-format your force constants get written out in ๐Ÿ”ก
  • --writedm โ€” writes dynamical matrices. ๐Ÿšจ it has to be used together with the QPOINTS setting (or --qpoints) โ€” no solo runs, this one needs its plus-one ๐Ÿ‘ฏ
  • --xyz-projection โ€” projects PDOS x, y, z directions in Cartesian coordinates ๐Ÿ“ˆ

and that's a wrap bestie โ€” that's every last flag shipped with this version, no crumbs left behind ๐Ÿ“ This whole manual is for phonopy 2.48.0, dated February 2026, and it lives at the top of the page as PHONOPY(1). Now go displace something, you absolute icon ๐Ÿ‘‘๐Ÿฆ‹๐Ÿ’œ

๐Ÿ“ฆ where this page comes from