[Pw_forum] how to calculate and plot HOMO or LUMO isosurface

Franklin Zhan zhanhit at hotmail.com
Wed Jul 25 10:12:09 CEST 2012


Dear Giuseppe,
Deepest thanks for your advice.
Your suggestion is really helpful and inspiring.
If you are in Singapore, I would like to buy you a cup of coffee,
Cheers~,


Franklin


Franklin Zhan
 
Ph.D student
School of Mechanical and Aerospace Engineering,
Nanyang Technological University, Singapore.





> From: giuseppe.mattioli at ism.cnr.it
> To: pw_forum at pwscf.org
> Date: Wed, 25 Jul 2012 09:16:43 +0200
> Subject: Re: [Pw_forum] how to calculate and plot HOMO or LUMO isosurface
> 
> 
> Dear Felipe
> You seem not to be a chemist...:-)
> The ground state of an O2 molecule is a triplet one, with 7 up valence electrons and 5 down.
> 
> Dear Zhan
> This morning (morning in Italy, at least) you are lucky. I've done (almost) the same thing 
> yesterday...
> 
> Once the above is settled, first you should perform a relax calculation with K_POINTS (gamma). You do 
> not need a nscf calculation if you use a bit of smearing. Something like
> 
>  &control
>     calculation = 'relax'
>     prefix='$FILE',
>     pseudo_dir = '$PSEUDO_DIR/',
>     outdir='$TMP_DIR/',
>  /
>  &system
>     ibrav=1, celldm(1)=30.000000,
>     nat=2, ntyp=1,
>     ecutwfc =35.0,
>     ecutrho =280.0,
>     occupations='smearing', degauss=0.01,
>     nspin=2,
>     starting_magnetization(1)=0.3,
>  /
>  &electrons
>     mixing_mode='plain'
>     mixing_beta=0.3
>     conv_thr=1.0d-7
>     electron_maxstep=200
>  /
>  &ions
>     ion_dynamics='bfgs'
>  /
> ATOMIC_SPECIES
> O    15.999     O_pbe.van.UPF
> ATOMIC_POSITIONS {angstrom}
> O        5.000576334   5.029093041   5.029093041
> O        5.009423666   5.870906959   5.870906959
> K_POINTS {gamma}
> 
> will provide a sufficient number of unoccupied orbitals for your purpose.
> 
> Then, remember that when you use nspin=2 and K_POINTS {gamma} you are formally using two k points 
> (gamma up and gamma down) which are labelled as kpoint=1 and kpoint=2, respectively. In your pw.x 
> output you should acknowledge (but you should already know it by molecular orbital theory of 
> homonuclear diatomic molecules...) that both the HOMO in the up channel (-9.1985  -9.1983) and the 
> LUMO in the down channel (-4.9925  -4.9924) are doubly degenerate. Thus, you must plot the single-
> electron orbitals and sum them.
> 
>  ------ SPIN UP ------------
> 
> 
>           k = 0.0000 0.0000 0.0000 ( 47171 PWs)   bands (ev):
> 
>    -34.3196 -21.0375 -17.4698 -17.4697 -14.7359  -9.1985  -9.1983  -0.6483
>     -0.1403  -0.0924
> 
>  ------ SPIN DOWN ----------
> 
> 
>           k = 0.0000 0.0000 0.0000 ( 47171 PWs)   bands (ev):
> 
>    -33.1724 -19.2543 -13.7742 -12.6937 -12.6937  -4.9925  -4.9924  -0.5833
>     -0.0519  -0.0089
> 
>      the Fermi energy is    -8.4505 ev
> 
> This is quite easy, supposing that you read carefully the pp.x input guide... But, as I said, you 
> won a free ride today...
> 
>  &inputpp
>     prefix  = '$FILEA'
>     outdir = '$TMP_DIR/'
>     filplot = '$FILEA-HOMOa.dat'
>     plot_num= 7
>     kpoint=1
>     kband=6
>  /
> 
> $PARA_PREFIX $ESPRESSO/pp.x $PARA_POSTFIX < $INPFILE >> $OUTFILE
> 
>  &inputpp
>     prefix  = '$FILEA'
>     outdir = '$TMP_DIR/'
>     filplot = '$FILEA-HOMOb.dat'
>     plot_num= 7
>     kpoint=1
>     kband=7
>  /
> 
> $PARA_PREFIX $ESPRESSO/pp.x $PARA_POSTFIX < $INPFILE >> $OUTFILE
> 
> 
>  &inputpp
>  /
>  &plot
>     nfile = 2
>     filepp(1) = '$FILEA-HOMOa.dat'
>     weight(1) = 1.0
>     filepp(2) = '$FILEA-HOMOb.dat'
>     weight(2) = 1.0
>     iflag = 3
>     output_format = 5
>     fileout = '$FILEA-HOMO.plot'
>     e1(1) =1.0, e1(2)=1.0, e1(3) = 0.0,
>     e2(1) =0.0, e2(2)=0.0, e2(3) = 1.0,
>     nx=56, ny=40
>  /
> 
> $PARA_PREFIX $ESPRESSO/pp.x $PARA_POSTFIX < $INPFILE >> $OUTFILE
> 
> This will produce a nice .xsf file containing your HOMO orbital, which you can plot with xcrysden. 
> You may also obtain a cube file, but I cannot remember the output format.
> 
> As for the LUMO, use kpoint=2, and the correct kband numbers and do the same thing.
> 
> I hope this really help... (in Italy I would have said: you owe me a cup of coffee...)
> 
> Giuseppe
> 
> 
> On Wednesday 25 July 2012 08:43:30 Filipe Camargo Dalmatti Alves Lima wrote:
> > Dear Zhan,
> > 
> > The number of electrons on your system determines the occupied bands and
> > consequently the HOMO level.
> > 
> > So, What you need to do?
> > 
> > First, check the number of electron that you are using. (If you are using
> > the O default pseudopotencials it should be 6 valence electrons)
> > Then, you'll have 12 electrons and 6 bands (each bands is occupied by 2
> > electrons).
> > 
> > Now check your output file, which is generated using the pw.x code.
> > The band number 6 represents your HOMO level and the band number 7 is the
> > LUMO one.
> > 
> > So, now you know your bands. Then you can obtain the wavefunction.
> > 
> > You will need to run the pp.x twice: one for HOMO and another for LUMO.
> > kband=6 (to plot HOMO)
> > and
> > kdand=7 (to plot LUMO)
> > 
> > I hope it will solve your problem,
> > 
> > Best regards,
> > 
> > >  Dear PWSCF users,
> > > 
> > > I am trying to calculate HOMO and LUMO levels and plot these isosurfaces
> > > for O2 molecule.
> > > I first relaxed the O2 and then did nscf calculation. then I used pp.x to
> > > calculate the HOMO and LUMO levels. but I can not find the HOMO or LUMO
> > > level in output files.
> > > the code for pp.x is pasted as following:
> > > 
> > > &inputpp
> > > 
> > >     prefix= 'O2'
> > >     outdir= '/scratch/zhan0273/PWSCF/O2/tmp'
> > > 
> > > filplot = 'O2'
> > > plot_num= 7
> > > spin_component=0
> > > ! kpoint=40
> > > kband=8
> > > /
> > > &plot
> > > nfile = 1
> > > filepp(1) = 'O2'
> > > weight(1) = 1.0
> > > iflag = 3
> > > output_format = 5
> > > fileout = 'O2.orb.xsf'
> > > /
> > > 
> > > So please give advice. Thank you all in advance!
> > > 
> > > Best regards,
> > > 
> > > ------------------------------
> > > Franklin Zhan
> > > Ph.D student
> > > School of Mechanical and Aerospace Engineering,
> > > Nanyang Technological University, Singapore.
> > > 
> > > 
> > > 
> > > 
> > > _______________________________________________
> > > Pw_forum mailing list
> > > Pw_forum at pwscf.org
> > > http://www.democritos.it/mailman/listinfo/pw_forum
> 
> -- 
> ********************************************************
> - Article premier - Les hommes naissent et demeurent
> libres et ègaux en droits. Les distinctions sociales
> ne peuvent être fondèes que sur l'utilitè commune
> - Article 2 - Le but de toute association politique
> est la conservation des droits naturels et 
> imprescriptibles de l'homme. Ces droits sont la libertè,
> la propriètè, la sùretè et la rèsistance à l'oppression.
> ********************************************************
> 
>    Giuseppe Mattioli                            
>    CNR - ISTITUTO DI STRUTTURA DELLA MATERIA   
>    v. Salaria Km 29,300 - C.P. 10                
>    I 00015 - Monterotondo Stazione (RM)          
>    Tel + 39 06 90672836 - Fax +39 06 90672316    
>    E-mail: <giuseppe.mattioli at ism.cnr.it>
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://www.democritos.it/mailman/listinfo/pw_forum
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.democritos.it/pipermail/pw_forum/attachments/20120725/349bf0a8/attachment-0001.htm 


More information about the Pw_forum mailing list