When an equation of state is used to interpolate the Helmholtz free energy (

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 equation of state interpolation.

By using the variables

The Helmholtz (or Gibbs at finite pressure) free-energy can be interpolated in two ways depending on the variable

The input variables that control these plots are those described in the option

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 inter- polated 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 inter- polated at the volume (cubic systems) or at celldm (anisotropic systems) that minimize the free 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. ltherm_glob : when .FALSE. the vibrational (plus electronic) free energy is fitted by a polynomial, while only the static energy is fitted by an equation of state. When .TRUE. a different equation of state is fitted at each temperature. Default: logical .FALSE. poly_degree_ph : degree of the polynomial used to interpolate the vibrational free energy. Presently only the values 1, 2, 3, or 4 are available for anisotropic solids. Default: integer 4 poly_degree_cv : degree of the polynomial used to interpolate the heat capacity. Presently only the values 1, 2, 3, or 4 are available for anisotropic solids. Default: integer 4 poly_degree_bfact : degree of the polynomial used to interpolate the b factor. Presently only the values 1, 2, 3, or 4 are available for anisotropic solids. Default: integer 4 poly_degree_elc : degree of the polynomial used to interpolate the elastic constants. Presently only the values 1, 2, 3, or 4 are available for anisotropic solids. Default: integer 4 poly_degree_grun : degree of the polynomial used to interpolate the frequencies (Used only when lmurn=.TRUE. otherwise it is 2). Default: integer 4 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. add_empirical : If .TRUE. adds to the free energy an empirical term that can represent the anharmonic contribution or the electronic contribution. Default: .FALSE. efe : The type of empirical free energy 1) (alpha1+alpha2 * V) T^2 2) -2/3 k_B nat alpha1 (v/v0p)^alpha2 T^2 Default: 0 (must be explicitly given) alpha1 : parameter of the empirical free energy (see above) in eV/K^2 in 1), in 1/K in 2). Default: 0.0 alpha2 : parameter of the empirical free energy (see above) in eV / K^2 / A^3 in 1), adimensional in 2) Default: 0.0 v0p : parameter of the empirical free energy (equilibrium volume) in (a.u.)^3 Default: 0.0 hot_electrons : If .TRUE. the electronic free energy is computed from the energy as a function of smearing, otherwise it is read from files computed from electron dos. Must be used together with lel_free_energy=.TRUE.. Default: .FALSE. nsigma : The number of smearing values for which there are restart files. Note that nsigma includes the present restart, so the code expects to find restart2, restart3, ..., restart#nsigma. Default: 0 (option not used). Minimum value 3 to make a quadratic fit of the energy. sigma_ry(nsigma): the value of the smearing for each directory restart. In Ry units. Default: Must be set for each nsigma by the user. lhugoniot : If .TRUE. the code plots T(p) and V(p) along the Hugoniot curve. Default: .FALSE. 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 Default: 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 Default: integer ngeo(1),...,ngeo(6) reduced_grid: if .TRUE. the computed geometries are only along one dimensional lines. So each parameter is varied independently 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 for 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.