summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-11 03:41:02 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-11 03:41:02 +0000
commitccca0c903f12fa270958f4f47350dfe93265c301 (patch)
treefe08ec5292480c3a319357bddee8ec58706aede1
parent4bc7a760650f5772240b1e39b6209b33ccc32f11 (diff)
automatic import of python-qiskit-ignis
-rw-r--r--.gitignore1
-rw-r--r--python-qiskit-ignis.spec615
-rw-r--r--sources1
3 files changed, 617 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..5113a94 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/qiskit-ignis-0.7.1.tar.gz
diff --git a/python-qiskit-ignis.spec b/python-qiskit-ignis.spec
new file mode 100644
index 0000000..db06c79
--- /dev/null
+++ b/python-qiskit-ignis.spec
@@ -0,0 +1,615 @@
+%global _empty_manifest_terminate_build 0
+Name: python-qiskit-ignis
+Version: 0.7.1
+Release: 1
+Summary: Qiskit tools for quantum information science
+License: Apache 2.0
+URL: https://github.com/Qiskit/qiskit-ignis
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/93/d7/a077a5d828037667f4449623ae6c982cac498ebc47e5975ed74c17c15772/qiskit-ignis-0.7.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-numpy
+Requires: python3-qiskit-terra
+Requires: python3-retworkx
+Requires: python3-scipy
+Requires: python3-setuptools
+Requires: python3-cvxpy
+Requires: python3-scikit-learn
+Requires: python3-numba
+Requires: python3-matplotlib
+
+%description
+# Qiskit Ignis (_DEPRECATED_)
+
+[![License](https://img.shields.io/github/license/Qiskit/qiskit-ignis.svg?style=popout-square)](https://opensource.org/licenses/Apache-2.0)[![Build Status](https://img.shields.io/travis/com/Qiskit/qiskit-ignis/master.svg?style=popout-square)](https://travis-ci.com/Qiskit/qiskit-ignis)[![](https://img.shields.io/github/release/Qiskit/qiskit-ignis.svg?style=popout-square)](https://github.com/Qiskit/qiskit-ignis/releases)[![](https://img.shields.io/pypi/dm/qiskit-ignis.svg?style=popout-square)](https://pypi.org/project/qiskit-ignis/)
+
+**_NOTE_** _As of the version 0.7.0 Qiskit Ignis is deprecated and has been
+superseded by the
+[Qiskit Experiments](https://github.com/Qiskit/qiskit-experiments) project.
+Active development on the project has stopped and only compatibility fixes
+and other critical bugfixes will be accepted until the project is officially
+retired and archived._
+
+**Qiskit** is an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.
+
+Qiskit is made up of elements that each work together to enable quantum computing. This element is **Ignis**, which provides tools for quantum hardware verification, noise characterization, and error correction.
+
+## Migration Guide
+
+As of version 0.7.0, Qiskit Ignis has been deprecated and some of its functionality
+was migrated into the `qiskit-experiments` package and into `qiskit-terra`.
+
+* Ignis characterization module
+
+ * This module was partly migrated to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments) and split into two different modules:
+ `qiskit_experiments.library.calibration`
+ `qiskit_experiments.library.characterization`
+ * `AmpCal` is now replaced by `FineAmplitude`.
+ * `ZZFitter` was not migrated yet.
+
+* Ignis discriminator module
+
+ * This module is in the process of migration to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments)
+
+* Ignis mitigation module
+
+ * The readout mitigator will be soon added to [`qiskit-terra`](https://github.com/Qiskit/qiskit-terra).
+ * Experiments for generating the readout mitigators will be added to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments)
+ * For use of mitigators with `qiskit.algorithms` and the [`QuantumInstance` class](https://qiskit.org/documentation/stubs/qiskit.utils.QuantumInstance.html?highlight=quantuminstance#qiskit.utils.QuantumInstance)
+ this has been integrated into `qiskit-terra` directly with the `QuantumInstance`.
+
+* Ignis verification module
+
+ * Randomized benchmarking, Quantum Volume and State and Process Tomography were migrated to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments).
+ * Migration of Gate-set tomography to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments) is in progress.
+ * `topological_codes` will continue development under [NCCR-SPIN](https://github.com/NCCR-SPIN/topological_codes/blob/master/README.md), while the functionality is reintegrated into Qiskit. Some additional functionality can also be found in the offshoot project [qtcodes](https://github.com/yaleqc/qtcodes).
+ * Currently the Accredition and Entanglement modules have not been migrated.
+The following table gives a more detailed breakdown that relates the function, as it existed in Ignis,
+to where it now lives after this move.
+
+| Old | New | Library |
+| :---: | :---: | :---: |
+| qiskit.ignis.characterization.calibrations | qiskit_experiments.library.calibration | qiskit-experiments |
+| qiskit.ignis.characterization.coherence | qiskit_experiments.library.characterization | qiskit-experiments |
+| qiskit.ignis.mitigation | qiskit_terra.mitigation | qiskit-terra |
+| qiskit.ignis.verification.quantum_volume | qiskit_experiments.library.quantum_volume | qiskit-experiments |
+| qiskit.ignis.verification.randomized_benchmarking | qiskit_experiments.library.randomized_benchmarking | qiskit-experiments |
+| qiskit.ignis.verification.tomography | qiskit_experiments.library.tomography | qiskit-experiments |
+
+## Installation
+
+We encourage installing Qiskit via the pip tool (a python package manager). The following command installs the core Qiskit components, including Ignis.
+
+```bash
+pip install qiskit
+```
+
+Pip will handle all dependencies automatically for us and you will always install the latest (and well-tested) version.
+
+To install from source, follow the instructions in the [contribution guidelines](./CONTRIBUTING.md).
+
+### Extra Requirements
+
+Some functionality has extra optional requirements. If you're going to use any
+visualization functions for fitters you'll need to install matplotlib. You
+can do this with `pip install matplotlib` or when you install ignis with
+`pip install qiskit-ignis[visualization]`. If you're going to use a cvx fitter
+for running tomogography you'll need to install cvxpy. You can do this with
+`pip install cvxpy` or when you install ignis with
+`pip install qiskit-ignis[cvx]`. When performing expectation value measurement
+error mitigation using the CTMP method performance can be improved using
+just-in-time compiling if Numbda is installed. You can do this with
+`pip install numba` or when you install ignis with
+`pip install qiskit-ignis[jit]`. For using the discriminator classes in
+`qiskit.ignis.measurement` scikit-learn needs to be installed. You can do this with
+`pip install scikit-learn` or when you install ignis with
+`pip install qiskit-ignis[iq]`. If you want to install all extra requirements
+when you install ignis you can run `pip install qiskit-ignis[visualization,cvx,jit,iq]`.
+
+## Creating your first quantum experiment with Qiskit Ignis
+Now that you have Qiskit Ignis installed, you can start creating experiments, to reveal information about the device quality. Here is a basic example:
+
+```
+$ python
+```
+
+```python
+# Import Qiskit classes
+import qiskit
+from qiskit import QuantumRegister, QuantumCircuit, ClassicalRegister
+from qiskit.providers.aer import noise # import AER noise model
+
+# Measurement error mitigation functions
+from qiskit.ignis.mitigation.measurement import (complete_meas_cal,
+ CompleteMeasFitter,
+ MeasurementFilter)
+
+# Generate a noise model for the qubits
+noise_model = noise.NoiseModel()
+for qi in range(5):
+ read_err = noise.errors.readout_error.ReadoutError([[0.75, 0.25],[0.1, 0.9]])
+ noise_model.add_readout_error(read_err, [qi])
+
+# Generate the measurement calibration circuits
+# for running measurement error mitigation
+qr = QuantumRegister(5)
+meas_cals, state_labels = complete_meas_cal(qubit_list=[2,3,4], qr=qr)
+
+# Execute the calibration circuits
+backend = qiskit.Aer.get_backend('qasm_simulator')
+job = qiskit.execute(meas_cals, backend=backend, shots=1000, noise_model=noise_model)
+cal_results = job.result()
+
+# Make a calibration matrix
+meas_fitter = CompleteMeasFitter(cal_results, state_labels)
+
+# Make a 3Q GHZ state
+cr = ClassicalRegister(3)
+ghz = QuantumCircuit(qr, cr)
+ghz.h(qr[2])
+ghz.cx(qr[2], qr[3])
+ghz.cx(qr[3], qr[4])
+ghz.measure(qr[2],cr[0])
+ghz.measure(qr[3],cr[1])
+ghz.measure(qr[4],cr[2])
+
+# Execute the GHZ circuit (with the same noise model)
+job = qiskit.execute(ghz, backend=backend, shots=1000, noise_model=noise_model)
+results = job.result()
+
+# Results without mitigation
+raw_counts = results.get_counts()
+print("Results without mitigation:", raw_counts)
+
+# Create a measurement filter from the calibration matrix
+meas_filter = meas_fitter.filter
+# Apply the filter to the raw counts to mitigate
+# the measurement errors
+mitigated_counts = meas_filter.apply(raw_counts)
+print("Results with mitigation:", {l:int(mitigated_counts[l]) for l in mitigated_counts})
+```
+
+```
+Results without mitigation: {'000': 181, '001': 83, '010': 59, '011': 65, '100': 101, '101': 48, '110': 72, '111': 391}
+
+Results with mitigation: {'000': 421, '001': 2, '011': 1, '100': 53, '110': 13, '111': 510}
+```
+
+## Contribution Guidelines
+
+If you'd like to contribute to Qiskit Ignis, please take a look at our
+[contribution guidelines](./CONTRIBUTING.md). This project adheres to Qiskit's [code of conduct](./CODE_OF_CONDUCT.md). By participating, you are expect to uphold to this code.
+
+We use [GitHub issues](https://github.com/Qiskit/qiskit-ignis/issues) for tracking requests and bugs. Please use our [slack](https://qiskit.slack.com) for discussion and simple questions. To join our Slack community use the [link](https://join.slack.com/t/qiskit/shared_invite/enQtNDc2NjUzMjE4Mzc0LTMwZmE0YTM4ZThiNGJmODkzN2Y2NTNlMDIwYWNjYzA2ZmM1YTRlZGQ3OGM0NjcwMjZkZGE0MTA4MGQ1ZTVmYzk). For questions that are more suited for a forum we use the Qiskit tag in the [Stack Exchange](https://quantumcomputing.stackexchange.com/questions/tagged/qiskit).
+
+## Next Steps
+
+Now you're set up and ready to check out some of the other examples from our
+[Qiskit Tutorials](https://github.com/Qiskit/qiskit-iqx-tutorials/tree/master/qiskit/advanced/ignis) repository.
+
+## Authors and Citation
+
+Qiskit Ignis is the work of [many people](https://github.com/Qiskit/qiskit-ignis/graphs/contributors) who contribute
+to the project at different levels. If you use Qiskit, please cite as per the included [BibTeX file](https://github.com/Qiskit/qiskit/blob/master/Qiskit.bib).
+
+## License
+
+[Apache License 2.0](LICENSE.txt)
+
+
+
+
+%package -n python3-qiskit-ignis
+Summary: Qiskit tools for quantum information science
+Provides: python-qiskit-ignis
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-qiskit-ignis
+# Qiskit Ignis (_DEPRECATED_)
+
+[![License](https://img.shields.io/github/license/Qiskit/qiskit-ignis.svg?style=popout-square)](https://opensource.org/licenses/Apache-2.0)[![Build Status](https://img.shields.io/travis/com/Qiskit/qiskit-ignis/master.svg?style=popout-square)](https://travis-ci.com/Qiskit/qiskit-ignis)[![](https://img.shields.io/github/release/Qiskit/qiskit-ignis.svg?style=popout-square)](https://github.com/Qiskit/qiskit-ignis/releases)[![](https://img.shields.io/pypi/dm/qiskit-ignis.svg?style=popout-square)](https://pypi.org/project/qiskit-ignis/)
+
+**_NOTE_** _As of the version 0.7.0 Qiskit Ignis is deprecated and has been
+superseded by the
+[Qiskit Experiments](https://github.com/Qiskit/qiskit-experiments) project.
+Active development on the project has stopped and only compatibility fixes
+and other critical bugfixes will be accepted until the project is officially
+retired and archived._
+
+**Qiskit** is an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.
+
+Qiskit is made up of elements that each work together to enable quantum computing. This element is **Ignis**, which provides tools for quantum hardware verification, noise characterization, and error correction.
+
+## Migration Guide
+
+As of version 0.7.0, Qiskit Ignis has been deprecated and some of its functionality
+was migrated into the `qiskit-experiments` package and into `qiskit-terra`.
+
+* Ignis characterization module
+
+ * This module was partly migrated to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments) and split into two different modules:
+ `qiskit_experiments.library.calibration`
+ `qiskit_experiments.library.characterization`
+ * `AmpCal` is now replaced by `FineAmplitude`.
+ * `ZZFitter` was not migrated yet.
+
+* Ignis discriminator module
+
+ * This module is in the process of migration to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments)
+
+* Ignis mitigation module
+
+ * The readout mitigator will be soon added to [`qiskit-terra`](https://github.com/Qiskit/qiskit-terra).
+ * Experiments for generating the readout mitigators will be added to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments)
+ * For use of mitigators with `qiskit.algorithms` and the [`QuantumInstance` class](https://qiskit.org/documentation/stubs/qiskit.utils.QuantumInstance.html?highlight=quantuminstance#qiskit.utils.QuantumInstance)
+ this has been integrated into `qiskit-terra` directly with the `QuantumInstance`.
+
+* Ignis verification module
+
+ * Randomized benchmarking, Quantum Volume and State and Process Tomography were migrated to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments).
+ * Migration of Gate-set tomography to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments) is in progress.
+ * `topological_codes` will continue development under [NCCR-SPIN](https://github.com/NCCR-SPIN/topological_codes/blob/master/README.md), while the functionality is reintegrated into Qiskit. Some additional functionality can also be found in the offshoot project [qtcodes](https://github.com/yaleqc/qtcodes).
+ * Currently the Accredition and Entanglement modules have not been migrated.
+The following table gives a more detailed breakdown that relates the function, as it existed in Ignis,
+to where it now lives after this move.
+
+| Old | New | Library |
+| :---: | :---: | :---: |
+| qiskit.ignis.characterization.calibrations | qiskit_experiments.library.calibration | qiskit-experiments |
+| qiskit.ignis.characterization.coherence | qiskit_experiments.library.characterization | qiskit-experiments |
+| qiskit.ignis.mitigation | qiskit_terra.mitigation | qiskit-terra |
+| qiskit.ignis.verification.quantum_volume | qiskit_experiments.library.quantum_volume | qiskit-experiments |
+| qiskit.ignis.verification.randomized_benchmarking | qiskit_experiments.library.randomized_benchmarking | qiskit-experiments |
+| qiskit.ignis.verification.tomography | qiskit_experiments.library.tomography | qiskit-experiments |
+
+## Installation
+
+We encourage installing Qiskit via the pip tool (a python package manager). The following command installs the core Qiskit components, including Ignis.
+
+```bash
+pip install qiskit
+```
+
+Pip will handle all dependencies automatically for us and you will always install the latest (and well-tested) version.
+
+To install from source, follow the instructions in the [contribution guidelines](./CONTRIBUTING.md).
+
+### Extra Requirements
+
+Some functionality has extra optional requirements. If you're going to use any
+visualization functions for fitters you'll need to install matplotlib. You
+can do this with `pip install matplotlib` or when you install ignis with
+`pip install qiskit-ignis[visualization]`. If you're going to use a cvx fitter
+for running tomogography you'll need to install cvxpy. You can do this with
+`pip install cvxpy` or when you install ignis with
+`pip install qiskit-ignis[cvx]`. When performing expectation value measurement
+error mitigation using the CTMP method performance can be improved using
+just-in-time compiling if Numbda is installed. You can do this with
+`pip install numba` or when you install ignis with
+`pip install qiskit-ignis[jit]`. For using the discriminator classes in
+`qiskit.ignis.measurement` scikit-learn needs to be installed. You can do this with
+`pip install scikit-learn` or when you install ignis with
+`pip install qiskit-ignis[iq]`. If you want to install all extra requirements
+when you install ignis you can run `pip install qiskit-ignis[visualization,cvx,jit,iq]`.
+
+## Creating your first quantum experiment with Qiskit Ignis
+Now that you have Qiskit Ignis installed, you can start creating experiments, to reveal information about the device quality. Here is a basic example:
+
+```
+$ python
+```
+
+```python
+# Import Qiskit classes
+import qiskit
+from qiskit import QuantumRegister, QuantumCircuit, ClassicalRegister
+from qiskit.providers.aer import noise # import AER noise model
+
+# Measurement error mitigation functions
+from qiskit.ignis.mitigation.measurement import (complete_meas_cal,
+ CompleteMeasFitter,
+ MeasurementFilter)
+
+# Generate a noise model for the qubits
+noise_model = noise.NoiseModel()
+for qi in range(5):
+ read_err = noise.errors.readout_error.ReadoutError([[0.75, 0.25],[0.1, 0.9]])
+ noise_model.add_readout_error(read_err, [qi])
+
+# Generate the measurement calibration circuits
+# for running measurement error mitigation
+qr = QuantumRegister(5)
+meas_cals, state_labels = complete_meas_cal(qubit_list=[2,3,4], qr=qr)
+
+# Execute the calibration circuits
+backend = qiskit.Aer.get_backend('qasm_simulator')
+job = qiskit.execute(meas_cals, backend=backend, shots=1000, noise_model=noise_model)
+cal_results = job.result()
+
+# Make a calibration matrix
+meas_fitter = CompleteMeasFitter(cal_results, state_labels)
+
+# Make a 3Q GHZ state
+cr = ClassicalRegister(3)
+ghz = QuantumCircuit(qr, cr)
+ghz.h(qr[2])
+ghz.cx(qr[2], qr[3])
+ghz.cx(qr[3], qr[4])
+ghz.measure(qr[2],cr[0])
+ghz.measure(qr[3],cr[1])
+ghz.measure(qr[4],cr[2])
+
+# Execute the GHZ circuit (with the same noise model)
+job = qiskit.execute(ghz, backend=backend, shots=1000, noise_model=noise_model)
+results = job.result()
+
+# Results without mitigation
+raw_counts = results.get_counts()
+print("Results without mitigation:", raw_counts)
+
+# Create a measurement filter from the calibration matrix
+meas_filter = meas_fitter.filter
+# Apply the filter to the raw counts to mitigate
+# the measurement errors
+mitigated_counts = meas_filter.apply(raw_counts)
+print("Results with mitigation:", {l:int(mitigated_counts[l]) for l in mitigated_counts})
+```
+
+```
+Results without mitigation: {'000': 181, '001': 83, '010': 59, '011': 65, '100': 101, '101': 48, '110': 72, '111': 391}
+
+Results with mitigation: {'000': 421, '001': 2, '011': 1, '100': 53, '110': 13, '111': 510}
+```
+
+## Contribution Guidelines
+
+If you'd like to contribute to Qiskit Ignis, please take a look at our
+[contribution guidelines](./CONTRIBUTING.md). This project adheres to Qiskit's [code of conduct](./CODE_OF_CONDUCT.md). By participating, you are expect to uphold to this code.
+
+We use [GitHub issues](https://github.com/Qiskit/qiskit-ignis/issues) for tracking requests and bugs. Please use our [slack](https://qiskit.slack.com) for discussion and simple questions. To join our Slack community use the [link](https://join.slack.com/t/qiskit/shared_invite/enQtNDc2NjUzMjE4Mzc0LTMwZmE0YTM4ZThiNGJmODkzN2Y2NTNlMDIwYWNjYzA2ZmM1YTRlZGQ3OGM0NjcwMjZkZGE0MTA4MGQ1ZTVmYzk). For questions that are more suited for a forum we use the Qiskit tag in the [Stack Exchange](https://quantumcomputing.stackexchange.com/questions/tagged/qiskit).
+
+## Next Steps
+
+Now you're set up and ready to check out some of the other examples from our
+[Qiskit Tutorials](https://github.com/Qiskit/qiskit-iqx-tutorials/tree/master/qiskit/advanced/ignis) repository.
+
+## Authors and Citation
+
+Qiskit Ignis is the work of [many people](https://github.com/Qiskit/qiskit-ignis/graphs/contributors) who contribute
+to the project at different levels. If you use Qiskit, please cite as per the included [BibTeX file](https://github.com/Qiskit/qiskit/blob/master/Qiskit.bib).
+
+## License
+
+[Apache License 2.0](LICENSE.txt)
+
+
+
+
+%package help
+Summary: Development documents and examples for qiskit-ignis
+Provides: python3-qiskit-ignis-doc
+%description help
+# Qiskit Ignis (_DEPRECATED_)
+
+[![License](https://img.shields.io/github/license/Qiskit/qiskit-ignis.svg?style=popout-square)](https://opensource.org/licenses/Apache-2.0)[![Build Status](https://img.shields.io/travis/com/Qiskit/qiskit-ignis/master.svg?style=popout-square)](https://travis-ci.com/Qiskit/qiskit-ignis)[![](https://img.shields.io/github/release/Qiskit/qiskit-ignis.svg?style=popout-square)](https://github.com/Qiskit/qiskit-ignis/releases)[![](https://img.shields.io/pypi/dm/qiskit-ignis.svg?style=popout-square)](https://pypi.org/project/qiskit-ignis/)
+
+**_NOTE_** _As of the version 0.7.0 Qiskit Ignis is deprecated and has been
+superseded by the
+[Qiskit Experiments](https://github.com/Qiskit/qiskit-experiments) project.
+Active development on the project has stopped and only compatibility fixes
+and other critical bugfixes will be accepted until the project is officially
+retired and archived._
+
+**Qiskit** is an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.
+
+Qiskit is made up of elements that each work together to enable quantum computing. This element is **Ignis**, which provides tools for quantum hardware verification, noise characterization, and error correction.
+
+## Migration Guide
+
+As of version 0.7.0, Qiskit Ignis has been deprecated and some of its functionality
+was migrated into the `qiskit-experiments` package and into `qiskit-terra`.
+
+* Ignis characterization module
+
+ * This module was partly migrated to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments) and split into two different modules:
+ `qiskit_experiments.library.calibration`
+ `qiskit_experiments.library.characterization`
+ * `AmpCal` is now replaced by `FineAmplitude`.
+ * `ZZFitter` was not migrated yet.
+
+* Ignis discriminator module
+
+ * This module is in the process of migration to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments)
+
+* Ignis mitigation module
+
+ * The readout mitigator will be soon added to [`qiskit-terra`](https://github.com/Qiskit/qiskit-terra).
+ * Experiments for generating the readout mitigators will be added to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments)
+ * For use of mitigators with `qiskit.algorithms` and the [`QuantumInstance` class](https://qiskit.org/documentation/stubs/qiskit.utils.QuantumInstance.html?highlight=quantuminstance#qiskit.utils.QuantumInstance)
+ this has been integrated into `qiskit-terra` directly with the `QuantumInstance`.
+
+* Ignis verification module
+
+ * Randomized benchmarking, Quantum Volume and State and Process Tomography were migrated to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments).
+ * Migration of Gate-set tomography to [`qiskit-experiments`](https://github.com/Qiskit/qiskit-experiments) is in progress.
+ * `topological_codes` will continue development under [NCCR-SPIN](https://github.com/NCCR-SPIN/topological_codes/blob/master/README.md), while the functionality is reintegrated into Qiskit. Some additional functionality can also be found in the offshoot project [qtcodes](https://github.com/yaleqc/qtcodes).
+ * Currently the Accredition and Entanglement modules have not been migrated.
+The following table gives a more detailed breakdown that relates the function, as it existed in Ignis,
+to where it now lives after this move.
+
+| Old | New | Library |
+| :---: | :---: | :---: |
+| qiskit.ignis.characterization.calibrations | qiskit_experiments.library.calibration | qiskit-experiments |
+| qiskit.ignis.characterization.coherence | qiskit_experiments.library.characterization | qiskit-experiments |
+| qiskit.ignis.mitigation | qiskit_terra.mitigation | qiskit-terra |
+| qiskit.ignis.verification.quantum_volume | qiskit_experiments.library.quantum_volume | qiskit-experiments |
+| qiskit.ignis.verification.randomized_benchmarking | qiskit_experiments.library.randomized_benchmarking | qiskit-experiments |
+| qiskit.ignis.verification.tomography | qiskit_experiments.library.tomography | qiskit-experiments |
+
+## Installation
+
+We encourage installing Qiskit via the pip tool (a python package manager). The following command installs the core Qiskit components, including Ignis.
+
+```bash
+pip install qiskit
+```
+
+Pip will handle all dependencies automatically for us and you will always install the latest (and well-tested) version.
+
+To install from source, follow the instructions in the [contribution guidelines](./CONTRIBUTING.md).
+
+### Extra Requirements
+
+Some functionality has extra optional requirements. If you're going to use any
+visualization functions for fitters you'll need to install matplotlib. You
+can do this with `pip install matplotlib` or when you install ignis with
+`pip install qiskit-ignis[visualization]`. If you're going to use a cvx fitter
+for running tomogography you'll need to install cvxpy. You can do this with
+`pip install cvxpy` or when you install ignis with
+`pip install qiskit-ignis[cvx]`. When performing expectation value measurement
+error mitigation using the CTMP method performance can be improved using
+just-in-time compiling if Numbda is installed. You can do this with
+`pip install numba` or when you install ignis with
+`pip install qiskit-ignis[jit]`. For using the discriminator classes in
+`qiskit.ignis.measurement` scikit-learn needs to be installed. You can do this with
+`pip install scikit-learn` or when you install ignis with
+`pip install qiskit-ignis[iq]`. If you want to install all extra requirements
+when you install ignis you can run `pip install qiskit-ignis[visualization,cvx,jit,iq]`.
+
+## Creating your first quantum experiment with Qiskit Ignis
+Now that you have Qiskit Ignis installed, you can start creating experiments, to reveal information about the device quality. Here is a basic example:
+
+```
+$ python
+```
+
+```python
+# Import Qiskit classes
+import qiskit
+from qiskit import QuantumRegister, QuantumCircuit, ClassicalRegister
+from qiskit.providers.aer import noise # import AER noise model
+
+# Measurement error mitigation functions
+from qiskit.ignis.mitigation.measurement import (complete_meas_cal,
+ CompleteMeasFitter,
+ MeasurementFilter)
+
+# Generate a noise model for the qubits
+noise_model = noise.NoiseModel()
+for qi in range(5):
+ read_err = noise.errors.readout_error.ReadoutError([[0.75, 0.25],[0.1, 0.9]])
+ noise_model.add_readout_error(read_err, [qi])
+
+# Generate the measurement calibration circuits
+# for running measurement error mitigation
+qr = QuantumRegister(5)
+meas_cals, state_labels = complete_meas_cal(qubit_list=[2,3,4], qr=qr)
+
+# Execute the calibration circuits
+backend = qiskit.Aer.get_backend('qasm_simulator')
+job = qiskit.execute(meas_cals, backend=backend, shots=1000, noise_model=noise_model)
+cal_results = job.result()
+
+# Make a calibration matrix
+meas_fitter = CompleteMeasFitter(cal_results, state_labels)
+
+# Make a 3Q GHZ state
+cr = ClassicalRegister(3)
+ghz = QuantumCircuit(qr, cr)
+ghz.h(qr[2])
+ghz.cx(qr[2], qr[3])
+ghz.cx(qr[3], qr[4])
+ghz.measure(qr[2],cr[0])
+ghz.measure(qr[3],cr[1])
+ghz.measure(qr[4],cr[2])
+
+# Execute the GHZ circuit (with the same noise model)
+job = qiskit.execute(ghz, backend=backend, shots=1000, noise_model=noise_model)
+results = job.result()
+
+# Results without mitigation
+raw_counts = results.get_counts()
+print("Results without mitigation:", raw_counts)
+
+# Create a measurement filter from the calibration matrix
+meas_filter = meas_fitter.filter
+# Apply the filter to the raw counts to mitigate
+# the measurement errors
+mitigated_counts = meas_filter.apply(raw_counts)
+print("Results with mitigation:", {l:int(mitigated_counts[l]) for l in mitigated_counts})
+```
+
+```
+Results without mitigation: {'000': 181, '001': 83, '010': 59, '011': 65, '100': 101, '101': 48, '110': 72, '111': 391}
+
+Results with mitigation: {'000': 421, '001': 2, '011': 1, '100': 53, '110': 13, '111': 510}
+```
+
+## Contribution Guidelines
+
+If you'd like to contribute to Qiskit Ignis, please take a look at our
+[contribution guidelines](./CONTRIBUTING.md). This project adheres to Qiskit's [code of conduct](./CODE_OF_CONDUCT.md). By participating, you are expect to uphold to this code.
+
+We use [GitHub issues](https://github.com/Qiskit/qiskit-ignis/issues) for tracking requests and bugs. Please use our [slack](https://qiskit.slack.com) for discussion and simple questions. To join our Slack community use the [link](https://join.slack.com/t/qiskit/shared_invite/enQtNDc2NjUzMjE4Mzc0LTMwZmE0YTM4ZThiNGJmODkzN2Y2NTNlMDIwYWNjYzA2ZmM1YTRlZGQ3OGM0NjcwMjZkZGE0MTA4MGQ1ZTVmYzk). For questions that are more suited for a forum we use the Qiskit tag in the [Stack Exchange](https://quantumcomputing.stackexchange.com/questions/tagged/qiskit).
+
+## Next Steps
+
+Now you're set up and ready to check out some of the other examples from our
+[Qiskit Tutorials](https://github.com/Qiskit/qiskit-iqx-tutorials/tree/master/qiskit/advanced/ignis) repository.
+
+## Authors and Citation
+
+Qiskit Ignis is the work of [many people](https://github.com/Qiskit/qiskit-ignis/graphs/contributors) who contribute
+to the project at different levels. If you use Qiskit, please cite as per the included [BibTeX file](https://github.com/Qiskit/qiskit/blob/master/Qiskit.bib).
+
+## License
+
+[Apache License 2.0](LICENSE.txt)
+
+
+
+
+%prep
+%autosetup -n qiskit-ignis-0.7.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-qiskit-ignis -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..fdfbc02
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+55a8e6a97f1c62d1f4dcb82c880fba7a qiskit-ignis-0.7.1.tar.gz