2 min how to - aarongallant/swift GitHub Wiki

How to make a simple SWIFT waveform

This is a very simple waveform. There is no "smoothing" of the waveform, and the default window (Plack-Taper) will not suppress Gibb's oscillations in the gap.

  • log-on to one of the DAQ machines (preferably one that has a good CPU).
  • Type in the following command
  • swift -f %f+% -g %freq gap% -c %cleaning width% -d %freq step% -n %num points% -t %t_dip% -a %name%

Here %f+% is the reduced cyclotron frequency of the species you don't want to clean (the thing you're trying to measure), %freq gap% is the +/- gap around %f+%, %cleaning width% is the frequency cleaning width (how wide the side bands are), %freq step% is the step size in frequency space, %num points% is the number of points in the waveform, %t_dip% is the length of time for dipole cleaning, and %name% is the name of the waveform in the afg volatile memory.

NOTE: %num points% should be larger than (%f+% + %freq gap% + %cleaning width%)/%freq step%. If not, the desired frequency range will not be covered.

Example waveform

I want to do a measurement of 39K. I want the clean side bands to be 10kHz wide, the gap around 39K to be +/- 300Hz, and a frequency step of 10Hz, have a cleaning time of 20ms, and I want the waveform to be called "McSwifty".

swift -f 1451854 -g 300 -c 10000 -d 10 -n 150000 -t 0.020 -a McSwifty

I chose = 150000 because (1451854 + 300 + 10000)/10 = 146215.4, which is less than 150000.

This will generate the following time-domain signal:

And this is the zero-filled Fourier transform:

Note the large Gibb's oscillations in the frequency gap. These oscillations can be reduced by using a different windowing function, "smoothing" the frequency waveform before doing Fourier transforms, and increasing the number of points in the waveform.

⚠️ **GitHub.com Fallback** ⚠️