qcodes_contrib_drivers.drivers.SingleQuantum package

Submodules

qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum module

The MIT License (MIT)

Copyright (c) 2020 Single Quantum B. V.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

class qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum.ChannelArray(channel, *args, **kwargs)[source]

Bases: ParameterWithSetpoints

Fetches the correct row from the matrix counters, based on the channel This is a parameter with setpoints, where the setpoints are the time stamps :param channel: the channel number to select the row from the counters matrix :type channel: int

Return (numpy_array): a numpy vector of length npts, containing the counts

get_raw()[source]

get_raw is called to perform the actual data acquisition from the instrument. This method should either be overwritten to perform the desired operation or alternatively for Parameter a suitable method is automatically generated if get_cmd is supplied to the parameter constructor. The method is automatically wrapped to provide a get method on the parameter instance.

class qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum.CommunicationHandler(root_instrument, log, TCP_IP_ADR='localhost', CONTROL_PORT=12000, COUNTS_PORT=12345)[source]

Bases: object

Handles the communication, creates JSON strings

acquire_cnts_t()[source]

Acquire n count measurments transposed. Return (numpy_array): Acquired counts with timestamp in first row.

auto_cali_bias_currents()[source]

Performs the automatic bias calibration. Make sure that no light reaches the detectors during this procedure. To check if this function has finished use self.auto_cali_finished() which return true or false.

auto_cali_finished()[source]

Check if auto calibration of the bias currents to find a given dark count value has finished. Returns: True if finished, False otherwise

enable_detectors(state=True)[source]
error(error_msg)[source]

Called in case of an error

get_bias_current()[source]
get_bias_voltage()[source]
get_measurement_periode()[source]

Get measurment periode in ms. Return (float): time

get_number_of_detectors()[source]
get_trigger_level()[source]
set_bias_current(current_in_uA)[source]
set_dark_counts_auto_iv(dark_counts)[source]

Set the dark counts for the automatic detector calibration. After this command execute: self.auto_cali_bias_currents()

set_measurement_periode(t_in_ms)[source]
set_trigger_level(trigger_level_mV)[source]
class qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum.SQCounts(TCP_IP_ADR='localhost', TCP_IP_PORT=12345, CNTS_BUFFER=100)[source]

Bases: Thread

close()[source]
get_n(n)[source]
run()[source]

Method representing the thread’s activity.

You may override this method in a subclass. The standard run() method invokes the callable object passed to the object’s constructor as the target argument, if any, with sequential and keyword arguments taken from the args and kwargs arguments, respectively.

class qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum.SQTalk(TCP_IP_ADR='localhost', TCP_IP_PORT=12000, error_callback=None)[source]

Bases: Thread

add_labelProps(data)[source]
check_error(data)[source]
close()[source]
get_all_labels(label)[source]
get_label(label)[source]
run()[source]

Method representing the thread’s activity.

You may override this method in a subclass. The standard run() method invokes the callable object passed to the object’s constructor as the target argument, if any, with sequential and keyword arguments taken from the args and kwargs arguments, respectively.

send(msg)[source]
sub_jsons(msg)[source]

Return sub json strings. {}{} will be returned as [{},{}]

class qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum.TimeArray(channel, *args, **kwargs)[source]

Bases: Parameter

Fetches the row with time stamps, currently channel 0 This parameter is used as the setpoints for the channelarray :param channel: the channel number to select the row from the counters matrix (channel 0 is the timestamp) :type channel: int

Return (numpy_array): a numpy vector of length npts, containing the time stamps

get_raw()[source]

get_raw is called to perform the actual data acquisition from the instrument. This method should either be overwritten to perform the desired operation or alternatively for Parameter a suitable method is automatically generated if get_cmd is supplied to the parameter constructor. The method is automatically wrapped to provide a get method on the parameter instance.

class qcodes_contrib_drivers.drivers.SingleQuantum.SingleQuantum.WebSQControlqcode(*args: Any, **kwargs: Any)[source]

Bases: Instrument

The instrument.

IMPORTANT: the QCoDeS parameter ‘counters’ updates the time stamp and counters from the detectors. Always call ‘counters’ if you want to fetch the next ‘npts’ counts.

Module contents