Skip to main content

Python interface of struqture, the HQS tool for representing operators, Hamiltonians and open systems.

Project description

Struqture

Struqture is a Rust (struqture) and Python (struqture-py) library by HQS Quantum Simulations to represent quantum mechanical operators, Hamiltonians and open quantum systems. The library supports building spin objects, bosonic objects, fermionic objects and mixed system objects that contain arbitrary many spin, bosonic and fermionic subsystems.

Struqture has been developed to create and exchange definitions of operators, Hamiltonians and open systems. A special focus is the use as input to quantum computing simulation software.

struqture

To best support this use case, struqture has a number of design goals:

  • Support for arbitrary spin, bosonic, fermionic and mixed systems
  • Full serialisation support to json and other formats
  • Preventing construction of unphysical objects by using well defined types for all objects in struqture
  • Support of symbolic values in operators, Hamiltonians and open systems

Following these design goals, we prioritize using distinctive types to construct objects over a less verbose syntax. Similarly the support of symbolic expression leads to a trade-off in speed compared to an implementation using only floating point values. Struqture is designed to also support the construction and (de)serialisation of large operators but for the use in numeric algorithms we recommend transforming Operators and Hamiltonians into a sparse matrix form.

Documentation

We recommend users to start with the user documentation for stuqture and struqture-py. The user documentation is intended to give a high level overview of the design and usage of struqture. For a full list of the available data types and functions see the API-Documentation of struqture and struqture-py.

Migration guide: from struqture 1.x to struqture 2.x

The Migration Guide should be used as a reference for anyone wanting to migrate existing code which uses struqture 1.0 or above to struqture 2.0.

Installation

Python

You can install struqture_py from PyPi. For x86 Linux, Windows and macOS systems pre-built wheels are available. On other platforms a local Rust toolchain is required to compile the Python source distribution.

pip install struqture-py

Rust

You can use struqture in your Rust project by adding

struqture = { version = "1.2" }

to your Cargo.toml file.

This project has been partly supported by PlanQK and is partially supported by QSolid and PhoQuant.

Contributing

We welcome contributions to the project. If you want to contribute code, please have a look at CONTRIBUTE.md for our code contribution guidelines.

Project details


Release history Release notifications | RSS feed

This version

2.0.1

Download files

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

Source Distribution

struqture_py-2.0.1.tar.gz (418.5 kB view details)

Uploaded Source

Built Distributions

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

struqture_py-2.0.1-cp313-cp313-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

struqture_py-2.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

struqture_py-2.0.1-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

struqture_py-2.0.1-cp313-cp313-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

struqture_py-2.0.1-cp312-cp312-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

struqture_py-2.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

struqture_py-2.0.1-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

struqture_py-2.0.1-cp312-cp312-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

struqture_py-2.0.1-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86-64

struqture_py-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

struqture_py-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

struqture_py-2.0.1-cp311-cp311-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

struqture_py-2.0.1-cp311-cp311-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

struqture_py-2.0.1-cp310-cp310-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86-64

struqture_py-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

struqture_py-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

struqture_py-2.0.1-cp310-cp310-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

struqture_py-2.0.1-cp310-cp310-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

struqture_py-2.0.1-cp39-cp39-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.9Windows x86-64

struqture_py-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

struqture_py-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

struqture_py-2.0.1-cp39-cp39-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.0.1-cp39-cp39-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file struqture_py-2.0.1.tar.gz.

File metadata

  • Download URL: struqture_py-2.0.1.tar.gz
  • Upload date:
  • Size: 418.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for struqture_py-2.0.1.tar.gz
Algorithm Hash digest
SHA256 cad05812ce32b30c91401c98f2a6e58b8b0d4bd8835728fe02717c75406839ba
MD5 4c6172e7cd5e0725230ea2702cc5fe9f
BLAKE2b-256 4c57c55e00bc847a6aa8b03ca7be23c2b0b679801499ba562f13b88ba1d1615f

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 79395fddd53b31a4fbafd9ca2240947f73e7c352778d4727e6ab553dcf7520d4
MD5 2b31a4b8a5aaa0a93e6e7315535807e5
BLAKE2b-256 58a9f437653046fed69aa1ba0d6fec9be2fbf12d07719f243cb9c1222968a984

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 24d7980ee40659a24ed05d75f299ccaa57272a4c191c6926554950f159af4d51
MD5 91267228a642d5374c50c09fcf281a8d
BLAKE2b-256 cf2c1e7be39cf339617da37b4660d62159a905e268a7b9f30d5661edcd945a63

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f2f185dc8c984800dd8060d301d6a23c0b49c62b1f059dcd0c58b2ea1af9c02a
MD5 5aab40cd2d11372c1467211d1d64f457
BLAKE2b-256 a31a60ac000b9047f31c12a6af7a738de421af0a2e671ca8555f789406e20175

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e83a6f30602e3700e3c1ba0d4d05dc6420755dad3f8ee40be83fc67a7dde2f65
MD5 4f6c2c125b4555e7abe6f6199ac4913b
BLAKE2b-256 50d8765c0ccc52fbbc187af7a11e5f298961aebb6eb724559dd243d2a9ea7332

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4fd5429fa54b83d7b767d86e1b2b2db33872fd9b2686a79c09eccd31fe572752
MD5 db3983a097386d76c47ddd7c3b3d5ee4
BLAKE2b-256 37ba812cdfa733caefd9b2625e5440136e6d4f63f9bd322eeed5cfea9409947c

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3cc654604511068e7435914174fd44acac4092f66ebf11b9c43477b171b0f7f2
MD5 0e68a4246754bf2fff557aa9e673410c
BLAKE2b-256 4dd407124eccc9d6af81c0aca5e1fef53e1d7d9000a6af9a7e8f8de75adb99eb

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 557f66f50ba7e1ed92606244a76383698a7583fb81c094deb516d5d120832d76
MD5 f2328fb61ac8ff657e960dba9f768787
BLAKE2b-256 58c75a1d34b32fc7da69a0c7a8755fbb65248737885c89351a0b66315a4f5e3c

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 38a0a6d19c3f0eee0c45f35493f7661548052edf14590f901b9336094185c269
MD5 00e3c2333da2aa9e770ea151b6fb0f80
BLAKE2b-256 ff147ed4c1cc010a65d3846708cc8c63266a5f4cb0cfd52d9e5cb8c980abe1f5

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed1c10177704954b197718fb042414a63743f88e024076f36f91e7832ee5e765
MD5 0c46ef24c23a1c7365c2bee1bf0278f6
BLAKE2b-256 eee3adfa40148ba7e2465bd67e449067e0d09a240debed9525b1264d07468f20

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0848eccd52d5a5bee822ea1a341366385be40f443d7b1caea464d3aee61be36c
MD5 208111f9b940acac12e60a0776c4e8b7
BLAKE2b-256 49fd2dc08619790ea8a1b4a81fbb8e49214a4b61073234a949fd94f39b9490fc

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ca30da34eb7930290ebe4a5b44527d6c28eb9014fa4937df1d203627244ecc22
MD5 431070fd6c42ab8899c7f8a8c5204a2c
BLAKE2b-256 234efe686bc3d5260ad08e0adf48715c5bbeab13f3525c63c563879bdb41b227

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 737d39d538512fff9361ee9b8eebcd719e8dd1b07fc9b22259e81a7d78339686
MD5 13c3c2f9a3d913e50b858dffc278809e
BLAKE2b-256 f07390336f24bf24c4ecf251b82a264fc301e5f95bc05d7c7cfa686851b4a1cb

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8cb2a0c3e525b0d67ad3588b5cbc5bfdd92ae5a924014e5761045a4abae60690
MD5 ce614ccb89ca1da5e3cf52419bfe4b6a
BLAKE2b-256 eddd2913e260f1f5f9eda713f46797217a74a73badc6ac6bef6476d50868a2f2

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8f0dbdb22a7f0c8acf7d0698870dc89f166369a8db874ed4ff4915121c652017
MD5 2d4cc9c686af00aefd7f18ab03da62ce
BLAKE2b-256 72f004354d8da4f334de9f914928d6f3ae271236919a576974d6df336a745ceb

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 11dacd02036ff42f220c6261f2011d023ec303dd05325333799162c83cfbe95b
MD5 f8092dfe5670cda485e806c5fb682a7c
BLAKE2b-256 84de2c0658f04bb20b294a3cbfba8f7bea3116a9ebc17c0f488c7398aa703443

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 11048f7b54a2ac485e2742bdf00f2a12c4591965cb546dc255332e902baff564
MD5 490772732bc5a239f8efdcd297fcb571
BLAKE2b-256 4c8e86925ffeac3863478b9350d0de54c7ada7c42c277452c97533ae9473a83d

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec23128beb7dbbf274d9b807331e5cd013f851ed8f34a169dcf14f97b766644a
MD5 1a8473c24f6ca3120c0dce3d4facb564
BLAKE2b-256 650ffeb32b92f18b60c033a8f72b5c17aa8517c75aa9f3ce7be009bd2bf01729

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 66caad544af802ba8965204c55d72513f87512f31069a9a29eb05e72a3d0ac6a
MD5 14f31f12943bfc63d6e5471a63d624a2
BLAKE2b-256 2bce2b3ea52679ae30a425c21c9b0f696e6cd84df292b3e7d806eb63a64c7cf8

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a67fdcd5d1a967a18db6119de9bc0bcb336d1b3215811bc2d67abb70bd4b2ec
MD5 a44c58795aec87f418eaf03f40444871
BLAKE2b-256 b61fb8cfdf1ae306cc9808efd1dd741e7c0bda88dd95607ed92c521d76d856e0

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c49343b77e9d98c5b7db7815c1129b6c7ac899a8d0d4c012edfaae5d9ddc7d87
MD5 e4d308851572755f57db45fa076ac981
BLAKE2b-256 1c9962cb27e5149f09ae6653dd4607c16ac0a0a66bc9830b99971cb29ca28087

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: struqture_py-2.0.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for struqture_py-2.0.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 12996f556eb5c7f37569a4c29a023d84751605d27b22cb07ddcda2bcb80a23dc
MD5 474cdd7ec3381b4149d6ff6a55a21c2d
BLAKE2b-256 2ab7f2c5e12ae47839b87078c55f53a017908ce16c411a41b6ab7ddd4e7faa3b

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ba3c2e72220310cda2ee5843a8ff23db57ecee62f6ee71b12825afa0fe6a8f2
MD5 4241499306126defee1c92a5ef7a2741
BLAKE2b-256 01b752ec743e78fc9e62e29c76466e7b1544bf98b9e8606a284f03eaf8a81676

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7ce6f8ba6a0d90d82bc5e932c4bf06ad3864e291e2740eb0254beadb15684d6c
MD5 2f6ad71e791a7f9bf6084747934cd181
BLAKE2b-256 2ab2abae369abd0f3d08ce71d3a87b9010594330357a5103c62c0f336c72b97b

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d9311a6660760ba3e0266bd8dd4ce694f86fa83279b650d2f20e40e7b7e67736
MD5 18fd1c8923a56b6608d005f75ebf0db3
BLAKE2b-256 79d7bad869c0c897be93c109d21cb997710738a9715d55b0bf4b7ec345d47e15

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.1-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 47ba75448bd069718d768a7fdc3bec952b8d7c3e52fc1e989415cf92d48dd553
MD5 05f5ba2a1e2d454fe5ddf6f7279a1659
BLAKE2b-256 af814eb60b7a8b815db8ca0f14ec7a8d736491be0962a51a1751c053f5e8dda1

See more details on using hashes here.

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