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

This version

2.1.2

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

Uploaded CPython 3.13Windows x86-64

struqture_py-2.1.2-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.1.2-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.1.2-cp313-cp313-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

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

Uploaded CPython 3.12Windows x86-64

struqture_py-2.1.2-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.1.2-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.1.2-cp312-cp312-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

struqture_py-2.1.2-cp312-cp312-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

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

Uploaded CPython 3.11Windows x86-64

struqture_py-2.1.2-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.1.2-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.1.2-cp311-cp311-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

struqture_py-2.1.2-cp311-cp311-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

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

Uploaded CPython 3.10Windows x86-64

struqture_py-2.1.2-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.1.2-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.1.2-cp310-cp310-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

struqture_py-2.1.2-cp310-cp310-macosx_10_12_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

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

Uploaded CPython 3.9Windows x86-64

struqture_py-2.1.2-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.1.2-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.1.2-cp39-cp39-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

struqture_py-2.1.2-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.1.2.tar.gz.

File metadata

  • Download URL: struqture_py-2.1.2.tar.gz
  • Upload date:
  • Size: 411.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for struqture_py-2.1.2.tar.gz
Algorithm Hash digest
SHA256 8b7645f2f7d5ff192d2168575a1e66683f794c807a779e20eb5b7e360a4e5df8
MD5 42fda230c1a1c3708b4e2e102aa11ec2
BLAKE2b-256 c68a5871182025408243f3ad9af2b8cf4461aac62da726ab3ea4d5392ada25b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 df2e2f1efadff0404adbfd5f6d9440247e85efcd079342deb830bcf7a3b3ef77
MD5 f646e78a0bbdb2e0177db8ea1b6d3401
BLAKE2b-256 eab22bc73707b1f87382145e49370506a8f3c9683a7319eae2d14f9bd018a398

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f5ed6964f7c8051c5b356c6fe061a209c856fbc10cfca12c32a42945ed489ea4
MD5 3132838884cf3015c6148283c22f3633
BLAKE2b-256 e4840afbdcabefb5c42903de703d2ddab6b1531291812e4c20c29cf19a2472f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5deef4af0fef9ba2eda51f9e8e51ef1caf378ef4c53c9ddb77a68ce8f11f54ea
MD5 d573e29229de8b105049621ff0ab32e6
BLAKE2b-256 364a5d8dd4298334ae2dd91d7c39cd7861a2f4f09f6c35552cdfef2726601d05

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8255255ef134fda79c8ca84eadaf2a2e64398a659411a10608654c56ff001e5f
MD5 6ce43986ee5cef716ba5d62a68de1123
BLAKE2b-256 4c75692444e1ab0e414cfe39d0158d45c7fa5eda8e6269d2480a7e96ece4e04b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f69847a761de44fc68c6806d3da81572c6408eff551768db2a79582051dc7863
MD5 d718a04f8af0b6312912f0d500b8476f
BLAKE2b-256 b558e37d3c6ca3cdf458dd7a14e65aea60de2cce8419931348b7533e7619f62f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a4b8a75cd41c83e8de24e330dd3dd4f48c3565b00e76d29a7c2e8dd6cb2cb4b
MD5 1d4e99a63c9da05b52ed36375071f2cd
BLAKE2b-256 b019aace0650848d7a495ed072ff4606babfee5427ecd159665648c8989c2ff6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a4afd4654474fd5973ee36a589f9c4df82a06c3aa105d418b2d203b57dcf505a
MD5 c559e52fadb55eaebfebc7abe9c1b4f5
BLAKE2b-256 bbdefb09eb90b6ea735d7195f0b3098eab5ed94e8e426af6d4b00798b7103bc6

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d57048cd2f5557e8cca8e86027ec49381f3bd724d76643936a75ad76c7bb59bc
MD5 c999708fe87aa40c66bb4d998f884ee1
BLAKE2b-256 b828e002fb72cca8d08e4061a666ffab3bfa11339c67bf927e26cab9235fcc34

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6e455ce593b12611aa27795a5beb3748ea97ac8836299f2d5f6a68562da81b67
MD5 5b985093eb2900c2a544bd8979bd6889
BLAKE2b-256 c301e69151c5ad1693c6c384ccac78f66e08bb4c5160aa2945c3ac1132ad5753

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 91cccbc91272a7e9e6aad606034043f0ed7979fff4476d96e5dfaf90ded17909
MD5 3ab370426891ce2ab99ca0917aa2c86c
BLAKE2b-256 0cfe5e61dfa112ea1693fa2775ae822ca1266619002263b5424ccf984bfef343

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 89066bbf344890263987421fd4982b95cb9c7bedd3b5d1c1b14314845c2ba384
MD5 e7f619ab814ab7032a823197027ebed4
BLAKE2b-256 7d9a82b4bde30b02a18e700992f2ed90a0e0956696f02456542d519abcd90393

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6634fb903612913d00c70713e51414912a39b0773d15b2b5c041dca9563d728c
MD5 b75eb7574c55cdb3df4e6198ad2c1fe5
BLAKE2b-256 076d4efa6e7409c755d567bf251480e088ad31151e71bfa25138cd0a6c4deceb

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f38a639bc63df5527bea784b47faa9a0567132b1cb51ef0f60328465fa459eb7
MD5 74677ef7f8747f3d53297bf6cea7f702
BLAKE2b-256 4a459fb680c13af02656d5920b41ab1592d045a69e7864b756e76a132fa76cdc

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7792c661f786299a12aded06fc54d5759c81921fdabafa585b34eb6a62d571a0
MD5 ea7418d37e1e70d5fa53eeb1cee67147
BLAKE2b-256 4170ead00db9fa953cfe07617375cb6a0c2d6211bcda3b03c25a1190be154672

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5616caca263d4bc05eb26be8130ff009a06f0d0fffd36750e5816a8eec119b9b
MD5 7c0ad4cd6a0a9167fbd131fbe13ea7f2
BLAKE2b-256 16146bd5f702cc91c2cae378b8c2af6d191df746bb95047c271e8f49a270680b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 60d04616216d145bef612a3034820057785575d404f8eabbccf218b131887299
MD5 c354f35a2895091d59a70e2aace76d22
BLAKE2b-256 dc7e2eb92d701d7ab1ec36d358312983eaa17d7ee4434de1f66df1c9befc4a25

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 36c8de9c04c5250563542b6d57bcbc50bef9fa1ae6846b8894b5537cbef19d41
MD5 fb759c913ed2904689e317e5c5796df0
BLAKE2b-256 907d719a88539b07165801df97877f64850dd80331d5262dcdaf3877ed38dac6

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4f92164200f40262a6ac9fe86eaa48fb387806aa0db9984553f214178f892011
MD5 47f3fd3a47399a49271ced7a47f868da
BLAKE2b-256 4561a84bc26889a140f7987613b98163c7c6b88b6b61f5a2d26c3e987f4fa173

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f6cb556ef049b6dc175b4edf244b1090211ea8b0e1e28de53302b037c19e7a9f
MD5 edbc865fecae99657137db6a66f4fe71
BLAKE2b-256 35a0da76f036e1648cdf161ee3972c31730cf19940e4f65bf59f49ca72a1555b

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: struqture_py-2.1.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for struqture_py-2.1.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8a6e95d40c0c88e616e61ddac32bcb868ae0c77530c7225da4fbb16a96f2c440
MD5 d4d0dcf76598add6c113f53543380bef
BLAKE2b-256 8ae3d7b719746fd443195ebee7858d658d114758e506bb4aa99c7fecf35e7cb6

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 661efca81b0ed1ebf7a0234e2f197a74de4adf71f3659b5b4dde7f7e1974c004
MD5 b5f7b20fa5076c2f198963f91eafcce5
BLAKE2b-256 1346a336f76f7e42c6f1465dcdda3120e8306be764dd3cb57408b826e6a16a0d

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e47f89e924d8120185aafddea6adbbee4f68ea26a872a20670c0d9a5721844f4
MD5 3e44eca87db13555bc017d4aea2b3afd
BLAKE2b-256 46e74bd4f779c27be59725b520358e6fd382019be2ce2e92d3f0c57b54d18b17

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae33db1cf702da98076663ca20ea3620d1d831a6f57918f50bf04286476d7669
MD5 788e3efc3430ad78102cafffe9675c8c
BLAKE2b-256 808fb981289d93f4193f4c9fd56229a7c84e049e56bde361d3ebfbbefe4677a9

See more details on using hashes here.

File details

Details for the file struqture_py-2.1.2-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.1.2-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 083d9c250d346a26bab8751e140af99c13322a5e5fb7bbca414e7e684705a08a
MD5 5865211980784800c4f9f2e721cd9bcc
BLAKE2b-256 5cc0bf6d4c8c75658e27c75c3545b42d7cd799afc7aacc2aa7ae3ca40fc426d8

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