HaeffnerLab / IonSim.jl

a simple tool for simulating trapped ion systems
https://ionsim.org
MIT License
71 stars 17 forks source link

Add M1 transitions #83

Open marwahaha opened 2 years ago

neil-glikin commented 2 years ago

Two parts to this:

  1. Calculating the transition matrix element. This will manifest as a new case (if multipole == "M1") in the function matrix_element in ions.jl.
  2. Extending the loop over allowed transitions in hamiltonians.jl to include transitions between sublevels that may be coupled with an M1 transition.
neil-glikin commented 2 years ago

For the second part: hamiltonians.jl determines its list of possible transitions to loop over from the function subleveltransitions in ions.jl. Currently this does not return any pairs of energy sublevels within the same energy level. This portion may simply come down to including those pairs in the return result of subleveltransitions. However it's also possible that we want to avoid doing this unless we need to (e.g. only if a "Microwave" is present in the Hamiltonian).

neil-glikin commented 2 years ago

To do on branch M1-transitions: