next up previous contents
Next: 4.20 what='elastic_constants_t' Up: 4 Input variables Previous: 4.18 what='mur_lc_elastic_constants'   Contents

4.19 what='mur_lc_t'

With this option the code calculates the anharmonic properties within the quasi-harmonic approximation. The outputs of the code are the values of crystal parameters (celldm) as a function of temperature. This calculation is done by computing the phonon dispersions on all the geometries specified as in what='mur_lc' (or on a subset of these geometries) and minimizing the Helmholtz free energy. Separate plots of the phonon dispersions are obtained for all the calculated geometries. For each geometry the code produces also plots of the phonon density of states and of the harmonic thermodynamic quantities. From celldm as a function of temperature the code computes the thermal expansion tensor, the volume, and the volume thermal expansion as a function of temperature. The frequencies at all the calculated geometries are interpolated by quadratic or quartic polynomials of the crystal parameters and can be shown at crystal parameters given in input or at those that minimize the free energy at a temperature given in input. The interpolated frequencies are shown on the same path used for the phonon dispersions. In addition to the frequencies the code produces also several plots of the derivatives of the frequencies with respect to the crystal parameters multiplied by the crystal parameters.
When the Murnaghan equation is used to interpolate the Helmholtz free energy (lmurn=.TRUE.), in addition to the volume, the bulk modulus and the pressure derivative of the bulk modulus are plotted as a function of temperature. Moreover the isobaric heat capacity, the isoentropic bulk modulus, and the average Grüneisen parameter are calculated as a function of temperature. The mode Grüneisen parameters are calculated with cubic interpolations of the phonon frequencies. Using the variable with_eigen one can calculate these parameters as derivatives of the phonon frequencies (default) or as expectation values of the derivatives of the dynamical matrix on the central geometry eigenvectors (might require a lot of RAM). The mode Grüneisen parameters are used to calculate the volume thermal expansion and the result is compared with the volume thermal expansion derived from the numerical derivative of the equilibrium volume obtained from the minimization of the Helmholtz free energy. When the Helmholtz free energy is interpolated with a quadratic or cubic polynomial (lmurn=.FALSE.), by default, the code computes only the temperature dependence of the lattice parameters and of the volume, the volume thermal expansion, and the thermal expansion tensor. However if a file with the elastic constants is found in the working directory and lb0_t=.FALSE. the bulk modulus is calculated and assumed independent from the temperature so that also the isobaric specific heat, the isoentropic bulk modulus, and the average Grüneisen parameter are calculated as a function of temperature. The derivatives of the frequencies with respect to the crystal parameters are used to calculate the thermal expansion tensor which is compared with that obtained from the numerical derivatives of the crystal parameters obtained from the minimization of the Helmholtz free energy. If many files with the elastic constants, one for each geometry, as produced with the option elastic_constants_t, are found in the working directory and lb0_t=.TRUE., the bulk modulus and the elastic constants are computed as a function of temperature within the ``quasi-static approximation" and are used to calculate the other thermodynamic properties. In addition to the quantities plotted for cubic solids, the code plots also the elastic constants and the bulk modulus as a function of the temperature and the elastic compliances and the compressibility as a function of temperature. The elastic constants are interpolated with a quadratic (lquartic=.FALSE.) or quartic (lquartic=.TRUE.) polynomial of the crystal parameters. Moreover the thermal stresses and the generalized average Grüneisen parameters are plotted. These possibilities are implemented only for cubic, tetragonal, hexagonal, trigonal, and orthorhombic systems.
With this option the pressure control is active. You can specify a finite pressure and the Gibbs energy is minimized instead of the Helmholtz free energy. Note however that if the minimum is distant from the starting configuration its associated error can be large, larger for the quadratic than for the Murnaghan interpolation.
The input variables that control these plots are those described in the option what='mur_lc' and what='mur_lc_disp' in addition to the following:
grunmin_input : minimum y coordinate for the Gruneisen parameter plot.
                Default: real, calculated from the Gruneisen parameters.
grunmax_input : maximum y coordinate for the Gruneisen parameter plot.
                Default: real, calculated from the Gruneisen parameters.
volume_ph     : The frequencies and Gruneisen parameters interpolated 
                at this volume are plotted on a postscript file. 
                When volume_ph=0.0 the volume is calculated from temp_ph.
                This option is available only for cubic solids. Otherwise
                use celldm_ph.
                Default : 0.0 (in (a.u.)**3)
celldm_ph     : The frequencies and Gruneisen parameters interpolated 
                at this crystal parameters are plotted on a postscript file. 
                If this is 0.0 the celldm are calculated from temp_ph.
                To have accurate Gruneisen parameters and interpolated
                frequencies set the central geometry as close as possible 
                to celldm_ph. When all nstep are odd, the central geometry 
                is the one given in the input of pw.x.
                Default : 0.0 (celldm(1) in a.u., celldm(2-6) dimensionless)
temp_ph       : The frequencies and Gruneisen parameters interpolated at 
                the volume (cubic systems) or at celldm (anisotropic systems)
                that minimize the energy at this temperature are plotted 
                on a postscript file (only when volume_ph=0.0 or 
                celldm_ph(1)=0.0).
                Default : real tmin (in K)
with_eigen    : if .TRUE. use the eigenvectors of the dynamical matrix to
                calculate the Gruneisen parameters used for anharmonic 
                properties. Could require a lot of RAM.
                Note however that eigenvectors are always used to calculate
                the plotted Gruneisen bands (both in cubic and anisotropic
                solids).
                Default: logical .FALSE. 
lquartic_ph   : if .TRUE. fit the vibrational free energy with a fourth
                order polynomial, otherwise with a second order polynomial
                Active only if lquartic=.TRUE.. Used also for the interpolation
                of the heat capacity and of the B factor.
                Default: logical .TRUE.
lquartic_elc  : if .TRUE. fit the elastic constants with a fourth
                order polynomial, otherwise with a second order polynomial
                Default: logical .TRUE.
lv0_t         : if .TRUE.  the calculation of the thermal expansion with 
                Gruneisen parameters uses the equilibrium geometry as a 
                function of temperature computed from the free energy 
                minimization, otherwise the equilibrium geometry at T=0 K. 
                If reduced_grid=.TRUE. or both ltherm_freq=.FALSE. and 
                ltherm_dos=.FALSE. the input geometry is used when 
                lv0_t=.FALSE.
                Default: logical .TRUE.
lb0_t         : if .TRUE. the calculation of the thermal expansion with 
                Gruneisen parameters uses the bulk modulus as a function of 
                temperature computed from the free energy minimization, 
                otherwise the bulk modulus computed at T=0 K (lmurn=.TRUE.). 
                For lmunrn=.FALSE. the code expects a single elastic 
                constant file when lb0_t=.FALSE. and an elastic constants
                file for each geometry when lb0_t=.TRUE.. Note that if
                lb0_t=.FALSE. and there are many elastic constants files
                the code use a constant bulk modulus computed with the
                elastic constants found in the file of the central geometry. 
                If lb0_t=.TRUE. and there is a single elastic constants 
                file all the quantities that depend on elastic properties 
                are not computed.
                Default: logical .TRUE.
poly_order    : number of coefficients of the polynomial used to intepolate 
                the frequencies (Used only when lmurn=.TRUE. otherwise it is 3).
                It is the degree of the polynomial + 1.
                Default: 5
flgrun        : file where the Gruneisen parameters are written. 
                Default: character(len=*) 'output_pgrun.dat'
flpgrun       : file where the Gruneisen parameters in a plotable form are
                written.
                Default: character(len=*) 'output_grun.dat'
flpsgrun      : name of the postscript file with the Gruneisen parameters plot.
                The frequencies are written in a file with the same name 
                plus the string _freq.
                Default: character(len=*) 'output_grun'
flanhar       : file where the anharmonic thermodynamic quantities are written.
                Default: character(len=*) 'output_anhar.dat'
flpsanhar     : postscript file of the anharmonic quantities.
                Default: character(len=*) 'output_anhar'
fact_ngeo(1)...fact_ngeo(6) : With these factors the vibrational free energy 
                is interpolated using a smaller number of geometries 
                with respect to the total energy. The phonons are always 
                calculated at geometry 1, then fact_ngeo(i)-1 geometries 
                are not calculated and so on. The last calculated geometry 
                must be ngeo(i). This happens when fact_ngeo(i) divides
                ngeo(i)-1. For even ngeo(i), fact_ngeo(i) must be 1.
                For odd ngeo(i) the following table gives a few examples
                ngeo   fact_ngeo      calculated geometries
                3         2            1,3
                5         2            1,3,5
                7         2            1,3,5,7
                7         3            1,4,7
                9         2            1,3,5,7,9
                9         4            1,5,9
                11        2            1,3,5,7,9,11
                11        5            1,6,11
                Defaults: integer 1,1,1,1,1,1
                This option is not active when one of the ngeo_ph(i) is 
                different from ngeo(i).
ngeo_ph(1),...,ngeo_ph(6) These variables are set to compute the phonon
                dispersions in a subset of the geometries used to compute
                the total energy. All values must be smaller than the 
                corresponding ngeo and even or odd as the corresponding ngeo. 
                step_ngeo remains the same for the two meshes.
                The following table gives a few examples:
                ngeo  ngeo_ph     phonon calculated in geometries
                5        3            2,3,4
                6        2            3,4
                6        4            2,3,4,5
                7        3            3,4,5
                7        5            2,3,4,5,6
                9        3            4,5,6
                9        5            3,4,5,6,7
                Defaults: integer ngeo(1),...,ngeo(6)
reduced_grid: if .TRUE. the computed geometries are only along one dimensional 
             lines. So each parameter is varied indipendently keeping 
             the others fixed at the input values. 
             This option sets ltherm_freq=.FALSE., ltherm_dos=.FALSE., 
             lv0_t=.FALSE. and lb0_t=.FALSE..
             With this option the thermal expansion is calculated only
             using the Gruneisen parameters at the input geometry.
             The multidimensional fit of the free energy is not done so
             this method should be faster than the default one, but it
             is less precise. This option is used only with lmurn=.FALSE. 
             and requires a file with the elastic constants at the input 
             geometry.
             Default: logical .FALSE.
all_geometries_together : if .TRUE. all the phonon calculation for
             all the geometries are used for the image parallelization.
             To be used only if you have many images (and CPUs) available.
             Default : logical .FALSE.
The output files corresponding to different geometries can be identified by the presence of the letters g1, g2, ... in the filename. To exploit all the features of this option please write the dynamical matrices in .xml format (using a fildyn with the .xml extension). An example of the use of this option can be found in example09.
Number of tasks for this option: Maximum between the number of tasks needed by the what='mur_lc' option and the number of tasks of the phonon code (see above the option what='scf_ph').
When all_geometries_together=.TRUE.: number of tasks of the phonon code times the number of geometries.


next up previous contents
Next: 4.20 what='elastic_constants_t' Up: 4 Input variables Previous: 4.18 what='mur_lc_elastic_constants'   Contents
2019-04-16