An open source quantum circuit simulator to be run locally with the Amazon Braket SDK
Project description
Amazon Braket Default Simulator
The Amazon Braket Default Simulator is a Python open source library that provides an implementation of a quantum simulator that you can run locally. You can use the simulator to test quantum tasks that you construct for the Amazon Braket SDK before you submit them to the Amazon Braket service for execution.
Setting up Amazon Braket Default Simulator Python
You must have the Amazon Braket SDK installed to use the local simulator. Follow the instructions in the README for setup.
Checking the version of the default simulator
You can check your currently installed version of amazon-braket-default-simulator
with pip show
:
pip show amazon-braket-default-simulator
or alternatively from within Python:
>>> from braket import default_simulator
>>> default_simulator.__version__
Usage
The quantum simulator implementations StateVectorSimulator
and DensityMatrixSimulator
plug into the LocalSimulator
interface in
Amazon Braket SDK, with the backend
parameters as "braket_sv"
and "braket_dm"
, respectively.
Alternatively, to use StateVectorSimulator
, you can instantiate LocalSimulator
with no arguments or with backend="default"
:
Executing a circuit using the default simulator
from braket.circuits import Circuit
from braket.devices import LocalSimulator
device = LocalSimulator()
bell = Circuit().h(0).cnot(0, 1)
print(device.run(bell, shots=100).result().measurement_counts)
Documentation
Detailed documentation, including the API reference, can be found on Read the Docs
To generate the API Reference HTML in your local environment
First, install tox:
pip install tox
To generate the HTML, first change directories (cd
) to position the cursor in the amazon-braket-default-simulator-python
directory. Then, run the following command to generate the HTML documentation files:
tox -e docs
To view the generated documentation, open the following file in a browser:
../amazon-braket-default-simulator-python/build/documentation/html/index.html
Testing
If you want to contribute to the project, be sure to run unit tests and get a successful result before you submit a pull request. To run the unit tests, first install the test dependencies using the following command:
pip install -e "amazon-braket-default-simulator-python[test]"
To run the unit tests:
tox -e unit-tests
You can also pass in various pytest arguments to run selected tests:
tox -e unit-tests -- your-arguments
For more information, please see pytest usage.
To run linters and doc generators and unit tests:
tox
To run the performance tests:
tox -e performance-tests
These tests will compare the performance of a series of simulator executions for your changes against the latest commit on the main branch. Note: The execution times for the performance tests are affected by the other processes running on the system. In order to get stable results, stop other applications when running these tests.
License
This project is licensed under the Apache-2.0 License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file amazon-braket-default-simulator-kshitijc-1.11.2.dev0.tar.gz
.
File metadata
- Download URL: amazon-braket-default-simulator-kshitijc-1.11.2.dev0.tar.gz
- Upload date:
- Size: 169.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4aed02e0d5997654cc3f5c2ec49b1668c0e097a4886e793ea82b0df06426ec69 |
|
MD5 | e7e1160009c46c257c1cc3d21b02fecb |
|
BLAKE2b-256 | 6303cc60a3add389cf15afc6bbe317bf5250e77deab5a96216b8a6bac1ef410d |
File details
Details for the file amazon_braket_default_simulator_kshitijc-1.11.2.dev0-py3-none-any.whl
.
File metadata
- Download URL: amazon_braket_default_simulator_kshitijc-1.11.2.dev0-py3-none-any.whl
- Upload date:
- Size: 201.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | debf8d7ee79b949f3dddf7b58012374f498b689c3397b5828bdf9dd77f8d4d6f |
|
MD5 | e417f0aeffa91b64d6b0e8e54bd08432 |
|
BLAKE2b-256 | 4732a195485747109f2969321b023d57b84176254011f9e4fd3babff9ef18fe2 |