diff --git a/src/simulators/matrix_product_state/matrix_product_state.hpp b/src/simulators/matrix_product_state/matrix_product_state.hpp index d4b540d6a1..9d96bf9d5b 100644 --- a/src/simulators/matrix_product_state/matrix_product_state.hpp +++ b/src/simulators/matrix_product_state/matrix_product_state.hpp @@ -801,7 +801,7 @@ std::vector State::sample_measure_all(uint_t shots, #pragma omp parallel for if (getenv("PRL_PROB_MEAS")) for (int_t i = 0; i < static_cast(shots); i++) { - auto single_result = qreg_.sample_measure(shots, rng); + auto single_result = qreg_.sample_measure(rng); all_samples[i].from_vector(single_result); } return all_samples; diff --git a/src/simulators/matrix_product_state/matrix_product_state_internal.cpp b/src/simulators/matrix_product_state/matrix_product_state_internal.cpp index 424637c4f0..6b2d117689 100644 --- a/src/simulators/matrix_product_state/matrix_product_state_internal.cpp +++ b/src/simulators/matrix_product_state/matrix_product_state_internal.cpp @@ -1637,7 +1637,7 @@ reg_t MPS::sort_measured_values(const reg_t &input_outcome, // probability. We then update 'mat' by contracting it with the suitable // matrix (0 or 1). -reg_t MPS::sample_measure(uint_t shots, RngEngine &rng) const { +reg_t MPS::sample_measure(RngEngine &rng) const { double prob = 1; reg_t current_measure(num_qubits_); cmatrix_t mat; @@ -1683,10 +1683,6 @@ uint_t MPS::sample_measure_single_qubit(uint_t qubit, double &prob, double rnd, // measurement outcome if (qubit == 0) { mat = q_reg_[qubit].get_data(measurement); - if (qubit != 0) // multiply mat by left lambda - for (uint_t col = 0; col < mat.GetColumns(); col++) - for (uint_t row = 0; row < mat.GetRows(); row++) - mat(row, col) *= lambda_reg_[qubit - 1][row]; } else { mat = mat * q_reg_[qubit].get_data(measurement); } diff --git a/src/simulators/matrix_product_state/matrix_product_state_internal.hpp b/src/simulators/matrix_product_state/matrix_product_state_internal.hpp index 1180e6cddf..f866bcde6c 100644 --- a/src/simulators/matrix_product_state/matrix_product_state_internal.hpp +++ b/src/simulators/matrix_product_state/matrix_product_state_internal.hpp @@ -351,7 +351,7 @@ class MPS { reg_t apply_measure(const reg_t &qubits, const rvector_t &rnds); reg_t apply_measure_internal(const reg_t &qubits, const rvector_t &rands); - reg_t sample_measure(uint_t shots, RngEngine &rng) const; + reg_t sample_measure(RngEngine &rng) const; //---------------------------------------------------------------- // Function name: initialize_from_statevector_internal