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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

struqture_py-2.0.0a8-cp313-cp313-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.0.0a8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a8-cp313-cp313-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

struqture_py-2.0.0a8-cp313-cp313-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

struqture_py-2.0.0a8-cp312-cp312-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.0.0a8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a8-cp312-cp312-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

struqture_py-2.0.0a8-cp312-cp312-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

struqture_py-2.0.0a8-cp311-cp311-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.11Windows x86-64

struqture_py-2.0.0a8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a8-cp311-cp311-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

struqture_py-2.0.0a8-cp311-cp311-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

struqture_py-2.0.0a8-cp310-cp310-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.10Windows x86-64

struqture_py-2.0.0a8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a8-cp310-cp310-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

struqture_py-2.0.0a8-cp310-cp310-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

struqture_py-2.0.0a8-cp39-cp39-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.9Windows x86-64

struqture_py-2.0.0a8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a8-cp39-cp39-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.0.0a8-cp39-cp39-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1f2b4ce80be45f5ead366e6bd82e5d9cfd75b6a8bb5f41967ac17c733fd735be
MD5 debeb3dc9be87ccee4f284a910b4d290
BLAKE2b-256 06112736d1b9c6bd0ad11f8e4afb36668c08fd0c56fce88ad0deb1719cf57ea4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6cf1d7f774ffc81b11792b18dfd068a1bfccb220e07299edd0c0b9d34ffb8a90
MD5 714c862f9fddcaeaa5acde91720ab20f
BLAKE2b-256 440e297b7b527e677860a4eaf18cb829360345e7017ef5a0da28e29149e3b2dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 96a069279cfa8b895692d7b00d2e220c07838ac4d498bbd024b8dc858001907f
MD5 01802e400da80df9c64502e0de6b6358
BLAKE2b-256 54691a8c453b68ecd70a55bd95dc20b090519c586761b5564fb562f48da2e793

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 225f0c4a7a9e73a8dd200d9e3378506cd62218bd3e05d8842da72c691b30397c
MD5 82a8ec80146f1d1fa1788b102b25eae6
BLAKE2b-256 37ee2da4021f72be74ed541fa650cd5537e3b6ccd0a56a2d9f65eba5c4ae56ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8c8d65aa2f9ed71bbbf10016a4d58c52be76a2e0dae4a0689b8bac039ad821d3
MD5 bdb3002e3bc8b466955b504aaa2962e0
BLAKE2b-256 5e5b6d741402d8566e227f2c1f50d7a6f7713c52efac7cd912fb038ac7bb6bcd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c03e620e941be79e6e15f46785a4ca1f395ae0e09055078170e9e1358b65a83a
MD5 0216df93310cb7c0e48243c9d57d5c3c
BLAKE2b-256 487dd1a3fa39c9dee647935f6860b790b2d61447b58474e8afc696109639b2c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9c2adc77f5424c9fbbedfc36fff6f9701c7cb3ed2837914640acde72ec0e5c22
MD5 e915d03b64ed9623e036a13b61a170e7
BLAKE2b-256 d03a8e5741afc081bf796a05b410b346fad77319cb8fd6d5d06106fa095d9c46

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fc9179cc5bdba36cbd7dea55489ed5b7bd00c2f60ad3cb6d3aad5d8707723aa4
MD5 a088a31c5b4a24d00e2253c93a994bc6
BLAKE2b-256 aa9eb2dec8bf79678f8f1ca5935c8e7b5d934411debc7382560610d76f914ace

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3fd94325d6a38804034ac9bedce863387b501bfbe09f15aeaa09c07d547422d2
MD5 82fb7106f61cdfd61818110dd8d1a225
BLAKE2b-256 80b32ed9c9f56db5438d64fd9c0365634d58742a918d67757f8173b298268503

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 39003c37861b4d3aad2e46f75742255d9e284f90546eaf0942d34bd63b731718
MD5 9ad975ad9299dfde73f86c14b1794771
BLAKE2b-256 7fc3fe7d6fc809d1b6a85aa7884f3e7a13b0f8cc6c6188dbf6a1099b4a663103

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a47dadf7f23d6c8d157c69e034e4a1eff9104e13b9f7b176d63ad0e786bae5d6
MD5 77e72bbb6fd1a53020fd119876192dae
BLAKE2b-256 61ffa068a3f3626fd0e4515bc4461e98f24b5b1cb13b848c7327832f40205752

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 26a6405904d9dbefbd143592b96d14648db80b9711e93121f5c180081efe5eb2
MD5 930fbeb79c0e44f50c90e6fddadb6794
BLAKE2b-256 46b066f4c38d62244bb2e957b7144134cd05eb431d820c601e4f23fe5f80771f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d3b4aa28eddef9b052677b4ca62638a435e65408db1ae213dec9637e274c845c
MD5 e50e5a9d84a5fa6e2c9968bd1a41c405
BLAKE2b-256 ace3203e066c0e5ec8264b85c667a22ee0bedeb481368521be24829ec13b58e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8b1d825398a8af72a86e14f33dae1b4aa7d28beeb4664645776c5f8eac1e6c0c
MD5 559c98f53c18ea4681178f3b9be69ba8
BLAKE2b-256 c7dfc80961f9d95ae4cf45b8f9dd36d37c13c37d9da846b3b54566f4926e1536

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1521b8fbb5b0cd5dda6584e76dc85a16480cd3a90e3d206afcf646a83a9dfa14
MD5 c5d26e344d97db5a073813be72862aa2
BLAKE2b-256 689b5d2e9a8480b21a204f9fa54d29b69508ba234c1a85b51726fb87b596e7a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b053a401f01945e6b6de11574dc89428d746a429422cf9e56874c557be15b218
MD5 92d01349268f111fb902f7b4f9de8710
BLAKE2b-256 3a5edeeb06f3d9788f558a39eec3da298ad1fed55e7d56da6cbd99656cc4fb6b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 562b29d6948ed4c4867382e636a545d3f467200d242acb58af37153efbf34037
MD5 28b292cc3cd1ef24c71ad16f57a92075
BLAKE2b-256 abf4c13bea2c73fda089c8c1f3c57b1681bad279c837c0776b556e039ca2ae92

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 68a4531a5564317c03359db9d877497d8a3b79a8d2297fd7516e94368f25788f
MD5 826372e0b39fa13112ae517b7b85cb0d
BLAKE2b-256 67a45721eb5007d4d8840c7a53bda62fbafa79cc69eaff85255a95531ee0936c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35bb20dd84c2f3aeeb135376c290d8f622595549092faf13d1b9675114f087ae
MD5 51f21542c859b94de2a265fa7d8528a3
BLAKE2b-256 0f8563da1dffc8d464d2e824f08c22f26979c358f717e2a28dcfa94a0eb08b89

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cec971d14fc2f37dd12ac5d0e03a73fd89278706be4c69100310af2bd8feb600
MD5 02136a17c70f38362a1bfb0a87523511
BLAKE2b-256 ae24cf4c3b810491b6d35abc005faca06d00c1d9f7929e2b588645a6dc4bcadc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 885e764eea661dbee6783fd5b14020561a8081003c3bbbba05aaca2bc75d3e3d
MD5 48a13e54e88799664186a99f00d3a1c7
BLAKE2b-256 0e936a4cb8d896800cca4988451d339e6e17fd0d9b90ff49fb15c5a88a725f2f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2c7ec7d7c30823b3ca94caafc417ce44c646b80d2ae55469f0e3fcdfa2c32d1e
MD5 68e2bccd026d3f4cdafb473740edc9b2
BLAKE2b-256 f35d2f019ee6166ab2027d491c6cf08d4c39086f9c87128230206d468ef32440

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 38166dadf87df2cc65bbeff333a955177ffe4de876b2e66592d1e6cdf9b5fdfb
MD5 f997406578585a7ef0591bec541561ed
BLAKE2b-256 582024206ffa1704b03ec9c5523b2ffcdae2b6bff68c7f8b0480a8e0d1bf3ee3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8c613ba09853486b6ce6b9590beb36f6bdc98c4131eae4735d8d6b506e3c9e79
MD5 6d83ef83d41b0516d405e76310d9c9e1
BLAKE2b-256 80557495704956301d4d6dbf45bd948483d290081bf130fa6c0aa13764af8ca2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a8-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3fb71506f2fb3dd2e309b79b81ace20c20e613edbc05132e2630ff36b95dc983
MD5 88d74909b233cd7c155e8d3102350ec1
BLAKE2b-256 f8af00cf652fe8f8e80aefd64818267cea6ad59d353e4d17f04d51fb4d0f7bef

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