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, fermionic objects, bosonic objects and mixed system objects that contain arbitrary many spin, fermionic and bosonic 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.

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.

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

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.0a10.tar.gz (410.4 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.0a10-cp313-cp313-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.0.0a10-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.0a10-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.0a10-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

struqture_py-2.0.0a10-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.0a10-cp312-cp312-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.0.0a10-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.0a10-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.0a10-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

struqture_py-2.0.0a10-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.0.0a10-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.0a10-cp311-cp311-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

struqture_py-2.0.0a10-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.0.0a10-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.0a10-cp310-cp310-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

struqture_py-2.0.0a10-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.0.0a10-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.0a10-cp39-cp39-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.0.0a10-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.0a10.tar.gz.

File metadata

  • Download URL: struqture_py-2.0.0a10.tar.gz
  • Upload date:
  • Size: 410.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for struqture_py-2.0.0a10.tar.gz
Algorithm Hash digest
SHA256 816b17f4d1f7f787a12f9b5545486d19f79a8603a9b559e3ab0169abf42e7e95
MD5 91411f2083a84577847cb87215d47053
BLAKE2b-256 111b593f80bdc5f4244676638aabf5447602c66ac7a5400bc595640ca2a7a0c8

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 59801362d9dd1976f86527680f324f5a140e328ab3cabd1730edd4ee5d7cf23f
MD5 2938ddd4197798ad734bfadde4ad4efe
BLAKE2b-256 82fca573dc3e5a5c6e776a0310b053594fd82162eebbb9ee0791c2482e48ac49

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 798afd203755ff9e3d5e409e875ffc079f9af61bb1cb182fee3d79f425e518e0
MD5 53969142f5f83ec414cbcafd7ed9c465
BLAKE2b-256 7b0f71211f6c30c75883853a82a522c9ee79a94912aaf423fd80c9afeec81a8a

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 249caf6cbd2a54fa145421b82f845da5ef7d18befb77ab7b2f462a1f90295a0d
MD5 cfaadb59a556e02c83d4e511113956ad
BLAKE2b-256 55720d33f4028753456769d8616844d30accb388a03c03e373fdce0be3460ad8

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4183ca49a8d014b745c9dab1717255f252b941b407df68275facdf4b3d3f2545
MD5 86c462352a11f7db95b40a7b2b086ca3
BLAKE2b-256 2c03f131c42480dd82119bef995cb4bd49399110f0175aa43b56a69f78bb9932

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 98dd5cde73f4e75f3ef83c262a1ba502d8504f41f7d35eb8af5dd9a5fc5dc675
MD5 66ddd95dc57071450f8b5b555ce807c0
BLAKE2b-256 0fcf2fa7591efce28d9a9e0eba778a21f91f44379a8351626804b0bc03568d5a

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 39a768a72664e90612a6715b51975f31d2a15386282db9f830460ff613b7ca40
MD5 20a00a6c39e0bbe15cce50262afea445
BLAKE2b-256 531d10a938ab55c6c190ab817b8d7b8e88fb1f1099d584162e258c9f69394fd6

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d5cd255fb0b7f128fb0bc8d767c092b8cc1bf5022bc59580aa9ef5f6d0bceedb
MD5 7d5cfae51c53f8543211c2777c84126b
BLAKE2b-256 8e87691a137f7888ac1394510cc9edaa6cdb82e2362ef959e0776a06e590c446

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 28168248d38fef02722596f29f8d03c958558ac6e2f683eee8635305d4988ef5
MD5 ddcbc4a63fcef0a66937eb5418fbe3d9
BLAKE2b-256 4f387e9a198306f0626509c405d606893a7b7f82394020e2834131394d815848

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8ec2c158c8b167ac948d8f4625485e7c894ea466bb9f3ca952a2acf079423e81
MD5 0979d23f3208c1380a4c8579fb16ab48
BLAKE2b-256 b962968343712d109d3af7f8f1b1f48b6153b236013dfd09d22f9dbb2048ed6c

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9fee3518203c310e8479d56dcfed2c3a377a83ab687a09434f0f79fc8567250d
MD5 f1744702df7dacc2c343ea89c450ee44
BLAKE2b-256 c69276e8a75a2c65f207494b85924efb45307e12f4ce35741685363745013001

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7211b85c1e3749e8b9a5ddfc2b88dd30f26026c0d6795858bf383d762fbcd7c2
MD5 db4057e74c15b19b925f0f68e6574799
BLAKE2b-256 090061a4f5fd804ba77e9503595a91095dbfc036e7bd9fce9478cd1bf8eeafe3

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df3614604af735ed173cb0f075e2903c0f8008586258d97b0c3eec1b915be257
MD5 855ccca82ccaad862313262a5443dcfd
BLAKE2b-256 8016d2e39f09243c680537a6d81cecda3a24fdb71f5fdfe70abbf542f484d7c3

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f98ca6fbcfbbabec99fec668a59abd16b7fd1a69738a868cf1c83e132d74ba28
MD5 a9612794a61345a87790286159632394
BLAKE2b-256 aadbf47ed37e9e30dd35145e7aeb62eb9842438d7c74389ec1dbc663dc66f2d2

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 28727cc7f4b598f3b3ee27d71f6927bd5a5504bf9d7b78bf48ab10033150e10a
MD5 34ba75b72535b180e6218281bf85d11c
BLAKE2b-256 04e8448a0ce21821fff343f084922266f1ecdbecb4d9114252d23ce5b35350e0

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0868c0b7c82e101569aac9a8a61d7dcd85816457d7e1d1a86792026e30347eb8
MD5 040115e4077c7bf0148c740a5b342aae
BLAKE2b-256 cd7c1c1acd5431eded4b63111b79f97b6eb48a36038c23625c77aa7bb9b24193

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d894d9954624529197541ab1c38a859cbcc65891ced33990bbe97e0b93659363
MD5 58cf6fe5adba8fe1aea9831cd0449bd0
BLAKE2b-256 1e8aa5d8460d06f17b0f94bed3b20879205553a285ff62fd14a8fea78995a9c6

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0aeb72f1f02bab275c7cb3296f99123786b2ca610982aeada1ca7eece9408ae8
MD5 0d76ec7856da095494bdd5729dbf3ada
BLAKE2b-256 f41930434b424eb9b9495c3569959c24e426501f8db7f8d10c5949181db63ab7

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4498ec5cae0606c89bdb61616d33869192fb473da0ffcd5a437c8070233358a4
MD5 878da3bb53f2981845d718b8d1a9f1ea
BLAKE2b-256 e41b4ba6fdc0db5ae6244a010eeb6ff94eec2982461ab3d29c3e0e9d223b0ff3

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 feec0c91f83791c9f1a6d60a07dcc01804d70005ca58d7303fd21e84792f2e58
MD5 74581f53c337d0a5e4598c0646d6b822
BLAKE2b-256 4726d0edd26d7dcb21f7241676245cc9a3e28752dc1102d7aff40600adaa81e7

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c5521bc4f4d403ec6c2ce89d3502a6c784c7c2fa01719626f08fdd9483d816c8
MD5 8f6377b5ebe0ea0d4dc099d3fcbd135c
BLAKE2b-256 9d72112446815373ec082068506f4be5bd24caaca8bb360aed47ca6835762fd3

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 804f00d7971cce8896c9a9467d50bb15fc1a2ca0c3adf40b93ac17af596a208c
MD5 06d7b6880923499b9fcfb5c0fce48c8f
BLAKE2b-256 d6da7e1c2f29826b3f8d302f48b0bd38561d893ad433082ae4f6ea748ede9358

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e9299df243baead2d5d3dc7491627ddd03e931ca6afc170f7a37c00095f44bc5
MD5 8d0ff3d1df6598001b74f763e99529cf
BLAKE2b-256 d4ddc95217c090418d116811e685c6ccb8a8c97ca52a86c7ab869d93d88cd7c2

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b2acbe6e6572437b83f5cb3a3ed935ed8b8bc3d02914f9b0bc0ef8847d9790b8
MD5 28ad726c8f9b59604a2dc0646d31291f
BLAKE2b-256 3940e05dceb3cae8c638be4adb70a7672fd58f602bdfe01b88b04009e148c251

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f297dc2c802f1cd2a9fc72e2fee65d3d70946096bc3b372f83c63a78ceb42d75
MD5 6d255fbc9506fb641f97a4e0dfccc933
BLAKE2b-256 815e89f3460ab2f61eaec241118c533cfe1a0dbcae31c84549589f526993ab49

See more details on using hashes here.

File details

Details for the file struqture_py-2.0.0a10-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.0.0a10-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2252650830171c17dcfd1f9920c0a07ec92d9f9a1d9802fc7ab04fe12fbe5408
MD5 dadb58122d7fe0e6feefd9ed14d429f8
BLAKE2b-256 307dadfc438ab47f652435f4aaa9684e63afada61aa8c39c72a828eada0d6c68

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