DOS for molecules

4 views
Skip to first unread message

Edward Linscott

unread,
Jun 30, 2025, 5:57:14 AMJun 30
to koopmans-users
A user has privately asked me how to generate densities of states for molecules, and I thought I would post my answer here so others could see it:

For molecules, one can construct a DOS using the in-built functionalities in ASE.

For example, for tutorial 1 I can do something like the following:

from koopmans import io
from ase_koopmans.dft.dos import DOS
import matplotlib.pyplot as plt

# Load the completed workflow 
wf = io.read('ozone.pkl')

# Access the final (KI) calculation
final_calc = wf.calculations[-1]

# Construct a DOS
dos = DOS(final_calc)

# Plot and save the DOS
plt.plot(dos.get_energies(), dos.get_dos())
plt.savefig('dos.png')


This follows the example here http://wiki.fysik.dtu.dk/ase/ase/dft/dos.html

Note that this DOS is nothing less than a set of Gaussians centered on each of the molecular orbital energies. You can change the width of each Gaussian when constructing the DOS object.
Reply all
Reply to author
Forward
0 new messages