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.

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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

File metadata

  • Download URL: struqture_py-2.0.0a16.tar.gz
  • Upload date:
  • Size: 421.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for struqture_py-2.0.0a16.tar.gz
Algorithm Hash digest
SHA256 57c2e9402eef268004c63ecd956a5aeb38cffe2d3a4d1550b10baac7fc215cbe
MD5 d496136bec6839685d56fada045d8df7
BLAKE2b-256 65a82ded3915cf53855bc9604c1703ddf6481bf6a57fe988e83e20dcf203fc62

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ae4de74730dac099cad7e70322d8a218cb1ab3429d28ca8fcf9be553262e599b
MD5 ff896e0e06e6acba46d44a00ddb1ba9a
BLAKE2b-256 453283d313f28e583e25c59ad553a5be6559d7ec83e57f6094caa8b6f9832883

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 103b90d9acdd33102b9453d46cbb48efbbe0cc47b888d03bf137eaffdc511aad
MD5 4b0eb7795f4f9269836e8809eb0027c0
BLAKE2b-256 76ad461350f9508208da9131b05e34b6751470a84f437c1df9cc5cbe8b1ec632

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e0c163779d89a3a65df9e6b3aa6ff0cbaa79bb3faa041425828514e402d3735f
MD5 6685a16c6d974cee59bcbd79f7766b5f
BLAKE2b-256 fb785419ed494268753f34b9107df81b72a6934061b7c8f2c7e0a005cf022789

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 471e6afa1c05f734f4511bc8579f408ca341fdf9e0d50f365f5c086c267b6382
MD5 f7a573780639269bc990589d91e486b6
BLAKE2b-256 5a328dcc086e4cb952f6f8ae5a04554bbda2015efd751a15129aab558c2ae2f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 67b8dd2f6c69dd9a8e3f88663eb16a036dd16b327e749785829f5b5e30e6d36f
MD5 ead70d281436e4e42631adcc6599044d
BLAKE2b-256 0b8344abb538bdda00dc26cac3ab06bc144a39ebd63d1417d68310c4cb1930f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b7ab89adbb93ae2f70a2f380cedf11ea2f95643eae620d1dd27deba3b754a006
MD5 b0eb32fd4f9c14d2897d88a657bc4ea2
BLAKE2b-256 0d1df53f945f249c61b7768a2901fc9e881477e9d5294f6c29fbf20d43ca8543

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 68f069afe09d2105fb45145746eecf135f6de06561c482df0a05e7da2499e124
MD5 423b293ea9cac2dd38f27f9ef800119e
BLAKE2b-256 83d7302a793ee25c5517ceee40ed87011a1b43b5f45d5e97b96effc8a30fe5f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 90bff09f9731ecd556a345581ba23758c5187f68338ba60322111639f88a08d0
MD5 93e93c9d87c5b4f458a420487b4b7f27
BLAKE2b-256 452e012ed87f628e25139f66014dd0651edf06f1aade2923214b4591d9268857

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a99244da1f1af3d560d3af4b2eaf2b8fdd24128cdccc4881b011817deb71f34e
MD5 443d2703a90235729e107925cf493012
BLAKE2b-256 cfd869e89f42224d5c9fae54fadda782443ba7aa77d4e1f59e92aa5c44b30df1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d9627b7c53339f3054e6057807aadf4fc31e6abce5b4fd1796b8600e6b102b69
MD5 5f36baa33cc2a73c0ddb4af419ad6da7
BLAKE2b-256 9a8dbd86989f58d67cb5ce33b8d560f8e2701e356b2082f880c5d8b2d5434dfb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3a8a4e0c96a5fb376fc50debf0e2d4dfd2bb1df44bcec58fd78fae9ac2263aaf
MD5 29e44ba4f6cfa93e28b238ee3ea1861c
BLAKE2b-256 e40346f3c2593962b92bccb0eb864f041605a2b8ae5013e658a817bdfc4ee7cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 331c133697b201a62e9231adfe6a785f238bed0c2a0c313e23acc8db6e483cba
MD5 d2c6c4104911f2027c34576e8468e048
BLAKE2b-256 11ecc4c79872671e0d140441e5cd322c029f7ce458ca9d27d2b3dbacbba79e90

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 28c22f94a2a3e62659670354bcd00d6d95aefaa3714950cc990bbfdd340eafee
MD5 3ce5853c92429959e721c9a1f2178837
BLAKE2b-256 2284c617b180151c598e748763548da8b482e7dae5edee81717731285c1b45df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f29b325ba1b17fc6ba3786867fae6b8959fe58bac3c862edafa5d2d094f08207
MD5 5e6ed15c384ba6792ef492bfcf26d9c9
BLAKE2b-256 274a8a2c6cbd7eb5812d3a465d973e88bfd80570a93a072a3b4940283e89acd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3f58c0ab75308f05766ffcac978206d7a145737dc213d9c9cc789df037c4ae72
MD5 dcd753e40cc8da96cbdd19d404209419
BLAKE2b-256 761876db9dc20d951a5958df325fc096c8d9341df587e28640a2d38e68f89983

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fa0416620cc24204876de2b29811831658e1cb92a0926d03319fb9d6e75f2d5f
MD5 848c919c5602db89a1fc4cce3aff550d
BLAKE2b-256 e9aee7e592e2b2509fe58c7ab4575b7e778e806d1ad344c283421c1e1bf91c09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a832fe4aca105c716378e4bdef695ed6e0dde1b637762cf7560b49eb97272014
MD5 6cabf03344261af7fba06f2478fc4074
BLAKE2b-256 1cda783b728b58288b94265df440b3df07c7663047f285623db68dade70a3304

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2cd0d0150723826fa341af6589785640fd58b411ba33694d83f33aa3bb6efe9a
MD5 82c6fc41dfd910d6b2caa5ff4afb1078
BLAKE2b-256 eb3c6b65cb5d3e11a2c560e1d8e3da60769819a76d10236552a1b660294b3b5c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 fb76649253be25eae48a5394bcdfbf27456c775bb23b11f516b8c530501ea517
MD5 bdcdbfc0603f781d481a320ec672790c
BLAKE2b-256 f4464487c80e398c131563c9ee1ab8048a01dda895a844809484b4c07b2af69b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 79b545ff85309a2fa7c570decbe32b590c66ec778e3ac3c97ce214559c036e72
MD5 cc073d5b4722cc9cc06baf39685970ee
BLAKE2b-256 1d95fccfc3b7b1e5b342bf274ea4c0c78f9df8329413581bacc81cf3838c158a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e8cad9c8e19a692d5a37e90ba84800867c127f4c12e09e797b627c3e712f2d76
MD5 543ecea4ca3d9efe184d63238363dc39
BLAKE2b-256 24228c959563631df1d237c8360b6bd807316ec47f6da395848f50db2bbfb37f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 794f30fd8dabb49427812ae8903cf4fd9f980b7f6f52a6a5761e4b83005fa911
MD5 8510981f7b4a765758873778c9c95372
BLAKE2b-256 00e9dd31c018fc946611add467b6de6e5f70fa5c33db7f21af4b3fd58dd392da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a16-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 95a4433c57e9c775c80f1d58f7d2685dc5ee12835e8621969e503a3dd67690ba
MD5 51540ee8e2c366f127d21bdb77ec1b59
BLAKE2b-256 45ced0adbbcfe42d851be625d648cdccd7e806c1220c264bb40d57d4e21c1788

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