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

Uploaded CPython 3.13Windows x86-64

struqture_py-2.3.0a1-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.0a1-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.0a1-cp313-cp313-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.3.0a1-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.0a1.tar.gz.

File metadata

  • Download URL: struqture_py-2.3.0a1.tar.gz
  • Upload date:
  • Size: 418.1 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.0a1.tar.gz
Algorithm Hash digest
SHA256 8c1c8c61d7cddc666dfc253cb37eee37672288bad5a0f9e6a3fd8a574e99e418
MD5 8136b41ca4b097dc7006414af04c9162
BLAKE2b-256 0a3addd031f72e068990919aea7718333b7a206e4388fea96bc9631726e13c08

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 571bb8c40836edf7a7796eb731e0302dd9ef3dfc1870b72edec7407f6e00a6b3
MD5 747c215e2494b535401950901b69867e
BLAKE2b-256 94a46e6d7e4e76453e456b5b80d73f1d52f44ab2bca78ff0dd3f01f0c39aabf4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ffde8c14191066e56649e22587960dfd467da9c17df83c57dbe6b318f9bd7cc
MD5 bf315ce1dbd5c07db9ec43267da8c62d
BLAKE2b-256 5e8eeeddfe3699fa50d09b876e95ef82ee0cee8a64a83818bb0971c613b7925e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bb0c8f86db7859a7217709b72075eeb122fa168b7a3a11aca356d99bf45b8dfe
MD5 62cd5bef1bc036e41c46256c5b6dfdf0
BLAKE2b-256 e58e70e8957f8fcc1c6d68dae77a8eca8f6a4599ea70fe955cb7bb081cde8795

See more details on using hashes here.

File details

Details for the file struqture_py-2.3.0a1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 96a3639a98d1719e65992ee8ba9fa6009f54147bdd95b8b9d52b223205f475ca
MD5 ffe49930dacdd2c2634f3057f00017a4
BLAKE2b-256 e4e65ed1d52e3393ec46e5a722229cda69d51f9deaa61d501d38b9370b0c4652

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 90be11935ddefdb984fa9c7013399e2262cc30011a4573f4de420723b6c9e353
MD5 1866110e7c89e07a49a6677756527594
BLAKE2b-256 54e4a6cc9bdbc50a3ca2a518b5715416593cfbbd2800f6755eff100eac75b000

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c1524aeaead976d09b5f3f745df5f89bb0a9b4dd89b94a86446e97a2d42c28df
MD5 a91c1dc5160d4d10b27840eef3780910
BLAKE2b-256 c59dfe64139d6de10f67e373085ab1c9c400c65b710da94696c1c9855935d34f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 011ed09f777783b08a4c45c7b83ba3421995d89927d87da67e79d85055b53143
MD5 0e6533c0a10c12422bd30ccd98975e14
BLAKE2b-256 a3c22fc676444d8764d0ba07d8be6a2dc3ff4a276f0ee58b0310c5d17315ffaa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 368dc9f6504d69965ce5a6fc43ee40a00944dc0e15ef21da7cbc6a7d572e0f3c
MD5 a4c21f1ae1e14a6a766f58fd988a3ece
BLAKE2b-256 3f82b4784041783155e8246abfdcbd14ae4c14e425ed6a8eb5004a85d9919b5b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 83222fd3a9cb69395376a33e325372a38d066a0a4dbfc0c4d2e3cbf9ea590ca7
MD5 c60828af9f8592f89ed1c2a704a9c4ff
BLAKE2b-256 bde2b9f828b4886a53b7a969573f845475d6ead474bc3564f102b04af0ce999f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 73f1ec6b4274430dc6639006687ee17169e3e874f85e44432710ccce3cabf838
MD5 e7ba775cf23ed604f8a0666483729a9c
BLAKE2b-256 aca852832afd23aff7dbd919ae573d058fbf88c838a22d56f900f76aa5f3892b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7ab6bbef90a9ed1cc13ab6029f47ce2ea456d10a2f9e0b969e91d650e030f555
MD5 eada18eb171139583081e0311d6ccb29
BLAKE2b-256 d2de3f1c121655a94eb40241b8114e082278142b632b41af0092ce3d06243621

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0280715e5aaae3edb5e0745ce71aca9d92ce5ba7c45b1277db8a6a339cccc08c
MD5 e83cea052ee73208757db07762c8c887
BLAKE2b-256 febb333f7589ed3e235da5149fc96654ce1f80e7e78dcb52063cef44e31cad70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed5aa632291c075a24a0e399d57ef59ba9e875f6d050efdb9aaa5fb7a5b8b159
MD5 e4f1d36e63c2fda8517e1ff652bbbca6
BLAKE2b-256 f075ea7c09300f11c755851995f383f931204df16c9d6e66c9c1dcf83ab25054

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3bb785743369267341159995de9a7e65f8eab966680f0a8feea2144eb5306377
MD5 afa5ce01664b420bcc2fba0cd1997bf3
BLAKE2b-256 d7fd8cabecab5f4ff15b2f0f5015989ca79eabfd9e056930c07ea46f5382922c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b8ef9ceebf2eabc57448726f43ea9e49ae6670f74886d035a5bee512ba5e0aac
MD5 71924c4a81a33b607378cabe35c5b05a
BLAKE2b-256 a6b8ce9ab0db7d602f059e9c97b0d0fae1ece860a81377359f64617f32a11b54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1052e2e38b9492d77502159fd5d31ce0d92d303ff818e2d03583d0c8b89fc09b
MD5 3a2a83ac2dc15b6411b50ff34badf1cd
BLAKE2b-256 bd2ca3a09bed22876c6e98206da3a6922b6a0789c2cb49028aa7dd213c76d2f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ddd949936aa15a36d83ebe382ea38e3940f2148562544a8e5af78f58bc34f671
MD5 90aca4061a422e31965e68a474aaf52b
BLAKE2b-256 d62d4534e8b5ab2229035e9380a010c28ad0b2572c655db361e57f577cbfdd0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 028021bc6c81582679ee8373e3b61d16a89af728d18d63358a97618644df2562
MD5 54687aae6387dc857f61a5c66b934be8
BLAKE2b-256 69eef3040bdfecf9ecb730bf13db2f6a129ea5a297f25cdb4543ea215bc12061

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1d99083aa1e44675f6af352ad70c719f8f28766de79db59d30d55c80ab70c50d
MD5 687e6a99cb0f0b04e8838041b75826dd
BLAKE2b-256 869d71b9a88a8a3684efbaf1b904b51252741c282503f4c1aaddac488e6a4794

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8df272f281d3ef43cef73ec3b41086116a5904f4d267c4fdcd9e29e4a25966fc
MD5 e29abe73e05d0c7d368c5dd879fc7f0a
BLAKE2b-256 6bc15ca83a88932577432eade7af80418f7d3eb8321202b1b8c06665a1482232

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3daaa8034652a098841dd13be0cbf64ca77a08892af6cb6b732d44a384619699
MD5 4fa32742093d3893b724e7ac5e98f1bf
BLAKE2b-256 99fa72698041d0c67340c0626cee0683359c866f1b7959edacc17b47606758cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f3716fb87f2a12f39e7d6ed842aaa7537ed40e6fb75848d69523d44b1fb7b99c
MD5 f4ff06620ec76a1ff5276d02b2268289
BLAKE2b-256 02f0ea328a77f442d6cd824c1e66cbbe73836043c25d0e0bee2b3f453e659e68

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 76119fd81dcc286d3c5b973c0c605719316171dc3f177b0eb68205d960e05c98
MD5 68b57afe87a5d949700f1176c91c44d2
BLAKE2b-256 835dee9e0072e3bbcb4bd83f5dc3f5a65ad0de08a47e896e54a1ab8f1e6449b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.3.0a1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 be8e70eb942bff415f22a1b2b897c8d0801324574ab478a171ec6016daccca58
MD5 95a87b65e5c98c4e6725c87ec2d6bbdf
BLAKE2b-256 3cd9a53d74b7e4fa7202d025528fd0c2864a5d7733701801c62070dbd626ca85

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