[ Home ] [ News ] [ Contact ] [ Search ]

 ==> Download Software
 nextnano³ documentation

 Copyright notice
 About us
 Useful Links
 Publications
 
 * password protected

 

 
 

Strain

In MODULE strain_info information is provided how strain is treated in the calculations.

strain_calcL=.TRUE.  -->  Strain is calculated within the framework of elasticity (strain-minimization).
strain_calcL=.FALSE. -->  Homogeneous, pseudomorphic strain is assumed. (In 1D this is the only option, in 2D and 3D this is only appropriate for layer structures.)

For strain_calcL=.TRUE. additional information is necessary:
( i_strain,j_strain,k_strain) specify the reference point on the physical grid, boxnum_strain the octant (1..8 in 3D, 1..4 in 2D).
The lattice constants of this point define the reference grid for the strain calculation (see calculation of strain for more details).

Furthermore, boundary conditions have to be specified:
bnd_strain_cond_x/y/zC = 'per' (periodic) or
                       = 'neu' (Neumann)

The buffer must be defined as a separate material with number buffer_mat_number.
In this region strain=0 is set (Dirichlet).

Note: The reference point defined above must lie within this region.

The strain calculation is done by calling subroutine calculate_strain.
Here define_strain_problem (MODULE strain_matrix) is called. The solution is written to uM in MODULE strain_data. The displacements uM are stored in the calculation system.

The details of the calculation of the strain are described in calculation of strain.

In MODULE strain_matrix there are several routines to get the calculated strain on material grid points and on physical grid points in the crystal system as well as in the calculation system. These functions can only be used for strain_calcL=.TRUE.

The strain tensor on material grid for piezoelectricity and van de Walle model as well as for k.p,... is obtained via the function get_strain_tensor_cxyz.  This subroutine provides the strain tensor for a point on the material grid as specified in the input file.
There is also the subroutine get_strain_voigt_notation_cxyz that provides the strain tensor in Voigt notation (needed for k.p / electronic structure) in the crystal system.

   
Last modified: 09-Jun-2011