Place an elastic ball in a box and shake it. What is the total energy of the ball? In classical physics, it can be any number which depends on how hard you shook. Shake a tiny bit harder and you’ll add a tiny bit more energy.
Bound quantum systems behave differently. They have discrete energy spectra. Place a quantum particle in a box, excite it, and measure the total energy – you’ll find there are a discrete set of outcomes, or possible energy levels. There are bands of energy that are impossible to measure!
These discrete energies of a quantum system are fundamental to the system’s properties and behaviour. For example, they let us predict molecular dynamics, and are instrumental in the design of new drugs. But molecules are much more complicated than the simple particle in a box system. Calculating molecular spectra is a very hard task for classical computers. In fact, it is hard, slow and memory expensive to even describe the studied quantum system to the classical computer!
Enter the quantum computer. It’s easy to describe a quantum system to quantum computer. How then do we obtain the system’s energy levels?
We describe how in our recent paper. Our algorithm combines several subroutines for near-future classical-quantum hybdrid computers – these include variational simulation, imaginary time evolution and Hamiltonian penalisation. We demonstrated our algorithm discovering some energy levels of the Lithium Hydride molecule.
Our algorithm is cheap and compatible with near-future quantum architectures – it could soon be implemented by experimentalists to study the energy levels of new quantum systems!
Our full paper can be read here, and we’ve made all the simulation code behind it publicly available!