![]() |
A SimulationTrialResult
for DensityMatrixSimulator
runs.
Inherits From: SimulationTrialResult
cirq.sim.DensityMatrixTrialResult(
params: cirq.study.ParamResolver
,
measurements: Dict[str, np.ndarray],
final_simulator_state: cirq.sim.DensityMatrixSimulatorState
) -> None
The density matrix that is stored in this result is returned in the
computational basis with these basis states defined by the qubit_map.
In particular the value in the qubit_map is the index of the qubit,
and these are translated into binary vectors where the last qubit is
the 1s bit of the index, the second-to-last is the 2s bit of the index,
and so forth (i.e. big endian ordering). The density matrix is a
2 ** num_qubits
square matrix, with rows and columns ordered by
the computational basis as just described.
Example:
qubit_map
: {QubitA: 0, QubitB: 1, QubitC: 2} Then the returned density matrix will have (row and column) indices mapped to qubit basis states like the following tableQubitA QubitB QubitC 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1
Attributes | |
---|---|
params
|
A ParamResolver of settings used for this result. |
measurements
|
A dictionary from measurement gate key to measurement results. Measurement results are a numpy ndarray of actual boolean measurement results (ordered by the qubits acted on by the measurement gate.) |
final_simulator_state
|
The final simulator state of the system after the trial finishes. |
final_density_matrix
|
The final density matrix of the system. |
qubit_map
|
A map from Qid to index used to define the ordering of the basis in the result. |
Methods
__eq__
__eq__(
other: _SupportsValueEquality
) -> bool
__ne__
__ne__(
other: _SupportsValueEquality
) -> bool