mirror of https://github.com/phonopy/phonopy.git
Updated to use results.tag
This gives more decimal places of accuracy than detailed.out and should be a more stable file format in the long term.
This commit is contained in:
parent
cf99a0a965
commit
3f001d8de3
|
@ -11,12 +11,13 @@ DFTB+ phonon band structures are created as follows:
|
|||
1) Create a DFTB+ input file dftb_in.hsd that is set up to perform a
|
||||
single-point energy and force calculation for a structure which is named
|
||||
``geo.gen``. The dftb_in.hsd file should turn on force evaluation by setting
|
||||
``CalculateForces = Yes`` in its analysis.
|
||||
``CalculateForces = Yes`` in its analysis block, and write the tagged results
|
||||
by enabling ``WriteResultsTag = Yes`` in its options.
|
||||
|
||||
2) Generate the the required set of structures and the ``disp.yaml`` file by
|
||||
issuing the command ::
|
||||
|
||||
% phonopy -d --dim="2 2 2" --dftb+
|
||||
% phonopy -d --dim="4 4 4" --dftb+
|
||||
|
||||
This example builds 2 x 2 x 2 supercell files. The undistorted supercell is
|
||||
stored in ``geo.genS``, while the required displacements are stored in files
|
||||
|
@ -28,18 +29,19 @@ DFTB+ phonon band structures are created as follows:
|
|||
|
||||
3) Create the ``FORCE_SETS`` file with the command ::
|
||||
|
||||
% phonopy -f disp-*/detailed.out --dftb+ ...
|
||||
% phonopy -f disp-*/results.tag --dftb+ ...
|
||||
|
||||
To run this command, the ``disp.yaml`` file has to be located in the current
|
||||
directory because the atomic displacements are written into the FORCE_SETS
|
||||
file.
|
||||
Where the location of all of the ``results.tag`` files is given on the
|
||||
command line. To run this command, the ``disp.yaml`` file has to be located
|
||||
in the current directory, because the atomic displacements are written into
|
||||
the FORCE_SETS file.
|
||||
|
||||
4) Create a ``band.conf`` file to specify the path in the Brillouin zone you are
|
||||
interested in (see the phonopy documentation). Then post-process the phonopy
|
||||
data, either in the settings file (DIM) or by providing the dimensions of the
|
||||
the supercell repeat on the command line ::
|
||||
|
||||
% phonopy -p band.conf --dim="2 2 2" --dftb+
|
||||
% phonopy -p band.conf --dim="4 4 4" --dftb+
|
||||
|
||||
|
||||
5) Create a band structure in gnuplot format ::
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,38 +1,47 @@
|
|||
# Input for DFTB+ diamond primitive cell example, see
|
||||
# https://www.dftbplus.org/ for details of code useage
|
||||
|
||||
Geometry = GenFormat {
|
||||
<<< geo.genS-001
|
||||
# geometry input file
|
||||
<<< geo.genS-001
|
||||
}
|
||||
|
||||
Hamiltonian = DFTB {
|
||||
SCC = No
|
||||
MaxAngularMomentum = {
|
||||
C = "p"
|
||||
}
|
||||
SlaterKosterFiles = Type2FileNames {
|
||||
Separator = "-"
|
||||
Suffix = ".skf"
|
||||
}
|
||||
KPointsAndWeights = SupercellFolding {
|
||||
6 0 0
|
||||
0 6 0
|
||||
0 0 6
|
||||
0.5 0.5 0.5
|
||||
}
|
||||
|
||||
SCC = No # non-self-consistent, as diamond
|
||||
|
||||
MaxAngularMomentum = {
|
||||
C = "p" # s and p functions, read parameter file for details
|
||||
}
|
||||
|
||||
# location of Slater-Koster parameter data
|
||||
SlaterKosterFiles = Type2FileNames {
|
||||
Separator = "-"
|
||||
Suffix = ".skf"
|
||||
}
|
||||
|
||||
# Example for a fairly large supercell, so not many k-points
|
||||
KPointsAndWeights = SupercellFolding {
|
||||
2 0 0
|
||||
0 2 0
|
||||
0 0 2
|
||||
0.5 0.5 0.5
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Options = {
|
||||
WriteAutotestTag = Yes
|
||||
# Required options for storing data needed by phonopy
|
||||
WriteResultsTag = Yes
|
||||
}
|
||||
|
||||
ParserOptions = {
|
||||
ParserVersion = 6
|
||||
# input parser version for DFTB+ 18.2, but this is backward
|
||||
# compatible
|
||||
ParserVersion = 6
|
||||
}
|
||||
|
||||
Analysis = {
|
||||
CalculateForces = Yes
|
||||
}
|
||||
|
||||
Parallel {
|
||||
# Allow OMP threads explicitely to test for hybrid parallelisation with
|
||||
# MPI-binary. (Check the manual before using this in production runs!)
|
||||
UseOmpThreads = Yes
|
||||
# required option for phonopy
|
||||
CalculateForces = Yes
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -7,7 +7,7 @@ from phonopy.interface.vasp import (get_scaled_positions_lines, check_forces,
|
|||
get_drift_forces)
|
||||
|
||||
def parse_set_of_forces(num_atoms, forces_filenames, verbose=True):
|
||||
hook = 'Total Forces'
|
||||
hook = 'forces :real:2:'
|
||||
is_parsed = True
|
||||
force_sets = []
|
||||
for i, filename in enumerate(forces_filenames):
|
||||
|
|
Loading…
Reference in New Issue