Hi,
I am trying to modify the script given in (By Dr.Anders)
http://quantumwise.com/forum/index.php?topic=1551.0
so that I can plot the band diagram along Y axis. I have marked the places where I replaced Z coordinates with Y coordinate in the script (please see attachment, the modifications are in
line 20 and line 124)
Can you please verify that this is correct ?
Also can you please tell me how do I calculate the band diagram along a specific line (set of atoms along a particular point in Z axis, with band diagram along Y axis) ?
I am thinking of using DOS calculation along a specific set of atoms and then using the obtained DOS in band diagram calculation.
conf = nlread('device.nc',DeviceConfiguration)[0]
#setup energies
energies = numpy.linspace(-2,3,100) * eV
#calculate the dos from the Left electrode
dos = DeviceDensityOfStates(conf, energies=energies, contributions=Left)
#calculate the projections on the atoms in the central region
dos_projection = [
dos.evaluate(projection_list = ProjectionList([i])) for i in range(3,11)
]
#plot the data
import pylab
pylab.figure()
for i in range(3,11):
label = conf.elements()[i].symbol()+'('+str(i)+')'
pylab.plot(
energies.inUnitsOf(eV),
dos_projection[i-3].inUnitsOf(eV**-1),
label=label
)
pylab.legend()
pylab.xlabel("Energy (eV)")
pylab.ylabel("dos (1/eV)")
pylab.show()
The above code calculates the DOS only on the left electrode, Is there a way to specify some atoms along the transport direction (Z axis in this case) ?