device.m

From Spinach Documentation Wiki
Jump to: navigation, search

Spin-boson device interface to pulse sequences. This context generates the evolution generators for a device containing spins and bosonic modes at a fixed orientation of the spin subsystem, and passes them to the pulse sequence function, which should be supplied as a handle. Where liquid.m, crystal.m, and powder.m describe molecules in magnets, this context describes devices: electromagnetic cavities, phonon modes, and transmons declared in the inter.modes block, whose Hamiltonian terms carry no orientation dependence. The spin subsystem is rotated into the requested orientation; the bosonic terms are not, because rotations of a cavity mode are not defined.

The function builds the Hamiltonian and adds the relaxation and kinetics superoperators, applies transmitter offsets to the spin channels and detuning offsets to the bosonic modes, wipes the decoupled species from the generators and from the initial state, and optionally supplies the thermal equilibrium state with Bose-Einstein populations of the modes. Drives applied to bosonic modes are not a context matter: the pulse sequence builds them from the creation and annihilation operators of the mode it drives.

Syntax

    answer=device(spin_system,pulse_sequence,parameters,assumptions)

Parameters

    pulse_sequence         - pulse sequence function handle. See the
                             experiments directory for the list of
                             pulse sequences that ship with Spinach.

    parameters.spins       - a cell array giving the spin species that
                             the pulse sequence works on, in the order
                             of channels, e.g. {'E'}; may be omitted
                             when no spin channels are needed

    parameters.offset      - transmitter offsets in Hz on each of the
                             spin species listed in parameters.spins

    parameters.mode_offset - detuning offsets in Hz, one for each
                             bosonic mode in the order of declaration;
                             the transmitter sign convention of para-
                             meters.offset applies: each offset enters
                             the Hamiltonian as minus the offset times
                             the number operator of its mode, so that a
                             positive offset lowers the mode frequency

    parameters.decouple    - a cell array of spin species to be wiped
                             from the evolution generators and from the
                             initial state, e.g. {'1H'}; the default is
                             an empty cell array, meaning no decoupling

    parameters.orientation - Euler angles (ZYZ active convention, ra-
                             dians) giving the orientation of the spin
                             subsystem; bosonic terms are not affected;
                             the default is [0 0 0]

    parameters.rframes     - numerical rotating frame specification for
                             spin species, e.g. {{'E',2}}, as described
                             in the header of rotframe.m

    parameters.needs       - a cell array of strings specifying additional
                             information required by the sequence:

                             'rho_eq' - thermal equilibrium state at the
                             system temperature, with the Bose-Einstein
                             populations of the bosonic modes included;
                             this is placed into parameters.rho0

    parameters.*           - additional subfields may be required by
                             the pulse sequence - check its docs

    assumptions            - 'labframe', 'cavity', or 'spin-phonon';
                             see the header of assume.m for details

Outputs

    answer - whatever it is that the pulse sequence returns.

Examples

A spin coupled longitudinally to a phonon mode, with a trajectory taken through the spin-phonon assumption set:

    % Particle specification
    sys.isotopes={'E','V7'};

    % Phonon mode with a longitudinal coupling
    inter.modes.frqs={[] 20e6};
    inter.modes.longitudinal=cell(2,2);
    inter.modes.longitudinal{1,2}=4e6*sqrt(2);

    % Sequence parameters
    parameters.sweep=5e8; parameters.npoints=501;
    parameters.rho0=state(spin_system,{'Lx','BL1'},{1,2});

    % Trajectory through the device context
    traj=device(spin_system,@traject,parameters,'spin-phonon');

Notes

  1. The system must contain at least one bosonic mode; pure spin systems belong with liquid.m, crystal.m, and powder.m contexts.
  2. Dissipative bosonic modes require a Liouville space formalism; coherent simulations may also use zeeman-hilb.
  3. The equilibrium state requested by 'rho_eq' is built from the laboratory frame Hamiltonian at the declared orientation, so it is correct for oriented spin subsystems.

See also

create.m, assume.m, hamiltonian.m, relaxation.m, rlx_modes.m, coherent.m, equilibrium.m, liquid.m, crystal.m, powder.m, Spin system specification, Kernel contexts

Version 2.12, authors: Ilya Kuprov