StatePreparation

class qumeas.state_prep.StatePreparation(Nqubit=None, state_vector=None, state_preparation_circuit=None, backend=None)

Bases: object

Base class for quantum state preparation.

get_circuit()

Get the state preparation circuit.

measure()

Measure the prepared quantum state

qiskitStatePreparation

class qumeas.qiskit_utils.qiskit_helper.qiskitStatePreparation(Nqubit: int | None = None, state_vector: List[float] | None = None, state_preparation_circuit: QuantumCircuit | None = None, backend: Any | None = None)

Bases: StatePreparation

State preparation class using Qiskit

get_circuit(measurement_circuit: QuantumCircuit | None = None)

Construct the quantum circuit for state preparation, including measurement gates.

Parameters:

measurement_circuit (Optional['QuantumCircuit']) – Qiskit QuantumCircuit object with measurement gates.

Returns:

Quantum circuit (Qiskit QuantumCircuit) for state preparation and measurement.

Return type:

QuantumCircuit

get_measurement_circuit(pauli_string: List[str])

Generate a measurement circuit based on a Pauli string.

Parameters:

pauli_string (List[str]) – Pauli string for which expectation value is sought.

Returns:

Quantum circuit with measurement gates

Return type:

QuantumCircuit

measure(pauli_string: List[str], shots: int | None = 1, seed: int | None = None)

Measure the quantum state to estimate expectation value of pauli_string

Parameters:
  • pauli_string (List[str]) – Pauli string to measure.

  • shots (Optional[int], default=1) – Number of measurement shots. RandomShadow as well as QCumulant only supports one shot measurements for now.

  • seed (Optional[int], default=None) – Seed for the simulator.

Returns:

List of tuples containing classical measurement bits and their counts.

Return type:

List[Tuple[List[int], int]]