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.5.1.tar.gz (465.8 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.5.1-cp314-cp314-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.14Windows x86-64

struqture_py-2.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

struqture_py-2.5.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

struqture_py-2.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 MB view details)

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

struqture_py-2.5.1-cp313-cp313-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.13Windows x86-64

struqture_py-2.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

struqture_py-2.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

struqture_py-2.5.1-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 MB view details)

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

struqture_py-2.5.1-cp312-cp312-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.12Windows x86-64

struqture_py-2.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

struqture_py-2.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

struqture_py-2.5.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 MB view details)

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

struqture_py-2.5.1-cp311-cp311-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.11Windows x86-64

struqture_py-2.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

struqture_py-2.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

struqture_py-2.5.1-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 MB view details)

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

struqture_py-2.5.1-cp310-cp310-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.10Windows x86-64

struqture_py-2.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

struqture_py-2.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

struqture_py-2.5.1-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (4.5 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.5.1.tar.gz.

File metadata

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

File hashes

Hashes for struqture_py-2.5.1.tar.gz
Algorithm Hash digest
SHA256 2c027f1966ea7e6074c165ce4d0c72235d2725a4570a411780599df85509a137
MD5 bc7b0162e354be857d01c7e365c77f84
BLAKE2b-256 d93a7aed73a4a5ef7fb5a8bde7b0ae8ab8717763dc12d871aef1e7c8ec2defd4

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 80886bd8c9d7ac7a4657c984fb2a8c1a9f767bff3f43fbcfe2fe6c4b4ff84075
MD5 a664b4ce75ebf543e211fdaf3468e234
BLAKE2b-256 eacf59972c1c225382d8943f7c5b670a85ed5d3b1607263008332db7179fed96

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1b35c44afa49b4eff4b9da295166f12959f209c5e7351d84b59ec3e7f5a8308e
MD5 bbf7b99e14a82cb86303a429c5f3148e
BLAKE2b-256 8f60b7150084d87ac4e2f8906220f34bec1e93b5c50685dc2497ed289c4e2282

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 23037a7f52d48f11f87ad0dc158f7105151ce31e7841ee36a81dca10b81f87b4
MD5 21354a1e565c51194631a2372e293c6d
BLAKE2b-256 b0aeb53066b8c7d199cc73a5e205fa6c98acfa569712f6171ab8a14ffdb537e6

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 bb507c3ffb276ca6a8fdf6a9a35e235b57f2ddfb2a124f238f8365fc75061243
MD5 9398dfd1f91ba4f963dbe48f02314d09
BLAKE2b-256 9da6ba4f62c09734147de24582b87f434989e0739c3299a0333a3c369a1d116f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ac29039c1ac27f2c5b38e757551ab71761b5a78a0a6a1d2b8e114ae7a3de6c0c
MD5 8611cc34be7e01e26fb1c8c4638a4b3f
BLAKE2b-256 7f9f646cb39906743627d5eec3dc6bade6031f27e9716d9c57862761667f03b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3858cfdd5475c2b992956e6ed5f30c5bde8f41c93b9aaae21fc37c0a6d9a5af4
MD5 04217aade952e9d0847abd2d2da4e4ed
BLAKE2b-256 977c82bca8b3ef0a6784fa83092acdb992193e9ac81678b88164356268160300

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 78b95a8e95b00db91640947d245c7100a96aac923096db4854aafeb594508d1d
MD5 a266ce99459bd6d9d62e78c6c965b0a5
BLAKE2b-256 e2ad3723a494715361a710d93fefa03bab0d47e272faea13e425ef4163a4d39f

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-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.5.1-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 8f03499105b66ad9202b7da597451378d8293fd4aca67d3b17db2c149462465e
MD5 851dcb5944578d66c4194203fead2f31
BLAKE2b-256 ac3ab53575bd08e9e39f87f65610563be852fbc92d9da3e4f4227b700b99bf4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4e707ba86f0c0a5244fe1a3d3d20a0b33a8fb50fd85a278debf0901910879e4e
MD5 96a26f9c7ac059b10253e4b1a8ce3022
BLAKE2b-256 ac592dc4e089df8db23d4848172477fca89ef4f0f7ab139d22dc81aae37c91a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 40792d6380b7cbeebcaa821c1ce270e0abf7868adeb817aacc804b22c2b67a2d
MD5 ed847bf76d71d57adabb39fff47d8c17
BLAKE2b-256 e06feab9d1abced7ab04a5c29f7b203bd1e02f3971e00cd66d1418ee675eefa9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a1e9d6df9cd9054e5fb7b797e0079eb04e95528f04fc68faabb0f3f02a0dc544
MD5 b5e26e4a4fb42f28d76ac649af601726
BLAKE2b-256 ef13bf0d55e330d8fbf76a9514f1077cd5840f8fc1cdddd7e278f7e78d619284

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-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.5.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 07a98bc56189aa773915e200e27a3b7bb8b82e13fd82c747c6a71226735c80d7
MD5 1647aaf58a02e85143052393edeeabd6
BLAKE2b-256 0a02f3729f685d767048ab05238459f3675c0c1c84706f7db73e06ae08ea7fd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9d98574f92cbb21d57452ee900da024b8e52b14ffbd6cf75d3059baf53218cf7
MD5 ffad2877b660a7b65082eedb38b65b5b
BLAKE2b-256 e5b397ca93addcb95afc4c388ce0e7a2de88c3d6f9e7c4af8334bb870e9a4632

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e2dca69b428b102350e86b104c09b716ace4c34f6b77eeda01dc5f9d300a0301
MD5 91d2563831214980c945da72b3dbf198
BLAKE2b-256 33687073e188acf1977e558e5fedf2fb5e192f2390d5e8a44fb26030eaf3a65c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 38ad0e330ee5d8d3dc01980d04be7db36ebf46588c144f33357bfe6294c2d354
MD5 428fc6c29166dc5ccb2cfba0053df26c
BLAKE2b-256 2994ff19f54e6919d12b5a59f8004b2454e32fa450fe7415d1ab9b619d2cc4aa

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-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.5.1-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 40263ae3447af06273b2a461bd8db86ea9d292ac7caf740874dcb2a3311da79a
MD5 ac1b8f0676d0fade5557145c1074f855
BLAKE2b-256 b5520719727a3ec04ff9c38bc6d02aedc1474f029338bf44d6c07b752a05953f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d2d2790eb891192ca7db572547442f776a65d472ecf3bcecd42228e106abbcce
MD5 23c3b6bcbce5e5ac272795cf832a5aaa
BLAKE2b-256 528f55ae566508fb38416dc602f9d7c4ac6277fac85e571486ef81e7ad34adfa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5416394ac4fe31181d5505bcbdc8e67b74656513ba11a28babc8c37e3be3512f
MD5 05d9b02e221e5f38eb0209b6f176c495
BLAKE2b-256 6f9c76610e415f3ff978f6e3d39973c404749085605912b3ae0007c6a9907321

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5c9522655f0767a15288cf1f4284fe11c0e0d24b3a9d618b8e6a80998a092693
MD5 d95860da777c18e13e75a3ec4f81fa52
BLAKE2b-256 0d4ea864ea1f28e7159aef2aa13d51b5ab636f2a113c45ca1fbd0eae9c1f160c

See more details on using hashes here.

File details

Details for the file struqture_py-2.5.1-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.5.1-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 495963034700308dd898485b38993b6c072a871a22c028fbed7f940967564c4b
MD5 d93167acad095a53895f9b06034c395a
BLAKE2b-256 5468a8eb93350e2475bfb663e5ec5c5442c64c213862defb2147269649179d6a

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