|
Maestro 0.2.5
Unified interface for quantum circuit simulation
|
#include <MPSDummySimulator.h>
Collaboration diagram for Simulators::MPSDummySimulator:Public Types | |
| using | GateClass = QC::TensorNetworks::MPSSimulatorInterface::GateClass |
| using | IndexType = long long int |
| using | MatrixClass = QC::TensorNetworks::MPSSimulatorInterface::MatrixClass |
Public Member Functions | |
| MPSDummySimulator (size_t N) | |
| void | ApplyGate (const GateClass &gate, IndexType qubit, IndexType controllingQubit1=0) |
| void | ApplyGate (const QC::Gates::AppliedGate< MatrixClass > &gate) |
| void | ApplyGate (const std::shared_ptr< Circuits::IOperation<> > &gate) |
| void | ApplyGates (const std::vector< QC::Gates::AppliedGate< MatrixClass > > &gates) |
| void | ApplyGates (const std::vector< std::shared_ptr< Circuits::IOperation<> > > &gates) |
| void | Clear () |
| std::unique_ptr< MPSDummySimulator > | Clone () const |
| std::vector< long long int > | ComputeOptimalQubitsMap (const std::vector< std::shared_ptr< Circuits::Circuit<> > > &layers, int nrShuffles=25) |
| void | EvaluateMeetingPositionCost (IndexType meetPosition, const std::vector< std::shared_ptr< Circuits::IOperation<> > > &upcomingGates, long long int currentGateIndex, int lookaheadDepth, int lookaheadDepthWithHeuristic, double currentCost, double &bestCost, bool useSameDummy=false) |
| IndexType | FindBestMeetingPosition (const std::vector< std::shared_ptr< Circuits::IOperation<> > > &upcomingGates, long long int currentGateIndex, int lookaheadDepth, int lookaheadDepthWithHeuristic, double currentCost, double &bestCost) |
| const std::vector< double > & | getCurrentBondDimensions () const |
| const std::vector< double > & | getMaxBondDimensions () const |
| size_t | getNrQubits () const |
| const std::vector< IndexType > & | getQubitsMap () const |
| const std::vector< IndexType > & | getQubitsMapInv () const |
| double | getTotalSwappingCost () const |
| void | print () const |
| void | SetCurrentBondDimensions (const std::vector< double > &dims) |
| void | SetInitialQubitsMap (const std::vector< long long int > &initialMap) |
| void | SetMaxBondDimension (IndexType val) |
| void | setTotalSwappingCost (double cost) |
| void | SwapQubitsToPosition (IndexType qubit1, IndexType qubit2, IndexType meetPosition) |
Definition at line 33 of file MPSDummySimulator.h.
| using Simulators::MPSDummySimulator::GateClass = QC::TensorNetworks::MPSSimulatorInterface::GateClass |
Definition at line 37 of file MPSDummySimulator.h.
| using Simulators::MPSDummySimulator::IndexType = long long int |
Definition at line 35 of file MPSDummySimulator.h.
| using Simulators::MPSDummySimulator::MatrixClass = QC::TensorNetworks::MPSSimulatorInterface::MatrixClass |
Definition at line 36 of file MPSDummySimulator.h.
|
inline |
Definition at line 39 of file MPSDummySimulator.h.
References SetMaxBondDimension().
|
inline |
Definition at line 146 of file MPSDummySimulator.h.
References getNrQubits().
|
inline |
Definition at line 125 of file MPSDummySimulator.h.
References ApplyGate().
Referenced by ApplyGate(), ApplyGate(), ApplyGates(), ApplyGates(), and EvaluateMeetingPositionCost().
|
inline |
Definition at line 129 of file MPSDummySimulator.h.
References ApplyGate().
|
inline |
Definition at line 176 of file MPSDummySimulator.h.
References ApplyGate().
Referenced by ComputeOptimalQubitsMap().
|
inline |
Definition at line 181 of file MPSDummySimulator.h.
References ApplyGate().
|
inline |
Definition at line 62 of file MPSDummySimulator.h.
|
inline |
Definition at line 45 of file MPSDummySimulator.h.
|
inline |
Definition at line 406 of file MPSDummySimulator.h.
References ApplyGates(), getNrQubits(), getTotalSwappingCost(), and SetInitialQubitsMap().
|
inline |
importanceFactor
Definition at line 222 of file MPSDummySimulator.h.
References ApplyGate(), FindBestMeetingPosition(), getTotalSwappingCost(), and SwapQubitsToPosition().
Referenced by FindBestMeetingPosition().
|
inline |
Definition at line 349 of file MPSDummySimulator.h.
References EvaluateMeetingPositionCost().
Referenced by EvaluateMeetingPositionCost().
|
inline |
Definition at line 206 of file MPSDummySimulator.h.
|
inline |
Definition at line 210 of file MPSDummySimulator.h.
|
inline |
Definition at line 60 of file MPSDummySimulator.h.
Referenced by ApplyGate(), and ComputeOptimalQubitsMap().
|
inline |
Definition at line 212 of file MPSDummySimulator.h.
|
inline |
Definition at line 214 of file MPSDummySimulator.h.
|
inline |
Definition at line 217 of file MPSDummySimulator.h.
Referenced by ComputeOptimalQubitsMap(), and EvaluateMeetingPositionCost().
|
inline |
Definition at line 118 of file MPSDummySimulator.h.
|
inline |
Definition at line 196 of file MPSDummySimulator.h.
|
inline |
Definition at line 186 of file MPSDummySimulator.h.
Referenced by ComputeOptimalQubitsMap().
|
inline |
Definition at line 64 of file MPSDummySimulator.h.
Referenced by MPSDummySimulator().
|
inline |
Definition at line 216 of file MPSDummySimulator.h.
|
inline |
Definition at line 757 of file MPSDummySimulator.h.
Referenced by EvaluateMeetingPositionCost().