Skip to content

Tools for measuring fidelity of a pulse sequence and numerically computing the Magnus Series terms for those sequences.

Notifications You must be signed in to change notification settings

wynter-alford/spin-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

spin-tools

Tools for measuring fidelity of a pulse sequence and calculating magnus expansion terms. The main script is sequenceAnalysis.m which uses supporting functions found in the 'code' directory.

sequenceAnalysis.m

This is the main script used to generate results. Contains code to calculate up to the 4th order term in the Magnus Expansion for a pulse sequence. Calculates the fidelity of an experimental sequence relative to an expected theoretical unitary operator based on the zeroth, zeroth through second, and (when enabled) zeroth through fourth order terms. A few other potentially interesting fidelities are also included. Includes code to simulate a number of pulse sequences, and more can be added easily by modifying the "getSequence" function. Note that this script requires use of the functions found in the "code" directory in order to function.

Magnus Tools.ipynb

The first section of this notebook outlines the code used to compute the terms of the magnus expansion for various pulse sequences. The second section contains all of the results generated by simulations through March 2021. More recent results have not yet been updated here.

Decrepit

Contains a number of scripts which were formerly used to collect results and are stored here for posterity. These should no longer be used as all updates are now being made to sequenceAnalysis.m

Result Array Naming Convention

Array naming convention is results_ABC with a 3-letter code.

The first letter is the METRIC in question. The metric options are:
O: overlap(Uexp, AHTUnitaries{termInd}) is the propagator overlap of the experimental and AHT propagators.
D: uDist(Uexp, AHTUnitaries{termInd}) is the unitary distance (currently using the spectral norm) between the experimental and AHT propagators.
H: specnorm(MagnusTerms{termInd}) contains the norms (spectral, currently) of the Average Hamiltonian terms.

The second letter is the PULSE TREATMENT for constructing Uexp, the EXPERIMENTAL propagator. The options are:
I: Instantaneous pulses (deltaUnitary)
F: Finite pulses (expUnitary)
H: used if the Metric is H, since in that case treatment of Uexp is irrelevant.

The third letter is the PULSE METHOD FOR AHT, indicating whether the Average Hamiltonian computations used pulse divisions. The options are:
T: Traditional analysis assuming instantaneous pulses
P: Pulse length incorporated into the AHT computations
S Uexp compared only to the identity matrix; AHT terms not computed (the true Time-Suspension fidelity) (Never occurs with HH).

For example, results_OFT is the overlap between testUnitary (Uexp for finite pulses) and AHTUnitaries{termInd} (U_AHT,n not accounting for pulse widths in the AHT computations).

About

Tools for measuring fidelity of a pulse sequence and numerically computing the Magnus Series terms for those sequences.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages