Difference between revisions of "Grape hilb.m"
m (Correct function page syntax from current Spinach source) |
m (Update function page arguments and outputs from current Spinach source) |
||
| Line 38: | Line 38: | ||
==Outputs== | ==Outputs== | ||
| − | + | ||
| − | + | fidelity - fidelity of the control sequence | |
| − | + | ||
| − | + | grad - gradient of the fidelity with respect to the control | |
| − | + | sequence | |
| − | + | ||
| − | + | hess - Hessian of the fidelity with respect to the control | |
| + | sequence | ||
| + | |||
| + | traj_data.forward - forward trajectory from the initial condition, as a | ||
| + | stack of state matrices | ||
==Notes== | ==Notes== | ||
Revision as of 15:22, 5 June 2026
Gradient Ascent Pulse Engineering objective function and gradient for Hilbert space. Propagates a system through a shaped pulse from an initial state to a target state and returns fidelity and its gradient.
Syntax
[traj_data,fidelity,grad,hess]=grape_hilb(spin_system,drifts,controls,...
waveform,rho_init,rho_targ,...
fidelity_type)
Arguments
spin_system - Spinach data object that has been
through the optimcon.m problem
setup function
drifts - the drift Hamiltonians: a cell array
containing one matrix (for time-inde-
pendent drift) or multiple matrices
(for time-dependent drift)
controls - control operators in Hilbert space
(cell array of matrices)
waveform - control coefficients for each control
operator (in rows of a matrix), rad/s
rho_init - initial state of the system as a density
matrix in Hilbert space
rho_targ - target state of the system as a density
matrix in Hilbert space
fidelity_type - 'real' (real part of the overlap)
'imag' (imaginary part of the overlap)
'square' (absolute square of the overlap)
Outputs
fidelity - fidelity of the control sequence
grad - gradient of the fidelity with respect to the control
sequence
hess - Hessian of the fidelity with respect to the control
sequence
traj_data.forward - forward trajectory from the initial condition, as a
stack of state matrices
Notes
This is a low level function that is not designed to be called directly. Use grape_xy.m and grape_phase.m instead.
See also
Version 2.11, authors: Ilya Kuprov, Maxi Keitel