qtics package#

Qtics module.

Subpackages#

Submodules#

qtics.experiment module#

Base Experiment classes.

class qtics.experiment.BaseExperiment(name: str, data_file: str | None = None, data_dir: str | None = None)[source]#

Bases: ABC

Base experiment class.

add_instrument(inst: Instrument)[source]#

Add an instrument with the correct name.

all_instruments(func_name: str, *args, **kwargs)[source]#

Apply function to all instruments.

append_data_group(group_name: str, parent_name: str | None = None, datasets: dict | None = None, **attributes)[source]#

Save data appending to hdf5 file.

get_datasets_dict(data_file: str | None = None)[source]#

Load the datasets of an hdf5 file as dictionary.

abstract main()[source]#

Execute main part of the experiment.

run()[source]#

Run the experiment.

save_config()[source]#

Save experiment’s attributes and instruments defaults.

class qtics.experiment.Experiment(name: str, data_file: str | None = None, data_dir: str | None = None)[source]#

Bases: BaseExperiment

Experiment with monitoring functions.

add_monitor(monitor: MonitorExperiment)[source]#

Add monitoring experiment.

monitor_failed() bool[source]#

Check if monitoring condition has failed and restore safe values.

run()[source]#

Run the experiment with parallel monitoring functions.

class qtics.experiment.MonitorExperiment(name: str, data_file: str | None = None, data_dir: str | None = None)[source]#

Bases: BaseExperiment

Base monitoring experiment class.

sleep: float = 5#
watch(event: Event)[source]#

Run the experiment continuously until event is set.

qtics.logger module#

Loggers configuration.

class qtics.logger.CustomHandler[source]#

Bases: StreamHandler

Custom handler for logging algorithm. Credits to Qibocal.

format(record)[source]#

Format the record with specific format.