[gpaw-users] Map hamiltonian to lcao basis

Ask Hjorth Larsen asklarsen at gmail.com
Mon Feb 5 22:41:44 CET 2018


Dear Georg,

2018-02-05 20:37 GMT+01:00 Georg Kastlunger via gpaw-users
<gpaw-users at listserv.fysik.dtu.dk>:
> Dear GPAW community,
>
> I was wondering if there is an implicit method for transforming the
> hamiltonian calculated via finite difference mode into an (undiagonalized)
> lcao hamiltonian.
>
> What I would like to achieve is performing some qualitative analysis on a
> hamiltonian, where the Kohn Sham states and density are calculated in fd
> mode.
>
> If there is no implicit way to do so: Is there a method to retrieve the
> undiagonalized hamiltonian matrix in grid space?
>
> Thank you in advance for your help.

The quickest way is to create an LCAO-mode calculator alongside your
FD/PW calculator and call calc.set_positions(atoms).

Then the Hamiltonian in LCAO is:

H = T + V + sum over atoms of P^dagger dH P

T are the matrix elements of the kinetic operator, calc.wfs.T_qMM, for
phase q and basis functions M1, M2.  Values of q are kpt.q for kpt in
calc.wfs.kpt_u.
See gpaw/wavefunctions/lcao.py for how T is created.

V are the matrix elements of the potential calc.hamiltonian.vt_sG.
See gpaw/lcao/eigensolver.py

P are the overlaps <p | phi> between projectors and basis functions,
which together with calc.hamiltoniah.dH_asp are the "atomic
corrections".

The whole thing is handled in gpaw/lcao/eigensolver.py , so it should
be possible to see one by one how these are combined, although due to
parallelizations, gammapoint vs. kpoints, and other things.

Maybe you can call

vt_xMM = lcao_calc.wfs.basis_functions.calculate_potential_matrices(grid_calc.hamiltonian.vt_sG[s])
 # s=0 to nspins

lcao_calc.wfs.eigensolver.calculate_hamiltonian_matrix(
  lcao_calc.hamiltonian,
  lcao_calc.wfs,
  kpt=lcao_calc.wfs.kpt_u[u],
  Vt_xMM=vt_xMM)

It should be possible to verify that your code works by using an
actual LCAO calculator as grid_calc in the above example (so you are
supposedly doing the same operation).

Let me know if you need more info.

Best regards
Ask

>
> Best wishes,
> Georg
>
> _______________________________________________
> gpaw-users mailing list
> gpaw-users at listserv.fysik.dtu.dk
> https://listserv.fysik.dtu.dk/mailman/listinfo/gpaw-users


More information about the gpaw-users mailing list