Dear QE developer and users:<br>Recently, I am trying to calculate phonon dispersion via ph.x. However, in some cases, ph.x cannot reach convergence within 100 steps and stop automaticly.<br>I have tested the convergent lattice parameter, cut-off energy and k-points (M-P grid), and the thresholds of force and stress were also very low. Even if I increase the tr2_ph from 1.0d-12 (default) to 1.0d-10, the |ddv_scf|^2 values was around 10^(-6) or 10^(-7) magnitude. The problem usually occurred at the second q-point, but sometimes, even if lucky enough, it would definitely occur at the third q-point (4 q-points in 3x3x3 case).<br>Are there any methods to solve this problem? Any suggestion will be welcome.<br>Calculations were used GGA-PBE USPP.<br>This is my input file:<br><i>cat >W25.relax.in <<EOF<br>&control<br> calculation = 'vc-relax' ,<br> disk_io = 'low' ,<br> prefix = 'W' ,<br> outdir = '$TempDIR/' ,<br> pseudo_dir = '$PseudoDIR/' ,<br> etot_conv_thr = 1.0d-12 ,<br> forc_conv_thr = 1.0d-4 ,<br>/<br>&system<br> ibrav = 1 ,<br> celldm(1) = ******* ,<br> nat = ** ,<br> ntyp = 3 ,<br> nbnd = 100 ,<br> ecutwfc = 47.5 ,<br> ecutrho = 450 ,<br> occupations = 'smearing' ,<br> smearing = 'mp' ,<br> degauss = 0.003 ,<br>/<br>&electrons<br> conv_thr = 1.0d-12 ,<br> startingpot = 'atomic' ,<br> startingwfc = 'atomic+random' ,<br> diagonalization = 'cg' ,<br> electron_maxstep = 150 ,<br>/<br>&ions<br> ion_dynamics = 'bfgs' ,<br>/<br>&cell<br> cell_dynamics = 'bfgs' ,<br> press_conv_thr = 0.01 ,<br>/<br>ATOMIC_SPECIES<br> V 50.9415 V.pbe-n-van.UPF<br> W 183.800 W.pbe-nsp-van.UPF<br> C 12.0110 C.pbe-van_ak.UPF<br>ATOMIC_POSITIONS crystal<br> V 0.50 0.50 0.00<br>...........<br> C 0.50 0.50 0.50<br>K_POINTS automatic<br>13 13 13 0 0 0<br>EOF<br>echo -e " Relaxing Structure...\c"<br>$MPIBIN/mpirun -n 6 pw.x -npool 2 <W.relax.in >W.relax.out<br>echo -e " DONE"<br><br>cat >W.ph.in <<EOF<br>Phonon Calculation<br>&inputph<br> outdir = '$TempDIR/' ,<br> prefix = 'W' ,<br> ldisp = .true. ,<br> nq1 = 3 ,<br> nq2 = 3 ,<br> nq3 = 3 ,<br> tr2_ph = 1.0d-10 ,<br> fildyn = 'W.dyn' ,<br>/<br>EOF<br>echo -e " Calculating Dynamic Matrix...\c"<br>$MPIBIN/mpirun -n 6 ph.x -npool 2 <W.ph.in >W.ph.out<br>echo -e " DONE"</i><br>
<br><br><div>--<br>GAO Zhe<br>CMC Lab, MSE, SNU, Seoul, S.Korea<br>
</div><br><br><span title="neteasefooter"><span id="netease_mail_footer"></span></span>