case class QuantumSimulator()(implicit random: Random = new Random) extends QuantumContext with Product with Serializable
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- QuantumSimulator
- Serializable
- Serializable
- Product
- Equals
- QuantumContext
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new QuantumSimulator()(implicit random: Random = new Random)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
controlMatrix(gate: ControlGate): Matrix
Generates a matrix based on the top-level control gate and nested control and target child gates.
Generates a matrix based on the top-level control gate and nested control and target child gates.
First, it generates an array of arrays. Each array is a binary representation of the decimal state vector index. For example, a vector of length 2 can be represented with the following matrix:
Array( Array(0, 0), Array(0, 1), Array(1, 0), Array(1, 1) )
Second, for each top-level array we check if control bits are triggered and if they are then we apply the final target gate to the target qubits.
- gate
control gate that this method generates a matrix for
- returns
final matrix representing the control gate acting on all involved qubits
- def cphase0Matrix(gate: ControlGate, phi: Double, targetBit: Bit): Matrix
-
def
densityMatrix(qubit: Qubit): Matrix
- Definition Classes
- QuantumSimulator → QuantumContext
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
gateMatrix(gate: Gate): Matrix
- Definition Classes
- QuantumSimulator → QuantumContext
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isUnitary(g: Gate): Boolean
- Definition Classes
- QuantumSimulator → QuantumContext
-
def
measure(register: QubitRegister, sp: Superposition): Collapsed
- Definition Classes
- QuantumSimulator → QuantumContext
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def opToGate(op: Op, qubitCount: Int): Seq[Gate]
-
def
outerProduct(sp1: Superposition, sp2: Superposition): Matrix
- Definition Classes
- QuantumSimulator → QuantumContext
- def prepareGate(gate: Gate, qubitCount: Int): Gate
-
def
product(gate: Gate, sp: Superposition): Superposition
- Definition Classes
- QuantumSimulator → QuantumContext
- def registerToSuperposition(register: QubitRegister): Superposition
-
def
run(circuit: Circuit): State
- Definition Classes
- QuantumSimulator → QuantumContext
-
def
runAndMeasure(circuit: Circuit, trialsCount: Int, parallelismLevel: Int = Config.DefaultSimulatorParallelism): ExperimentResult
- Definition Classes
- QuantumSimulator → QuantumContext
-
def
runAndMeasure(circuit: Circuit): Collapsed
- Definition Classes
- QuantumContext
- def swapMatrix(gate: SwapGate): Matrix
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- def targetMatrix(targetGate: Gate): Matrix
-
def
tensorProduct(sp1: Superposition, sp2: Superposition): Superposition
- Definition Classes
- QuantumSimulator → QuantumContext
-
def
tensorProduct(g1: Gate, g2: Gate): TargetGate
- Definition Classes
- QuantumSimulator → QuantumContext
- def totalQubitCount(gate: Gate): Int
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )