Class noise_aware_placement_pass

Inheritance Relationships

Base Type

Class Documentation

class noise_aware_placement_pass : public qb::Pass<CircuitBuilder>

Noise-aware placement pass.

Maps circuit qubits to device qubits satisfying connectivity constraints and using gate error rates and readout errors to find the best placement map.

Public Functions

noise_aware_placement_pass(const noise_aware_placement_config &device_info)

Constructor from a user-provided config.

noise_aware_placement_pass(std::shared_ptr<xacc::Accelerator> qpu)

Constructor from an Accelerator instance, which provides its characterization information

virtual std::string get_name() const override

Returns the pass name.

virtual std::string get_description() const override

Returns the pass description.

virtual void apply(CircuitBuilder &circuit) override

Runs the pass over the circuit IR node.

Private Members

std::shared_ptr<xacc::IRTransformation> m_tket_impl

The underlying XACC plugin implementation of the IR transformation.

std::optional<noise_aware_placement_config> m_device_info

Input device information if provided.

std::shared_ptr<xacc::Accelerator> m_qpu

Input accelerator instance if provided.