-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Hi, there is probably some bug with plotting the spin-polarized band structure. My unit cell has 20 atoms and I want to plot d-up&down projected band structure for atoms 5-8, I,e. for 4 atoms. The up spin and well as total plot is correct but the down spin plot missed contribution near Fermi level.
Can you please see if I am not making a silly mistake and if it is a bug that needs fixing?
Thank you. I am attaching my PROCAR and plotting commands as well.
Shishir
hh_arg = dict(
filename = "PROCAR",
ef = 4.6930,
path = [r"$\Gamma$", r"$Z$",r"$D$",r"$B$",r"$\Gamma$",r"$A$",r"$E$",r"$Z$",r"$C_2$",r"$Y_2$",r"$\Gamma$"],
pathstyle = "continuous",
spin = True,
)
hh_Bands = pp.PROCARBandStructure(**hh_arg)
Plotting the Total Band Structure
pp.p.rc("font",size=18)
hh_Bands.Init_Fig(height=8)
hh_Bands.getTotalBandsPlot(bandspin="up",color="r",label=None)
hh_Bands.getTotalBandsPlot(bandspin="down",color="g",label=None)
hh_Bands.PlotShow(-4,4,savefile="plot")
Up
s=50
alpha=.5
ymin,ymax = -6,5
width,height = 8,8
hh_Bands.Init_Fig(width=width,height=height)
hh_Bands.ax.set_xlabel(False)
hh_Bands.getTotalBandsPlot(color="k",alpha=alpha,lw=0.5, bandspin="up",label=None)
hh_Bands.getAtomsRangeBandsPlot(orbital="d_up", AtomRange=[7,8], color='r', marker="<",scale=s,alpha=alpha, label = '')
hh_Bands.getAtomsRangeBandsPlot(orbital="d_up", AtomRange=[5,6], color='g', marker=">",scale=s,alpha=alpha, label = '')
hh_Bands.PlotShow(ymin=ymin,ymax=ymax,savefile='up')
Down
s=50
alpha=.5
ymin,ymax = -6,5
width,height = 8,8
hh_Bands.Init_Fig(width=width,height=height)
hh_Bands.ax.set_xlabel(False)
hh_Bands.getTotalBandsPlot(color="k",alpha=alpha,lw=0.5, bandspin="down",label=None)
hh_Bands.getAtomsRangeBandsPlot(orbital="d_down", AtomRange=[7,8], color='r', marker="<",scale=s,alpha=alpha, label = '')
hh_Bands.getAtomsRangeBandsPlot(orbital="d_down", AtomRange=[5,6], color='g', marker=">",scale=s,alpha=alpha, label = '')
hh_Bands.PlotShow(ymin=ymin,ymax=ymax,savefile='down')