Author Topic: Peak of Density of State  (Read 67 times)

0 Members and 1 Guest are viewing this topic.

Offline huiju

  • New ATK user
  • *
  • Posts: 2
  • Country: kr
  • Reputation: 0
    • View Profile
Peak of Density of State
« on: October 7, 2021, 15:50 »
Hi, I'm a beginner using Quantum ATK.

I want to get some density of state plots, but it shows very broad peak.
Is there a some setting or method to get a sharp peak in DOS(density of state)?
For your reference, I attach the image of CNT(7,0) density of state that I got.

Thanks.
Best regards,
Huiju Lee



Offline mlee

  • QuantumATK Staff
  • ATK Guru
  • *****
  • Posts: 170
  • Country: dk
  • Reputation: 6
    • View Profile
Re: Peak of Density of State
« Reply #1 on: October 8, 2021, 13:51 »
You can plot the DOS spectrum with two different methods. There is an option to select the Gauissian or tetrahedron spectrum, but the current version doesn't include it in the GUI.
See https://docs.quantumatk.com/manual/Types/DensityOfStates/DensityOfStates.html#densityofstates-c

You can plot it such as the below one:

# read DOS object from file
dos = nlread('CNT70.hdf5', DensityOfStates)[0]

# make list of energies
energies = numpy.arange(-14,5,0.01)*eV

# calculate the DOS spectrum with two different methods
dos_t = dos.tetrahedronSpectrum(energies)
dos_g = dos.gaussianSpectrum(energies, broadening = 0.2*eV)

#plot the spectra using pylab
import pylab
pylab.figure()
pylab.plot(energies.inUnitsOf(eV), dos_t.inUnitsOf(eV**-1))
pylab.plot(energies.inUnitsOf(eV), dos_g.inUnitsOf(eV**-1))
pylab.xlabel("Energy (eV)")
pylab.ylabel("DOS (1/eV)")
pylab.show()