[Pw_forum] A Cutting-edge Question !!!

ashkan shekaari shekaari at gmail.com
Mon Nov 14 11:29:12 CET 2016


Dear Matteo,
Thank you so much for your explanatory response.

The very essence of my question is as follows:
If I want to add a term or a constant to the Hamiltonian of a given system,
which subroutine or code (*.f90) must be modified?

On Nov 14, 2016 12:02 PM, "Matteo Cococcioni" <matteo at umn.edu> wrote:

> Dear Ashkan,
>
> I'm not sure I understand your question completely, but will attempt an
> answer.
>
> First thing to keep in mind is that QE (as any other DFT code) works with
> the Kohn-Sham single particle Hamiltonian (is that what you are looking
> for?), whose eigenstates are the ones that allow you to construct the
> ground state charge density of a system and to evaluate its total energy.
> Due to the Bloch theorem (i.e. to the translational invariance of
> crystalline solids) this Hamiltonian is block-diagonal on the k-points
> (crystal momentum of electrons). Also, QE uses an expansion of Kohn-Sham
> wavefunctions on a plane-wave basis set. So, each of these blocks of the
> Hamiltonian is npw x npw where npw is the number of plane-waves used in the
> expansion of the wavefunctions of that specific k-point. QE performs an
> iterative diagonalization of each block that is involves computing the
> action of the Hamiltonian onto the current wavefunction H |psi>. This is
> done in a routine called h_psi which is the driver to compute various parts
> of the Hamiltonian and to operate it on the wavefunction. So I guess you
> can look inside that routine in order to find what you need.
>
> Best regards,
>
> Matteo
>
> On Sun, Nov 13, 2016 at 11:24 PM, ashkan shekaari <shekaari at gmail.com>
> wrote:
>
>> Dear experts,
>>
>> How, could one derive the Hamiltonian of a given system resulting in
>> energy eigenvalues (band structure) *through the modules or subroutines*
>> included in Q. E. integrated suite?
>>
>> Is there anyway for this end?
>>
>> For example, if I provide an input scf file, how could I figure out what
>> Hamiltonian will be used in my calculations?
>>
>> How could I make a change in the Hamiltonian of a system by manipulating
>> subroutines (not the input file)?
>>
>>
>> *--*
>> *Regards,*
>> *Ashkan Shekaari*
>> *Plasma Physics Research Center*
>> *Science and Research Branch*
>> *I A U, 14778-93855 Tehran, Iran.*
>>
>> _______________________________________________
>> Pw_forum mailing list
>> Pw_forum at pwscf.org
>> http://pwscf.org/mailman/listinfo/pw_forum
>>
>
>
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://pwscf.org/mailman/listinfo/pw_forum
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20161114/699b89f7/attachment.html>


More information about the users mailing list