Auspex icon indicating copy to clipboard operation
Auspex copied to clipboard

WIP: Parametric Sweeps and DataContainer improvements

Open grahamrow opened this issue 3 years ago • 0 comments

This has ballooned into a larger PR:

  1. Remove adaptive refinement from the sweeper internals — this can be done using external loops with much less agitation.
  2. Add some general metadata to the AuspexDataContainer format, including a file format version, datestamp, and the possibility of adding arbitrary metadata to the writer. This still needs to be wired up to the experiment class in some useful way.
  3. Improve the way parametric sweep information is stored in the metadata, and improve the API for performing parametric sweeps.
  4. Allow general metafile sweeps for QGL recompilation. Example below:
        def mf(sigma):
            q1.pulse_params["sigma"] = sigma
            mf = RabiAmp(q1, np.linspace(-1,1,21))
            return mf

        exp = QubitExperiment(mf(5e-9), averages=5)
        exp.set_fake_data(x6_1, np.linspace(-1, 1, 21), random_mag=0.0)
        exp.add_sweep("q1_sigma", np.linspace(1e-9, 10e-9, 10), metafile_func=mf)
        exp.run_sweeps()

Unlike before this "q1_sigma" sweep automatically creates a dummy parameter whose value gets passed to the specified metafile_func.

grahamrow avatar Apr 13 '21 00:04 grahamrow