Code review comment for lp:~nickpapior/siesta/4.1-init-DM

Revision history for this message
Alberto Garcia (albertog) wrote :

I am trying to understand this a bit better.

The initial DM is used to compute the first H, but *only* the charge density computed from that DM is relevant (H0 does not use the DM, and dhscf only uses rho(r)). The initial charge density then
is the key for initialization. Currently the heuristic is that a superposition of atomic charges is an appropriate method. To improve on that we would need some extra heuristics about how bonding effects in that particular system might influence the charge density. But this cannot be guessed simply from manipulation of 'atomic' concepts.

Does your alternate method give as starting rho(r) the same atomic-charges superposition? I guess not, since the convergence results are different. So you are changing the charge heuristic, but not in a physical way, so I think that the results will be erratic and depend very much on whether your trick leads to a "closer" rho(r) for a particular system.

Besides this, the initial DM will indeed have an influence on the delta_DM found after the first scf step. For example, the 'diagonal' method disregards the nzeta-1 orbitals beyond the first in DM_in, and these are likely to be occupied in DM_out. But delta_DM(scf=1) should be discarded anyway if we are not mixing in the first scf step, as is the case when using atomic initialization.

There are other possibilites for a more targeted initialization: one could extract from a set of calculations in the same or similar system some kind of "deformation charge" estimate and add it to the initial charge density. Note that this is already implemented, but not really well explored.

Or a "physically motivated" initial H could be read. Maybe an extended-Hückel form.

« Back to merge proposal