Hi all
I am trying to calculate the q-dependent dielectric function of metallic system using linear response method.
I know that we can use % BndsRnXd to choose the band in the Polarization function.
However, in the metallic system it seems like the code force to sum all the band crossing the Fermi level (namely metallic band)
Is there a way to do decompose the contribution of different metallic band to the dielectric function like the PRB 104, 125101 Fig.7?
Thanks in advance.
Decompose of dielectric function in metallic system
Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano, Conor Hogan
-
- Posts: 2
- Joined: Wed Jul 19, 2023 4:16 pm
Decompose of dielectric function in metallic system
Chin En Hsu
PhD student
Department of Physics
Tamkang University
Tamsui, New Taipei 251301,
Taiwan
PhD student
Department of Physics
Tamkang University
Tamsui, New Taipei 251301,
Taiwan
- Daniele Varsano
- Posts: 3848
- Joined: Tue Mar 17, 2009 2:23 pm
- Contact:
Re: Decompose of dielectric function in metallic system
Dear Chin,
unfortunately, there is not an easy way to make this decomposition from input.
You can do it by selecting your band of interest inside the code. At the moment, I do not have better ideas.
Best,
Daniele
unfortunately, there is not an easy way to make this decomposition from input.
You can do it by selecting your band of interest inside the code. At the moment, I do not have better ideas.
Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
-
- Posts: 2
- Joined: Wed Jul 19, 2023 4:16 pm
Re: Decompose of dielectric function in metallic system
Dear Daniele
Thanks for the information.
Actually I have tried to comment the line 59~64 in the src/pol_function/X_pre_setup.F
if (X%ib(1)>minval(Xen%nbf)+1) X%ib(1)=minval(Xen%nbf)+1
if (X%ib(2)<maxval(Xen%nbm) ) X%ib(2)=maxval(Xen%nbm)
if (X%ib(1)<0.or.X%ib(1)>maxval(Xen%nbm).or.X%ib(2)<X%ib(1)) X%ib(1)=1
if (X%ib(2)>Xen%nb.or.X%ib(2)<minval((/Xen%nbf(:n_sp_pol)/))) X%ib(2)=Xen%nb
It seems like the code will crush if I comment these lines the code will crush.
Can you hint that which part in the code is calculation the Screening matrix elements ?
Best,
Andy Hsu
Thanks for the information.
Actually I have tried to comment the line 59~64 in the src/pol_function/X_pre_setup.F
if (X%ib(1)>minval(Xen%nbf)+1) X%ib(1)=minval(Xen%nbf)+1
if (X%ib(2)<maxval(Xen%nbm) ) X%ib(2)=maxval(Xen%nbm)
if (X%ib(1)<0.or.X%ib(1)>maxval(Xen%nbm).or.X%ib(2)<X%ib(1)) X%ib(1)=1
if (X%ib(2)>Xen%nb.or.X%ib(2)<minval((/Xen%nbf(:n_sp_pol)/))) X%ib(2)=Xen%nb
It seems like the code will crush if I comment these lines the code will crush.
Can you hint that which part in the code is calculation the Screening matrix elements ?
Best,
Andy Hsu
Chin En Hsu
PhD student
Department of Physics
Tamkang University
Tamsui, New Taipei 251301,
Taiwan
PhD student
Department of Physics
Tamkang University
Tamsui, New Taipei 251301,
Taiwan