qtt.instrument_drivers package
Subpackages
- qtt.instrument_drivers.virtualAwg package
- Subpackages
- Submodules
- qtt.instrument_drivers.virtualAwg.sequencer module
- qtt.instrument_drivers.virtualAwg.serializer module
- qtt.instrument_drivers.virtualAwg.settings module
- qtt.instrument_drivers.virtualAwg.templates module
- qtt.instrument_drivers.virtualAwg.virtual_awg module
VirtualAwg
VirtualAwg.enable_debug
VirtualAwg.add_instruments()
VirtualAwg.are_awg_gates()
VirtualAwg.awgs
VirtualAwg.disable_outputs()
VirtualAwg.enable_outputs()
VirtualAwg.instruments
VirtualAwg.make_markers()
VirtualAwg.pulse_gates()
VirtualAwg.pulse_gates_2d()
VirtualAwg.reset()
VirtualAwg.run()
VirtualAwg.sequence_gates()
VirtualAwg.settings
VirtualAwg.stop()
VirtualAwg.sweep_gates()
VirtualAwg.sweep_gates_2d()
VirtualAwg.update_digitizer_marker_settings()
VirtualAwg.update_setting()
VirtualAwg.update_slave_awg_marker_settings()
VirtualAwgError
Submodules
qtt.instrument_drivers.BlueforsMonitor module
- class qtt.instrument_drivers.BlueforsMonitor.FridgeDataReceiver(*args: Any, **kwargs: Any)[source]
Bases:
InstrumentDataClient
Receives temperature and pressure data from the Bluefors fridge with server connection.
qtt.instrument_drivers.DistributedInstrument module
- class qtt.instrument_drivers.DistributedInstrument.InstrumentDataClient(*args: Any, **kwargs: Any)[source]
Bases:
Instrument
A proxy client for collecting instrument measurable quantities from a server.
- Parameters:
- class qtt.instrument_drivers.DistributedInstrument.InstrumentDataServer(functions, address='*', port=8080, user=None, password=None)[source]
Bases:
object
Represents a server proxy for sending instrument measurable quantities to a client.
- Parameters:
qtt.instrument_drivers.FPGA_ave module
qtt.instrument_drivers.ILM200 module
- class qtt.instrument_drivers.ILM200.OxfordInstruments_ILM200(*args: Any, **kwargs: Any)[source]
Bases:
VisaInstrument
This is the qcodes driver for the Oxford Instruments ILM 200 Helium Level Meter.
Usage: Initialize with <name> = instruments.create(‘name’, ‘OxfordInstruments_ILM200’, address=’<Instrument address>’) <Instrument address> = ASRL4::INSTR
Note: Since the ISOBUS allows for several instruments to be managed in parallel, the command which is sent to the device starts with ‘@n’, where n is the ISOBUS instrument number.
- get_all()[source]
Reads all implemented parameters from the instrument, and updates the wrapper.
- Input:
None
- Output:
None
- get_idn()[source]
Overides the function of Instrument since ILM does not support ‘*IDN?’
This string is supposed to be a comma-separated list of vendor, model, serial, and firmware, but semicolon and colon are also common separators so we accept them here as well.
- Returns:
A dict containing vendor, model, serial, and firmware.
- Return type:
idn (dict)
qtt.instrument_drivers.TimeStamp module
qtt.instrument_drivers.gates module
Created on Wed Feb 8 13:36:01 2017
@author: diepencjv, eendebakpt
- class qtt.instrument_drivers.gates.VirtualDAC(*args: Any, **kwargs: Any)[source]
Bases:
Instrument
This class maps the dacs of IVVI(‘s) to named gates.
The main functionality is the renaming of numbered dacs of one or multiple DAC instruments (for example an IVVI or SPI D5a module) to gates, which in general have names describing their main purpose or position on the sample.
- add_instruments(instruments)[source]
Add instruments to the virtual dac.
- Parameters:
instruments (list) – a list of qcodes instruments
- property gate_map
A map between IVVI dac and gate.
- get_boundaries()[source]
Get boundaries on the values that can be set on the gates.
- Returns:
A range of allowed values per parameter.
- Return type:
- property instruments
A list of QCoDeS instruments.
- resetgates(activegates, basevalues=None, verbose=2)[source]
Reset a set of gates to new values.
If no new values are specified the gates will be reset to zero.
- resettodataset(dataset)[source]
Reset gates to the values from a previous dataset :param dataset: the dataset or location to load from. :type dataset: DataSet or str
- restore_at_exit() AbstractContextManager [source]
Create context that stores values of the parameters and restores on exit
Example
>>> gate_map = {'T': (0, 15), 'P1': (0, 3), 'P2': (0, 4)} >>> ivvi = VirtualIVVI('ivvi', model=None) >>> gates = VirtualDAC('gates', instruments=[ivvi], gate_map=gate_map) >>> with self.gates.restore_at_exit(): gates.P1.increment(10) >>> print(f"value after with block: {gates.P1()}") # prints 0
- restrict_boundaries(gate_boundaries)[source]
Restrict boundaries values that can be set on the gates.
- Parameters:
gate_boundaries (dict) – For each gate a range used to restrict the current boundaries to
- set_boundaries(gate_boundaries)[source]
Set boundaries on the values that can be set on the gates.
Assigns a range of values to the validator of a parameter.
- Parameters:
gate_boundaries (dict) – a range of allowed values per parameter.
- qtt.instrument_drivers.gates.virtual_IVVI
alias of
VirtualDAC
qtt.instrument_drivers.simulation_instruments module
Contains simulated instruments
- class qtt.instrument_drivers.simulation_instruments.SimulationAWG(*args: Any, **kwargs: Any)[source]
Bases:
Instrument
qtt.instrument_drivers.virtual_gates module
Created on Thu Dec 8 10:37:36 2016
@author: diepencjv, eendebakpt
- class qtt.instrument_drivers.virtual_gates.VirtualGates(*args: Any, **kwargs: Any)[source]
Bases:
Instrument
A virtual gate instrument to control linear combinations of gates.
The virtual gates can be defined, such that when changing one of the virtual gates, the others are not influenced. The virtual gates can be used for changing only one physical parameter, e.g. a chemical potential or a tunnel coupling.
Note: They do not (yet?) have an offset relative to the physical parameters. The sweepmap describes a submatrix of the inverse of the virt_gate_map.
- name
The name of the virtual gate object
- Type:
string
- gates_instr
The instrument of physical gates
- Type:
Instrument
Functions:
- convert_map_to_matrix(base_map, gates=None, vgates=None)[source]
Convert map of the crosscap form to matrix
- Parameters:
base_map (ordered_dict) – Crosscap map or its inverse. gates (list or None): list of gate names (columns of matrix) vgates (list or None): list of virtual gate names (rows of matrix)
- Returns:
Matrix with its elements orderd with given gate order.
- Return type:
converted_matrix (array)
- convert_matrix_to_map(base_matrix, gates=None, vgates=None)[source]
Convert ordered matrix to map.
- Parameters:
base_matrix (array) – Matrix with its elements ordered with given gate order. gates (list or None): list of gate names (columns of matrix) vgates (list or None): list of virtual gate names (rows of matrix)
- Returns:
Map after conversion.
- Return type:
converted_map (ordered_dict)
- static from_dictionary(vgdict, gates, name=None)[source]
Convert dictionary to virtual gate matrix object
- multi_set(increment_map)[source]
Update multiple parameters at once
- Parameters:
increment_map (dict) – dictionary with keys the gate names and values the increments
- normalize_matrix()[source]
Normalize the rows of the matrix by dividing each row by the diagonal coefficient
- static print_map(base_map)[source]
Show map as table.
- Parameters:
base_map (dict) – Map of what to show. Either a crosscap_map or a crosscap_map_inv.
- ratio(target, g1, g2, laplace=0)[source]
Return ratio of influence of two gates
- Parameters:
- Returns
ratio (float)
- resetgates(activegates, basevalues=None, verbose=0)[source]
Reset a set of gates to new values.
If no new values are specified the virtual gates will be reset to zero.
- set_crosscap_map(replace_map, verbose=0)[source]
Sets the cross-capacitance map by replacing the specified map. Then updates the connected parameters in memory.
- Parameters:
replace_map (dict) –
Map containing replacing values. Uses an arbitrary part of the dict inside the full map. Order of gates does not matter.
Example: {‘VP2’: {‘P2’: 0.4}, ‘VP2’: {‘P1’: 0.4, ‘P3’: 0.1}}
- set_crosscap_map_inv(replace_map, verbose=0)[source]
Sets the inverse of the cross-capacitance map by replacing the specified map. Then updates the connected parameters in memory.
- Parameters:
replace_map (dict) –
Map containing replacing values. Uses an arbitrary part of the dict inside the full map. Order of gates does not matter.
Example: {‘P1’: {‘VP2’: -0.4}, ‘P2’: {‘VP1’: -0.4, ‘VP3’: -0.1}}
- qtt.instrument_drivers.virtual_gates.create_virtual_matrix_dict(virt_basis, physical_gates, c=None, verbose=1)[source]
Converts the virtual gate matrix into a virtual gate mapping
- qtt.instrument_drivers.virtual_gates.extend_virtual_gates(vgates, pgates, virts, name='vgates', verbose=0)[source]
Create a new virtual gates object based on another virtual gates object
- qtt.instrument_drivers.virtual_gates.set_distance_matrix(virt_gates, dists)[source]
Update the cross capacitance matrix for a virtual_gate matrix
- Parameters:
virt_gates (VirtualGates) – virtual gates object
dists (list) – list of distances between dots
- qtt.instrument_drivers.virtual_gates.update_cc_matrix(virt_gates, update_cc, old_cc=None, verbose=1)[source]
Create a new virtual gates object using an update matrix
- Parameters:
virt_gates (VirtualGates) – virtual gates object
update_cc (array) – update to cc matrix
old_cc (array or None) – if None, then get the old cc matrix from the virt_gates
verbose (int) – verbosity level
- Returns:
new_cc (array): results (dict): dictionary with additional results
- Return type:
new_virt_gates (virtual gates)
qtt.instrument_drivers.virtual_instruments module
Toy model to test TNO algorithms with Qcodes
@author: eendebakpt