Subband structure of graphene nanoribbons: Difference between revisions

From phys824
Jump to navigationJump to search
Line 5: Line 5:
==8-ZGNR using grid==
==8-ZGNR using grid==


*[[Media:zgnr_grid.py|zgnr_grid.py]]:
*zgnr_grid.py:


<pre>
<pre>

Revision as of 11:39, 26 October 2012

Tools

8-ZGNR using grid

  • zgnr_grid.py:

8-ZGNR using LCAO

  • zgnr_lcao.py:
from gpaw import GPAW, FermiDirac
from ase import Atoms
from ase.io import read, write
from gpaw import GPAW, PoissonSolver, Mixer
from ase.structure import graphene_nanoribbon 


# -------------------------------------------------------------
# Bulk configuration
# -------------------------------------------------------------

zgnr = graphene_nanoribbon(8, 1, type='zigzag', saturated=True,
                            C_H=1.1, C_C=1.42086, vacuum=8.0,
                            magnetic=False, initial_mag=0.0)

zgnr.center()
write('zgnr.traj', zgnr)


# Make self-consistent calculation and save results
calc = GPAW(h=0.18,
            mode='lcao',
            xc='PBE',
            basis='szp(dzp)',
            kpts=(1,1,9),
            occupations=FermiDirac(width=0.05, maxiter=2000),
            mixer=Mixer(beta=0.010, nmaxold=8, weight=100.0),
            poissonsolver=PoissonSolver(eps=1e-12),
            txt='band_sc.txt')

zgnr.set_calculator(calc)
zgnr.get_potential_energy()
calc.write('band_sc.gpw')


# Calculate band structure along Gamma-X 
from ase.dft.kpoints import ibz_points, get_bandpath
#points = ibz_points['fcc']
#G = points['Gamma']
#X = points['X']
G = (0, 0, 0)
X = (0, 0, 0.5)
kpts, x, X = get_bandpath([G, X], zgnr.cell, 60)

calc = GPAW('band_sc.gpw',
            mode='lcao',
            xc='PBE',
            basis='szp(dzp)',
            kpts=kpts,
            txt='band_harris.txt',
            fixdensity=True,
            parallel={'domain': 1},
            usesymm=None,
            convergence={'bands': 'all'})

if calc.input_parameters['mode'] == 'lcao':
    calc.scf.reset()

calc.get_potential_energy()
calc.write('band_harris.gpw')