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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

File metadata

  • Download URL: struqture_py-2.0.0a14.tar.gz
  • Upload date:
  • Size: 421.0 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.0a14.tar.gz
Algorithm Hash digest
SHA256 788cc03605914b98627deaa3a215f863063ab54777e960b262fa5835ab315752
MD5 388f79203fc50af963645b9a763d37c5
BLAKE2b-256 7159c605cf45925fff178d7f469aef77664c4729cda830b06ede84bad5b1512d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 afb14b5333ba312b6897d795c41f53e1e7e1ef17d1150f38091b045adf05327c
MD5 c5a554e108481e9cd6a7eb4b5b98b8ac
BLAKE2b-256 a69b0e8e478a9dbd2849c4ca0cffaa19844468aa25506998ebeb044733bd08ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c5be12cbdd3ea441f1d9e3a8d1862b623f5fffcbf2d26fbf4101f08c2720c825
MD5 0b4f0aa59040b351a639c33b967f5fb7
BLAKE2b-256 74dc14c888794f00702f31c413a66818901747e272f93f084c7e64c442a8cc0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 29a1498148a428b84d64f56f25ebb517b0754b0c0470201bff2165a90ca15e04
MD5 a376b8d9f1a95898633ba12805c734e0
BLAKE2b-256 fca630b553e5fd4c8b909c9d462239e948786e9898af14eff39435d54578d931

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8682550c2f35d25ff5aff150871f4d7f77800b68920cfa3af5086fc37348725
MD5 ffe7655af692ef0a474409039b41411c
BLAKE2b-256 bdfd4eb7d67fca1c026f1771ba69028ec453f919416ed47d96fb501d9da89d20

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6357ff72b29983dd222fa924ab33131c009cc6ea01510d3cd742714ddf52d4c1
MD5 1636c0eee86fcb5e5ed3aa61c36a01d5
BLAKE2b-256 1cd2aeb0887bce4400912af105927c0218f47b25858726e3488e3bbf79e485bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8233ec81793dc22cb454e947a5c686bb14fbea7dc91f7024e118d82dd00eb114
MD5 961c13b6894a39a88046016243be15a9
BLAKE2b-256 7f538c0bd97341153a820c4e098661c6b94d1a235e4b476c9052d6982f1ec284

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c48b9df76b0f3b34ea394abe5f3b1ce683a583cbb56428669a147a3487c667c4
MD5 bdcad63ae0d8be9ca06a966a7cc5fcf9
BLAKE2b-256 64d5e28fb64d2f1ec6754e3a12eab22a9ac0ae13aadfb7f039bc29627ad47f97

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 40e72cf33850738a9392b66099d3b26c2fba102ff566dc4db91bdb5d5fd52b45
MD5 f41b07d28827a05844a1712d50bde762
BLAKE2b-256 ad0e1be359eb3d1234581125e0bf3d6d4f308639e81b0aa1b8e2c2d8f211a1e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de56c847638000b538152414de62b359c6b62e98add24db33d42adc005b828bf
MD5 67c63e312099c1c14b8713061226b47e
BLAKE2b-256 3b467d308d2d83f148103ea5cfd9da3c2f63c1bc348ec81134342a25617c456d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cc76f9fbff8aae6fb4b17f9611ed2be8aa9501c830ab3db0ca6b5c34640e5c32
MD5 f1fd3cfea9af116bfeefa919822a5f2c
BLAKE2b-256 2c6be15116e50b5e558082dec76ca2c7fb609fe9432d8fb5a76e4942edc828c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f6c8eab267ab992d5ccf339f35aa51188f25a56882cd6d07aaeb9b0590c99b4e
MD5 91f2a728d9d94f7d44c9ae8b267685dc
BLAKE2b-256 61ba885d07003103820ff294e3dac38917c414a54b7ea817d4255296b7df4069

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c342902d69dd146506b4bd3c4ec5bae6e9dde2eec01c47867286ba67fc5a592d
MD5 0635dfedcbe21e8bd1eff40fe9cf804e
BLAKE2b-256 4422d1e008e74c140005c05a0c1e85b639896d60a1b358b5d2b3f6b0886ab4ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 01f8bb5afcce6f39e57f71c4f68c709635298da5e03e0a38ba8c608c0d110977
MD5 0228553299a2b5cbe5acbac25df9edc1
BLAKE2b-256 d959948a8eb0678957d3789b2674d16606771e60501e18595d0582bc08d8861a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d0d9535f269321b275afcc54bac8c8c4d802a739e01082e57161bfe9338a577
MD5 16a2123e9233d7a192888506006447f7
BLAKE2b-256 71591961dbac7e5c2e8c9e44eba355971e4b1677e254cb3422d66da69f9fa0c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b3538d1820b6ac9e9254591b0fb90fdc40881e91324b701b1c06b479b04adc29
MD5 bdfa63a17ff70535e3b89a8799ad7d23
BLAKE2b-256 d856e7bbb725f5a316d106802b087d690823809c08003d213574738c4031d5da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a57b78653394eab103c52b9ffa5840dc68f33d8018c3f6adebec84e1034b777c
MD5 64236bfcc532fdc5e50f0dfd7c8f72b5
BLAKE2b-256 8012ad79f02cf1beb42b947b536d618f7acb81dd288a6e34b80752ec0eeeeec1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c87d97e801ddee753d9006d6ddf70873f9fe0cae7f2a9ade238eb36d11e00ce0
MD5 67a7d57c38535b9384005dda59452094
BLAKE2b-256 93ac3ade50f49c65e0431fbb1cbc1b447e5435b5b6ebc96232d40adb71c4a7ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9a9a39cf13b03435c430d59c0f9d0eb4b316b2c8cdb6a3fe64c548f945983570
MD5 13aaeb7ca636bfddcb59914b4eea114d
BLAKE2b-256 4dafbe29e19c53928e39d83dfc7465a7ed799c8d7e00a1bed12ee819b8a3674f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cdbfbabdbd46fa915e4976a60253f8a3cd6b1688aadc99f993d3dec542e4b6e1
MD5 1b01be426c0d21a2476d995ee7339010
BLAKE2b-256 9f8f233fd6be0c5d6f1f092bbe60c9c0b9ffd34444fceffb6ed9ce3ccdbab15b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7a6ffa8724772a8524064e845e1baafeb3d322f55b3e076146e642a417114b65
MD5 04b966f6fe855b8d7f4aad0385d522ec
BLAKE2b-256 9a5d290f2a98208e36b3418768f7159c36d4b73e3c3ed6370fd4810fae75eb03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f966d2762bb377ae13be2603a1db3854ee4e44ec4214be7194fe812404844381
MD5 01a09292933a1ebfc600648d0822e6e5
BLAKE2b-256 b2d2bc99eb050b105c0d8c1f520c628c9b2b5a3f2555432b9257db52182d4cd7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 74b80d76dcd325d8add14e12178a8061903aa8fe6a70e5b3788551bb69bb8aa1
MD5 e3eb8aff9be92043194a46c83a38a23f
BLAKE2b-256 0e9943f89c1dd23a3dbe3d7a83c84629d2ee9849160901c343cad8ff0c381d08

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5dbfc4ba6edeb0d3628c992eb005242fcc04b4896a4ee161efc467f876fb0c9b
MD5 3428f9bc75b0ca188e91e4ba58a50291
BLAKE2b-256 7f3f7b8a2c35218ad981d4f46ce16b4ce4f26267214745868bbd70eb9962bb45

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4e2962e0258b36e93f780073a2089fe47a750f1ec042cdd71ee37d1e1f75a6cf
MD5 3870de9de4b9797a4a61d9763dd63851
BLAKE2b-256 e823bbe77c070face519853957cd28d048fe2fd7c0a3289b2d36d5f3a39d9a38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a14-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d7b3beb1a8448685e60c2f98dba6e5480ef2bffb1646467277b312f749c73856
MD5 00860e795e6449a6debdcc124e6c7351
BLAKE2b-256 0106c14214774845792d206713f9f752b564ccadc7a757a717e0c19f393a33d5

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