silq.measurements package

Submodules

silq.measurements.measurement_modules module

class silq.measurements.measurement_modules.MeasurementSequence(name=None, measurements=None, condition_sets=None, set_parameters=None, acquisition_parameter=None, silent=True, set_active=False, continuous=False, base_folder=None)[source]

Bases: object

classmethod load_from_dict(load_dict)[source]
property next_measurement

Get measurement after self.measurement. In case there is no next measurement, returns None

save_to_config(name=None)[source]

silq.measurements.measurement_types module

class silq.measurements.measurement_types.Condition(**kwargs)[source]

Bases: object

classmethod load_from_dict(load_dict)[source]
class silq.measurements.measurement_types.TruthCondition(attribute=None, relation=None, target_val=None, **kwargs)[source]

Bases: silq.measurements.measurement_types.Condition

class ModCondition(num, start=False, **kwargs)[source]

Bases: silq.measurements.measurement_types.Condition

check_satisfied(*args, **kwargs)[source]
check_satisfied(data)[source]
class silq.measurements.measurement_types.ConditionSet(*conditions, on_success=None, on_fail=None, update=False)[source]

Bases: object

A ConditionSet represents a set of conditions that a dataset can be tested against. The ConditionSet also contains information on what action should be performed if the dataset satisfies the conditions (success) or does not (fail). These actions can then be performed by a MeasurementSequence. Possible actions are:

‘success’

Finish measurement sequence successfully

‘fail’

Finish measurement sequence unsuccessfully

‘next_{cmd}’

Go to next measurement if it exists, else it is cmd, where cmd can be either ‘success’ or ‘fail’.

None

Go to next measurement if it exists. If there is no next measurement, the action is ‘success’ if the last measurement satisfies the condition_set, else ‘fail’. Note that this is not a string.

Parameters
  • on_success (str) – action to perform if some points satisfy conditions.

  • on_fail (str) – action to perform if no points satisfy conditions.

  • update (bool) – Values should be updated if dataset satisfies conditions.

  • result (dict) –

    result after testing a dataset for conditions. items are:

    is_satisfied (bool)

    Dataset has points that satisfy conditions

    action (str)

    action to perform, taken from self.on_success if is_satisfied, else from self.on_fail.

    satisfied_arr (bool arr)

    array of dataset dimensions, where each element indicates if that value satisfies conditions.

add_condition(condition)[source]
check_satisfied(data)[source]

Checks if a dataset satisfies a set of conditions

Parameters

dataset – Dataset to check against conditions

Returns

Dictionary containing:

is_satisfied (bool)

If the conditions are satisfied

action (string)

Action to perform

satisfied_arr (bool arr)

array where each element corresponds to a combination of set vals, and whose value specifies if those set_vals satisfies conditions

Return type

Dict[str, Any]

classmethod load_from_dict(load_dict)[source]
class silq.measurements.measurement_types.Measurement(name=None, base_folder=None, condition_sets=None, acquisition_parameter=None, set_parameters=None, set_vals=None, step=None, step_percentage=None, points=None, discriminant=None, silent=True, break_if=False)[source]

Bases: silq.tools.general_tools.SettingsClass

check_condition_sets(data, *condition_sets)[source]

Tests dataset for condition sets. Condition sets are tested until the result of a condition set has an ‘action’ key that is not equal to None. After this, self.condition_set is updated to this condition set. If no condition sets have an action, self.condition_set will equal the last condition set :param *condition_sets: condition sets to be tested, to be tested before :param self.condition_sets:

Returns

condition set that has an ‘action’, or the last condition set if none have an action.

Return type

self.condition_set

get_optimum(dataset=None, condition_set=None)[source]

Get the optimal value from the possible set vals. If satisfied_arr is not provided, it will first filter the set vals such that only those that satisfied self.condition_sets are satisfied.

Parameters

dataset (Optional) – Dataset to test. Default is self.dataset

Returns

Optimal set val for each set parameter

The key is the name of the set parameter. Returns None if no set vals satisfy condition_set.

self.optimal_val (val): Discriminant value at optimal set vals.

Returns None if no set vals satisfy condition_set

Return type

self.optimal_set_vals (dict)

initialize()[source]
initialize_measurement()[source]
classmethod load_from_dict(load_dict)[source]
property loc_provider
satisfies_condition_set(data, action=None)[source]
property set_vals
set_vals_from_idx(idx)[source]
update_set_parameters(condition_set)[source]
class silq.measurements.measurement_types.Loop0DMeasurement(name=None, acquisition_parameter=None, **kwargs)[source]

Bases: silq.measurements.measurement_types.Measurement

get(set_active=True)[source]

Performs a measurement at a single point using qc.Measure :returns: Dataset

initialize_measurement()[source]
property measurement_name
set_vals_from_idx(idx)[source]

Return set vals that correspond to the acquisition idx. In this case it returns an empty dict, since there are no set parameters :param idx: Acquisition idx, in this case always zero

Returns

Dict of set vals

class silq.measurements.measurement_types.Loop1DMeasurement(name=None, set_parameter=None, set_parameters=None, acquisition_parameter=None, set_vals=None, step=None, step_percentage=None, points=None, **kwargs)[source]

Bases: silq.measurements.measurement_types.Measurement

get(set_active=True)[source]

Performs a 1D measurement loop :returns: Dataset

initialize_measurement()[source]
property measurement_name
set(set_vals=None, step=None, points=None)[source]
property set_parameter
set_vals_from_idx(idx)[source]

Return set vals that correspond to the acquisition idx. :param idx: Acquisition idx. If equal to -1, returns nan for each element

Returns

Dict of set vals (in this case contains one element)

class silq.measurements.measurement_types.Loop2DMeasurement(name=None, set_parameters=None, acquisition_parameter=None, set_vals=None, step=None, step_percentage=None, points=None, **kwargs)[source]

Bases: silq.measurements.measurement_types.Measurement

get(set_active=True)[source]

Performs a 2D measurement loop :returns: Dataset

initialize_measurement()[source]
property measurement_name
set(set_vals=None, step=None, points=None)[source]
set_vals_from_idx(idx)[source]

Return set vals that correspond to the acquisition idx. :param idx: Acquisition idx

Returns

Dict of set vals (in this case contains two elements)

Module contents