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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

File metadata

  • Download URL: struqture_py-2.0.0a11.tar.gz
  • Upload date:
  • Size: 410.2 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.0a11.tar.gz
Algorithm Hash digest
SHA256 eeef157a3994321434654a420aefb509caf6bc6f2f74b09e895f27dc6c2ae0b8
MD5 1b66589c3bb395b9631959e8add7acc7
BLAKE2b-256 c804b86f6603ba196c9e00242ad47f4f247ae98babe5fcd04dd42f7af0c7d4c7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a3eb2d79971a6ccd54b279944138ff7c517dd91a758d89ceecf7569654fcc731
MD5 19369bc5dff3d3acd7bb281442253de5
BLAKE2b-256 040614f1c91190709887fa50afc89989f69880e3aa307ae52cc92450236c7d04

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fbe3a0de06fc2df2b2a273b488eae99ad22425ac0eb193c2e1ba46af9eb4b7af
MD5 a79d6ecd6e1c0d16b5e5b370abe70cbe
BLAKE2b-256 6abcb3fe77a488fd1107a601348c29e3bfed67ddcc29dac792f742a882d328a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8070208fa405e7161d69e5c9a84986cea10bd6e250a799aa08b63feacca75b35
MD5 3e06e3f40f300e2ac390e675849cebb2
BLAKE2b-256 2ebd56e3fc5a8336ced07431692d1b68de184899d4a0f76b767d15c9b4ea1724

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8d738f8b40673f5a24c4c1a72d11eb4bb382ef0814d7d605ce96630dddab3fb8
MD5 2a55f4a64b4d2b6b0a4004e341a7b389
BLAKE2b-256 f57f3b5080a3eec6e5680eb9af3e916c54f466b04975a11408db8e1f25b03429

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c67b6b658dad551fcf76146ecee877cb691ae05822ae50c35982b7a6fd2f608a
MD5 da717aeeab625fc43259750cb5835d80
BLAKE2b-256 f4ff7d135ec20578b134ffd03e28e82bdfff9010c3384857eb72b08ec924074e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5dc8383f3c43e7aa381010e31213697c4bfa2f3d1d642979ed5c4c634d0e854e
MD5 102effca1081604d18a8918ee2dc7b79
BLAKE2b-256 4945d63176fd593c20ab61863ea9653407e866a35c7fce5edde9e6c8c0dceb85

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 395577b310ee4c4c7b63984324e96f637703e272a7dfdc5ff342428aaad61507
MD5 9090d84ddb10cf28c308032df13f66b7
BLAKE2b-256 9c4391a099b425402bd325e4a4ca5fa8f210cd0465069be6a320fdd627d5aa2f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3ef7b509f96dc2d9fbecfb1bc2179bb4a271e653151aeac0dbfa41c528386709
MD5 3eaa8d46ee6f963927bda16293ebcfcf
BLAKE2b-256 731477d66a8f18f1cd0f8fad4b9130223aa7fa137916fcbea96b812d19c1f0cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b6779aa588f7a66fcbcd14d2f25000a456d40eea49fe74844875bd48f806416
MD5 67df2477d23270f205a5615ca2908c96
BLAKE2b-256 c7a5468fcadc375100afbc552a764cb5215cf783291424d1d21b98a795c6cab8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 91d6c696698d1dc133a7713740a73ab713bab9be0005a1d11d92b78823c4a7f6
MD5 6f14c797871cd07160cd68b30ecf35e3
BLAKE2b-256 e18d8ecb6472db90e1889bb76805035a71f5b538b65c3c21c0ca6a493cc027db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9df9d531c21f07bda010b83ed9ab25b6574bc41a7b2120d74a223a7212aac9dc
MD5 e00aefe5fb3b21055385d6314463151b
BLAKE2b-256 7c4fba88e0ed98c34ff9faf9f0b49ccb6f8553f03a93be430d2ae96b6fe908ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 117268bf7dbadef2eb1e90030b38a63951c883ffa69f5927fdc54658e07fc1d8
MD5 2b469c241d118d5756b3480e8f9e96ba
BLAKE2b-256 5237e8e81ba9c003879708bf99b1287ef964b1f59835e07c480d4f3dbfd6cd7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cb1a011833312768d9c785ef66ffde0001233f4da5d9abaadbdd67d79bc1aebf
MD5 8cb7f4b53e0682a5af7a18cfba6d3279
BLAKE2b-256 daaa9d54abab274deb4131c3a1be3784d4f73699342819c55f453428b5275708

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55262fd33600e9588a76c63e7c4e69ef277688468ce3e791ab1af6a8091641d9
MD5 a1341bc4b828d1d4b8251ae20e82e718
BLAKE2b-256 b89a28e4ed5f9dab7babd6e68e0d2bc41d8d4d55e6439592fa5cd002c3f2f2ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0afa1faaff885a8d096bafbe4e5e8ca41bfe8e44c0a8df96b0f84a3a27e8e812
MD5 6b875b85c7123266c148d11f58098168
BLAKE2b-256 eade67823f81451bd51c923ef8a674080735925a98cf512024dc906479899712

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a49b83c061031b82c7e7a41b8855fa3c3f09949e1bca25a2ff8301b53fed1156
MD5 f73ccbbd7f8b16dcd93bb09dfeab9350
BLAKE2b-256 752a54e2f7a45cadfd566a5f2b617327c035f3aabfcc93af92cf0fe302f882d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 09da392811838cdd1076b1e8007ae5b9424cfbe61d3e95a93a37c8ff49c1822d
MD5 1136a740125805f5d012299284226a30
BLAKE2b-256 1831e41b8948e70701f4965dc2fe38b1c85c8d34ab0e2fb724959fbb985a5fd9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 079c08a1ba05ed9ca462c267930abae44bf70795f98f01de4118be456e8e3eb9
MD5 a8172b59ed1df3b3ebc0dc3534ed4e7b
BLAKE2b-256 9f75f4a8336163f35a5da0b0dd7a6259e5d9706bde888e84da0f890e10f4f3ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4bc2328d40cf4c0e47098f3380135b148250054537fd3af5607bfa2b1f82ce9b
MD5 6ba9fdc24d16d48122bb863f2c15e59e
BLAKE2b-256 944293b80b78a572cc754d04b2541aed0bc85ea4d73ebae02e7d7416e00e01f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1d66afbb1d77eeade3d41b426a3b6448614e6df0457d0fdadb265341ce570a15
MD5 d586d7d0c46d45ab6adddbcaecc0ddcc
BLAKE2b-256 a72a51b7c9fe45a63b43cef6b179d44fe19d98bcb9880678a50968d202bda6d2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 30ec65468743bc67224419dcd9b828abfbd017d453090dfb97f9905e1315ae7b
MD5 877d5adfa4f24e8e494363c1cba95fe3
BLAKE2b-256 82c07bd020bc105b904d0ddea1179552dd00c22f8855d52bab2cb70210f0a69d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 542b7a52a2fb6b6d6e42be8665f0148553b72d15bfb84a1c783bc32de7365dff
MD5 516a583254b9a3ae08c258b8d4282dbd
BLAKE2b-256 f84cfcf4ecb4c832b6f2c89847b241c5bf83e404d80d930aae2776f5f7867424

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fab580161d5efdfde0db96ce39396e7a22eef48982e305f27eaa5ce650aeb912
MD5 e37bc00b3ca7af807d033aaf193776e5
BLAKE2b-256 39dc0a6ad2bd626c35076b2269af532c7fa2919c198bb106fb550b5769bc7a63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eb0cde84d64b2b9ce2faba9546fc57df5703ba20b848ec8d2ce26a13a88f526e
MD5 d84a3e2a81c64601440addb2be909cd0
BLAKE2b-256 6cd83987db5a5101454caf3856562d04f8633f1e7071d845c97cd2a20e0d6487

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a11-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9ecce3bdd1b5521e9419ae6e6a039ac6e421b2f188a91ea2ede02323450e27b3
MD5 b7267a3c230c52df48de3c89b960014d
BLAKE2b-256 fe176ab6dba56422d25c61a57b2e8407090baf5de9fd602da753ffc22c1312fc

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