GOAT based Implementation of quantum gates in Spin systems
Gradients are computed analytically, whereas Hessians are approximated using MATLAB's built-in (fminunc) BFGS type optimization .
Structure of Code is described below:
-
main.m is the main script, which initilizes global stucture self to hold all the variables of optimization, it acts as base for all the calculations carried out in the optimization process.
-
Evolution.m is the vectorized dynamical evolution of system and dynamical gradients, which are solved using Runge-Kutta type integrator, it is invoked from Computations.m
-
Computations.m converts vectorized evolution to matrices and returns unitary evolution operator along with its partial-derivatives with respect to control parameters.
-
Cost.m uses outputs from computations.m to compute infidelity and gradients
-
outfun.m is ouput function to store infidelity and state.
-
Remaining functions are used to plot and analyze results.
Here is flowchart of our implementation:
This implementation is inspired from: