|
Maestro 0.1.0
Unified interface for quantum circuit simulation
|
An interface for runtime estimators. More...
#include <SimulatorsEstimatorInterface.h>
Public Member Functions | |
| virtual | ~SimulatorsEstimatorInterface ()=default |
| virtual std::shared_ptr< Simulators::ISimulator > | ChooseBestSimulator (const std::vector< std::pair< Simulators::SimulatorType, Simulators::SimulationType > > &simulatorTypes, const std::shared_ptr< Circuits::Circuit< Time > > &dcirc, size_t &counts, size_t nrQubits, size_t nrCbits, size_t nrResultCbits, Simulators::SimulatorType &simType, Simulators::SimulationType &method, std::vector< bool > &executed, const std::string &maxBondDim, const std::string &singularValueThreshold, const std::string &mpsSample, size_t maxSimulators, const std::vector< std::string > *paulis, bool multithreading=false, bool dontRunCircuitStart=false) const =0 |
Static Public Member Functions | |
| static void | ExecuteUpToMeasurements (const std::shared_ptr< Circuits::Circuit< Time > > &dcirc, size_t nrQubits, size_t nrCbits, size_t nrResultCbits, const std::shared_ptr< Simulators::ISimulator > &sim, std::vector< bool > &executed, bool multithreading) |
An interface for runtime estimators.
A class derived from this is able to estimate the time to simulate a circuit, using various means (for example using the O() complexity of the algorithms). It uses the estimation to choose the best simulator for a given circuit and number of shots.
| Time | The time type used for operation timing. |
Definition at line 31 of file SimulatorsEstimatorInterface.h.
|
virtualdefault |
|
pure virtual |
|
inlinestatic |
Definition at line 47 of file SimulatorsEstimatorInterface.h.