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.3.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.3-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: emu_base-1.2.3.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.3.tar.gz
Algorithm Hash digest
SHA256 438e6b73735548e2168dc7e1d49ded3c85726a3867c7fd259fb4c94953cc7eef
MD5 fc7552f6e3e3c40ccd2dcd9df82eab4f
BLAKE2b-256 c428343948ec64e6060431d2d07b056f18be90466d6f5d8f3a4352627f4def4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for emu_base-1.2.3.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.3-py3-none-any.whl.

File metadata

  • Download URL: emu_base-1.2.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 685559b681bdaabc2bce48754c8d29c61283be85da8f7b78f3974d39ddea31b9
MD5 f9d65169ba95d2b1c334bbf2bc4f8b66
BLAKE2b-256 122b7c60b855b2b181c5526f457cb84550c64bb1e2a1adb02d851337bb32933b

See more details on using hashes here.

Provenance

The following attestation bundles were made for emu_base-1.2.3-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