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.3

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

Uploaded CPython 3.13Windows x86-64

struqture_py-2.2.3-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.3-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.3-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

struqture_py-2.2.3-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.3-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.3-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.2.3-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.3.tar.gz.

File metadata

  • Download URL: struqture_py-2.2.3.tar.gz
  • Upload date:
  • Size: 414.2 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.3.tar.gz
Algorithm Hash digest
SHA256 58c968d474c8c881bbe6a29a9915dc28598638928b22a7a0b3e8670421150cc2
MD5 142fc54d696f6982408253569070c13b
BLAKE2b-256 b0e450ba45316ac10a6355bb0b9f6d8c65d6fc0568302154f18c0582c4585224

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8b61efbc71596ab319cd3a71a4350331249f53f0351e70c5ef5262f94c325b64
MD5 29ef6e3670e0c43bac1642bc80bac7e6
BLAKE2b-256 7f373574e217829e1f8f26c54534c343280b63ca6016be7976859c8f550428f8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f172b651b022d6091f57149f5fcdf6b6ed4bb1b238d0d605b5c6add46c2d774a
MD5 2716ce1563681d1e3c392e971662fb00
BLAKE2b-256 bdef7c71c7b71cf70e44bf170a1e27b200961ce85bf2a464a7ab47809361ed07

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bbe7662bafed1e7645618cb96605a4f2820b2ee55b9203890939823ae699546a
MD5 eedc727ac7aabfbd46dfb54d4eab903d
BLAKE2b-256 b330d376ef3e47450856ebbc04895418e820361f7dc728ccf45aa6709d494fbf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9b93491126d56da4fa6c44f85fff7a9106f215f66373c82c04a7aafe5d1190e2
MD5 0fd90bffaf5c1405a4aa5c81f3d6c839
BLAKE2b-256 8e8fcaf5322ecf42c16e0b3c6b520cb02278fe055e3bb466bc17e2ee42a6529b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5e32853c8ff9cb12540e32eab747356cda5bfecd28d31f9eb56815ca9ae38ee1
MD5 87a8dad593d8f0c79b9c69db35387038
BLAKE2b-256 5b281d293bfb2d5e7958b6de1f30f83cc0b92b3a60c6480675dca46e33569177

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 57abb712bca6842fa7e88950d334bb0f86c542ab18ce90b0ad257c59b16a15bb
MD5 651d797e29179ad1de0795f5adb47e2f
BLAKE2b-256 d8b0caa0f016c1d3e4c4b98fb8c58bb0242b1b49fdbe3f27e59f22be35b52284

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 94b511f79bfe8ff5344b004f920d85cc82b50bdce37480c5352bed8f7d4aab2e
MD5 5fe228b1b2a3ec5d5b57813a6d238c20
BLAKE2b-256 6194f76d03bcb67bb70d6532868df2936ff849c32c7b95d2477963657c311297

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 87a5447d3d438c36bf27bbc8ae11bc9a9300bafd156853332dadcca8d090b007
MD5 d2eedeba8a9751cd9e8b665fad3a479f
BLAKE2b-256 56cde03b758e16e42d69c9f5a2acf903abfc5695e869b78d0e86d03903784454

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2fa70f818cd6854843c7bfd5161570059e7557cfb2b9d380bf1c2ee9f451b124
MD5 a918f38b6bf45e6c5fbaebb2050d7321
BLAKE2b-256 c788fa569aef1af7ae74cdfa96a27df71849c8bb86af7628dc260c5092cd4d56

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c4f22a0685cc3a02afb9eaa7715523612ccaf2065af808a9558082707e5a0ba6
MD5 a35675f04ada710d8c73787098be5417
BLAKE2b-256 44f43aa34694c91c10b5ce64c6f8c0ed50417b742f2590cc7c1fcfec189638b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6c5246231eec38f84af18464ed45bdfc35c98b2fcae6314bb6562533b0bf07f1
MD5 ca9d0c189005e3ea41d32a92984f32e5
BLAKE2b-256 ed931735f8fccee9ae065181db560ac82d8bd4ff8232f35d2e6287ed5f5058e4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 281d5ae6a9a15445be596db12ecbbc272ebd435d24d34667a7547989f8889dde
MD5 49288c0b40691f0cdd75a0bbb4e9f190
BLAKE2b-256 8baf9409726c5e7c3235677b335caa479e62fd552382433b584d49a4b118d21a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0be1c2a584a0d653045569eed390282e72ae8d96565fe2f2764ceb7e6373b9c8
MD5 d8ace68e3cb168ce6b441432099ffbff
BLAKE2b-256 f58ad3f93ff44dc6cdeceae3be477fcd254c3d73aef469f9d9296b65942c006e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 15790b5c9f83150b2fefe9dc8b605e4ecbe7622ff5d643ff67c786fba53f4993
MD5 5e422fcc34e5b91e4f26ac3d886fc98a
BLAKE2b-256 baf458bc42fe3d314fbd3f2b9a7bae7a951de4237a920d482ea6868054fb97dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 54b18bfec31f4602f12f99b4523994e57f434ba583bf00e39a1f8cf75172a1ac
MD5 dc31cdaf3dcde41935bbb855cc917b5e
BLAKE2b-256 b1620b2a358e884f43797e2b2ba91d9e914c99236f4bb0ea9bd3b8daa8718a89

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 83e2c20f5e6587f5d6641bcbac00e6be55fcba3f85d173f9f5a6989f6106587f
MD5 f517818fd05eddd4576054a0109aa0c4
BLAKE2b-256 284e7f1191c55c05c97592bd820af0c3fd404186539db04b82e02c3bdc5ba62f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29601bc9331fb31fbe2f9e4190b201c794b74ad1767c7b3ca1b3b2034a2f5bb8
MD5 203c061f22513c820b18b836bec4c961
BLAKE2b-256 b3785f55463491ddb17263655201ed7c0bc7d5523e96b99dcb3ed2953b4f0de1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dfadd5f352ff8374dafcb65d4ea76a2b3b7ff20cd9afe37e1a729c134af303d3
MD5 416e15c4ad8567f69a369e1699782746
BLAKE2b-256 27424ee4f490a7bb337509d6ac2d69d16e71275343ef30deea039c8fdaaeda6e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b0a2676b6c9e0ea29bb93b130a518ce496344fbc13aeb72bdd19b76f03ce5230
MD5 faf19c566a541a13a093238d8da5f603
BLAKE2b-256 6796e0061615d736e02b80bdedee3af19cf916813b5a29e228fe3be1b6fc4d83

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3ae328b3e9e5b9e2d9c51a43a563703f774ee0620dd77db815fca9552ecbedd6
MD5 f2fed79d84ecb5578090dabbbb6a6777
BLAKE2b-256 a458c7d654819125b7a03b31b423b9ad9a69c99ffcf78e8e4ce310a0ad742450

See more details on using hashes here.

File details

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

File metadata

  • Download URL: struqture_py-2.2.3-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.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5b3f965cb5bc0492a2a7d5e4e57d9d64082cb7288a32049e1c3eec0b345a5bd9
MD5 099bbbfb75bc85daa0c9b2f5abccf722
BLAKE2b-256 c4c2b70170bc9b66cf13cdba2a3c34b1ac9ab0398fa973bed1722adf326793a2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d761c18a696d3bc3c29b95f095ca7cd1d37a08688b089b68b5f4b73406d09d10
MD5 3a33977b212e23fb11613f46851515f2
BLAKE2b-256 4d245b0fe02fdc90f16491e2172c17e28e1d51b2a9fd97d2ee3ae100f68bd0e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 61c5a201523bd2bc7bbcff6b5ffbb3bc4e677d02c21dd68da99051ea125ec80b
MD5 35025af8ff52a97a893e61cd9845e94d
BLAKE2b-256 287ecaf1273b00b412dd18fd5315b8c1ba3fc2f5f43800a05e4b02a7d3c24d45

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8906b299bc8b5e8221a368ef04227c2412aec449e864e84ab614206662c55230
MD5 0ab1cf208770eebad349ca3679ac7b6d
BLAKE2b-256 8f484e9104a3424371564c0b3b2ac023239d00b5cf4c99ec0cf5a9a51ab78701

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.3-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f9943fac5ef617250d89ee7fa64df9ac30e8c9e88b7722d6941282668d8357c7
MD5 a63b3db100b1f7c71cde5ff12bb93587
BLAKE2b-256 160eccd0751fba96cc9b223573976f4ff47acecfc6b333eabc45fc9b04863a68

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