HI developers and users,
I am following the steps in the recent EPW tutorial for transport properties.
I am getting this kind of error (corrupted size vs. prev_size) (Please see the output and input files below. Can you please suggest how may I get rid of such error?
Thank you
Best
RIjan
Input files are:
##################################################### NSCF ###############
&CONTROL
calculation = 'nscf'
pseudo_dir = '/lustre/scratch4/turquoise/rkarkee/pseudo_pbe'
outdir = './'
prefix = 'scf'
wf_collect=.true.
nstep=200
/
&SYSTEM
ecutwfc = 70,
ibrav = 0,
nat = 12,
ntyp = 2,
lspinorb=.true.
noncolin = .true.
vdw_corr='Grimme-D2'
nbnd=200
/
&ELECTRONS
conv_thr = 1.00000e-10
electron_maxstep = 200
mixing_beta = 0.2
diagonalization = "david"
/
&IONS
ion_dynamics='fire'
/
&CELL
!cell_dofree= '2Dxy'
press_conv_thr=0.01
/
ATOMIC_SPECIES
Hf 178.49 Hf.upf
Te 127.60 Te.upf
CELL_PARAMETERS (angstrom)
1.986290526 7.133125762 0.000000000
-1.986290526 7.133125762 0.000000000
0.000000000 0.000000000 13.590793271
ATOMIC_POSITIONS (crystal)
Hf 0.8185156643 0.8185156643 0.7500000000
Hf 0.1814843357 0.1814843357 0.2500000000
Te 0.7081381988 0.7081381988 0.5663333564
Te 0.2918618012 0.2918618012 0.0663333564
Te 0.7081381988 0.7081381988 0.9336666436
Te 0.2918618012 0.2918618012 0.4336666436
Te 0.4351577475 0.4351577475 0.8531097652
Te 0.5648422525 0.5648422525 0.3531097652
Te 0.4351577475 0.4351577475 0.6468902348
Te 0.5648422525 0.5648422525 0.1468902348
Te 0.1625555034 0.1625555034 0.7500000000
Te 0.8374444966 0.8374444966 0.2500000000
K_POINTS crystal
32
0.00000000 0.00000000 0.00000000 3.125000e-02
0.00000000 0.00000000 0.50000000 3.125000e-02
0.00000000 0.25000000 0.00000000 3.125000e-02
0.00000000 0.25000000 0.50000000 3.125000e-02
0.00000000 0.50000000 0.00000000 3.125000e-02
0.00000000 0.50000000 0.50000000 3.125000e-02
0.00000000 0.75000000 0.00000000 3.125000e-02
0.00000000 0.75000000 0.50000000 3.125000e-02
0.25000000 0.00000000 0.00000000 3.125000e-02
0.25000000 0.00000000 0.50000000 3.125000e-02
0.25000000 0.25000000 0.00000000 3.125000e-02
0.25000000 0.25000000 0.50000000 3.125000e-02
0.25000000 0.50000000 0.00000000 3.125000e-02
0.25000000 0.50000000 0.50000000 3.125000e-02
0.25000000 0.75000000 0.00000000 3.125000e-02
0.25000000 0.75000000 0.50000000 3.125000e-02
0.50000000 0.00000000 0.00000000 3.125000e-02
0.50000000 0.00000000 0.50000000 3.125000e-02
0.50000000 0.25000000 0.00000000 3.125000e-02
0.50000000 0.25000000 0.50000000 3.125000e-02
0.50000000 0.50000000 0.00000000 3.125000e-02
0.50000000 0.50000000 0.50000000 3.125000e-02
0.50000000 0.75000000 0.00000000 3.125000e-02
0.50000000 0.75000000 0.50000000 3.125000e-02
0.75000000 0.00000000 0.00000000 3.125000e-02
0.75000000 0.00000000 0.50000000 3.125000e-02
0.75000000 0.25000000 0.00000000 3.125000e-02
0.75000000 0.25000000 0.50000000 3.125000e-02
0.75000000 0.50000000 0.00000000 3.125000e-02
0.75000000 0.50000000 0.50000000 3.125000e-02
0.75000000 0.75000000 0.00000000 3.125000e-02
0.75000000 0.75000000 0.50000000 3.125000e-02
~
################################################################# Ph calculation
&inputph
recover=.true.
tr2_ph=1.0d-15,
prefix='scf',
amass(1)=178.49,
amass(2)= 127.60,
outdir='./',
fildyn='HfTe5.dyn.xml',
fildvscf='dvscf',
ldisp=.true.
epsil=.true.
nq1=4,
nq2=4,
nq3=2,
nmix_ph=12
/
################################################################### epw1.inp #####################
&inputepw
prefix='scf'
outdir='./'
elph=.true.
epbwrite=.true.
epbread=.false.
epwwrite=.true.
epwread=.false.
etf_mem=1
lpolar=.true.
vme='dipole'
nbndsub=3
bands_skipped='exclude_bands=1-178, 190-200'
wannierize=.true.
num_iter=50000
iprint=2
dis_win_max=12
dis_win_min=-1
proj(1)='Te:p'
proj(2)='Hf:d'
wdata(1)='bands_plot = .true.'
wdata(2)='begin kpoint_path'
wdata(3)=' X 0.5 0.0 0.0 G 0.0 0.0 0.0 '
wdata(4)=' G 0.0 0.0 0.0 X 0.5 0.0 0.0 '
wdata(5)=' Y 0.0 0.5 0.0 G 0.0 0.0 0.0 '
wdata(6)=' G 0.0 0.0 0.0 Y 0.0 0.5 0.0 '
wdata(7)=' Z 0.0 0.0 0.5 G 0.0 0.0 0.0 '
wdata(8)=' G 0.0 0.0 0.0 Z 0.0 0.0 0.5 '
wdata(9)='end kpoint_path'
wdata(10)='bands_plot_format = gnuplot'
wdata(11)='guiding_centres=.true.'
wdata(12)='dis_num_iter =5000'
wdata(13)='num_print_cycles =10'
wdata(14)='dis_mix_ratio =1.0'
wdata(15)='conv_tol=1E-12'
wdata(16)='use_ws_distance =T'
fsthick =100
degaussw=0.001
dvscf_dir='./save'
band_plot=.true.
filkf='./XGYGZ.txt'
filqf='./XGYGZ.txt'
nk1=4
nk2=4
nk3=2
nq1=4
nq2=4
nq3=2
/
##################################################################################### epw1.out
-sh//yy+` +yy +yy -+h+-oyy
-yh- .oyy/.-sh. .syo-.:sy- /yh
`.-.` `yh+ -oyyyo. `/syys: oys `.`
`/+ssys+-` `sh+ ` oys` .:osyo`
-yh- ./syyooyo` .sys+/oyo--yh/
`yy+ .-:-. `-/+/:` -sh-
/yh. oys
``..---hho---------` .---------..` `.-----.` -hd+---.
`./osmNMMMMMMMMMMMMMMMs. +NNMMMMMMMMNNmh+. yNMMMMMNm- oNMMMMMNmo++:`
+sy--/sdMMMhyyyyyyyNMMh- .oyNMMmyyyyyhNMMm+` -yMMMdyyo:` .oyyNMMNhs+syy`
-yy/ /MMM+.`-+/``mMMy- `mMMh:`````.dMMN:` `MMMy-`-dhhy```mMMy:``+hs
-yy+` /MMMo:-mMM+`-oo/. mMMh: `dMMN/` dMMm:`dMMMMy..MMMo-.+yo`
.sys`/MMMMNNMMMs- mMMmyooooymMMNo: oMMM/sMMMMMM++MMN//oh:
`sh+/MMMhyyMMMs- `-` mMMMMMMMMMNmy+-` -MMMhMMMsmMMmdMMd/yy+
`-/+++oyy-/MMM+.`/hh/.`mNm:` mMMd+/////:-.` NMMMMMd/:NMMMMMy:/yyo/:.`
+os+//:-..-oMMMo:--:::-/MMMo. .-mMMd+---` hMMMMN+. oMMMMMo. `-+osyso:`
syo `mNMMMMMNNNNNNNNMMMo.oNNMMMMMNNNN:` +MMMMs:` dMMMN/` ``:syo
/yh` :syyyyyyyyyyyyyyyy+.`+syyyyyyyyo:` .oyys:` .oyys:` +yh
-yh- ```````````````` ````````` `` `` oys
-+h/------------------------::::::::://////++++++++++++++++++++++///////::::/yd:
shdddddddddddddddddddddddddddddhhhhhhhhyyyyyssssssssssssssssyyyyyyyhhhhhhhddddh`
S. Ponce, E. R. Margine, C. Verdi, and F. Giustino,
Comput. Phys. Commun. 209, 116 (2016)
Program EPW v.5.7 starts on 16Jul2023 at 11:53:28
This program is part of the open-source Quantum ESPRESSO suite
for quantum simulation of materials; please cite
"P. Giannozzi et al., J. Phys.:Condens. Matter 21 395502 (2009);
"P. Giannozzi et al., J. Phys.:Condens. Matter 29 465901 (2017);
"P. Giannozzi et al., J. Chem. Phys. 152 154105 (2020);
URL http://www.quantum-espresso.org",
in publications or presentations arising from this work. More details at
http://www.quantum-espresso.org/quote
Parallel version (MPI), running on 32 processors
MPI processes distributed on 1 nodes
K-points division: npool = 32
500985 MiB available memory on the printing compute node when the environment starts
Waiting for input...
Reading input from standard input
Title line not specified: using 'default'.
WARNING: The specified dis_win_min is ignored.
You should instead use bands_skipped = 'exclude_bands = ...'
to control the lower bound of band manifold.
No temperature supplied. Setting temps(:) to 300 K.
Reading xml data from directory:
./scf.save/
IMPORTANT: XC functional enforced from input :
Exchange-correlation= PBE
( 1 4 3 4 0 0 0)
Any further DFT definition will be discarded
Please, verify this is what you really want
G-vector sticks info
--------------------
sticks: dense smooth PW G-vecs: dense smooth PW
Sum 2245 2245 657 205449 205449 32301
Using Slab Decomposition
Reading collected, re-writing distributed wavefunctions
default
bravais-lattice index = 0
lattice parameter (a_0) = 13.9925 a.u.
unit-cell volume = 2598.9268 (a.u.)^3
number of atoms/cell = 12
number of atomic types = 2
kinetic-energy cut-off = 70.0000 Ry
charge density cut-off = 280.0000 Ry
Exchange-correlation= PBE
( 1 4 3 4 0 0 0)
Non magnetic calculation with spin-orbit
celldm(1)= 13.99250 celldm(2)= 0.00000 celldm(3)= 0.00000
celldm(4)= 0.00000 celldm(5)= 0.00000 celldm(6)= 0.00000
crystal axes: (cart. coord. in units of a_0)
a(1) = ( 0.2683 0.9633 0.0000 )
a(2) = ( -0.2683 0.9633 0.0000 )
a(3) = ( 0.0000 0.0000 1.8355 )
reciprocal axes: (cart. coord. in units 2 pi/a_0)
b(1) = ( 1.8639 0.5190 -0.0000 )
b(2) = ( -1.8639 0.5190 0.0000 )
b(3) = ( 0.0000 -0.0000 0.5448 )
Atoms inside the unit cell:
Cartesian axes
site n. atom mass positions (a_0 units)
1 Hf 178.4900 tau( 1) = ( -0.00000 1.57703 1.37661 )
2 Hf 178.4900 tau( 2) = ( 0.00000 0.34967 0.45887 )
3 Te 127.6000 tau( 3) = ( -0.00000 1.36437 1.03949 )
4 Te 127.6000 tau( 4) = ( 0.00000 0.56233 0.12175 )
5 Te 127.6000 tau( 5) = ( -0.00000 1.36437 1.71372 )
6 Te 127.6000 tau( 6) = ( 0.00000 0.56233 0.79598 )
7 Te 127.6000 tau( 7) = ( -0.00000 0.83842 1.56586 )
8 Te 127.6000 tau( 8) = ( -0.00000 1.08828 0.64812 )
9 Te 127.6000 tau( 9) = ( -0.00000 0.83842 1.18735 )
10 Te 127.6000 tau(10) = ( -0.00000 1.08828 0.26961 )
11 Te 127.6000 tau(11) = ( 0.00000 0.31320 1.37661 )
12 Te 127.6000 tau(12) = ( -0.00000 1.61350 0.45887 )
9 Sym.Ops. (with q -> -q+G )
G cutoff = 1388.6385 ( 205449 G-vectors) FFT grid: ( 75, 75,144)
number of k points= 32
cart. coord. in units 2pi/a_0
k( 1) = ( 0.0000000 0.0000000 0.0000000), wk = 0.0312500
k( 2) = ( 0.0000000 0.0000000 0.2724092), wk = 0.0312500
k( 3) = ( -0.4659763 0.1297558 0.0000000), wk = 0.0312500
k( 4) = ( -0.4659763 0.1297558 0.2724092), wk = 0.0312500
k( 5) = ( -0.9319526 0.2595116 0.0000000), wk = 0.0312500
k( 6) = ( -0.9319526 0.2595116 0.2724092), wk = 0.0312500
k( 7) = ( -1.3979289 0.3892673 0.0000000), wk = 0.0312500
k( 8) = ( -1.3979289 0.3892673 0.2724092), wk = 0.0312500
k( 9) = ( 0.4659763 0.1297558 0.0000000), wk = 0.0312500
k( 10) = ( 0.4659763 0.1297558 0.2724092), wk = 0.0312500
k( 11) = ( 0.0000000 0.2595116 0.0000000), wk = 0.0312500
k( 12) = ( 0.0000000 0.2595116 0.2724092), wk = 0.0312500
k( 13) = ( -0.4659763 0.3892673 0.0000000), wk = 0.0312500
k( 14) = ( -0.4659763 0.3892673 0.2724092), wk = 0.0312500
k( 15) = ( -0.9319526 0.5190231 0.0000000), wk = 0.0312500
k( 16) = ( -0.9319526 0.5190231 0.2724092), wk = 0.0312500
k( 17) = ( 0.9319526 0.2595116 0.0000000), wk = 0.0312500
k( 18) = ( 0.9319526 0.2595116 0.2724092), wk = 0.0312500
k( 19) = ( 0.4659763 0.3892673 0.0000000), wk = 0.0312500
k( 20) = ( 0.4659763 0.3892673 0.2724092), wk = 0.0312500
k( 21) = ( 0.0000000 0.5190231 0.0000000), wk = 0.0312500
k( 22) = ( 0.0000000 0.5190231 0.2724092), wk = 0.0312500
k( 23) = ( -0.4659763 0.6487789 0.0000000), wk = 0.0312500
k( 24) = ( -0.4659763 0.6487789 0.2724092), wk = 0.0312500
k( 25) = ( 1.3979289 0.3892673 0.0000000), wk = 0.0312500
k( 26) = ( 1.3979289 0.3892673 0.2724092), wk = 0.0312500
k( 27) = ( 0.9319526 0.5190231 0.0000000), wk = 0.0312500
k( 28) = ( 0.9319526 0.5190231 0.2724092), wk = 0.0312500
k( 29) = ( 0.4659763 0.6487789 0.0000000), wk = 0.0312500
k( 30) = ( 0.4659763 0.6487789 0.2724092), wk = 0.0312500
k( 31) = ( 0.0000000 0.7785347 0.0000000), wk = 0.0312500
k( 32) = ( 0.0000000 0.7785347 0.2724092), wk = 0.0312500
PseudoPot. # 1 for Hf read from file:
/lustre/scratch4/turquoise/rkarkee/pseudo_pbe/Hf.upf
MD5 check sum: bde2e012f831674a856dc5e85ca34ee8
Pseudo is Norm-conserving + core correction, Zval = 12.0
Generated using ONCVPSP code by D. R. Hamann
Using radial grid of 1716 points, 14 beta functions with:
l(1) = 0
l(2) = 0
l(3) = 1
l(4) = 1
l(5) = 1
l(6) = 1
l(7) = 2
l(8) = 2
l(9) = 2
l(10) = 2
l(11) = 3
l(12) = 3
l(13) = 3
l(14) = 3
PseudoPot. # 2 for Te read from file:
/lustre/scratch4/turquoise/rkarkee/pseudo_pbe/Te.upf
MD5 check sum: d198e370297ac1d7edee156d0fe975c4
Pseudo is Norm-conserving + core correction, Zval = 16.0
Generated using ONCVPSP code by D. R. Hamann
Using radial grid of 1324 points, 10 beta functions with:
l(1) = 0
l(2) = 0
l(3) = 1
l(4) = 1
l(5) = 1
l(6) = 1
l(7) = 2
l(8) = 2
l(9) = 2
l(10) = 2
EPW : 2.58s CPU 4.63s WALL
EPW : 4.87s CPU 6.93s WALL
-------------------------------------------------------------------
Wannierization on 4 x 4 x 2 electronic grid
-------------------------------------------------------------------
Spin CASE ( non-collinear )
Initializing Wannier90
Initial Wannier projections
( 0.70814 0.70814 0.56633) : l = 1 mr = 1
( 0.70814 0.70814 0.56633) : l = 1 mr = 1
( 0.70814 0.70814 0.56633) : l = 1 mr = 2
- Number of bands is ( 11)
- Number of total bands is (200)
- Number of excluded bands is (189)
- Number of wannier functions is ( 3)
- All guiding functions are given
Reading data about k-point neighbours
- All neighbours are found
AMN
k points = 32 in 32 pools
1 of 1 on ionode
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Backtrace for this error:
#0 0x7f03d5c70d6f in ???
#1 0x7f03d5c70cdb in ???
#2 0x7f03d5c72374 in ???
#3 0x7f03d5cb6b06 in ???
#4 0x7f03d5cbeb89 in ???
#5 0x7f03d5cbf455 in ???
#6 0x7f03d5cc099a in ???
#7 0x5a11bb in ???
#8 0x5a8074 in ???
#9 0x420e5e in ???
corrupted size vs. prev_size
Moderator: stiwari
Re: corrupted size vs. prev_size
Hi,
The error you are getting is an internal memory chunk error (nor really an error in EPW) indicating that the code tried to write out-of-bound. Can you provide more information such as how many bands are there in the disentanglement window because this error has occurred at the wannierization step? Also, your nscf output. Try a run without bands_skipped and see if it works.
Best,
Sabya
The error you are getting is an internal memory chunk error (nor really an error in EPW) indicating that the code tried to write out-of-bound. Can you provide more information such as how many bands are there in the disentanglement window because this error has occurred at the wannierization step? Also, your nscf output. Try a run without bands_skipped and see if it works.
Best,
Sabya
Re: corrupted size vs. prev_size
Hi Sabya,
How do I find how many bands are in the disentanglement window?
Also for some reason in scf.wout it says unrecognized keyword for guiding_centers=.true.
I checked in the Wannier90 and they have used the same. I dont know why it is showing that error there.
Here is nscf.out and scf.wout and scf.win files. (please see the attachments)
Thank you
Best
Rijan
How do I find how many bands are in the disentanglement window?
Also for some reason in scf.wout it says unrecognized keyword for guiding_centers=.true.
I checked in the Wannier90 and they have used the same. I dont know why it is showing that error there.
Here is nscf.out and scf.wout and scf.win files. (please see the attachments)
Thank you
Best
Rijan
Re: corrupted size vs. prev_size
Also FYI, I tried without bands_skipped and got the same error.
Re: corrupted size vs. prev_size
Hi, your files look fine to me. You can find the number of bands by running a bands calculation and visually checking how many bands fall inside the window. Can you provide me with all your input files so that I can try to reproduce this error?
Best,
Sabya.
Best,
Sabya.
Re: corrupted size vs. prev_size
Hi Sabya,
Attached is the input files with pseudopotential I am using.
Best
Rijan
Attached is the input files with pseudopotential I am using.
Best
Rijan
Re: corrupted size vs. prev_size
Hi,
So, examining you scf file I can see that you have 12 atoms (2Hf and 10 Te atoms). Using d-orbital projection for Hf would result in 5*2=10 Wannier functions and p for Te would result in 3*10=30 Wannier functions. Which means your nbndsub should be 40 and not 3. If you still want lower number of Wannier functions maybe you can try the SCDM method with auto_projections=.true. and scdm_proj=true.
Also, if you choose the earlier option of nbndsub=40, be careful about the disentanglement window as well as the number of bands you are excluding. The total number of bands (not excluded) should be the same or greater than the number of Wannier functions.
Best,
Sabya.
So, examining you scf file I can see that you have 12 atoms (2Hf and 10 Te atoms). Using d-orbital projection for Hf would result in 5*2=10 Wannier functions and p for Te would result in 3*10=30 Wannier functions. Which means your nbndsub should be 40 and not 3. If you still want lower number of Wannier functions maybe you can try the SCDM method with auto_projections=.true. and scdm_proj=true.
Also, if you choose the earlier option of nbndsub=40, be careful about the disentanglement window as well as the number of bands you are excluding. The total number of bands (not excluded) should be the same or greater than the number of Wannier functions.
Best,
Sabya.
Re: corrupted size vs. prev_size
Hi Sabya,
I have disregarded Hf:d orbital and which leaves 30 Wannier functions. So I set nbndsub=30 and bands_skipped='exclude_bands=1-160, 192-200' with 31 bands. Still I am getting the same error. How can I fix this issue?
- Number of bands is ( 31)
- Number of total bands is (200)
- Number of excluded bands is (169)
- Number of wannier functions is ( 30)
- All guiding functions are given
Reading data about k-point neighbours
- All neighbours are found
AMN
k points = 32 in 32 pools
1 of 1 on ionode
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
I have disregarded Hf:d orbital and which leaves 30 Wannier functions. So I set nbndsub=30 and bands_skipped='exclude_bands=1-160, 192-200' with 31 bands. Still I am getting the same error. How can I fix this issue?
- Number of bands is ( 31)
- Number of total bands is (200)
- Number of excluded bands is (169)
- Number of wannier functions is ( 30)
- All guiding functions are given
Reading data about k-point neighbours
- All neighbours are found
AMN
k points = 32 in 32 pools
1 of 1 on ionode
corrupted size vs. prev_size
Program received signal SIGABRT: Process abort signal.
Re: corrupted size vs. prev_size
Hi,
Here the key is the following few points:
-The projection that you defined (using proj) and the number of Wannier functions that you provide the code (nbndsub) needs to be matched exactly.
-You need to have enough total number of bands. (your nscf combined with bands_skipped)
-The number of bands within the frozen window (between dis_froz_min and dis_froz_max) can not exceed nbndsub.
As an example, in your case, you have 31 bands with the skipping, and you defined 30 Wannier functions, so regarding point two, this is fine. However, the problem is point one, where now the number of Wannier functions does not match the projection you defined (as Sabya mentioned, that corresponds to 40 bands, not 30 or 3). Note that if you want to increase nbndsub to 40 to match the projections you defined, you also need to make sure to modify the bands excluded and the energy window to satisfy the other points accordingly. If there are problems with the energy window, I believe you would be able to see them in prefix.wout, so if that happens you can tune the window according to the message there.
Alternatively, if you want to keep a small nbndsub, the simplest way around this is to use random projection instead of defining it explicitly, i.e.:
proj(1)='random'
which will allow the code to run, but it will likely give you bad Wannierization. Otherwise, you can try to remove proj tag, but instead set auto_projections and scdm_proj, with a proper combination of scdm_mu and scdm_sigma to use automatic projection scheme. If this is the route you want to take, I would take a look at the Wannier90 tutorials (https://wannier.org/support/) and they also have videos explaining the technique and how to properly choose and test the parameters, e.g.: https://www.youtube.com/watch?v=WqDvi6KZkF0.
Please see if these helps.
Best!
Xiao
Here the key is the following few points:
-The projection that you defined (using proj) and the number of Wannier functions that you provide the code (nbndsub) needs to be matched exactly.
-You need to have enough total number of bands. (your nscf combined with bands_skipped)
-The number of bands within the frozen window (between dis_froz_min and dis_froz_max) can not exceed nbndsub.
As an example, in your case, you have 31 bands with the skipping, and you defined 30 Wannier functions, so regarding point two, this is fine. However, the problem is point one, where now the number of Wannier functions does not match the projection you defined (as Sabya mentioned, that corresponds to 40 bands, not 30 or 3). Note that if you want to increase nbndsub to 40 to match the projections you defined, you also need to make sure to modify the bands excluded and the energy window to satisfy the other points accordingly. If there are problems with the energy window, I believe you would be able to see them in prefix.wout, so if that happens you can tune the window according to the message there.
Alternatively, if you want to keep a small nbndsub, the simplest way around this is to use random projection instead of defining it explicitly, i.e.:
proj(1)='random'
which will allow the code to run, but it will likely give you bad Wannierization. Otherwise, you can try to remove proj tag, but instead set auto_projections and scdm_proj, with a proper combination of scdm_mu and scdm_sigma to use automatic projection scheme. If this is the route you want to take, I would take a look at the Wannier90 tutorials (https://wannier.org/support/) and they also have videos explaining the technique and how to properly choose and test the parameters, e.g.: https://www.youtube.com/watch?v=WqDvi6KZkF0.
Please see if these helps.
Best!
Xiao