romerogroup / pyprocar

A Python library for electronic structure pre/post-processing
GNU General Public License v3.0
165 stars 72 forks source link

Insulator DOS plots: shifting the Fermi level and Zero Energy #68

Open alpinnovianus opened 2 years ago

alpinnovianus commented 2 years ago

May I know what I should do to shift the Fermi level and Zero energy in plotting DOS with PyProcar?

For insulators, my VASP calculation gave Fermi level at the bottom of conduction band. By default, PyProCar takes this Fermi level at zero energy and hence draw the Fermi level reference line at the bottom of conduction band.

However, I want to plot the Fermi level and Zero energy at the top of valence band. How do I do this?

uthpalaherath commented 2 years ago

Dear Alpin,

You could shift the Fermi level with the fermi keyword in pyprocar.bandsplot().

E.g - To shift the Fermi energy by 5 eV, set fermi = 5

Best, Uthpala

On Thu, Jan 20, 2022 at 1:10 AM Alpin Novianus @.***> wrote:

May I know what I should do to shift the Fermi level and Zero energy in plotting DOS with PyProcar?

For insulators, my VASP calculation gave Fermi level at the bottom of conduction band. By default, PyProCar takes this Fermi level at zero energy and hence draw the Fermi level reference line at the bottom of conduction band.

However, I want to plot the Fermi level and Zero energy at the top of valence band. How do I do this?

— Reply to this email directly, view it on GitHub https://github.com/romerogroup/pyprocar/issues/68, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG3ZXMLKYLXT7TIRYSQESBLUW6RNPANCNFSM5ML23J7A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you are subscribed to this thread.Message ID: @.***>

-- Uthpala Herath PhD Candidate Department of Physics and Astronomy West Virginia University Morgantown, WV 26505

Tel. (304) 216-2535 Email: @. @.> Website: https://uthpalaherath.github.io/

alpinnovianus commented 2 years ago

Dear Uthpala,

I want to shift for DOS plots. Not the bands plot. I think the fermi keyword is not available for dosplot?

Do you have advice?

uthpalaherath commented 2 years ago

Dear Alpin,

My bad! For some reason, I thought you were asking about bands. And yes you are correct. It's not there for dos plot. We'll add it in the next release.

Best, Uthpala

On Thu, Jan 20, 2022 at 1:32 AM Alpin Novianus @.***> wrote:

Dear Uthpala,

I want to shift for DOS plots. Not the bands plot. I think the fermi keyword is not available for dosplot?

Do you have advice?

— Reply to this email directly, view it on GitHub https://github.com/romerogroup/pyprocar/issues/68#issuecomment-1017161970, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG3ZXMKRMSBG4OCM6NNGQNLUW6UBLANCNFSM5ML23J7A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

-- Uthpala Herath PhD Candidate Department of Physics and Astronomy West Virginia University Morgantown, WV 26505

Tel. (304) 216-2535 Email: @. @.> Website: https://uthpalaherath.github.io/

alpinnovianus commented 2 years ago

is there anything I can do for now? For example, are there any edits I should make to the source code to achieve this, or can I export the DOS traces as a text file so I can plot it with other program?

uthpalaherath commented 2 years ago

Yes, in the vaspxml.py file, modify the following line:

dos_total['energies'] -= self.fermi

Set self.fermi to the value you want to shift the energies by.

Best, Uthpala

On Thu, Jan 20, 2022 at 1:51 AM Alpin Novianus @.***> wrote:

is there anything I can do for now? For example, are there any edits I should make to the source code to achieve this, or can I export the DOS traces as a text file so I can plot it with other program?

— Reply to this email directly, view it on GitHub https://github.com/romerogroup/pyprocar/issues/68#issuecomment-1017170485, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG3ZXMPO4XEFZCC4P7ZMHLLUW6WHXANCNFSM5ML23J7A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

-- Uthpala Herath PhD Candidate Department of Physics and Astronomy West Virginia University Morgantown, WV 26505

Tel. (304) 216-2535 Email: @. @.> Website: https://uthpalaherath.github.io/

alpinnovianus commented 2 years ago

thank you. I will try it.

But this seems to be changing only for the total density of states. (total DOS shifted by a modified constant). Am I right?

If I want to apply the shifted Fermi energy for the projected DOS too (for example in mode=stack or stack_orbital) it seems to be better to reassign the fermi energy variable to a value of my choice (so all plots are shifted, not just total DOS) Do you know if it Is possible to do that?

uthpalaherath commented 2 years ago

You're welcome. Yes, this would work for all since dos_total is used for other quantities as well.

Let me know if it works.

Best, Uthpala

On Thu, Jan 20, 2022 at 2:10 AM Alpin Novianus @.***> wrote:

thank you. I will try it.

But this seems to be changing only for the total density of states. (total DOS shifted by a modified constant). Am I right?

If I want to apply the shifted Fermi energy for the projected DOS too (for example in mode=stack or stack_orbital) it seems to be better to reassign the fermi energy to a value of my choice. Do you know if it Is possible to do that?

— Reply to this email directly, view it on GitHub https://github.com/romerogroup/pyprocar/issues/68#issuecomment-1017180066, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG3ZXMKEXH2KYP6GN44FTWDUW6YNVANCNFSM5ML23J7A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

-- Uthpala Herath PhD Candidate Department of Physics and Astronomy West Virginia University Morgantown, WV 26505

Tel. (304) 216-2535 Email: @. @.> Website: https://uthpalaherath.github.io/