-
Notifications
You must be signed in to change notification settings - Fork 43
Add introductory tutorial on Jaynes-Cummings-Hubbard Model #130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Hi @Ericgig, I have opened this PR on possibility of adding a tutorial on Jaynes-Cummings-Hubbard model. Would love to have your feedback on it. |
Hi @Ericgig! This is my first contribution to the QuTiP tutorials, and I’ve added a new notebook titled The notebook:
It looks like the CI failed because of dead links in some unrelated files:
Since those aren’t touched by this PR, I believe the failure isn't caused by my changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great! Thank you for your contribution. May I ask how you came up with creating this tutorial, and its contents? Is this a topic you are very familiar with?
|
||
# Introduction to the Jaynes-Cummings-Hubbard Model: Three-Site System | ||
|
||
Authors: [Your Name] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feel free to put your name here!
|
||
$$i\hbar\frac{d|\psi(t)\rangle}{dt} = H|\psi(t)\rangle$$ | ||
|
||
In QuTiP, we use the `mesolve` function to numerically solve this equation. For a closed quantum system without dissipation, the dynamics will be purely coherent, showing quantum oscillations as photons hop between cavities and interact with atoms. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is a closed system, it would be a bit more usual to use sesolve
. (mesolve
will just delegate to sesolve
in this case)
|
||
# Calculate time evolution using the master equation solver | ||
# For a closed system without dissipation, this solves the Schrödinger equation | ||
result = mesolve(H, psi0, tlist, [], ops['cavity_n'] + ops['atom_e']) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
result = mesolve(H, psi0, tlist, [], ops['cavity_n'] + ops['atom_e']) | |
result = mesolve(H, psi0, tlist, [], e_ops=(ops['cavity_n'] + ops['atom_e'])) |
(or sesolve
)
e_ops
will be a keyword-only parameter from qutip 5.3.
return np.mean(delta_n_values), np.mean(alpha_values) | ||
``` | ||
|
||
Now let's calculate these order parameters across a range of hopping strengths to see how they change as we approach and cross the phase transition: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am a bit confused here since I do not really see anything in the plots I get. In fact,
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here's what's happening as per my understanding:
For a finite-size system (especially a small 3-site system), the ground state preserves certain symmetries (this is my educated guess) that cause the expectation value of the field operator (⟨a⟩) to be exactly zero, even across the phase transition. The photon number fluctuations (blue circles) still increase as expected, showing a precursor to the phase transition.
In larger systems (let's say extremely large), ⟨a⟩ would become non-zero in the superfluid phase, serving as a true order parameter. But in our small system, we need to look at other quantities (like photon number fluctuations) to see signatures of the transition.
|
||
### Theoretical Background on Photon Propagation | ||
|
||
In the JCHM, photons don't simply move from one cavity to the next in a classical way. Instead, they show quantum mechanical wave-like behavior, with interference effects and probability amplitudes spreading across the lattice. The propagation pattern depends on both the hopping strength J and the cavity-atom coupling strength g. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am sorry, but this plot confuses me. Is it possible that the axes labels are switched?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @pmenczel! Thanks for reviewing. I have been in talks with Eric to make some contribution as part of my GSoC application. I am a recent Master's graduate in physics from Cardiff University. There I worked on a project that focused on simulating features of Jaynes Cummings model using QuTiP. I also wanted to explore the Jaynes Cummings Hubbard model, but couldn't do it at the time due to time constraints. This tutorial is somewhat an extension of my previous work trying to simulate more rich models. https://github.com/Vanshaj0429/cavity-qed-simulations If you have any more questions or feedback. I am happy to answer :) |
Summary
This tutorial introduces the Jaynes-Cummings-Hubbard Model on a three-site cavity array, showcasing how to build and simulate light–matter interactions using QuTiP. It walks through Hamiltonian construction, ground state analysis, time evolution, and phase transition signatures, offering a compact, hands-on guide to exploring quantum dynamics in coupled cavity QED systems.
The notebook is written in Jupytext Markdown format and adheres to the qutip-tutorials contribution guidelines. All code cells execute successfully and pass
pytest --nbmake
.Tutorial Highlights
Key Concepts Covered:
Construction of the full JCHM Hamiltonian for three coupled atom-cavity sites
Analysis of the ground state properties and atomic excitation
Time evolution of localized photon excitations using mesolve
Exploration of phase transition signatures using:
Effects of:
Tools & Techniques
tensor
,qeye
,destroy
, andsigmaz
eigenstates
qutip.mesolve
matplotlib
File Location
tutorials-v5/miscellaneous/JCHM-tutorial.md
Additional Notes
Let me know if: