QM Octave API¶
qm.octave.qm_octave.QmOctave
¶
calibrate_element
¶
Calibrate the up converter associated with an element for the given LO & IF frequencies.
- Frequencies are given as a list of tuples : [(LO,IF1)(LO,IF2)...]
-
The function need to be run for each LO frequency and element separately
-
If close_open_quantum_machines is set to True one must open a new quantum machine after calibration ends
PARAMETER | DESCRIPTION |
---|---|
close_open_quantum_machines |
If true (default) all running QMs will be closed for the calibration. Otherwise, calibration might fail if there are not enough resources for the calibration
TYPE:
|
element |
The name of the element for calibration
TYPE:
|
lo_if_frequencies_tuple_list |
a list of tuples that consists of all the (LO,IF) pairs for calibration
TYPE:
|
save_to_db |
If true (default), The calibration parameters will be saved to the calibration database
TYPE:
|
Calibrate the mixer associated with an element for the given LO & IF frequencies.
get_clock
¶
Gets the clock info for a given octave name
PARAMETER | DESCRIPTION |
---|---|
octave_name |
The octave name to get clock for
TYPE:
|
:returns ClockInfo: Info about the clock as an object
load_lo_frequency_from_config
¶
Loads into the octave synthesizers the LO frequencies specified for elements in the element list
PARAMETER | DESCRIPTION |
---|---|
elements |
A list of elements to load LO frequencies for from the configuration
TYPE:
|
set_clock
¶
This function sets the octave clock type - internal, external or buffered. It can also set the clock frequency - 10, 100 or 1000 MHz
- Internal can only be 10 MHz
- External can be 10, 100, or 1000 MHz
- Buffered and External behave the same when using 1000 MHz clock
- ClockType & ClockFrequency will be deprecated soon, users should use clock_mode: ClockMode instead
PARAMETER | DESCRIPTION |
---|---|
octave_name |
The octave name to set clock for
TYPE:
|
clock_type |
clock type according to ClockType
TYPE:
|
frequency |
Clock frequency according to ClockFrequency
TYPE:
|
clock_mode |
Clock mode according to ClockMode
TYPE:
|
set_downconversion
¶
Sets the LO source and frequency for the downconverter of a given element. Sets also the mode of the I and Q lines after downconversion
- The LO source will be the one associated with the element's upconversion.
- If only the element is given, the LO source and frequency for downconversion will be the same as those set for the upconversion of the element.
- IFMode sets the I/Q lines mode after downconversion and can be:
- direct: bypass
- envelope: goes through an envelope detector for advanced applications
- Mixer: goes through a low frequency mixer for advanced applications
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
lo_source |
LO source according to the allowed LO sources
TYPE:
|
lo_frequency |
The LO frequency
TYPE:
|
if_mode_i |
Sets the I channel mode of the downconverter
TYPE:
|
if_mode_q |
Sets the Q channel mode of the downconverter
TYPE:
|
disable_warning |
Disable warnings about non-matching LO sources and elements if True
TYPE:
|
set_lo_frequency
¶
Sets the LO frequency of the synthesizer associated with the given element. Will not change the synthesizer if set_source = False
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
lo_frequency |
The LO frequency
TYPE:
|
set_source |
Set the synthesizer (True) or just update the local database (False)
TYPE:
|
set_lo_source
¶
Associate the given LO source with the given element. Always be sure the given LO source is internally connected to the element according to the Octave Block Diagram in the documentation
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
lo_port |
One of the allowed sources according the internal connectivity
TYPE:
|
set_qua_element_octave_rf_in_port
¶
Sets the octave down conversion port for the given element.
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
octave_name |
The octave name
TYPE:
|
rf_input_index |
input index - can be 1 or 2
TYPE:
|
set_rf_output_gain
¶
Sets the RF output gain for the up-converter associated with the element. RF_gain is in steps of 0.5dB from -20 to +20 and is referring to the maximum OPX output power of 4dBm (=0.5V pk-pk) So for a value of -20 for example, an IF signal coming from the OPX at max power (4dBm) will be upconverted and come out of Octave at -16dBm
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
gain_in_db |
The RF output gain in dB
TYPE:
|
set_rf_output_mode
¶
Configures the output switch of the upconverter associated to element. switch_mode can be either: 'on', 'off', 'trig_normal' or 'trig_inverse':
- 'trig_normal' mode a high trigger will turn the switch on and a low trigger will turn it off
- 'trig_inverse' mode a high trigger will turn the switch off and a low trigger will turn it on
- 'on' the switch will be permanently on.
- 'off' mode the switch will be permanently off.
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
switch_mode |
switch mode according to the allowed states
TYPE:
|
set_use_input_attenuators
¶
Sets the use of IQ attenuators for the downconverter associated with the element.
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
use_iq_attenuators |
True to use IQ attenuators, False otherwise
TYPE:
|
update_external_lo_frequency
¶
Updates the local database on the external LO frequency (provided by the user) associated with element
PARAMETER | DESCRIPTION |
---|---|
element |
The name of the element
TYPE:
|
lo_frequency |
The LO frequency
TYPE:
|