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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

File metadata

  • Download URL: struqture_py-2.0.0a12.tar.gz
  • Upload date:
  • Size: 416.0 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.0a12.tar.gz
Algorithm Hash digest
SHA256 0cdd23143ef811142e73aa10d445d5adbe3e976ed00b41b0c74cf04028b2314c
MD5 f27d8862daac816d61523c76390d9ba4
BLAKE2b-256 c9e68a0a8a489fdc9eea169a36cd7fed64e8502417027a349ec118c4c7bb9cfa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 db174ce870c45fbcba4708a7ac01cc37a4b5b1b3309843746d028494da74f3b7
MD5 d14ee332be6ca5881b830c655196b495
BLAKE2b-256 9e2c4403532197f37dfba371804ef5c920a7ba5dab29e61c9bdd2a24bf10ac9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ae19de308fcb7450beb1451d555a42aa1160ae57c314e7b9f1c359d063f28214
MD5 bbd789d4e0e492cc76bb4338b9dda87a
BLAKE2b-256 9ad1fbc53d683f17012ed3b3297674bb064a1c97d073720b8cb9641f711124c8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e84942e068d3dbfdd24d28f5488beeccc51b6aa2032c4a6d218679e182ad9242
MD5 dae2a23e29879deceacd697d7ce62f6f
BLAKE2b-256 b3be3f52d06f10bb0cbeb5382eddc3478b661b76aaeebdf44352dc1a0b1b8fd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b0f34a56ca186f472e98429156bdbec840a1f5c28b20523ae3d477144259869b
MD5 cad599ff639ba1b5d982a9355950f76c
BLAKE2b-256 5fdd439ab7209ff7e5009d09f54524a40d8f45d15e87e7e88c1bf2b94f72070b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ea65ea0e884a4ef13d919d1a81afdbd440fbf9294386486be0838983d226ca59
MD5 b86b861cde28686ee8d184b15af1e8b2
BLAKE2b-256 e6c222839a07b94be1c910f03b808a7776edfcb77b1c36284f0dec7cdf4f3f4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e0128b2827858dfe2306ac968f568cd6b4ccb9bab01d5002bd38d171c58e5f33
MD5 0b155c9cf5c3a36f970b06ff393254d7
BLAKE2b-256 3327e1c36b287cfd2b35648fa4d7441b4f739383b58e67db0303eacc0c9798bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0512d64af2401a30585a16149346ae2624af70407fbcea2ef705d1e81f960ae7
MD5 340c01d27c644fdfdd5f37bbc2c16a86
BLAKE2b-256 10ba2551bfab3b113e11379f90c612c600666d948c67b4f56d31d396fdd12580

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4650cb7f2438924dab82bf65359bdb342d57326f6dd2de179eb6c0207d631bc5
MD5 393ac081d998d23d4e81d2d6427bd125
BLAKE2b-256 c8b1dcb5014dfa7ded6bbe87242e6cb71c6f97ab5893d39f68d8e1c19d307e05

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 acdf08abe9a2d4c6dc0d594dfd1382630cb1a4ab542228fe0fe608bb4354cf17
MD5 fd5463260ac66867775b97e34c293b64
BLAKE2b-256 76cb597e033f9d10eff20b27b28c6f97f9a219021d6a650dd29a95d5755e108d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6a1c91b23732cdd34d67f686cc2dc2559e8263dd230d82e187d1aec10f6c5d6a
MD5 3d0842b95cf1ca5e116499ae07e37bdd
BLAKE2b-256 9fe878b9122350c695e715ed7e04e0ce8c1d5589bc08e3fa2722e4d8aa7982ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 38c9afc419131270dad53933c28413e58e875a90d2ee67e16c968dbef031fa30
MD5 05a30db0aa00b8fa3bd13b7b58d3a99b
BLAKE2b-256 b277d4a2c155423c477160fe97aa9a393ed9ecb3bff6b8c7b5d5fb13258260df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77dd2035afad2db06fd2fa725792e01c277cd7ea1e7b40206d264b4baec9b8b2
MD5 1b125bb1a1581deca708225ee6f16941
BLAKE2b-256 52fc5fb0e5d867783509adee20e35091a931bda7aafc8944d69d9fbe64035362

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4dc78030fee5abb638539ca17efbb5423ac6f1505d0082b03b50400e928bf20a
MD5 323dd3ca811f3963c6b780b64184c330
BLAKE2b-256 3b692fe80008fce03caedb67609be55414cde5bfadae1157f0daa0610a422847

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9c232f34803f422989886d7dcd0ef6079ce9a61053d3a1cc9119f9d39671973c
MD5 609c2e4b6578fca7d448f35d2b0955f2
BLAKE2b-256 4d63139cd76910f5e65eda600a83773ecf4f8fad16c1c9d031b3d6c48a0dce3b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6ab716e5032d85b88dac4fc6af86b9a32cbbddb5b65c5856ffb3fcc616c18994
MD5 5e45fa986adf211774966b79c1760dfb
BLAKE2b-256 a9f7363e7ea5615dd0aa38473808c5f1fb2b5dd3fd5c1f0fb24bbd4ddc9fb487

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f93ac9e27bbde932815dc06b3ed7506f7ffbc3e424b3e444e18e627b93bdf298
MD5 1842fac98adc1fd17e813a8aa79c74d9
BLAKE2b-256 1667577c70dcfbe5a821f961e5da2ced81a47bed2fdbe4cb56671947b44ab5d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0197b5d4ef6499f041ee792086975fc507c9897951190c2e49f9a3eb599aba08
MD5 45d5182d0377e0346b3214429213727e
BLAKE2b-256 15ec4246c4ca8b3f8d4ad5c03e539afb5a83046324d989e1278ef41538fd1346

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e812be7d93523c5802d2a57632c0508323998fa5f10639fc853f7f50d856e7b7
MD5 eef8669efcbe8ac8f8542a3cca04807c
BLAKE2b-256 c3922dd241b529ad62f7695ea72e2d1792b233eb894bb9c37ab736408547d405

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cf2af0c025a62515cc92811cc3a7429232084878fb55acdfbcce2dcb0fdffcc0
MD5 485de97c8b2e77bab2323a3b3cb08699
BLAKE2b-256 d31adeb56b09fe7621ccaefdc4a0f89f4f5370fb4cc2c07ead54e934d32f8105

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3979a9eda363841bd0b722d9dbd0523d3b67a1f9d24e6e095ff38201557d9d06
MD5 413486183689be4e6f4b9362a0324354
BLAKE2b-256 a0ad4338aa50795b852eb84dace5521412994cd5492886219a06d61c2a580f8b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8e2ebd90f2f86c0617a3c2606a00e6fc4e045b16869d9e78f87a48a998e533c1
MD5 32e9b2c8c62573344c76da72f4889487
BLAKE2b-256 03eb67a16b6ef78ef386e7e15f0871a0d4ac57d7188385dc2ec2e9d3eb1f1b29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 095730675ad40e859284cd0583c7a811ded7eb857a0b2c5d703b230683de5f14
MD5 2a49b9f0b2814fc5045eee076092d1fb
BLAKE2b-256 be92862bfd3f23d3f2187e9b283efb62eeb99664f21e2d007989a1149232e758

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a1a711a4b0f3d7a8323df32ab8d7d0db386934e4f0a1f5167a5588da46134090
MD5 ef84762408917b4f10746279ff21676f
BLAKE2b-256 ade67fbcf013af91d2b9411dcfb1bc45627eeee7d35b2b26db1ada82d8f49807

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f953a23b82a0eb2b84a57d6801061be1c198acbfb3a23f89a43caa72850457f
MD5 f4a9a8d3ece44c089198ffc0d265d25f
BLAKE2b-256 61a0b0b365810f8faec573a85370de69369e0c1b6ba54d42a348c644b9196176

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for struqture_py-2.0.0a12-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3058de855dee2ffbf919c8547bf9864902b488e815d00d3a3ab279693dcde263
MD5 34b7129b72cb6c654d6ac61a679607cc
BLAKE2b-256 242292fabb18086ceaf22c590bc3bcf2629964ddf339a1bb1e34fc84ecdfb6e6

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