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

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.3.0a2.tar.gz (418.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.3.0a2-cp313-cp313-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.3.0a2-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.3.0a2-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.3.0a2-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

struqture_py-2.3.0a2-cp312-cp312-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.3.0a2-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.3.0a2-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.3.0a2-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

struqture_py-2.3.0a2-cp312-cp312-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

struqture_py-2.3.0a2-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86-64

struqture_py-2.3.0a2-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.3.0a2-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.3.0a2-cp311-cp311-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

struqture_py-2.3.0a2-cp311-cp311-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

struqture_py-2.3.0a2-cp310-cp310-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86-64

struqture_py-2.3.0a2-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.3.0a2-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.3.0a2-cp310-cp310-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

struqture_py-2.3.0a2-cp310-cp310-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

struqture_py-2.3.0a2-cp39-cp39-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.9Windows x86-64

struqture_py-2.3.0a2-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.3.0a2-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.3.0a2-cp39-cp39-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.3.0a2-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.3.0a2.tar.gz.

File metadata

  • Download URL: struqture_py-2.3.0a2.tar.gz
  • Upload date:
  • Size: 418.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for struqture_py-2.3.0a2.tar.gz
Algorithm Hash digest
SHA256 0d94cf04b5c5667cbfae3314312ee82e7d5d2b90c76870b92fd53a19fa30e4b3
MD5 9e2636e861315f6c163cc5c86774d81c
BLAKE2b-256 208e10e2a5ed17586ee6030091907fd05cd55fe579c68e1ec020c45f8a22d61d

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 45557b10bd5ecddf367d4a0b14e462b65a8b68e46c9d9cecae6941d4c57b5e4a
MD5 e9546538f951b77d5a652ba2963584b7
BLAKE2b-256 1b4e668c81c69143c9b3bc4e85944f16c2d9241725abba06a9f2af915445812d

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e6b87ac712c57cc5958eb5a8732d6146c89fb87126207a3f91db11c89a02ade9
MD5 67b7077010ba6456c55f274c06b83dda
BLAKE2b-256 7b44616990b5c83d63fc305512fad6b263fc68d9884281c77384f18a1446f7fb

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dfb2f0a8e68174d2ba9b6c05d457cec9424b95af2fcd81eccf521b17bc0f9dde
MD5 dcd613b4574d0fc52b163791ff0c5a6a
BLAKE2b-256 ae5e84b3df8fc239738c1c8d1046248dd966412bb9d953e8b6953578ba0a6005

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bfffeb1b4e55bdc6421aa5e358635d3237aa1c3b127d90b677e35b5657db3080
MD5 61625f0806862b42562fe1088be6d20b
BLAKE2b-256 1b3f72face813c55a295ad04235fc81c73c9ceae4a821105bbcdab84236ad197

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 415a8ece301671976f51ccb5afc0b4c62d4b5f01f83757aae2b9450fc332d9dc
MD5 9c50751ee6f9c5f597236b25e00aa37d
BLAKE2b-256 db08a0ad3939db82ecc05852fbabbea1d30f6803791bb3e64cba03b24c78a132

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a2414dbd8a5d06ae11fd2131c423043cf5f6f4085fe1c717df0b70d6dddaf60a
MD5 fedc17ee1cb4c995cdd339793ca81971
BLAKE2b-256 36197e8b56fd21020cc69b0d9ff730cf86bc6e14c2da7c85c8c6f2f5a8814d30

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fb787fa7c77f5ea6459eab064a7ad861c8c0c3609d9fb7ba619fbff73002a40d
MD5 e6c0ac95a34ecb540d6e5f6278262931
BLAKE2b-256 a56f5261b6351c7fecc2eb2c02c414e95c89455a081a373b63f8bea610086b3d

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9ecd7f6f5667bd5bdecb1d0a7959b26ee0708dcdbc9ab66164f580104047c06f
MD5 02e2850d2144af71d15430a47ae32783
BLAKE2b-256 93c7fc85cad43fb3ec83cd1bb904e05c57518c6fa0753d8f55f407b26be25c1e

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 13c1eb0b1a5718faae0ec50b4ee29e92c64e82e0535f706f3fc559a78f298ab4
MD5 3ade361ba3f3ea74f47bcf707fed006d
BLAKE2b-256 c4b9a27a7d5ef1064e03c97b81d98274bdade41364bc818a4acfedf6e37d4715

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 395918622fbdedeb0edd8596214fcf626ef9afb53ba2533d83d2ab55c26c9b89
MD5 5bd9d4469adf047b511b6a236b7c9b2f
BLAKE2b-256 e583586b90d9fb6301887e2eeb2248326cf8183da1af9d2ca0ecb591b88923af

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e24783db02cc527c06076a901b889d7b7730b72c00af228dbe6bab55faad288
MD5 36db1daee6e6a8a91d11d389cf695189
BLAKE2b-256 b95fd032a1d937bd832265542d8a7ca36e65458422c16e63990682a9b2c03df6

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 25654895a2b5aacce032ef2ff05deb663dbcd7dbaae3351dd4ae049ca652faf5
MD5 f5660e5be790a9778b5e44735de47487
BLAKE2b-256 9a32d75d5fc2900d12047bc49d8a73566ac03639e01dac0c92a0eda175a3cc6f

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 68fda658ee1600b667cbe8241e88139466340c67a114a684d69bf268b338d5bb
MD5 7fc98c8b57a042c8a5922ac218d8c718
BLAKE2b-256 694da1696b053f5d8c4c4bfcb1e7c7d98f1489dff1c4b7eaea5527efba60ca2e

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c79573b13a403a2e822e5baa3d850b52576634e5132741fc32ebbdf22d5cdf90
MD5 6cb6846d580a1c5fd31ffb144dcd0010
BLAKE2b-256 15c0a2a23780c4d3545fcbc8481f6ae4f176f557ffe6d8f7b177906b9f1d1eef

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 dd32e3fae5ebd7488d84f5a54c0b8fc902c746b3ed68b9a04a056a9157380ad1
MD5 3e02ed19d07711a88a3f3a9b360a0463
BLAKE2b-256 6792c445133e67665d6501ff12c0f5cbd3e7991abbbb0c9332558ae19c5f06af

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5612602e2722daa55551e7b6f085d04d97fab0e67b348b89fffeb1e786d5ef2e
MD5 dae18d65ca42972270646c320163d50a
BLAKE2b-256 eea68bc6e75e9306a1fa2dc8bdaa5f60da3282b46c095b9c11ef1d566478518c

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7313540c90f2797782a8da7e3c160885584d443a610bdc38cb648a9d40b86af7
MD5 d17f827c48ec35436568ba29fb5d9b9d
BLAKE2b-256 af2807429abbe9ff01af974522124e9420da371f8d129be372506ddb1c63c31b

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3e86cfd67f6cc8daf1126b93369f05369e7f9644a0d78c07b28074b62039a7a7
MD5 45a61ef3d00d201cfcd472fdcf93d4d3
BLAKE2b-256 ec358844d48c9296683e4b6267d170dfb52c81cd16727021d170b4d4ede9f387

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 315f0393c31447e3e4452b99b0a45c352ad81066cd84383009e9d37cd68cc84b
MD5 824c7c88576beb731b0316a890301c38
BLAKE2b-256 ea3e4d4a20634326c80272b99fad7e6b139fd80db0f26b83cc73f5fb4862a87a

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 9c0007148a8d523f5b572d8f44a7688295ee4611f10f1fc840cfa702abd4a6b7
MD5 119a4ae6b875131ea58f31e3f50023b7
BLAKE2b-256 6154729fab1204085a7c17f05a34c1f769a11e3b50df1775455764dc4faedb37

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 93096b0316869bc711b775068c97e120c192a0d423aaf3d14a34be0546036dff
MD5 7ce2f4aeaf45ef44d64e25896d62fdd7
BLAKE2b-256 a5c6a6ab9a5b12727a41efbdf653622bebabcbf6464173a7860526e6086720f6

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 35e5f4af9889db468a53d10879c3aa686a22a71ba3c0871ae0d54edd8b94ea40
MD5 9d0467c32c5f91331496cd871677e84b
BLAKE2b-256 df0fb3560bf65e3af5800edb9ac62b94857d72e1a2e0246aa93c81a22289f122

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f2222daa5a7277d3066c0bdbc01560cdc273acd15de04963125e69ffbf29dfdb
MD5 28c794e01856e259e070c478da9c70d2
BLAKE2b-256 f9fd69cfe0bb472d00fddff4304b47c1fd1d7e4ee8090a0a89962aae292c895d

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a2-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a2-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 82a27fff7d053143b197faeb0470d4dc8aa1f016d3c041b87aaf96cb12d72aab
MD5 62e13e8588bffe2b7c220b4e34e3b91e
BLAKE2b-256 8d45121643fe92fc584d600f7a9a0b3232c8f8184b5ba4df3e58cafd02263168

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