Skip to content

QM Octave Configuration API

qm.octave.octave_config.QmOctaveConfig

Holds connectivity and calibrations database information

add_device_info

Sets the octave info - the IP address can be either the router ip or the actual ip depends on the installation configuration (cluster or standalone mode)

In order to add more than one octave run the function with different octave names ips and ports as the number of octaves in the cluster

PARAMETER DESCRIPTION
name

The octave name

TYPE: str

host

The octave/QOP ip

TYPE: str

port

The octave port

TYPE: int

add_lo_loopback

Adds a loopback between an OctaveOutput and an OctaveLOSource

PARAMETER DESCRIPTION
octave_output_name

octave name

TYPE: str

octave_output_port

octave output port according to OctaveOutput

TYPE: OctaveOutput

octave_input_name

octave name

TYPE: str

octave_input_port

the LO input port according to OctaveLOSource

TYPE: OctaveLOSource

add_octave_to_opx_port_mapping

Adds port mapping from octave outputs to OPX inputs:

{('oct1', 'I'): ('con1', 1),
('oct1', 'Q'): ('con1', 2)}

Will be deprecated soon, should use the "connectivity" key in "controllers" inside the configuration

PARAMETER DESCRIPTION
connections

mapping of octaves to OPXs connections

TYPE: ConnectionMapping

add_opx_octave_port_mapping

Adds port mapping which is different from the default one. should be in the form:

{('con1', 1): ('oct1', 'I1'),
('con1', 2): ('oct1', 'Q1'),
('con1', 3): ('oct1', 'I2'),
('con1', 4): ('oct1', 'Q2'),
('con1', 5): ('oct1', 'I3'),
('con1', 6): ('oct1', 'Q3'),
('con1', 7): ('oct1', 'I4'),
('con1', 8): ('oct1', 'Q4'),
('con1', 9): ('oct1', 'I5'),
('con1', 10): ('oct1', 'Q5')}

Will be deprecated soon, should use the "connectivity" key in "controllers" inside the configuration

PARAMETER DESCRIPTION
connections

mapping of OPXs to octaves connections

TYPE: ConnectionMapping

get_default_opx_octave_port_mapping staticmethod

Get the default opx-octave connections

PARAMETER DESCRIPTION
controller_name

OPX name

TYPE: str

octave_name

octave name

TYPE: str

RETURNS DESCRIPTION
ConnectionMapping

Mapping of the given OPX to the given octave

get_lo_loopbacks_by_octave

Gets a list of all loop backs by octave name

PARAMETER DESCRIPTION
octave_name

octave name to get LO loopback for

TYPE: str

RETURNS DESCRIPTION
Dict[OctaveLOSource, OctaveOutput]

Dictionary with all the LO loopbacks

get_octave_to_opx_port_mapping

Get the configured octave-opx connections

RETURNS DESCRIPTION
Dict[Tuple[str, str], StandardPort]

Mapping of the configured octaves to OPXs connections

get_opx_octave_port_mapping

Get the configured opx-octave connections

RETURNS DESCRIPTION
ConnectionMapping

Mapping of the configured OPXs to octaves connections

set_calibration_db

Sets the path to the calibration database

PARAMETER DESCRIPTION
path

path to the calibration database

TYPE: str

set_opx_octave_mapping

Sets the default port mapping for each opx, octave names

Will be deprecated soon, should use the "connectivity" key in "controllers" inside the configuration

PARAMETER DESCRIPTION
mappings

list of tuples of [OPX_name, octave_name] to connect

TYPE: List[Tuple[str, str]]