Skip to main content

Python bindings for the scinumtools3 C++ core

Project description

Scientific Numerical Tools v3 (SciNumTools3, SNT)

SciNumTools3 is a C++ library for unit-safe, validated parameters—eliminating hidden assumptions in scientific code.

Linux Build macOS Build License: MIT GitHub release C++20 GCC Clang


Overview

Scientific software often suffers from inconsistent parameter definitions, ad hoc unit handling, and missing validation. These issues become particularly problematic in workflows that span multiple components or languages.

SciNumTools3 (or SNT) addresses this by providing a unified system that combines:

  • Runtime expression evaluation → define relationships without recompilation
  • Unit-aware quantities → prevent scaling and conversion errors
  • Validated input parameters → detect invalid configurations early
  • Cross-language consistency → shared parameter logic between C++, Python and CLI
  • Lightweight integration → header-based design with CMake support

into a single configuration layer that can be used consistently across workflows.

SNT is a C++ library, with optional Python bindings, designed for safer and more transparent numerical computation. It is built around four core components:

Value Layer (VAL) — a unified, typed multidimensional data model for booleans, numeric values, and strings, forming the core runtime representation shared across all components

Expression Solver (EXS) — a generic, extensible evaluation framework capable of operating on arbitrary data types defined as atoms; its behavior is fully determined by the set of atom types, operators/functions, and evaluation rules (precedence and semantics), making it adaptable to domain-specific evaluation systems

Physical Units & Quantities (PUQ) (built on VAL + EXS) — extends the value system with physical units, enabling unit-aware arithmetic, dimensional consistency, and automatic conversions through EXS-based evaluation

Dimensional Input Parameters (DIP) (built on VAL + EXS + PUQ) — a declarative parameter definition layer that enforces types, units, constraints, and structure, while delegating all numerical, logical, and unit-aware expression evaluation to EXS via PUQ

Together, these components establish a validated, unit-aware configuration framework that can be consistently shared across heterogeneous environments, including C++ simulations, Python-based analysis workflows, and Bash-driven processing pipelines.

This design enables:

  • a single source of truth for parameters
  • consistent interpretation of units and values across codebases
  • early detection of invalid or inconsistent inputs

As a result, discrepancies between simulation and analysis pipelines are significantly reduced.

This project is the C++ counterpart to the original Python SciNumTools v2, with a focus on performance, static typing, and integration into high-performance computing workflows.

Why use SNT?

Compared to alternatives:

  • Boost.Units → compile-time only, no runtime expressions
  • pint → Python-only, no C++ integration
  • ad hoc configs → no validation, no unit safety

SNT combines:

  • runtime expressions → dynamic configs without recompilation
  • unit safety → prevents silent scaling errors
  • validated parameters → fail fast instead of corrupting simulations

in a single system.

Target Use Cases

  • scientific simulations (C/C++, HPC)
  • physics / engineering pipelines
  • parameter-heavy workflows with unit safety requirements
  • hybrid C++ / Python environments

Installation

C++ Module

Download and install

  1. Manually

    # download repository
    git clone https://github.com/vrtulka23/scinumtools3.git
    cd scinumtools3
    
    # compile
    cmake -B build
    cd build
    make
    
    # run tests
    ctest
    
    # install
    sudo make install
    
  2. Using setup script

    sudo ./setup.sh -b -t -i  # build, run tests, install
    

Link SciNumTools3 in your CMAKE project

  1. Find the package

    # find the `SNT` package
    find_package(snt REQUIRED)
    
    # link to your executable
    add_executable(${EXEC_NAME} ${SOURCE_FILES})
    target_link_libraries(${EXEC_NAME} PRIVATE snt-exs snt-puq snt-dip)
    

Python Bindings

The Python bindings for SciNumTools are available on PyPI and can be installed using pip:

pip install scinumtools3

Package page: https://pypi.org/project/scinumtools3/

Quick Example

Domain Specific Languages

SciNumTools is built around two domain-specific languages that form the foundation of the framework and enable consistent handling of scientific notation and dimensional analysis. The first language, PUEL, defines a formal notation system for representing physical units and quantities in a precise and machine-readable way. The second language, DIPL, provides a textual specification format for defining dimensional parameters and their relationships. Together, these languages establish the core abstraction layer of SciNumTools, allowing scientific data, units, and dimensional constraints to be expressed in a structured, interoperable, and extensible manner.

Physical Units Expression Language - PUEL

Expressions of physical units must account for several important aspects, including the underlying unit system (such as SI, CGS, Atomic Units, or US Customary Units), unit prefixes and scaling factors (such as kg, mm, or MJ), the associated numerical values (whether scalar values or arrays), uncertainties arising from measurements, the relationship between base units and physical dimensions, as well as support for integer and fractional exponents of units.

PUEL provides a minimal, coherent and extensible notation that integrates all of these concerns into a unified representation.

# General form
<SYSTEM>_[<VALUE>]*<UNIT><EXPONENT>

# Examples
ESU_erg              # defining erg in ESU unit system
m2*kg*s-2            # definition of complex units
kg2*ms3:2*cm         # fractional exponents
1.346591(30)e27*kg   # uncertainties in measurements
[2, 3, 4, 5]*km      # arrays of values

Building upon this specification, the PUQ module of SciNumTools implements parsing, dimensional analysis, arithmetic operations, and unit conversion both within a single unit system and across different systems.

Dimensional Input Parameter Language - DIPL

The definition of input parameters for scientific and engineering software involves several recurring requirements that are common across many numerical codes. High-performance applications often require strongly typed parameters with explicitly defined numerical precision. Numerical values frequently carry associated physical units, and many parameters consist not only of scalar values, but also arrays, matrices, or tabulated datasets.

simulation

  timestep float = 0.5 fs
    !condition ({?} > 0.0 fs)

  temperature float = 300 K
    !condition ({?} > 0 K)

  pressure float = 1 atm

  steps int = 1000000
    !condition ({?} > 1)

  duration float = ( {?simulation.timestep} * {?simulation.steps} )

  ensemble string = "NPT"
    !options ["NVE", "NVT", "NPT"]

In addition, parameters commonly require validation rules, numerical constraints, admissible ranges, or configurable options that govern their behavior and interpretation. Parameter definitions are often interdependent as well, where the validity, availability, or meaning of one setting depends on the values of others. DIPL provides a coherent and extensible framework for expressing these definitions, relationships, and constraints in a structured, machine-readable, and implementation-independent form.

Example of Use

Below is a quick example how to use the core functionality of scinumtools3. For more examples and patterns please look into the tests, exec, apps and bindings folders.

with C++

#include <snt/exs/atom.h>
#include <snt/exs/solver.h>
#include <snt/val/values_array.h>
#include <snt/dip/dip.h>
#include <snt/dip/environment.h>
#include <snt/dip/nodes/node_value.h>
#include <iostream>

using namespace snt;

int main() {

  exs::Solver<exs::Atom> solver;
  exs::Atom atom = solver.solve("23 * 34.5 + 4");
  std::cout << atom.to_string() << std::endl;
  // 797.5

  val::ArrayValue<double> value({1.23, 4.56e7});
  std::cout << value.to_string() << std::endl;
  // [1.23, 4.56e7]

  puq::Quantity length("1*m");
  length = length.convert("km");
  std::cout << length.to_string() << std::endl;
  // 1e-3*km

  dip::DIP d;
  d.add_string("foo int m");
  d.add_string("foo = 3 km");
  dip::Environment env = d.parse();
  dip::ValueNode::PointerType vnode = env.nodes.at(0);
  std::cout << vnode->value->to_string() << std::endl;
  // 3000
}

with Python

from scinumtools3.puq import Quantity
from scinumtools3.dip import DIP, Environment

length = Quantity("1*m")
length = length.convert("km");
print(length) 
# 1e-3*km

dip = DIP()
dip.add_string("foo int m");
dip.add_string("foo = 3 km");
env = dip.parse();
print(env.nodes[0])
# 3000 m

with CLI (e.g. BASH)

snt puq convert "12*statA" "A" -s ESU -S SI -Q "I"
# 4.00277e-9*A

snt dip parse \
    -f parameters.dip \
    -r "?family.father" \
    --print
# father = 184 cm

Documentation

The docs/ directory contains the complete API reference and user guides for the project. The online documentation for the C++ reference implementation, including Python bindings and the CLI, is available here.

It also provides detailed specifications for the DIPL and PUEL domain-specific languages:

DIPL is used to define validated, structured input parameters.
PUEL defines a syntax for unit-aware expressions and calculations.


Contributing

Contributions are welcome — please follow these guidelines:

  1. Fork the repo and create a feature branch:

    git clone https://github.com/vrtulka23/scinumtools3.git
    git checkout -b feature/my-feature
    
  2. Follow the coding style (.clang-format) and use modern C++ (C++17+).

  3. Add unit tests for new features or bug fixes (see tests/).

  4. Build and run tests locally:

    ./setup.sh -b -t   # build, run tests
    
  5. Open a Pull Request with a clear description and link to any related issues.

See CONTRIBUTING.md for full instructions.

License

This project is licensed under the MIT License. See the LICENSE file for full text.

Contact / Issues

Found a bug or have a feature request? Open an issue at: https://github.com/vrtulka23/scinumtools3/issues

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scinumtools3-0.4.7.tar.gz (261.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_x86_64.whl (14.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_i686.whl (15.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (11.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

scinumtools3-0.4.7-cp313-cp313-macosx_11_0_arm64.whl (11.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_x86_64.whl (14.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_i686.whl (15.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (11.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

scinumtools3-0.4.7-cp312-cp312-macosx_11_0_arm64.whl (11.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_x86_64.whl (14.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_i686.whl (15.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (11.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

scinumtools3-0.4.7-cp311-cp311-macosx_11_0_arm64.whl (11.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file scinumtools3-0.4.7.tar.gz.

File metadata

  • Download URL: scinumtools3-0.4.7.tar.gz
  • Upload date:
  • Size: 261.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for scinumtools3-0.4.7.tar.gz
Algorithm Hash digest
SHA256 5ce7550531fdd0241a92dbca5046b74c67adad2f3125f9850c835a8cc31b1a18
MD5 0717b85c5133bccdfd3d932dfbdafbb3
BLAKE2b-256 1fe509bb5205d3c0319cfb189728ee9149ab210f59ddec8de9daf5e46ff37747

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7.tar.gz:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 88c7a637c3d7b5a8d3040a3dad1b7d51bc1d04add71ad1297fd340a629d18495
MD5 2a69f416cf905a8e4bd69e36d3628bed
BLAKE2b-256 d1aca7c106067e8812804e13cbedced0f09b0f94480f22ec4ab06d0ad0eae5f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 298dc9e99865168e0cac41b9be5ea30a60eaf123dd0653eef9e42987d908f9ce
MD5 477a8397f9405f923e35746d8dd68010
BLAKE2b-256 c3786456a69b6fcf956e1edbec8de08c892cac47eb8f2b90ea7574be8bf1caab

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp313-cp313-musllinux_1_2_i686.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 13ec45b41ba10a8154ec65a9b21e98e08cee695167e33bb0113611937f4e7956
MD5 e6c331a7b907a4218b3c82e09bb963ac
BLAKE2b-256 6f4e3d090bfee2cfca1fd8ab53442d940c6762f3aa6b69af9af8cc4ffab8c21c

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a6666a5a2cfb3eaa24aeca57f36dabaaee3cc21e9a65da1cc5e150f4475ea1ee
MD5 c8400e601f9b96d181aae15e0585603f
BLAKE2b-256 ce5188a44d602ac4753f3d76314c6348de345e44ead51b47cc006f80a8acc21a

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 449deb606292653ad12884dbf8a3002ebaf9fee4dc7c8c6e28e765fac0866948
MD5 842293e5d50ed57128cc67036a503638
BLAKE2b-256 5d5a66186ef0583ce3414e47b924562ff8141166cd2eb4340d239db514b31c1b

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0e2aec8260305de0538db21ec4bf281427d2033e98a883237a9454e75bf8defc
MD5 bcb7965161e7bbe96374f221eb998b2d
BLAKE2b-256 4e1ebce5b37cd6bb9ebb9a50557d6fa1835c5cc75687bf7632394ecf20955404

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 feb48d282cd776d2416c077e36f7f0ad7b0946537319a410058bc9df7695de34
MD5 5929c2c325dc2db62521af040f49e650
BLAKE2b-256 334e7180bc2e7f39593083161b4aa1eaec55e74a19e70cc0d9fe16bd63e04f6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp312-cp312-musllinux_1_2_i686.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b54b792a655773c4d97965993a89362e64a51a136e1bf3570720dc87ad6ffe69
MD5 2ec9c132f5b57cf571580cc2f5704d11
BLAKE2b-256 efcfdb0a2a9952771dae824eeb3153ca1f8243cf49892295f2b8a5b08ee57f9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ed7ded1d2e61f3971581a46ac386b51fe50b8e1663c2e3d7ed5c21812ae19e8d
MD5 0e4553664eb52f22ed8d92a522f4feaf
BLAKE2b-256 66fc20c4a53283f3981d93a823bda6257bb4cdacd870efbb45fc138185445730

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9562cd38ca8d5abf8833998f79bc99f6e122b114476d9af00c35dd4b233adee7
MD5 8e97bd9825ef36642045185bdea15d97
BLAKE2b-256 5aeaef235ae1b5744ef53aba4d64ef393f1486fab2d4f21cd16c48a840304bfd

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 850c24d7f47164f4ad205a76e53a92582fe7c149fea869acdda090f72aa84c22
MD5 51c700e6dba06fedf682025b2c2ea200
BLAKE2b-256 9c7ff10c99de09a7bfdfc10cd65565c057a30aeda747125e08b08361bdc82966

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 ac5f7ff29f8f07255d8842fa8e42d28b92c560abbab56300d299f62f2f731964
MD5 e7d79b9670c0ca0885ce957c357b0372
BLAKE2b-256 cd38fdf2819127ef98cf65297607155e183b725b6e56e82a9ce7309f545caed6

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp311-cp311-musllinux_1_2_i686.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2465884baca7af4fe51ffee0a75d91743cf828c1dffd1ef15970d6c106b55524
MD5 15559df4327273e7c2c25bd6725528b7
BLAKE2b-256 65d6a53957fac4c117af0bf443c018f453170df3f77c5d9be6c4d74efb764481

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 600364651c783be9f5c7fd72d87a793f311bf6409a71bfdf84dabe9c0f5e116a
MD5 7b43641421a1808ee16f04cdcb04a371
BLAKE2b-256 cfffddb307fad8d0dadfbeaea5bad3af20655aa81e74b4f52e39890166380053

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scinumtools3-0.4.7-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for scinumtools3-0.4.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d0d895918ce9a4389793c63e52e4d9ee2d50cd388781c569dd48646e69111039
MD5 2f32375b30f091a32d22d528bddd65ca
BLAKE2b-256 de72a4410b6bbb0797bc10d5b6957447c1bc45c3905a71c25668486cf09bfd29

See more details on using hashes here.

Provenance

The following attestation bundles were made for scinumtools3-0.4.7-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: pypi-wheels.yml on vrtulka23/scinumtools3

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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