TeamAtomECS / AtomECS

Cold atom simulation code
GNU General Public License v3.0
46 stars 12 forks source link

Evaporation #81

Open YangChemE opened 2 years ago

YangChemE commented 2 years ago

Hey Elliot @ElliotB256

I'm trying to simulate a cross beam evaporative cooling in ODT, I have two cross gaussian beam setup, the power of each beam decreases from 5 W to 0.02 W (wavelength: 1064 nm and spot size: about 35 μm) in a time range of around 6 s. Atoms are initiated at around ~ 50 μK.

My question is, is the density of the atom cloud supposed to be increasing in this whole process? In my simulation, the density increased a little at the beginning then started to decrease until the end. If it really should be increasing then should I consider tunning the collision parameters? or is there anything else you think could contribute to this issue?

ElliotB256 commented 2 years ago

Hey there,

The collision module is still being developed by @DavidGarrick so I'll tag him and see what he has to say. Are you certain your parameters for atom number and temperature will lead to runaway evaporative cooling? If number is too low then the evaporation can fail and the density starts decreasing instead of increasing over time

YangChemE commented 2 years ago

Thanks for the quick reply!

I tried putting 1,000,000 atoms at the beginning (which I guess is enough?) with cloud radius of about 12 μm and T about 50 μK. The density was increasing for about 1 s while the increasing rate getting lower, then start from 1 s, where I still had ~ 600 ,000 atom left, the density started decreasing. Do you think the way I decrease the beam power could have some effect on it?

ElliotB256 commented 2 years ago

What species are you stimulating and what is the s-wave scattering length you are using? Also, what does the phase space density look like during evap?

ElliotB256 commented 2 years ago

@d-garrick

YangChemE commented 2 years ago

The PSD does go up in whole process, I was simulating Rb, the sigma I used was 3.5e-16, same as in the "top_trap_with_collisions" example.

d-garrick commented 2 years ago

Hi,

As Elliot says this sounds like you aren't getting runaway evap. This could be that the initial density is too low (though 1e6 atoms sounds reasonable), or it could also be that you are evapping too quickly and the cloud doesn't have time to thermalise as atoms are removed.

I am still in the process of improving the collisions system, which includes automatically rescaling the spatial partitioning system to account for significant changes in the cloud size or density. You could try pulling the collisions_upgrades branch and using that. This code runs and produces sensible looking results, but I haven't yet compared to experimental data as a final test. If you don't use that, make sure your spatial partition cell size is a good size - containing on average ~30 particles, but also not more than around 5-10% of the cloud size. This can be hard to achieve when the cloud density changes a lot.

I think the 3.5e-16 value for the Rb cross section is a factor of 2 too small, since I missed the bosonic enhancement factor when I first estimated it. Again, I haven't compared to experiment.

I'd suggest correcting the cross section and slowing the evap process a little. Also calculate your collision rate throughout the process and check that it is neither very low nor too high. If it is very high you need to ensure that the simulation timestep is smaller than the mean free time for a particle, and you also could be in a hydrodynamically limited regime.

ElliotB256 commented 2 years ago

Cross reference #14

YangChemE commented 2 years ago

@d-garrick Hi,

Thanks a lot for the advice. I'll go through it and see if I get any better results.

YangChemE commented 2 years ago

@d-garrick Hi,

Should I expect the number of box to be the cube of an integer? as the number of boxes is set same for each dimension, or am I missing something? I was trying to dig into the collision data from the tracker but found the total number of boxes for each step (I was using the dynamic cell partition branch) doesn't have an integer cubic root.

d-garrick commented 2 years ago

Hi,

The number of total cells is the cube of the number along each direction, but the system will only consider boxes that actually contain any atoms. This goes for both the collisions loop and the tracker. Presumably if you check how many atoms are in each box that the tracker outputs, you will find they all contain at least one atom.

YangChemE commented 2 years ago

Hi, Guys I've been trying to simulate ODT evaporation again recently, but still no luck regards the density trends (it still drops down after increasing a little). So I am describing in detail about my setup here and see if you guys have any advices. Thanks in advance!

I started the simulation with 1e5 particles, the positions and velocities are drawn from normal distributions, the std for the position and velocity distribution is 1.2e-5 (12 μm) and 0.03 m/s, respectively.

I have two gaussian beams crossing each other with a 60 degree angle between them. Each beam has wavelength of 1064e-9 and e_radius of $35e^{-6} \over \sqrt{2}$. The power of each beam follows the relation below:

$$p(t) = 5 - (5 - 0.023) \frac{(1 - e^{-1.2t/5.7})} {1- e^{-1.2}}$$

the power of each beam decreases from 5w to 0.023w in the time range of 5.7 s, after I hold the beam power at 5w for 0.1s. So The total simulation time is 5.8s, where I "load" the odt for 0.1s then do the evap cooling for another 5.7s. The timestep I used was 1e-5.

The collision parameters are as below: macroparticle (# of atoms each simulation particle stands for): 100 sigma: 7e-16 (as suggested that 3.5e-16 is a factor of 2 too small) collision limitation: 10,000,000

The partition parameters (I am using @d-garrick 's branch that repartition the box in each step): box number (in each direction): 2500 box width: 3e-6 ( this is only the initial value so I guess it wouldn't matter much?) target density: 30

I am not using the losses options in this case.

The capture region is a sphere of r = 5e-4. The way I do the post analysis is as following: Among all the particles left in the capture region, I define the "cloud" as those in a sphere of r = $35e^{-6} \over \sqrt{2}$ (the radius of the beam spot), then I do the analysis calculation based on them.

Another thing I think might worth noting is that I define the radius of the cloud as following, I firstly calculate the radius of the gyration of all the particles inside the defined "cloud", $$R{g}^{2} = \frac{1}{N} \sum{i=1}^{N} |r{i} - r{com}|^{2}$$ where the $r{com}$ is the center of mass of all the particles, then the radius of gyration $$R{g} = \sqrt {R_{g}^{2}}$$.

The radius of the cloud is then defined as $$R{cloud} = \sqrt{\frac{5}{3}}R{g}$$ which is the relation between the $R_{g}$ and $R$ for a solid sphere. Please do suggest better way of defining the cloud radius, though I dont't think this would affect the trends of the result much.

Then I can calculate volume and density based on this radius. The density increases in the first about 1s and reaches a plateau, then it drops back. I'm attaching the density vs time plot here and the data file as well as the collision record along the simulation. All data are in csv format.

I'm not sure if I'm missing something substantial, so Again any suggestions would be appreciated, thanks a lot in advance! Also apologize in advance if the information provided here is not clear enough.

--Yang

rho analysis_data.csv collisions.csv