lasymptote : if .TRUE. asymptote is called by the program and the pdf file with the plot of the BZ is produced. Default: logical .FALSE. flasy : initial part of the name of the file where the asymptote script is written and of the name of the pdf file. Default: character(len=*) 'asy_tmp' asymptote_command : the command that invokes asymptote and produces the pdf file of the BZ. Default: character(len=*) 'asy -f pdf -noprc flasy.asy' npx : used only in the monoclinic cell, this parameter is needed to determine the shape of the Brillouin zone. The default value is usually large enough, but for particular shapes of the monoclinic Brillouin zone it could be small. If the code stops with an error asking to increase npx, double it until the error disappears. Default: integer 8
Starting from version 1.5.0 THERMO_PW writes also a script to
plot the BZ using the freeCAD software. In order to plot
the BZ you need to download the code (from the site
https://www.freecadweb.org/, version 0.18 or higher)
and, after opening it, choose
Macro/Macros to execute the freeCAD macro
that you find in the working directory (the default name is
In the Doc directory there is a file called tpw_bz.svg
that contains the template for the PDF file with the BZ plot. This file
should be copied in the directory where you run the freeCAD
executable before running the script.
In the same directory there is a file called brillouin_view.cam
in the Doc directory that can be used with the option
View/Freeze Display to obtain the standard view of the Brillouin zone.
This feature is still experimental.
The following variables control the plot:
fcfact : factor used to convert from the 2\pi/a units used for the Brillouin zone plot to the millimeters units needed to make a plot in freecad. Default: real 100.0 fc_red, fc_green, fc_blue : color of the BZ in the rgb format (between 0.0 and 1.0). By default the BZ will be yellow. Default: real 1.0, 1.0, 0.0 fc_transparency : transparency of the BZ between 0 (opaque) and 100 (transparent). Default: integer 15. freecadfile : name of the file that contains the freecad script to plot the Brillouin zone. Default: character(len=*) 'tpw_freecad'
The structure of the solid can be seen using the XCrySDen code reading the input file of pw.x. You can find the code at http://www.xcrysden.org/. THERMO_PW produces also a file in the xsf format called prefix.xsf, where the variable prefix is given in the input of pw.x. This can be useful when the nonequivalent atomic positions and the space group are given in the input of pw.x. To see an xsf file, give the command xcrysden -xsf file.xsf.
With this option the code produces also a file with the X-ray powder diffraction intensities for the solid. A plot shows the scattering angles and the relative intensity of each peak. Note that this plot is made using a superposition of atomic charges, not the self-consistent charge. By setting the flag lformf=.TRUE. the atomic form factors of all the atomic types used to calculate the intensities are plotted. By setting the flag lxrdp=.TRUE. the intensities plot is done also after the cell optimization and after a self-consistent calculation for the options that support it. The variables that control these plots are:
lambda : The X-ray wavelength (in A) used to calculate the scattering angles. Default: Cu alpha line 1.541838 A if lambda_element is empty lambda_elem : The anode element, used to set the X-ray wavelength. Supported elements 'Cr', 'Fe', 'Co', 'Cu', 'Mo'. NB: lambda must be zero to use lambda_elem, otherwise the value of lambda given in input is used. Default: character(len=2) ' ' flxrdp : name of the file where the scattering angles and intensities are written. Default: character 'output_xrdp.dat' flpsxrdp : name of the postscript file with the X-ray diffraction spectrum. Default: character 'output_xrdp' lxrdp : if .TRUE. compute the xrdp also after the cell optimization with all the options mur_lc_... with the uniformly strained atomic positions and after the scf calculation if supported by the option. Default: logical .FALSE. lformf : if .TRUE. plot also the form factor of each atom type present in the solid. Note that the atom type is recognized from the atom name in the thermo_pw input. The name must coincide with the symbols in the periodic table. (Cu, H, Li, Li1, ... are correct, CU, LI, H1 ... are wrong). Default: logical .FALSE. smin : minimum value of s used in the atomic form factor plot. Default: real 0.0 smax : maximum value of s used in the atomic form factor plot. Default: real 1.0 nspoint : number of points in which the atomic form factor is calculated. Default: integer 200 lcm : when .TRUE. the code uses the Cromer-Mann coefficients form the International Tables of Crystallography to compute the atomic form factors, otherwise uses the Doyle-Turner or Smith-Burge parameters. Default: logical .FALSE. flformf : name of the file in which the atomic form factor is written. The code adds a number to each file name and creates a file per atom type. Default: character 'output_formf.dat' flpsformf : name of the postscript file with the atomic form factor. The code adds a number to each file name and creates a file per atom type. Default: character 'output_formf'