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

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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.2.2-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.2.tar.gz.

File metadata

  • Download URL: struqture_py-2.2.2.tar.gz
  • Upload date:
  • Size: 415.5 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.2.tar.gz
Algorithm Hash digest
SHA256 5075d4e9fe85fc2d3e74955e396fffd101630b004113e75e56ad529a83a6fe62
MD5 3788e4f5dfa0c55b43b81c92253d42e9
BLAKE2b-256 e7561ed1fba9b3020643af6bf34bff23c66b12eebd0fcd791f0744617e20a4ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 856bee2295617d269d4d0aee88f8b297c2f566dcf52b5008a4d957638a0de40b
MD5 31767622a7fc691d77ddd947f1151112
BLAKE2b-256 43b4227a6df581d91397c77cb8e80a5544b3daa611f5d5d7ea424098a56e00a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ccb86fb65d148ce150289bcd9d355fd283f0b0577492f19b1533a3fad6524327
MD5 d4b573d10dcdf72e1dbfac7132276503
BLAKE2b-256 c5c8638aca74aecd3b54eb46997ea512ca5c7235ee74d692eb29444c729a72ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 46edcbb967c4cae1df5a8582e8e9e1f057fa01f862e5598d7ebdc1024e682f7a
MD5 2f8df5d768fc33b195e9b81f76db636a
BLAKE2b-256 85111fdc57478bd75f0d79dc8560ac269eb60795acf0d411c8e8451c3e1bc7b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e82c74844418ec01431e8fe2ab01f89cd4d02e1b44152a439028d64c3b3f0d51
MD5 7d3e2fe7f04db4a6ac9524ce0c1f0b1c
BLAKE2b-256 d40025e477806304c6bc48d4ba7018d82df3c921c836e34f0ac0f54f40b72735

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 504aa0bd8d6325adbe46ae72e3483cd021a9065202fb226ca49d133ce04a6a7a
MD5 822f976b76adec4e813c83ff8be85be7
BLAKE2b-256 7269f8621a8e1e3f16c499873bff71cd092f878e8d3f8d1ffc9e158e5dae506c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a0af833334ca008f75ef21b5b446c1f6695d866f6fb23b9c51f6b9dabfc6a414
MD5 b59d885378a6720b5eb29da58351539c
BLAKE2b-256 433393c45e02abceab50a1788acf0b9c8bb3ea3ef6eb5fa675a446303170fd99

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 75fa9a8646f04299daaf6f77c6f7957cd849e37c5f0276328e10beb35d0527e1
MD5 2bbc390e155582e3f25325389d9ca12a
BLAKE2b-256 10bc144ff3e04ef1c3fa82a8fff552a899a80b463e1b4d8e06000e2d0db04a33

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 259a7aef7a726c01ddc1871ca7e4fdfeb61aa3478566cf950c784c5d37c5f903
MD5 b988a54ab6a566bb59cbcd61e753cdbb
BLAKE2b-256 6c037f106bdca9b5716dd97ec04666adc2c5c541d6d164afc876d40db88c264d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 412fedf31c6b753182a167583a64ca90f36649f1baa0f0e896f426ae4fed99a6
MD5 b7c26e962c81daf015ee9668c0c70d88
BLAKE2b-256 dd94a54bff5918b6aa31a29fd9992ec3574e82dc2e904ee1f3b35747651522a7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5dd8f472bdb983361a595d4b187312374f800d047b38b6cc68c15f16fa3bc597
MD5 e1d2f164e7697d32fe56ffe2d70e89e1
BLAKE2b-256 61b802cef949e518bd70afd52307a0afbadbaa1c11efbad423f828bf370f2614

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b957b279b1084b842f9303ea9b5231104750f1707fe89cb9f6f4b6284bbf0216
MD5 839bbee02d65949a1d6a297aa8ff53d0
BLAKE2b-256 cb6840b8e0eacc8794dabb214be53faa8e13cc2dae7cb242c20dcdb6a0c2061b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c98f12bd4f7ebea17607a4c4eaaf061edb21c08723b20b46f7401daf31dcc144
MD5 3e06063aeca98d8be7fd5d142fea76b3
BLAKE2b-256 17f834737091eeef1bea5ff2d8ce635d05e5d8d0622c9d187e63a8e49646bbb4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 90b8d7e3bfa2f8292bce38bc985a5206812ac53777cef4215d2618c7e301cfca
MD5 3a2bd7d382a57a4dfad837d36b71aa5a
BLAKE2b-256 34fd1096017b121a259baf1ae95b9aee1f8d755f9e81ccb741ca5eafc51bb8f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d21c2a5fe565ad161e0f15719394d64d8c341bf5f8ac49eb498a2474fe20030
MD5 17287b874b984c7e29bc1938ca64ce95
BLAKE2b-256 02554a0a02d8eaea22d66f61bcf865e69845d616693c4bb1795736357a2f69c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 08ecc3124f41ce1c518a50b12c62d7cff2876f89586a6cd0e738b37f7ef4c981
MD5 99342cf49ee9f00902b338164afcb8cd
BLAKE2b-256 0cb70284d1aa1ce7b0998a7a4dbea46127f85d3a4883ae6a12e0f8021026d9c5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f8ea83a90ff9b6dd20b6cd3c22f5910a39f6c34e8231670614d41f47703df050
MD5 fafbe314dbd7a1a4907e51c58f645899
BLAKE2b-256 8d4a97bdf6db911a7e2fcf4051b168a9bb5436b8cd23813641ebff5e2b9064e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a5992781fb5b55a260ece1399cd5f772e49a83a489bc8237f4177ee85ff5162
MD5 ef37ac3dd27eb057c8a533842f385145
BLAKE2b-256 bda9e4bc42894e1e517c326a1e0ecf1c4c714e22cb4d8212ae497c1f2189b09b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b7b686218acb149a0432e093e15a52ef9f394421aa8ebce790eb6352657b602d
MD5 15052a330106575cc5937d6ff069d2dd
BLAKE2b-256 fb6bb0ff0314fe0e14699a447e4cd27c22a4ac3db97a577e40c04e3b9178a380

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b589b9fa109b2aad628fb9d653e5d755f717ba43d28087f005f3e3e25cc1a4ea
MD5 d3c32a0e917086b48b7cf4091842350d
BLAKE2b-256 160e7d4d14bc609e9a5939aabd49d27eefc8fdbca6bb72e2529dd6b15c70b457

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cd633894956aa129b1fc45c293411ed6ff68bc882b9eb4206d2806728b90f93e
MD5 7d01dea3a1fa8691ca73723c4fc4d209
BLAKE2b-256 28524aea7f863589699bea99d9d3575e1ad8cf391db9534e2893a1e153670b40

See more details on using hashes here.

File details

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

File metadata

  • Download URL: struqture_py-2.2.2-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.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 90ea7c4c0cf7cb32228d03f74cb57f8fd3b7ac8c309e577f72dc7c6e0e9d3220
MD5 7f505b02e4597a1e3efcef273a9fc0b8
BLAKE2b-256 7775d39e6a7a386cfebd0a1ceb42325338bc359d70b9db40c0c29d92363d5f11

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52ef14bc850135d81f2c28abb8cebb303cb85436c20fa0d46417d97c14ea820e
MD5 d61cbb73fb213c124a19e93f0320197f
BLAKE2b-256 6aa6253ac5ef1bb79e6c103eec50782d1796f5fcb57582a23968d0d62a7b958a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 742d448eb02bcf90a05329623d520ed00f5a405553157c295302ae2d2682a0bf
MD5 4af432919ee625f364bcb8cb92ce3d81
BLAKE2b-256 c37ae352b85c463e5a4775715c6ed1fb412a797748ed5783fb649f17c1efdfd2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8b7831987f7419374d2aea975548328b995e8c8c3372919859cd8ff5a2753b21
MD5 37021c4ca7e99a19c895858322f6eea9
BLAKE2b-256 6bdc8da843ecff0a6d43c61a15b068914d4293c60c16d2dcf3717c1cf8e60cf8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.2.2-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 acedf2797c2cc2639214d5e02f054f6820cc239c0292216b15f2513a78dfa4bd
MD5 42d057dfbd3952c56779669823db86da
BLAKE2b-256 41ba97760d55323a70b8210f0662de757868637f1151f609f71a97ca2e66fc41

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