how to plot the spin polarized charge density
Moderators: Global Moderator, Moderator
-
- Newbie
- Posts: 6
- Joined: Fri Dec 22, 2006 9:48 am
how to plot the spin polarized charge density
Dear all,
Now I have a spin polarized CHGCAR. I want to plot the charge density of the minority part of the system. Could you give me some suggestion? Any comments would be appreciated.
Now I have a spin polarized CHGCAR. I want to plot the charge density of the minority part of the system. Could you give me some suggestion? Any comments would be appreciated.
Last edited by ktao on Tue Sep 30, 2008 8:59 am, edited 1 time in total.
-
- Sr. Member
- Posts: 339
- Joined: Mon Apr 24, 2006 9:07 am
- License Nr.: 173
- Location: Gothenburg, Sweden
how to plot the spin polarized charge density
The total electron density (n_up + n_down) together with the spin density (n_up - n_down) are written to the CHGCAR. So what you can do is to write a short script that extracts the data for both densities and then solve for the minority part.
Also take a look on Danny's reply under:
http://cms.mpi.univie.ac.at/vasp-forum/ ... php?4.3865
Best regards
/Dan
Also take a look on Danny's reply under:
http://cms.mpi.univie.ac.at/vasp-forum/ ... php?4.3865
Best regards
/Dan
Last edited by forsdan on Tue Sep 30, 2008 11:36 am, edited 1 time in total.
-
- Newbie
- Posts: 1
- Joined: Mon Nov 16, 2009 12:20 pm
how to plot the spin polarized charge density
I have read the reference page Forsdan gave. However I still do not understand what each of the 5 columns in my spin-polarized CHGCAR means.
CHGCAR
----------------------------------------------
(atomic coordinates)
192 224 112
192 224 112
.12542222513E+05 .12213572381E+05 .11298386482E+05 .99763507522E+04 .84629759086E+04
.69366683044E+04 .55043910496E+04 .42140592276E+04 .30916561151E+04 .21692365805E+04
.14821362350E+04 .10409059658E+04 .80534617144E+03 .68642090177E+03 .60010389775E+03
.53117179024E+03 .47509541801E+03 .42780548751E+03 .38723828847E+03 .35338109943E+03
and so on.
-----------------------------------------------------------------------
It is said that the first 3 columns are the xyz coordinates, but that seems highly unlikely. In addition, the last two columns should be (up+down) and (up-down) density, but they are too similar!
Moreover, they are even negative sometimes.
-----------------------------------------------------------------
.83381916774E-02 .70080672785E-02 .57031021424E-02 .29671948525E-02 -.22348724298E-02
-.99440048147E-02 -.19170029961E-01 -.28343486293E-01 -.35960803345E-01 -.41116494947E-01
-.43760714333E-01 -.44664180455E-01 -.45139094350E-01 -.46593663890E-01 -.50047799650E-01
-.55788268741E-01 -.63311428748E-01 -.71558593652E-01 -.79283147982E-01 -.85346826640E-01
-.88876159170E-01 -.89392545553E-01 -.87056677573E-01 -.82968370189E-01 -.79210796015E-01
-.78316696564E-01 -.82189608432E-01 -.91015853313E-01 -.10291812018E+00 -.11474812271E+00
----------------------------------------------------------------------
Does my calculation have a serious problem or something? What should I do to plot the charge density for each spin? Any comments would be appreciated.
CHGCAR
----------------------------------------------
(atomic coordinates)
192 224 112
192 224 112
.12542222513E+05 .12213572381E+05 .11298386482E+05 .99763507522E+04 .84629759086E+04
.69366683044E+04 .55043910496E+04 .42140592276E+04 .30916561151E+04 .21692365805E+04
.14821362350E+04 .10409059658E+04 .80534617144E+03 .68642090177E+03 .60010389775E+03
.53117179024E+03 .47509541801E+03 .42780548751E+03 .38723828847E+03 .35338109943E+03
and so on.
-----------------------------------------------------------------------
It is said that the first 3 columns are the xyz coordinates, but that seems highly unlikely. In addition, the last two columns should be (up+down) and (up-down) density, but they are too similar!
Moreover, they are even negative sometimes.
-----------------------------------------------------------------
.83381916774E-02 .70080672785E-02 .57031021424E-02 .29671948525E-02 -.22348724298E-02
-.99440048147E-02 -.19170029961E-01 -.28343486293E-01 -.35960803345E-01 -.41116494947E-01
-.43760714333E-01 -.44664180455E-01 -.45139094350E-01 -.46593663890E-01 -.50047799650E-01
-.55788268741E-01 -.63311428748E-01 -.71558593652E-01 -.79283147982E-01 -.85346826640E-01
-.88876159170E-01 -.89392545553E-01 -.87056677573E-01 -.82968370189E-01 -.79210796015E-01
-.78316696564E-01 -.82189608432E-01 -.91015853313E-01 -.10291812018E+00 -.11474812271E+00
----------------------------------------------------------------------
Does my calculation have a serious problem or something? What should I do to plot the charge density for each spin? Any comments would be appreciated.
Last edited by opiskelija on Wed Dec 09, 2009 5:53 am, edited 1 time in total.
-
- Newbie
- Posts: 46
- Joined: Sun Jul 22, 2007 2:32 pm
- License Nr.: 5-254
- Location: Bilkent University, Ankara, TURKEY
- Contact:
how to plot the spin polarized charge density
copy below script to your bin directory, make it executable, run script by typing "script CHGCAR" and visualize the CHGCAR-u-d by VESTA.
#!/usr/bin/env bash
filename=`echo $1 | sed 's/PARCHG./CHGCAR-/' | sed 's/.ALLK//'`
rastgele=$RANDOM
natoms=`awk "NR==6" $1 | awk '{print ($1+$2+$3+$4+$5+$6+$7+$8+$9)}'`
ngrid=`mm $natoms+9`
grid=`awk "NR==$ngrid" $1`
nupd_b=`echo $ngrid | awk '{print ($1+1)}'`
nupd_e=`grep -n "$grid" $1 | awk "NR==2" | awk -F ":" '{print $1}'`
awk "NR<$nupd_b" $1 > title.$rastgele
cat title.$rastgele > $filename-u-d.$rastgele ; awk "NR>$nupd_e" $1 >> $filename-u-d.$rastgele
awk "NR>=$nupd_b" $filename-u-d.$rastgele > u-d1.$rastgele ; awk "NF==10" u-d1.$rastgele > u-d.$rastgele
mv $filename-u-d.$rastgele $filename-u-d
rm -rf *.$rastgele
#!/usr/bin/env bash
filename=`echo $1 | sed 's/PARCHG./CHGCAR-/' | sed 's/.ALLK//'`
rastgele=$RANDOM
natoms=`awk "NR==6" $1 | awk '{print ($1+$2+$3+$4+$5+$6+$7+$8+$9)}'`
ngrid=`mm $natoms+9`
grid=`awk "NR==$ngrid" $1`
nupd_b=`echo $ngrid | awk '{print ($1+1)}'`
nupd_e=`grep -n "$grid" $1 | awk "NR==2" | awk -F ":" '{print $1}'`
awk "NR<$nupd_b" $1 > title.$rastgele
cat title.$rastgele > $filename-u-d.$rastgele ; awk "NR>$nupd_e" $1 >> $filename-u-d.$rastgele
awk "NR>=$nupd_b" $filename-u-d.$rastgele > u-d1.$rastgele ; awk "NF==10" u-d1.$rastgele > u-d.$rastgele
mv $filename-u-d.$rastgele $filename-u-d
rm -rf *.$rastgele
Last edited by metosa on Sun Dec 27, 2009 8:04 pm, edited 1 time in total.
-
- Newbie
- Posts: 46
- Joined: Sun Jul 22, 2007 2:32 pm
- License Nr.: 5-254
- Location: Bilkent University, Ankara, TURKEY
- Contact:
how to plot the spin polarized charge density
sorry, you should replace
ngrid=`mm $natoms+9`
line
with
ngrid=`let ngrid=$natoms+9 : echo $ngrid`
ngrid=`mm $natoms+9`
line
with
ngrid=`let ngrid=$natoms+9 : echo $ngrid`
Last edited by metosa on Sun Dec 27, 2009 8:12 pm, edited 1 time in total.
-
- Newbie
- Posts: 46
- Joined: Sun Jul 22, 2007 2:32 pm
- License Nr.: 5-254
- Location: Bilkent University, Ankara, TURKEY
- Contact:
how to plot the spin polarized charge density
sorry x 2 ;
ngrid=`let ngrid=$natoms+9 : echo $ngrid`
should be
ngrid=`let ngrid=$natoms+9 ; echo $ngrid`
ngrid=`let ngrid=$natoms+9 : echo $ngrid`
should be
ngrid=`let ngrid=$natoms+9 ; echo $ngrid`
Last edited by metosa on Sun Dec 27, 2009 8:13 pm, edited 1 time in total.
how to plot the spin polarized charge density
You could also use vmd, it's a free viewer and you can visualize CHGCAR there
http://www.ks.uiuc.edu/Research/vmd/
Although in the case of spin polarization I am not sure if it will help you at all, you can select spin up or spin down components for plotting, but writing your own script for plotting does always allow for the most flexibility in all cases.
http://www.ks.uiuc.edu/Research/vmd/
Although in the case of spin polarization I am not sure if it will help you at all, you can select spin up or spin down components for plotting, but writing your own script for plotting does always allow for the most flexibility in all cases.
Last edited by panda on Thu Dec 31, 2009 4:29 am, edited 1 time in total.