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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

File metadata

  • Download URL: struqture_py-2.0.0a13.tar.gz
  • Upload date:
  • Size: 419.2 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.0a13.tar.gz
Algorithm Hash digest
SHA256 224df9284d446674676609703aad9ecf2577d0ab33feba7cb228b2fd35328cce
MD5 7b0fa575dad62f8adca7c23edb68efaa
BLAKE2b-256 53bd66cdb6f5df9be48ef69fed1efa1c9e10115c8038ea382bdf3e0dde0106c7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0c69059f1abe19b908239a32983d23d22320e1d513343f0ecb2dd5e4fdf65784
MD5 f0c62e9930a3b5b130fb5834c713bd24
BLAKE2b-256 5a2c5214af8057d32cc1b9d4df95bbc00d15386f5e3e1bdd4fa5794f366bf086

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 457ea152e8b337bbf48ba544e86f5650097f7ba0cc93196556b99ad2ed918e87
MD5 68a2f8b44126e1ab98caa3a0be0c0481
BLAKE2b-256 e7fa54c7a09fcdee15c7925586bd36af5f1673dd556618899625bf86af5a7d40

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 460d19c027dc37c0fcba91ac32d7f587dbde55ba9c88ec13f31c46e94e672814
MD5 63e73017709848c1c2f9ebab85dce4d0
BLAKE2b-256 73bf9d081b43cbab50c4817c688a7338538398a83f443c134e7fbc794e744b6e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5b31b8bf9ca1075378a67dc7d969e7ca81c2a0049e5a2baf1fe932a34a9b36e7
MD5 0deef8e66275308b613de03122ce06ad
BLAKE2b-256 0a572b82b2ea68aec51d1e6fe4600c224aa5db43a6f5f2e523d8334a0dadd42a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3086daf424344906627c25e2e35f7c17aad46a427dbc6126786f0853b9a7987d
MD5 f5f8b933c5a73afcdf7fd80e9917dec4
BLAKE2b-256 f7977b234bae1f7b578c42daedfbcadd2f8cc1ab248ebdbc5e3e43dd07c91e01

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 062186f3a75503df8fb87a44a06fec31bc8b51170bb950873e9b12fe1b0cc84c
MD5 648090919242777de39eba648ee65fcf
BLAKE2b-256 d3a5ecd8684bf6c628594c27a964ec40e7774b41c74db4dde586f9cfba9bb9a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab63dcbe5f79dbfc82d86f8daedc64f0a07fcf6ec90546e962feccbf11c0f902
MD5 4dba51024358024d9ef4e441b00acb15
BLAKE2b-256 59e0bc22b63cf7188d59f19741a143fccfc8576bfae03afb8c9145b7bf592627

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 df5f98a3bfcd7ec9082f92060f91daa1904b9c07c177441f97c9cbb07cf3f251
MD5 083a6e793393768330fa390f7d92ed96
BLAKE2b-256 173a9a6d1789e36f1e366a78f664a1fbb15be7ec3cf1a5d1ee827aeec3dc1b56

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0b11569dfcda41b0c692c6eea8991ea579e976bed66646546a5401ace592dce0
MD5 eeb4ca35e2312036525d9123022e0993
BLAKE2b-256 930c64818e5f92ef6fc88b2afeaecd541f2ff047951e82f711ef93938050b3b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 da12f6583db7e85c9236f4138fe8e6ec7fd2a3cf32369dd1302ce6d0d3bbd81d
MD5 212ef6440e548db145b5e5345037d91a
BLAKE2b-256 37e1efcf5ea9140051f95789085f85c1f451737b921fa74449d5292c0cfc3f65

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2c52857e02c632314e64839dbba66664e3469f1be7758f8ddda9445979bdf25c
MD5 4bd1f71dc2f7653140f425c1779096e4
BLAKE2b-256 bed1783c1214f466027e75b4431bb529ac949c13c13693c56f81b521a9b6baf6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 06e3d7a92513a3eb60e411702b2f27388cabab245e55414bc0c945c8b99aa332
MD5 2bb1929ec3c4a9bd81869810fdf6a13f
BLAKE2b-256 5110e046882a71487789f5fe04511c54e51ad8e03a5449c06bea024426d9b326

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0094a708d6b5009afe5b31bdc0e4d201968b2769f1cfad0075a05abfbd6e4478
MD5 0838e44d3e44722e4e4b8d22ec1e3df9
BLAKE2b-256 bbf4a64deb4e7aa5be15eb300be022d45db09a017ab36fd7508482471d9ee43a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 23defd54c5fde600e7800ec44a655cd1b6e291ddb0727e4278527cb1b98f5411
MD5 197145d073dd3beb0a888cc7d42ec0c6
BLAKE2b-256 3dcbbbb9f0f529db22b7a75436c1fb4cda91ffd5c074fb109779adf9a45fc6cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2217b609798f51098182f10330fd21cf4e7d388ce76c07bfb6de14ec8d925076
MD5 a90683e68b93592fa72e18c2e586dea8
BLAKE2b-256 b0061e564665027f33694f15cf6dfa67baa9584a08eaad888f1f6629c58c6711

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 17b141d4b6474206e864f6cffaad478542ac4e814eab9f7996f8577f9aad2ff9
MD5 833e2b4f2d54e75f83139a5949b728c7
BLAKE2b-256 2cfcf3d6ab7a412a1c2d287acfa252c5d9bb080d7d0dbb5b37818c925035d2a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 684a3c87908d4cf0dfa6484eceb4a64ccdc17d470da971a2d61d1c071f33e127
MD5 77be483b4c30db1dcd299b70a76bf70c
BLAKE2b-256 787de2d4e9944e22c51cfceb61928bb80d2b6d8391b2f19d6f18a76927026209

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 654c0e26060ad6430e4501edb14cea0ef57a2a05ea7e214848d7dedb42d26b0e
MD5 1dcf6d3b973d5d3b8927bd769b9dd8ce
BLAKE2b-256 8e7570ad3c39609da3502cc962769678034464088d7e1e47cc1193d959d0d9c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 7e4c0aa979096f8091cc1bde5271dddab1e1eac2bff024ef2f38df6bb68c2af3
MD5 ac907aecb04406c5854480b3dfc4ace0
BLAKE2b-256 68704713d2b3f22afb5a21bb60357ed0e3ab2cdc2b6a4dd47bc1ba8a0bc64fd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e9a4ab37504a418fed1a8e17fc576fc91d40251ec935942c1e0198c3a2c966d0
MD5 7ccb1d0d33842eda687f1efbcff1fbb4
BLAKE2b-256 835df524b79e5ae4227a2ac5cc09a5a846005a59e954fc53b51ecf09d2b4d80a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 60c6b7ac7f82da55c0208d9935ae605bdb5535a8293ad4eba3ef831debb099b3
MD5 934ee765c2796a7c6e958bcfdcf1e9e1
BLAKE2b-256 8435acd3f2ee036e28fcae5956c1351c82d974a4d313b6a38aae1f5d213cd95a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b428873fe7902a649ffe053a35f17791a8e55d2436947464775e4cbad9297aa5
MD5 7b945ea5ea850c44fb8de6ae7b0b1543
BLAKE2b-256 f3b2124bad7ff5fa338d9db8dbce1bb53b0bf5f47887593a116ce9eed416dd90

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a13-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d65dace5e2df16b8b6a53cd8d2d8a1b80cf9caf18ddcfa01dd8c56232a08e787
MD5 b7fd26535381017dd3251ba6dd542f0d
BLAKE2b-256 17fea3195441fd38f9d699f6bb2e1e96e2c7b4b22cf6db04fdb07b1c7e090e19

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