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

Uploaded CPython 3.13Windows x86-64

struqture_py-2.4.3-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.4.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

struqture_py-2.4.3-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.2 MB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

struqture_py-2.4.3-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.4.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

struqture_py-2.4.3-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

struqture_py-2.4.3-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.4.3-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.4.3-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

struqture_py-2.4.3-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.4.3-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.4.3-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file struqture_py-2.4.3.tar.gz.

File metadata

  • Download URL: struqture_py-2.4.3.tar.gz
  • Upload date:
  • Size: 400.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for struqture_py-2.4.3.tar.gz
Algorithm Hash digest
SHA256 b4b35c2e6e8217999b03d26c69dabe35f93bd5682525c64dc7491a2a0edd8900
MD5 426192eef508785574b776d7332eb165
BLAKE2b-256 6904b73bfc3d567ec8f000c92cc8a77f356b6dbb095f832061d4bbd8c5a98696

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 696f3e9432659d1f1f0c3541e65041e998d34f68bf11a2cc42e1f604663dfb0a
MD5 e5ae058f1f662c0600c232a58fd2a6ce
BLAKE2b-256 c1de8323380d1e5db4d17f47c89d3cb3bba4c63f3a30c8a39f7f6307955524bf

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 60874e2481e971d307b1e21acacd0550d9fe67bc4265fef95c31b0a1e318d7fa
MD5 78736f9d19f275a1882231f5062046ec
BLAKE2b-256 48321540cd63c03bad72a6b7f73d28a3a066b6ae2006fc54ee86bc8ad1987b6e

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fbd3f20a039adef50739f5d70dc949a382d95cc6e2d3cb3cbcb3b5e50b5abbd2
MD5 629f4fbcd6461ceb59ce3abe3ce1998c
BLAKE2b-256 d84714b19c284533c9ca11da503f08f309efe795ea2029e2ebbe2382307256ea

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 a48e0db396b451aae9c485370c8309803aebff5ba29358ac9062bdfca1767e63
MD5 db47068ef60c9471ecbe9e8af42048ac
BLAKE2b-256 f93ac531544d0fb5920fac8711a9d777616e903b593f83038f22b2e84339ea46

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0096f8b6674ecb49fdab02ba7eb9141f87be8deafd3250136ddf39853acbf1b6
MD5 9c53869640d3281945e849ede99bbd31
BLAKE2b-256 d7e9853e883bb5cb80520571453c01b23ee5c61c90e1bee5a0e4eb5b1978dc37

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8ef6d9cb33652be6317b61937b40dfafec4ab63825efa8a7df319656122973ad
MD5 49437f5f430f5b01eb0a2a125c1d969a
BLAKE2b-256 526b8529d0769250ba98c2af1a78fd0dc2421076170abb21950c089bf667d19c

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8417542c0e0fee0d92e2159ce76629ca1ab581bf8e86a091897775f61b44d9af
MD5 437e31b68a43699ee6eb44dde9fe6edc
BLAKE2b-256 f296a4092e727b030eb7236e8e1724ad98573ad0dbfb8aafb32c2b4722d54548

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 b218581b381f646e36a0d5f18ac7da32108a9bd7d31bb8035274229eb9712acf
MD5 1dd2c5392f92adc16e2189424dfde0c8
BLAKE2b-256 00846021ac50050cdca78365739d5a41f8b7d7a4bcf245ce51fb22b76103329f

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 13afa8a9daf219274b4c95f327cc6fd4c78f7e2ff3f1174dc4864f2f616e50c5
MD5 850570b146266f1968296aeea0cfbd96
BLAKE2b-256 c37b3ff81c160e1b8ef98a6f613ba4f90919d714658e2afee8bea4eaceabb8cf

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1d1a96e48eb6d930e6a21950ee6ec64be1a4a0b6a3643b54d14598ba26f3f721
MD5 088415cf89bba9f3d31c972bf420d1e5
BLAKE2b-256 5fd59963f70e2ef6492100c643aa3103334a53c0f5da329dfe014d3583df2a00

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 89504032ba28734a951603bba8a5fff682b219ab79d0900306318bb6cb0e5d8a
MD5 405ff6379011ab343f8a9280b97c487e
BLAKE2b-256 4792a2332c86f8bbc3325551b0c3352fb2837643e5b496d8792119e58d4b938e

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 e773935e68c960d92e89862c643d5fc1e78091d6142d5a1847ea1ee155283718
MD5 c9c0dcb5ef24b98d9f62ba7f11c57812
BLAKE2b-256 3f153c210e33fe57244572030e7934a4fa13992a152f062361f326381f01b3ba

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f57437b0b74b9b9d2ee312e06e98723b0477965758a9db6b938e8f80a545d825
MD5 1eafcb57cdb98cb2723c5b9d11dc7711
BLAKE2b-256 9fab1245f88be92d7ed44011b119ebf44dc624b56772a0d37f8c9e31d8cd701f

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d7e0ce944233a47a1ef27aabbbfce6973618845067afd7c0259f391da9ea1986
MD5 2108653c7559e552220ad338fb545b0e
BLAKE2b-256 1ffd23fee07d993150854677ed501e4daf89519fd9f4b3cada98c6dd59af80b4

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1a5c003a4483bcaef3cb194ee6bb7b645f8e04ab4af698b3bf75f77cedae5dc1
MD5 0fb14fb21b5e28620a52a5589f790cd8
BLAKE2b-256 8385f8c8b45385d15c0e4973be80074e4aff092d2ea73027c1962b4bc2208ac5

See more details on using hashes here.

File details

Details for the file struqture_py-2.4.3-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for struqture_py-2.4.3-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 a224bd5012e73cbe2722442b06e3b9b32305e6a320915c59e4841ca4f3f605b8
MD5 c170d65e4d523126823bc157a7dfb106
BLAKE2b-256 374b18bd0d0b1fb72bd052fbe7d95731fd08621ec837a9224e5c2c0d3cfdaefb

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