Dear Prem Sen,

> How to check the convergence for both the codes ??


First of all you need to make convergence tests for the ground-state 
calculation (with respect to the supercell size, kinetic energy cutoff for the 
wavefunctions (and density/potentials in the case of USPP)). In the 
turboLanczos calculation, check the convergence of the spectrum with respect to 
the number of Lanczos iterations. In the turboDavidson calculation, check that 
you compute enough eigenvalues of the Liouvillian (num_eign) to obtain the 
spectrum in the energy range of interest. I suggest you to read papers about 
these codes (please see TDDFPT/README), if you have not done this so.


> I was checking the optical absorption spectra for CH4 molecule (using the 
> given example for the TDDFPT package) using both the code. They are not 
> matching with each other.


Did you compare the examples "CH4" and "CH4-DAV"? These examples do not have 
converged parameters. First of all, in both calculations (Lanczos and Davidson) 
you have to start from the same ground state calculation: note that in "CH4" 
and "CH4-DAV" the input files are not the same.

Did you perform convergence tests in these examples in the linear-response 
part? Note that with Lanczos you will obtain an absorption spectrum in a wide 
energy range, whereas with Davidson you will obtain just a few peaks (depends 
on how many eigenvalues do you compute). Hence those peaks which you compute 
with Davidson should coincide with the peaks in the much more extended spectrum 
computed with Lanczos.


> Also I was trying to do for Carbon-dimer.  In this case also, the spectrum 
> using both the codes are not matching with each other.  The input files are 
> given below.


Before studying your system, try to solve the issue mentioned above (i.e. reach 
the agreement between spectra computed with two codes). Try first more simple 
XC functionals (LDA or GGA), and see if the spectra agree. Then try hybrid 
functionals. Try also another pseudopotential (without the word "gipaw").


You use different broadening parameters in Lorentzian smearing: In Davidson you 
have 0.005 Ry and in Lanczos you have 0.01 Ry. If you want the spectra to 
agree, you must use the same broadening parameter.


When you use the turbo_spectrum.x code after the turbo_lanczos.x code, set

 itermax0 = 2000
 itermax   = 10000

 extrapolation="osc"

Please see the paper turboTDDFT (see TDDFPT/README) in order to understand what 
does this mean.


HTH


Regards,

Iurii



--
Dr. Iurii Timrov
Postdoctoral Researcher
Swiss Federal Institute of Technology Lausanne (EPFL)
Laboratory of Theory and Simulation of Materials (THEOS)
CH-1015 Lausanne, Switzerland

________________________________
From: pw_forum-boun...@pwscf.org <pw_forum-boun...@pwscf.org> on behalf of prem 
sen <premsen1...@gmail.com>
Sent: Tuesday, January 24, 2017 11:53 AM
To: pw_forum@pwscf.org
Subject: Re: [Pw_forum] Learning TDDFT calculation in Atomic label (CH4 
molecule) using turbo_lanczos.x and turbo_davidson.x

Dear Dr. Iurii Timrov,
                             Thanks for the reply.
"The two codes (Lanczos and Davidson) must give you the same absorption 
spectrum (when both are converged)."

How to check the convergence for both the codes ??

I was checking the optical absorption spectra for CH4 molecule (using the given 
example for the TDDFPT package) using both the code. They are not matching with 
each other.


Also I was trying to do for Carbon-dimer.  In this case also, the spectrum 
using both the codes are not matching with each other.  The input files are 
given below.

I have checked the ecut & ecutfock convergence and also relaxed the structure.

For turbo_davidson.x ::

PW.X:

&CONTROL
  calculation  = "scf",
  restart_mode = "from_scratch"
  prefix       = "C2",
  pseudo_dir   = "../pseudo/",
  outdir       = "./tmp/",
/
&SYSTEM
  ibrav     = 0,
  nat       = 2,
  ntyp      = 1,
  ecutwfc   = 75,
  ecutfock  = 75,
  nosym     = .true.,
  input_dft = 'PBE0',
  x_gamma_extrapolation = .false.,
  exxdiv_treatment = 'vcut_spherical',
/
&ELECTRONS
  conv_thr    = 1.D-10,
  mixing_beta = 0.6,
  adaptive_thr = .true.,
/
CELL_PARAMETERS angstrom
10.0  0.0  0.0
 0.0 10.0  0.0
 0.0  0.0 10.0
ATOMIC_SPECIES
C  12.01  C.pbe-mt_gipaw.UPF
ATOMIC_POSITIONS (angstrom)
C        1.248029552   0.000000000   0.000000000
C        0.000000000   0.000000000   0.000000000
K_POINTS {Gamma}

Turbo_davidson.x:
&lr_input
    prefix="C2",
    outdir="./tmp/",
/
&lr_dav
    ecutfock  = 75,
    num_eign=30,
    num_init=60,
    num_basis_max = 300,
    residue_conv_thr = 1.0E-4,
    start = 0.0
    finish = 1.0,
    step = 0.0005,
    broadening = 0.005,
    reference = 0.0,
    d0psi_rs = .true.,
    lshift_d0psi = .true.,
    p_nbnd_virt = 20
/

For turbo_lanczos.x ::

I used the same file for pw.x as given above.


Turbo_lanczos.x:

&lr_input
    prefix="C2",
    outdir="./tmp/",
    restart_step=500,
/
&lr_control
    itermax=2000,
    ipol=4,
    ecutfock  = 75,
    pseudo_hermitian = .true.,
    d0psi_rs = .true.,
/


Turbo_spectrum.x:

&lr_input
  prefix='C2',
  outdir="./tmp/",
  itermax0 = 410
  itermax  = 10000
  epsil=0.01
  start=0.0d0
  end=1.50d0
  increment=0.001d0
  ipol=4
/



Thanks & regards,
Prem Sen
Ph.D. Student,
IIT Bombay,
Mumbai,India.
_______________________________________________
Pw_forum mailing list
Pw_forum@pwscf.org
http://pwscf.org/mailman/listinfo/pw_forum

Reply via email to