Skip to main content

No project description provided

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.2.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.2.1.tar.gz (415.7 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.2.1-cp313-cp313-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.2.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.2.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.2.1-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

struqture_py-2.2.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.2.1-cp312-cp312-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.2.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.2.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.2.1-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

struqture_py-2.2.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.2.1-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86-64

struqture_py-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

struqture_py-2.2.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.2.1-cp311-cp311-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

struqture_py-2.2.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.2.1-cp310-cp310-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86-64

struqture_py-2.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

struqture_py-2.2.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.2.1-cp310-cp310-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

struqture_py-2.2.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.2.1-cp39-cp39-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.9Windows x86-64

struqture_py-2.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

struqture_py-2.2.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.2.1-cp39-cp39-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.2.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.2.1.tar.gz.

File metadata

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

File hashes

Hashes for struqture_py-2.2.1.tar.gz
Algorithm Hash digest
SHA256 117577664d3651c77c998565412e054942e4bd09c0b1197e373f684c373222e3
MD5 08e0e207582b5588d94bf4c8df79ba1b
BLAKE2b-256 3667fe74e23c736db94d5af6b0855e42b9d41e066f0599e129d0023459611279

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 86e29d39bf314d7eb6ffe372f0c12eb766a5ed22536a1313cf7a9c56c6f3a969
MD5 15fa377ebc0394f84e35f3601cc129f5
BLAKE2b-256 64fb0b741691fae594d31db9d0cef30756537a82262c33836f1da13817393a05

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29352960296962ccc56615f9f8568a5f20148d542062133f8fb591c204a906b3
MD5 8455c609b380c74b9e8bd7fbd4165d31
BLAKE2b-256 e149e6172c34788156afd3271e2de83d41a72be931ecf0abd2f882d685f49cb6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 04c0a55d47efed827e5598f4cf8a2e71444deb4f852c92ab4a92a9e4c1d9a4e4
MD5 62f67b94687450931b3e4886dc0a7dc3
BLAKE2b-256 d478732db029ea3e2b1d44576497c40c5001272a40f031849f334dad4f4de99e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eb3b79c926a86c35931736aba75df6f85dc72e51ff54e11fa1c8b9685618d67a
MD5 142bcd80bfa63218941fdc3c5f932816
BLAKE2b-256 83f942db892aed38a2ba48ddf3094693c637d1327d86cfc19cca39016a8b8d59

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f07682cac204d0ebc4888b511e853bce826f98b4d5cbcd65d33313f27f4c69ad
MD5 25737c95562deda1b255b3a663309e13
BLAKE2b-256 c83bbb139b92422fb6758786145670bb02e48dd61194353b58c848bd74993459

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e7613b3c83a0528f27d06060cd6712becb5ed58d40497107ef9d634a21a1c05c
MD5 4ef51560b354f2525706a33d407d818b
BLAKE2b-256 20131320ec2457d416bd7f4e097d66242c0d1be738c982d6b59acba6b4de28c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e1963c7dc8bdae43c44318ee1d596f1928da63de9ebd902a0ddf0c3b1d425b83
MD5 b8f0d46985aed49de4ca840029c5c86e
BLAKE2b-256 f6a32903033c3af59db4f10be0f4f72ca0a772117554332b9186bcb24fef9cb7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 34fe08b6c2d8ad1fc56c6a9238f083f53fa297e259166b3293e0d1bcb1c8f8e6
MD5 132157bd62a6dde175914c76bac2fa50
BLAKE2b-256 3d4e486d4f8d60dd8f7603a3c03f30f8aba587d6c3af1467990fce2fd12da67f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 40c7c209bc301ac6d513cd0e0382c3a7c257c9e254431713029d22c381706e90
MD5 2bddb849292685a09af1db9b69ad3d7e
BLAKE2b-256 2c0671a810b43eed74d404122c5c9e8bbde31e2fc23261147343a33973b0ada0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5d00a109b5eaf9b804ca51caad6d2cec0bcaf6759bd445750dd018e6b4687adb
MD5 33a20a3f785577b532ffb23fd3b5190a
BLAKE2b-256 5906683e52bac980864abff6d747f2770d6d86b7a28f6c3ebe8083423298a657

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 befb39a6fc321b34a64edeaa694a5aea21d564a2a2d20793ad9d62df6c343cb0
MD5 41138d3adba052969e5a1db997b02157
BLAKE2b-256 485eeae46f13734f32c7d831fb776a6f1b09dcaa8ae1ad820cae10d75ffe4265

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c27e6f89f7bc53d834a2ccc4b3127b6d46d23817130a2f6f88d6e18c2a9ee3e0
MD5 a3ba9daace13ce17941d5a233fe82b67
BLAKE2b-256 3a2ce24ed1d914704086fe8ced3128b650aab9481ba0ba0fc277a92b0ac31068

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ce912e37558703614caa83facd525cfa8837c2b34c839e0bb4bcfbdffbfbda20
MD5 f502f9dc10636f848b9485ef8bfd69bd
BLAKE2b-256 68d998b70313bddf2f9be4bfc1579fca64259ac29547a208d0537351bd5ea471

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a4bc1e3a76f51d4d5c5094405e3daa59daffe614368d3167a5729cc8430b8cb0
MD5 4546101ce145ba09270dbe44fe9672fb
BLAKE2b-256 4b0aaa3103d4440b6b1c38abb83dbc632f67bb61c136ec455e1952c4bad4e627

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fae49294c20bc0ac54158ce312ca4fa524cf3270fbc2101e9a015ee607c55982
MD5 a2e7ac88163e5845cfca9a74d790bdf3
BLAKE2b-256 741673921af2d6e73b9695ccb2e5aa146a9a11b22c37a8236b4f30b49bdf64fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0d65b4a555b1914e7e7a461c0d3a26a3c21c3066f7caa972f54e44f9971cd1ae
MD5 d28995db5dfb51395d83737952418f4d
BLAKE2b-256 e9a02f4aa28dcf939cc09b06056f94d5c532ab333449ab5fe00bcf444baff92b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 90f90c5492329a13257112c61a92e33e22e222b20c8e83997c49237d5e834cfe
MD5 679d3be4ae48c8c7486c6413a79ea912
BLAKE2b-256 c59e4a14e7e4a74f1bee1e24c103e385965daf0bc1a6cf5b7b89c5b54c649b02

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1d8b21b3c77863b8ba56ca0c8e5e6b3f089a06c466e1b12908767a157b320e9b
MD5 ed2a2928b26089153e90ea29e2e9cfb7
BLAKE2b-256 ff9d85404d2ec06dec059121b4a59bc616db38303feead1d336315d0cd8fd5a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1859cc97831a6a209852f99a3d1f64101d6f0ef6ae96ab640ae734ee664cbc21
MD5 8bf502972abd08bdae846e02e8c2767b
BLAKE2b-256 4c0993183acbc221d047d7074fa4a654364a9342ed3ba79c0de5a83fec511e0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 269156f04dcdefbad36af68c5b6670a8766488610c8b261767b9d615a71f14be
MD5 9ed085a67223a67c564076367057c02d
BLAKE2b-256 b94c85a842129a8dd4389787ec5eb30b8e35450d34588348a0b5146cde785e24

See more details on using hashes here.

File details

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

File metadata

  • Download URL: struqture_py-2.2.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.11

File hashes

Hashes for struqture_py-2.2.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 32ab9ad504c7b0e47d221045b53ca409b5f9bcea9ca752c1b81b4c93dff121b1
MD5 c5988f73b31449b7e93facd7171bdfb3
BLAKE2b-256 231d742434b5f3dfc10cca8e5263a4a48f323b91c58227d75fef8f38081841e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8fce6efae2cea784bde57cf4d28b093466d98633466cf32848bf27c0a1091d14
MD5 38df3d9f5c443fa53d53f23a7a4b2e8f
BLAKE2b-256 e1687a55d89ba7ba25f02a4746b32d289557d9a62a34dfa0355551d0e5b94bda

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9d9d7ebd9366e2b35003dabf8aec19a8eaa9d7a801ed01394b75f8490620b78b
MD5 d76425a94263b7f62f108a9c79f43a32
BLAKE2b-256 b0aec47762bcfccb6a6e3842a52117896c77734b2bee6861e5c5f38bbd765f6f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bae462382985623169d8dd54e5a374c344409b7bd4cf0e36c1f18eb68db6b2ab
MD5 02184d18c5efccaf526bb1902f7cfe58
BLAKE2b-256 606f0db56d1866b3efb0ef25e13f694b506cd2d84d4f0600eb61119afc527c86

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7efb6e45297d757bb094a5bef38768627b3be11eb2fae21dceb2a745b1bc182e
MD5 a0c44e879ef1b5dc97d14e409c46d9cd
BLAKE2b-256 b2a70c9f2b829b92e39721814276d9a27bf60d85bc728628771235dc8192559a

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