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.0a9.tar.gz (410.3 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.0a9-cp313-cp313-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.0.0a9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a9-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

struqture_py-2.0.0a9-cp313-cp313-macosx_10_12_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

struqture_py-2.0.0a9-cp312-cp312-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.0.0a9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a9-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

struqture_py-2.0.0a9-cp312-cp312-macosx_10_12_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

struqture_py-2.0.0a9-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86-64

struqture_py-2.0.0a9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a9-cp311-cp311-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

struqture_py-2.0.0a9-cp311-cp311-macosx_10_12_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

struqture_py-2.0.0a9-cp310-cp310-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86-64

struqture_py-2.0.0a9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a9-cp310-cp310-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

struqture_py-2.0.0a9-cp310-cp310-macosx_10_12_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

struqture_py-2.0.0a9-cp39-cp39-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.9Windows x86-64

struqture_py-2.0.0a9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

struqture_py-2.0.0a9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

struqture_py-2.0.0a9-cp39-cp39-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.0.0a9-cp39-cp39-macosx_10_12_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file struqture_py-2.0.0a9.tar.gz.

File metadata

  • Download URL: struqture_py-2.0.0a9.tar.gz
  • Upload date:
  • Size: 410.3 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.0a9.tar.gz
Algorithm Hash digest
SHA256 bbfb088ba9109f938b2a278671ec05b4b6588728bdcb689a938fb2b6d86bbbfe
MD5 7d96fbecb3aa0a6baf459ff7ef53bd2f
BLAKE2b-256 860f2f7e1161554c1985baf9ff29735b270f2b8df7b05805af4e94956bbe5b2b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ff21f2f9f0f62358373e4433fcf56be64d2a9487c6228fe0a574b81ccc1ee9ca
MD5 96d5172bfc8053a10c7582e9d6188de9
BLAKE2b-256 cc2eb014659afa3037d497e8d3adff1bc638cc97cf281986290c65400631367b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 84134a3e68560cd06724dc911082523b204689d854c70fc8f49d51b81f83eccd
MD5 f6c836845c75c74a65bb38ac2bcc2958
BLAKE2b-256 0991ca14e9b8a95b91a1cd0f72aab4776f3229d183d25a1d9469ac90e81e4fef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 80952a2d29d44d6f64ff5b6cbc7a22f57eee243cafff0cb23dcb0f4cc2f3b83f
MD5 d7f9d303134968647bb1a148e7df4713
BLAKE2b-256 c60cb6d582c3d77f2c364d4f87af1f6c306a7ab8eaa9489989f73a3a51638ea0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4e7d65bbdaafa77d2fb03e8f89789903d6862d31b2ad09d4a2c2c8398fd2b868
MD5 1c6108fb35e3be058a9981e7495bbe46
BLAKE2b-256 41e84ef74454b787423fe073d24896bddc5b2741b433c7ef4f9e5f5dd5416090

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ce8c474ef52d484285e3b286e4cc011fcdf16c37503a884c4d2e427c2399da58
MD5 4eb8d83ecda0bdba8d56a5c5c6dbc56a
BLAKE2b-256 f7296d06a14f87b33df97d40c03740d713a509bde548762fca6b68614e81add1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 03479563b287d73880e1888822d100f20082ef0a99afb043d878c8a01ffb7c2c
MD5 35db36ef4ee6bca895fca37347717dbc
BLAKE2b-256 62069571615551a1ff75ac899ca2c3e572ce86e74263ae48e71337c6bbb94b7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d474da8a75b77c57bd05cc5e9d62c7e2a2bb203fba6c8f61fc73cfb9a1a22ea3
MD5 1a5277e7fed3a2f9a004e6f6982d5cb7
BLAKE2b-256 9f40d3b0328a682d9130fe18bdd51ec1de4758ba3349ecd77d4cb5fcab7078d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 04a6a388359ac2ade053ff1be288c7b6e41628fdfcb2143e4f3f77691ef3ff0a
MD5 0ef577362090ad9e96775841c69c94eb
BLAKE2b-256 115bfd308755aafa9ceba217b6e4d356de1fd88ea48282ac5de6249744f50a54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c02154b7bb062c8b5c10c5c7977c378ed2db4775f1b03586036767b5835e9fd7
MD5 0ec93fb5b72385f343c6f15e32131bdc
BLAKE2b-256 0710a5d3d670fa988eff9976e984907c19768254bd5ec49fa00411d38ee1a128

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e8ec1afa09ce40565eb2db01055ff0d933bfb15c4b34c543baf75033150402a0
MD5 abfb4825c8cd4cd0b2287e94257f0f78
BLAKE2b-256 d6509920965cd9308c46cc14b03ff1bc299daa956dbc8eab240c66db6b6d34d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4c7608aee80a27b1fd7335fced29e92698e322cdaea554d9cb3bff653f0707c8
MD5 ccec3d74a8c30bb8415132a1b7c4a693
BLAKE2b-256 d6314890d7e2497dd072e58ca15d2501ceeade9521cb46cae05637c5fb4d6534

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4346fc6eb2fb48f2e1e4d0b066ca7125ea2009d9762283e093e905bf647fcee2
MD5 5f0750338108deec8b772802dfb8369a
BLAKE2b-256 49509fb9e0d6f62e63115267484e35402fae514dd4b7c04203425ca325ac6621

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fbf369f24f38d9314d808f9a22dd76cb058a02c8ea1ab2d17783186485e254a1
MD5 fe0b728516228fb3cecc9f6507fea257
BLAKE2b-256 b63dc627747608818a0140f89c9db5269694655c24a307de11b0415eaad9ac97

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4ac306d37f13611ea414eed20190cc264bb4477954e6f50f49a0409766465ea7
MD5 84aba7b976297b8a2827ce4dc7b454ec
BLAKE2b-256 07ebaf0c7bf023ac0e814fee41649049ca3e8d4057480cc04348b99add1ad8e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 90e0b40a9dc57cb9cae7e4c9e284c3b8d568d617d6d3e3f95a1210c23fd853ee
MD5 ce29061dae50545aa2288606cd8f8f59
BLAKE2b-256 d714247d0893210b52cc6ea3a01309f0402ac692f926c6b2b5c33db826a5d586

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e01c4a02475c2bf8aff9a10ab9c8de099fab4de1e8ad5101b28ee730452c61ee
MD5 7c18b3186fee1699bc95cbb9e45217f2
BLAKE2b-256 d6f56c6979f256ac8b8e455ad4c561f3af09be68ac1b8faecf31353c437f23cc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7637037eba9c3fd91201af2651610ef7767d57563a10d409aab4a7878bac534
MD5 4b27774e0449ad5408ec41b73c3dd71c
BLAKE2b-256 b84cdab703517d4263cdb811a666817ec3406ce8a441beca87197b05bb7ff11d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0e3c87e20c6fd4a65f16a9adffdd2b18513f8200e7bc2ef46741c2346c68a97c
MD5 946259d6cac58f4908a19c39ecdc5d93
BLAKE2b-256 ba613d3d01fdffaab222975fdcc90cbd18e6f2bf174b0e047006db35fffd5114

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56731425af72ac72afc3fa8ea22dbbb64fddbc717ea22ed0d3d9e81fab3374af
MD5 98c3791a64e8bc6bb9d9b5ae02242a13
BLAKE2b-256 9814d6e623eb199a36fd3b40341053cf32193359801b8ad3074c4f77f18dc350

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5e004f032dd1cd2ab0117162a53f06878e72d9026cffd2510bf8d3cca3f57232
MD5 a4f0064aca58c879bb0e1ac0bce1ed8f
BLAKE2b-256 cca94ab5df4e3b0c7f415183b92a63f87cb6c894948cec2d0029c279d39def88

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 72af6aa819c852ed4326379c88af1d1d7b8603000c303ad5b60bafb15e087763
MD5 aa21e7f06d0fdd4646a163d316aab5b7
BLAKE2b-256 260b094379ddd33b66ff7bcb50b96f603c84f992bad8f00447ff0f3e7d5257da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f9a280f5c366f993acf39760c36621820110bf2797b3a82cdee50e27cb70f5c0
MD5 989e4fbc9c2e308f8c6635c00dd5f515
BLAKE2b-256 f43e906521873d8c8c9fbaecb79258ab9ae0e7a4ebc98991ceaa42ad86d87b52

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5954028a62d2e56573944251790bfabca687afb8e6af8ee19c01e30020f8114c
MD5 9bb8f2410d3fd27ae43b1e7394159836
BLAKE2b-256 ff06ee099c179d038ffb8bafc249030fc45e0d9d40c137929f7ea045b73443a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b493842e2c9a90df97ddd3d83a096dc7ceed6442148d0ce87a11125b560a5e0f
MD5 c52b80637642d9bfecf5234719cf5449
BLAKE2b-256 3996b6ef4e20ffc168871df71564e62d57e33aa561400504ee4177040a020460

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a9-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 af106b55c0fc8afd7d784d437e01c55451fe190219a6eb68c1684c0aafd32e47
MD5 d42701d3089e1936d43c4722c4a3fdd9
BLAKE2b-256 ae82227e08959ff38f67f63a65a86dd4ac2198b7e6362d2876dc85668ab17d63

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