Fatbands using norm-conserving pseudopotential

Dear colleagues,

Is there any way to use norm conserving (NC) pseudopotential (PP) in order to generate fatbands (m-resolved). I am using GGA-PBE PP in .psp8 format. I know it is possible for PAW PP.

I am using NC PP just because I need to mix PP for doping case. If I’m not wrong, “mixalch” use NC PP not PAW PP.

Any help would be highly appreciated.


I have figured out that such fatband can be created even with NC PP just putting prtdos=3 during band structure calculation. However, it gives “xx_DS2_FATBANDS.nc” file which can be opened by abiopen.py. Which is good news.

However, is there any way to produce individual files with extension “xx_1o_DS2_FATBANDS_at0002_xx_is1_lx_m+x” just like PAW case? If not, could it be extracted the fatband quantities from the above .nc file?


Hi Rajesh,

There is a possibility with a bit of an effort to have the files in a text format as you have them in PAW.
Since you are familiar with AbiPy, one can use the classes associated with the fatbands netCDF file:




The format of the dataframe is quite straight forward for L = [natom, mbesslang, nsppol, mband, nkpt] and for m = [natom, mbesslang**2, nsppol, mband, nkpt] .

Following this you can write a python script that loops over number of atoms and which prints in your desired text format file by columns:
[natom nkpt mband L = 0]
[natom nkpt mband L = 1] for L decomposition
and so on.
The same for m decomposition:
[natom nkpt mband L = # ; m = -L, m=-L+1 and so on]

I hope this idea will help you out in circumventing this format limitation.


Dear Bogdan,

Many thanks for the idea. Actually, honestly,I am not that much expert in coding. Therefore, I did dig around using your idea. I recaluclated the fatbands using prtdos==3 and prtdosm==1. Then I used abiopen to create the Jupiter notebook file where I was able to plot using “plot_fatbands_mview”.

Thanks again and regards,