Utilities#
Circuit Tomography#
- qnetvo.state_vec_fn(circuit, num_wires)[source]#
Constructs a function
state_vec(*circ_args, basis_state=[0,...,0], **circ_kwargs)
that returns the state vector representation of the output ofcircuit
where the input to the circuit is specified in the computational basis bybasis_state
.- Parameters:
circuit (Function) – A quantum function.
num_wires (Int) – The number of wires to evaluate
circuit
on.
- Returns:
A vector representing the pure quantum state output from
circuit(*circ_args, **circ_kwargs)
when the computationalbasis_state
is provided as input.- Return type:
np.array
- qnetvo.density_mat_fn(circuit, num_wires)[source]#
Constructs a function that returns the density matrix of the specified
circuit
.- Parameters:
circuit (Function) – A quantum function.
num_wires (Int) – The number of wires to evaluate
circuit
on.
- Returns:
A function
density_mat(wires_out, *circ_args, basis_state=[0,...,0], **circ_kwargs)
that returns the density matrix representing the quantum state onwires_out
for the initializedbasis_state
where the quantum circuit is called ascircuit(*circ_args, **circ_kwargs)
.- Return type:
np.array
- qnetvo.unitary_matrix(circuit, num_wires, *circ_args, **circ_kwargs)[source]#
Constructs the unitary matrix representation of a quantum circuit in the computational basis.
- Parameters:
circuit (Function) – A quantum function.
num_wires (Int) – The number of wires needed by
circuit
.circ_args (Positional Arguments) – Passthrough arguments for
circuit
.circ_kwargs (keyword Arguments) – Passthrough keyword arguments for
circuit
.
- Returns:
A unitary matrix representing the provided
circuit
.- Return type:
Numpy Array
File I/O#
- qnetvo.write_optimization_json(opt_dict, filename)[source]#
Writes the optimization dictionary to a JSON file.
- Parameters:
opt_dict (dict) – The dictionary returned by a network optimization.
filename (string) – The name of the JSON file to be written. Note that
.json
extension is automatically added.
- Returns:
None
- qnetvo.read_optimization_json(filepath)[source]#
Reads data from an optimization JSON created via
write_optimization_json
.- Parameters:
filepath (string) – The path to the JSON file. Note this string must contain the
.json
extension.- Returns:
The optimization dictionary read from the file.
- Return type:
dict
Data Conversions#
- qnetvo.mixed_base_num(n, base_digits)[source]#
Converts a base-10 number
n
into a mixed base number with digit values described by thebase_digits
array.- Parameters:
n (int) – A base-10 number
base_digits (list[int]) – A list of integers representing the largest value for each digit in the mixed base number
- Returns:
A list of integers representing the mixed base number.
- Return type:
list[int]