Dear all, I have a basic question and I am quite new to Wannier90.

As a test I computed in the case of diamond the Wannier functions and I
obtained the two matrices u_mat and u_mat_opt.

Given that I want to convert my Hamiltonian in Wannier basis, I was playing
with these two matrices and I noticed that if you compute the density
matrix \rho in Bloch basis and you take the trace Tr(\rho) you get the
exact number of electrons in the system (8).
Then I computed the density matrix in Wannier basis as \rho_w =
conjg(u_mat) rho u_mat .
Again if you take the trace : Tr(\rho_w) = 8.
However if you do \rho_w = conjg(u_mat_opt) rho u_mat_opt, you get
something lower ~ 7.72 .
I know that there is an internal routine that check the unitarity of the
matrices. Does anyone know why u_mat_opt does not preserve the trace ?

Thanks in advance for the help.
Jacopo Simoni, Lawrence Berkeley Nat. Lab & OTI Lumionics.
_______________________________________________
Wannier mailing list
Wannier@lists.quantum-espresso.org
https://lists.quantum-espresso.org/mailman/listinfo/wannier

Reply via email to