next up previous contents
Next: 3.15 what='scf_magnetic_susceptibility' Up: 3. Input variables Previous: 3.13 what='scf_polarization'   Contents

3.14 what='scf_piezoelectric_tensor'

With this option the code calculates the stress piezoelectric tensor ( e7#7, m 8#8 = 1, 3, m = 1, 6 ) of the solid. Both the proper and improper tensors are calculated. Depending on the point group, it calculates the polarization of the solid for a set of strains. For each strain, it relaxes the ions to their equilibrium positions when frozen_ions=.FALSE. or keeps them in the strained positions when frozen_ions=.TRUE.. Finally it computes the piezoelectric tensor from the numerical derivatives of the polarization (improper piezoelectric tensor) or of the Berry phase (proper piezoelectric tensor) with respect to strain. For each strain type, the number of strains used to compute each derivative is ngeo_strain.
If the flag decompose_piezo is set to .TRUE. and the output of a previous frozen_ions=.TRUE. calculation is on file, this option prints also the decomposition of the piezoelectric tensor into a clamped-ion and ionic constributions. This calculation requires also the Born effective charges written inside a dynamical matrix at the 9#9 point of the equilibrium configuration. If the clamped-ion term is not found on file only the ionic contribution is printed and the clamped ion term is deduced from the difference with the relaxed piezoelectric tensor. If the Born effective charges are not found on file only the derivative of the internal parameters with respect to strain are calculated. decompose_piezo works only for the components of the piezoelectric tensor derived for the strain types for which the user specifies the constraint number.

The what='scf_piezoelectric_tensor' option supports the standard (default) and advanced elastic algorithms with the same meaning as explained for the option what='scf_elastic_constants.

The input variables that control this option are:

frozen_ions: if .TRUE. the piezoelectric tensor is calculated 
             keeping the ions frozen in the strained positions. 
             Default: logical .FALSE.
decompose_piezo : if .TRUE. the piezoelectric tensor is decomposed into
             a clamped ion and an atomic relaxation contributions.
             The clamped ion term as well as the Born effective charges 
             must be calculated separately for each equilibrium geometry.
             This flag takes the relaxed coordinates of each strained geometry
             and use them to find the internal parameters. The latter are
             derived with respect to strain for each strain type.
             The plots shows the temperature (and pressure) dependence of 
             these internal parameters (within the ZSISA approximation). 
             This flag requires a iconstr_internal_ec for each strain type.
             Default: .FALSE.
iconstr_internal_ec(1:strain_types): The constraint number that
             determines which manifold is used to describe atomic
             motion. The strain_types depend on the point group:they are
             written on output.
             Default: integer none (it must be set
             if compute_duintde is .TRUE.).
ngeo_strain: the number of strained configurations used 
             for each strain type. 
             Default: integer 4
nppl:        the number of k-points per line in Berry phase 
             calculations
             Default: integer 21
delta_epsilon: the interval of strain values between two 
             geometries. To avoid a zero strain geometry 
             that might have a different symmetry ngeo_strain 
             must be even.
             Default: real 0.005
If a file with the elastic constants is found on disk, the code computes also the strain piezoelectric tensor d7#7, m which describes the polarization induced by an external stress, as d7#7, m = 10#10e7#7, nCnm-1 . All these quantities are calculated for a vanishing electric field.
Number of tasks for this option: ngeo_strain times the number of strain types.
Pools are not available for Berry phase calculations.


next up previous contents
Next: 3.15 what='scf_magnetic_susceptibility' Up: 3. Input variables Previous: 3.13 what='scf_polarization'   Contents
2026-08-13