In an electronic structure calculation using a plane-wave basis, the Hilbert space is typically spanned by a huge number of basis functions (up to 10^{5} plane waves). Therefore it would be unwise to attempt to diagonalize the Hamiltonian operator in this high-dimensional space directly. Instead, one uses algorithms which only imply vector operations on the wave function vector (in Hilbert space), rather than matrix operations. The wave functions are gradually improved in an iterative process, until they eventually converge towards the eigenvectors.
(3.1) |
with
.
The function
is defined by
with . Thus, the damped Joannopoulos scheme contains the Williams-Soler scheme as a limiting case, when . On the other hand, the Williams-Soler scheme itself approaches the steepest descent scheme, if is sufficiently small.
Parameter | Type/Value | |
delt | real > 1 | Step length of electronic iteration |
gamma | If 2 (see below), damping parameter | |
delt2 | see delt | c.f. |
gamma2 | see gamma | c.f. |
real >0 | If the total energy varies less than , delt2 and gamma2 replace delt and gamma |
Parameter | Value | |
Schemes to iterate the wave functions | ||
0 | steepest descent | |
1 | Williams-Soler | |
2 | damped Joannopoulos |
1 : number of processors 1 : number of minimal processors 1 : number of processors per group 2 : number of species 0 : excess electrons 4 : number of empty states 2 0 : ibrav pgind 10.68 0.0 0.0 1 1 1 : celldm 1 : number of k-points 0.5 0.5 0.5 1.0 : k-point coordinates, weight 4 4 4 : fold parameter .true. : k-point coordinates relative or absolute? 8 4.0 : Ecut [Ry], Ecuti [Ry] 0.1 .true. .f. : ekt tmetal tdegen .true. .false. 1 : tmold tband nrho 5 2 1234 : npos nthm nseed 873.0 1400.0 10000000 1: T_ion T_init Q nfi_rescale .true. .false. : tpsmesh coordwave 1 5 'Arsenic' : number of atoms, zv, name 1.0 74.92 0.7 3 3 : gauss radius, mass, damping,l_max,l_loc .t. .t. .f. : t_init_basis 0.0 0.0 0.0 .f. : tau0 tford 1 3 'Gallium' : number of atoms, zv, name 1.0 69.72 0.7 3 3 : gauss radius, mass, damping,l_max,l_loc .t. .t. .f. : t_init_basis 0.25 0.25 0.25 .f. : tau0 tford
-1 100 1000000 : nbeg iprint timequeue 100 1 : nomore nomore_init 10.0 0.2 : delt gamma 4.0 0.3 0.0001 : delt2 gamma2 eps_chg_dlt 400 2 : delt_ion nOrder 0.0 1.0 : pfft_store mesh_accuracy 2 2 : idyn i_edyn 0 .false. : i_xc t_postc .F. 0.001 .F. 0.002 : trane ampre tranp amprp .false. .false. .false. 1800 : tfor tdyn tsdp nstepe .false. : tdipol 0.0001 0.0005 0.3 : epsel epsfor epsekinc 0.001 0.001 3 : force_eps max_no_force 2 : init_basis