Dear QuantumWise staff:
i've got a problem in calculating energy dependent LDOS using the script in "
http://www.quantumwise.com/documents/tutorials/latest/MolecularDevice/index.html/chap.analysis.html#sect1.analysis.lddos", maybe the memory of my laptop is not enough. So i save the LDOS in separated NC(-1~-0.5eV: LDOS0.nc; -0.4~0eV: LDOS1.nc; 0.1~0.5eV: LDOS2.nc; 0.6~1eV: LDOS3.nc).
how to plot all of these NC in one pic?
PS: the script in the website:
# import list with lddos
lddos_list = nlread('lddos.nc', LocalDeviceDensityOfStates) .............how to read all of the NC using nlread?
#Find the z-spacing
dX, dY, dZ = lddos_list[0].volumeElement().convertTo(Ang)
dz = dZ.norm()
shape = lddos_list[0].shape()
z = dz * numpy.arange(shape[2])
# calculate average lddos along z for each spectrum
energies = []
lddos_z = []
for lddos in lddos_list:
energies = energies + [lddos.energy().inUnitsOf(eV)]
avg_z = numpy.apply_over_axes(numpy.mean,lddos[:,:,:],[0,1]).flatten()
lddos_z = lddos_z + [avg_z]
# plot as contour plot
# make variables
energies = numpy.array(energies)
X, Y = numpy.meshgrid(z, energies)
Z = numpy.array(lddos_z).reshape(numpy.shape(X))
import pylab
#plot the LDDOS(E, z)
pylab.xlabel('z (Angstrom)',fontsize=12,family='sans-serif')
pylab.ylabel('Energy (eV)',fontsize=12,family='sans-serif')
contour_values = numpy.linspace(0,0.02,21)
pylab.contourf(X, Y, Z, contour_values)
pylab.colorbar()
pylab.axis([6,16,-3, 3])
pylab.title('Au-DTB-Au : LDDOS(E, z)')
pylab.savefig('lddos.png',dpi=100)
pylab.show()
Regards
kaypu