|
def | __init__ (self, config, kwargs) |
| Create PulsedMasterLogic object with connectors. More...
|
|
def | on_activate (self) |
| Initialisation performed during activation of the module.
|
|
def | on_deactivate (self) |
|
def | fast_counter_constraints (self) |
| Pulsed measurement properties ###.
|
|
def | fast_counter_settings (self) |
|
def | ext_microwave_constraints (self) |
|
def | ext_microwave_settings (self) |
|
def | measurement_settings (self) |
|
def | timer_interval (self) |
|
def | analysis_methods (self) |
|
def | extraction_methods (self) |
|
def | analysis_settings (self) |
|
def | extraction_settings (self) |
|
def | signal_data (self) |
|
def | signal_alt_data (self) |
|
def | measurement_error (self) |
|
def | raw_data (self) |
|
def | laser_data (self) |
|
def | alternative_data_type (self) |
|
def | fit_container (self) |
|
def | set_measurement_settings (self, settings_dict=None, kwargs) |
| Pulsed measurement methods ###. More...
|
|
def | set_fast_counter_settings (self, settings_dict=None, kwargs) |
|
def | set_ext_microwave_settings (self, settings_dict=None, kwargs) |
|
def | set_analysis_settings (self, settings_dict=None, kwargs) |
|
def | set_extraction_settings (self, settings_dict=None, kwargs) |
|
def | set_timer_interval (self, interval) |
|
def | set_alternative_data_type (self, alt_data_type) |
|
def | manually_pull_data (self) |
|
def | toggle_ext_microwave (self, switch_on) |
|
def | ext_microwave_running_updated (self, is_running) |
|
def | toggle_pulse_generator (self, switch_on) |
|
def | pulser_running_updated (self, is_running) |
|
def | toggle_pulsed_measurement (self, start, stash_raw_data_tag='') |
|
def | toggle_pulsed_measurement_pause (self, pause) |
|
def | measurement_status_updated (self, is_running, is_paused) |
|
def | do_fit (self, fit_function, use_alternative_data=False) |
|
def | fit_updated (self, fit_name, fit_data, fit_result, use_alternative_data) |
|
def | save_measurement_data (self, tag, with_error) |
|
def | pulse_generator_constraints (self) |
| Sequence generator properties ###.
|
|
def | pulse_generator_settings (self) |
|
def | generation_parameters (self) |
|
def | analog_channels (self) |
|
def | digital_channels (self) |
|
def | saved_pulse_blocks (self) |
|
def | saved_pulse_block_ensembles (self) |
|
def | saved_pulse_sequences (self) |
|
def | sampled_waveforms (self) |
|
def | sampled_sequences (self) |
|
def | loaded_asset (self) |
|
def | generate_methods (self) |
|
def | generate_method_params (self) |
|
def | clear_pulse_generator (self) |
| Sequence generator methods ###.
|
|
def | sample_ensemble (self, ensemble_name, with_load=False) |
|
def | sample_ensemble_finished (self, ensemble) |
|
def | sample_sequence (self, sequence_name, with_load=False) |
|
def | sample_sequence_finished (self, sequence) |
|
def | load_ensemble (self, ensemble_name) |
|
def | load_sequence (self, sequence_name) |
|
def | loaded_asset_updated (self, asset_name, asset_type) |
|
def | save_pulse_block (self, block_instance) |
|
def | save_block_ensemble (self, ensemble_instance) |
|
def | save_sequence (self, sequence_instance) |
|
def | delete_pulse_block (self, block_name) |
|
def | delete_all_pulse_blocks (self) |
| Helper method to delete all pulse blocks at once.
|
|
def | delete_block_ensemble (self, ensemble_name) |
|
def | delete_all_block_ensembles (self) |
| Helper method to delete all pulse block ensembles at once.
|
|
def | delete_sequence (self, sequence_name) |
|
def | delete_all_pulse_sequences (self) |
| Helper method to delete all pulse sequences at once.
|
|
def | set_pulse_generator_settings (self, settings_dict=None, kwargs) |
|
def | set_generation_parameters (self, settings_dict=None, kwargs) |
|
def | generate_predefined_sequence (self, generator_method_name, kwarg_dict=None, sample_and_load=False) |
|
def | predefined_sequence_generated (self, asset_name, is_sequence) |
|
def | get_ensemble_info (self, ensemble) |
|
def | get_sequence_info (self, sequence) |
|
|
| pulsedmeasurementlogic = Connector(interface='PulsedMeasurementLogic') |
|
| sequencegeneratorlogic = Connector(interface='SequenceGeneratorLogic') |
|
| sigDoFit = QtCore.Signal(str, bool) |
|
| sigToggleMeasurement = QtCore.Signal(bool, str) |
|
| sigToggleMeasurementPause = QtCore.Signal(bool) |
|
| sigTogglePulser = QtCore.Signal(bool) |
|
| sigToggleExtMicrowave = QtCore.Signal(bool) |
|
| sigFastCounterSettingsChanged = QtCore.Signal(dict) |
|
| sigMeasurementSettingsChanged = QtCore.Signal(dict) |
|
| sigExtMicrowaveSettingsChanged = QtCore.Signal(dict) |
|
| sigAnalysisSettingsChanged = QtCore.Signal(dict) |
|
| sigExtractionSettingsChanged = QtCore.Signal(dict) |
|
| sigTimerIntervalChanged = QtCore.Signal(float) |
|
| sigAlternativeDataTypeChanged = QtCore.Signal(str) |
|
| sigManuallyPullData = QtCore.Signal() |
|
| sigMeasurementDataUpdated = QtCore.Signal() |
|
| sigTimerUpdated = QtCore.Signal(float, int, float) |
|
| sigFitUpdated = QtCore.Signal(str, np.ndarray, object, bool) |
|
| sigMeasurementStatusUpdated = QtCore.Signal(bool, bool) |
|
| sigPulserRunningUpdated = QtCore.Signal(bool) |
|
| sigExtMicrowaveRunningUpdated = QtCore.Signal(bool) |
|
| sigExtMicrowaveSettingsUpdated = QtCore.Signal(dict) |
|
| sigFastCounterSettingsUpdated = QtCore.Signal(dict) |
|
| sigMeasurementSettingsUpdated = QtCore.Signal(dict) |
|
| sigAnalysisSettingsUpdated = QtCore.Signal(dict) |
|
| sigExtractionSettingsUpdated = QtCore.Signal(dict) |
|
| sigSavePulseBlock = QtCore.Signal(object) |
|
| sigSaveBlockEnsemble = QtCore.Signal(object) |
|
| sigSaveSequence = QtCore.Signal(object) |
|
| sigDeletePulseBlock = QtCore.Signal(str) |
|
| sigDeleteBlockEnsemble = QtCore.Signal(str) |
|
| sigDeleteSequence = QtCore.Signal(str) |
|
| sigLoadBlockEnsemble = QtCore.Signal(str) |
|
| sigLoadSequence = QtCore.Signal(str) |
|
| sigSampleBlockEnsemble = QtCore.Signal(str) |
|
| sigSampleSequence = QtCore.Signal(str) |
|
| sigClearPulseGenerator = QtCore.Signal() |
|
| sigGeneratorSettingsChanged = QtCore.Signal(dict) |
|
| sigSamplingSettingsChanged = QtCore.Signal(dict) |
|
| sigGeneratePredefinedSequence = QtCore.Signal(str, dict) |
|
| sigBlockDictUpdated = QtCore.Signal(dict) |
|
| sigEnsembleDictUpdated = QtCore.Signal(dict) |
|
| sigSequenceDictUpdated = QtCore.Signal(dict) |
|
| sigAvailableWaveformsUpdated = QtCore.Signal(list) |
|
| sigAvailableSequencesUpdated = QtCore.Signal(list) |
|
| sigSampleEnsembleComplete = QtCore.Signal(object) |
|
| sigSampleSequenceComplete = QtCore.Signal(object) |
|
| sigLoadedAssetUpdated = QtCore.Signal(str, str) |
|
| sigGeneratorSettingsUpdated = QtCore.Signal(dict) |
|
| sigSamplingSettingsUpdated = QtCore.Signal(dict) |
|
| sigPredefinedSequenceGenerated = QtCore.Signal(object, bool) |
|
This logic module combines the functionality of two modules.
It can be used to generate pulse sequences/waveforms and to control the settings for the pulse generator via SequenceGeneratorLogic. Essentially this part controls what is played on the pulse generator. Furthermore it can be used to set up a pulsed measurement with an already set-up pulse generator together with a fast counting device via PulsedMeasurementLogic.
The main purpose for this module is to provide a single interface while maintaining a modular structure for complex pulsed measurements. Each of the sub-modules can be used without this module but more care has to be taken in that case. Automatic transfer of information from one sub-module to the other for convenience is also handled here. Another important aspect is the use of this module in scripts (e.g. jupyter notebooks). All calls to sub-module setter functions (PulsedMeasurementLogic and SequenceGeneratorLogic) are decoupled from the calling thread via Qt queued connections. This ensures a more intuitive and less error prone use of scripting.