Utilities

change

Changes a model Parameter to some value during an analysis.

Syntax:
change(change_dict=none, relative=false, **kwargs)
Required:

**kwargs: Alternative method to specify parameter:value pairs to change

Optional:

change_dict: Dictionary of parameter:value pairs to change.

relative: Whether to increment from the parameters current value or not

debug

An action that will start an IPython debug shell.

Syntax:
debug(name='Debug')
plot
Syntax:
plot(name=abcd)
print
Syntax:
print(*args, name='printer', eval=true)
print_model

An action that prints the model object being currently used to run actions.

Syntax:
print_model(name='print_model')
print_model_attr

Prints an attribute of the model being currently used.

Syntax:
print_model_attr(*args, eval=true)
Required:

*args: Strings input for the attribute to print

eval: bool, optional: When True symbolic expressions will be evaluated before printing. Defaults to True.

run_locks

An action that iteratively moves the system to lock. Currently, lock error signals must be readouts, not detectors, for use in this action.

Syntax:
run_locks(
    *locks,
    method='proportional',
    scale_factor=1,
    sensing_matrix=none,
    max_iterations=10000,
    display_progress=false,
    optimize_phase=false,
    d_dof_phase=1e-09,
    set_gains=true,
    d_dof_gain=1e-09,
    exception_on_fail=true,
    no_warning=false,
    pre_step=none,
    show_progress_bar=none,
    name='run locks'
)
Required:

method: Which method to use in the locking iterations.

scale_factor: Factor by which to multiply all DOF changes. Should be set below 1 if it is desired to minimize overshooting.

sensing_matrix: Sensing matrix of gains used in locking, of the type that would be returned by state.apply(SensingMatrixDC(lock_dof_names, readout_names) If None, the sensing matrix is recalculated. Recommended to be None except when locking multiple times in a row, e.g. with DragLocks.

max_iterations: The maximum number of locking steps in each execution of RunLocks.

display_progress: When true, displays the status of the error signals during locking iterations.

optimize_phase: When true, optimize readout demodulation phases between lock DOFs and their paired readouts prior to running locks.

d_dof_phase: Step size to use when optimizing the demodulation phase for each error signal/DOF pair.

set_gains: Only applies if method is “proportional”. If true, sets the gains for each error signal/DOF pair. If false, uses pre-set gains.

d_dof_gain: Step size to use when calculating the gain for every pair of error signals and DOFs.

exception_on_fail: When true, raise exception if maximum iterations are surpassed.

no_warning: When true, don’t even raise a warning if maximum iterations are reached. Recommended to be false unless repeatedly testing locking.

pre_step: Action to apply on each step of the lock

show_progress_bar: Will enable the progress bar when true.

name: Name of the action.

Optional:

*locks: A list of locks to use in each RunLocks step. If not provided, all locks in model are used.