Skip to main content

Pasqal base classes for emulators

Project description

Emu-MPS

EMU-MPS is a Pulser backend, designed to EMUlate the dynamics of programmable arrays of neutral atoms, with matrix product states (MPS). It allows users to increase the number of qubits and reduce computation time.

Join us on Slack or by e-mail to give us feedback about how you plan to use Emu-MPS or if you require specific feature-upgrades.

Getting started

You can install from source, or download the package from the private pypi registry that pasqal maintains in gitlab. For developers, we recommend installing from source, for users we recommend installing from the registry.

Warning: installing emu-mps will update pulser-core

We always recommend using a virtual environment.

Click me to see how it is done

Create a virtual environment using python

python -m venv .venv

Or

python -m venv /path/to/new/virtual/environment

Replace /path/to/new/virtual/environment with your desired directory path.

Then activate the environment On linux or MacOS

source /path/to/new/virtual/environment/bin/activate

While on Windows it's

C:\> /path/to/new/virtual/environment/Scripts/activate

Remember to replace /path/to/new/virtual/environment with the actual path to your virtual environment. Once the environment is activated, you can clone emu_mps and install it using

installing from the registry

When pip is configured to know about the pasqal registry, Emu-MPS installs as

pip install emu-mps

When pip is not already configured, the easiest way to do so, is to add a file ~/.config/pip/pip.conf containing:

[global]
extra-index-url=https://gitlab.pasqal.com/api/v4/projects/597/packages/pypi/simple
                possible.other.urls

As this shows, it is also possible to have multiple extra repositories configured. Note that the order is not important.

It is also possible to add the extra-index-url to the pip install command directly, if you somehow don't want to create a pip.conf file.

installing from source

git clone this repository or download

Then, cd into the root folder of the repo and type

pip install -e .
Guidelines for developers We recommend using an environment, git clone the repository, then inside the `emu_mps` folder
pip install -e .

Also, the installation of pytest, nbmake, pre-commit.

Do not forget to run the unit test suite by simply running pytest command.

Another way can be using hatch.

virtual environment with hatch

python -m pip install hatch
python -m hatch -v shell

When inside the shell with development dependencies, install first the pre-commit hook:

pre-commit install

Check the tutorial notebooks and example scripts

For more information, you can check the tutorials and examples located in the examples folder

Documentation

Please check the documentation page for more info about contributing, the API, benchmarks, etc.

Code Coverage

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emu_base-1.2.2.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

emu_base-1.2.2-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file emu_base-1.2.2.tar.gz.

File metadata

  • Download URL: emu_base-1.2.2.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for emu_base-1.2.2.tar.gz
Algorithm Hash digest
SHA256 8cdb59f7503ea8fc388dd6ca0acc8055e80c681f7adc3e00a6029c939bfa8d62
MD5 e5b1eda89f72647d5e4c1dd19e390e50
BLAKE2b-256 dcafcb3dfdcf688ac02787d971d7486027d273702b9f8d2acb466e8af61b1de8

See more details on using hashes here.

Provenance

The following attestation bundles were made for emu_base-1.2.2.tar.gz:

Publisher: publish_emu_base.yml on pasqal-io/emulators

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file emu_base-1.2.2-py3-none-any.whl.

File metadata

  • Download URL: emu_base-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 21.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for emu_base-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f4e33902cca338ceea8ef305472b9c4fd084196c1744d5dc445f8b347ae07849
MD5 7a5c59a28f3e628a1c849e74fabd2bb5
BLAKE2b-256 60055b75f6969b703f76c3044575675c079375fb2c9907e339acf3c6233e7dfa

See more details on using hashes here.

Provenance

The following attestation bundles were made for emu_base-1.2.2-py3-none-any.whl:

Publisher: publish_emu_base.yml on pasqal-io/emulators

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page