qutip_qoc._goat module
This module contains functions that implement the GOAT algorithm to calculate optimal parameters for analytical control pulse sequences.
- class qutip_qoc._goat._GOAT(objective, time_interval, time_options, control_parameters, alg_kwargs, guess_params, **integrator_kwargs)[source]
Bases:
objectClass for storing a control problem and calculating the fidelity error function and its gradient wrt the control parameters, according to the GOAT algorithm.
- _prepare_generator_dia()[source]
Combines the scaled and parameterized Hamiltonian elements on the diagonal of the coupled system (X, dX) Hamiltonian, with associated pulses: [[ H, 0, 0, …], [[ X], _[d1H, H, 0, …], [d1X], _[d2H, 0, H, …], [d2X], _[…, ]] […]] Additionlly, if the time is a parameter, the time-dependent parameterized Hamiltonian without scaling
- _prepare_generator_off_dia()[source]
Combines the scaled and parameterized Hamiltonian off-diagonal elements for the coupled system (X, dX) with associated pulses: [[ H, 0, 0, …], [[ X], _[d1H, H, 0, …], [d1U], _[d2H, 0, H, …], [d2U], _[…, ]] […]] The off-diagonal elements correspond to the derivative elements
- _prepare_state()[source]
inital state (t=0) for coupled system (X, dX): [[ X(0)], -> [[1], _[d1X(0)], -> [0], _[d2X(0)], -> [0], _[ … ]] -> [0]]
- _solve_EOM(evo_time, params)[source]
Calculates X, and dX i.e. the derivative of the evolution operator X wrt the control parameters by solving the Schroedinger operator equation returns X as Qobj and dX as list of dense matrices