Class CirqQsim
Defined in File qsim_emulator.hpp
Inheritance Relationships
Base Type
public xacc::Accelerator
Derived Type
public qristal::CirqQsimCPU(Class CirqQsimCPU)
Class Documentation
-
class CirqQsim : public xacc::Accelerator
Noisy emulator based on Qsim library.
Subclassed by qristal::CirqQsimCPU
Public Functions
-
virtual void initialize(const xacc::HeterogeneousMap ¶ms = {}) override
Initialize the backend accelerator.
- Parameters:
params – Initialization parameters
-
virtual void updateConfiguration(const xacc::HeterogeneousMap &config) override
-
inline virtual BitOrder getBitOrder() override
Get the Bit Order configuration.
- Returns:
Bit order
-
inline virtual xacc::HeterogeneousMap getProperties() override
Get any backend-specific properties.
- Returns:
Backend properties
-
void convert_noise_channel(NoiseModel noise_model)
Function to convert a Kraus channel to qsim type.
- Parameters:
noise_model –
Execute/emulate a single circuit.
Execute/emulate an array of circuits
- Parameters:
buffer – Buffer to store the execution results
compositeInstruction – Input circuit
buffer – Buffer to store the execution results
compositeInstructions – Input circuits
Execute the actual circuit using the qsim executor created by the derived class.
Protected Attributes
-
int m_shots
-
uint32_t m_seed
-
bool m_ro_errors_enabled
-
NoiseModel *m_noise_model
-
std::unordered_map<std::string, std::map<std::vector<size_t>, std::vector<noise_channel_components>>> m_noise_channels
-
virtual void initialize(const xacc::HeterogeneousMap ¶ms = {}) override