OxIonics / ionics_fits

Small python fitting library with an emphasis on Atomic Molecular and Optical Physics
Apache License 2.0
0 stars 0 forks source link

Include models for fitting flops over distribution of motional states #34

Closed AUTProgram closed 1 year ago

AUTProgram commented 1 year ago

The core functionality has been implemented, but I will leave this as a draft request until I have cleaned up the code.

hartytp commented 1 year ago

cool! Let me know if / when you want a review.

AUTProgram commented 1 year ago

Bit of background on approach taken: when centre-of-mass motion is included in description of atomic dynamics, the probability of transition between different states (internal plus centre-of-mass motion) also depends on the motional part of the wavefunction. In particular, if the states are coupled by a spatially inhomogenous driving field, the frequency of the field can be tuned such that only a particular sideband is on resonance. In this case, the evolution breaks up into independent pairs of states that are coupled. The total probability of transition from internal ground state $|g \rangle$ to excited state $|e \rangle$ is then equal to the transition probability starting from some $|g \rangle |n$, averaged over the probability $P(n)$ that each particular Fock state $|n \rangle$ is occupied. The calculation of total transition probability is thus split up into two parts, one to find the transition probability for all relevant $|g \rangle |n \rangle$ and the other to find the occupation probability for each Fock state. The former is independent of the particular probability distribution assumed for the Fock states and thus forms basis for LaserFlop class, while the latter depends on the underlying motional distribution.

AUTProgram commented 1 year ago

I was going to add more comments before opening up to review, but since you guys have already started, I have replied to your comments directly above

hartytp commented 1 year ago

why the force push?

hartytp commented 1 year ago

I wonder if we should move the physics bits (calculating probability distributions etc) into a separate module so it's easier to reuse (e.g. I suspect other fit models will need the thermal distribution). Suggestions for a name? physics? quant_phy?

AUTProgram commented 1 year ago

Just to check: you mean module, rather than package? I agree we should move it to a separate module, but probably would not want to make a separate package just for this. I would say quant_phy is better than physics, but maybe we can find an even better name.

hartytp commented 1 year ago

exactly