stochas: Smart Data Orchestration
stochas is a Python framework built to handle the complexity of Monte Carlo simulations, parametric studies, and probabilistic modeling.
It provides a robust bridge between abstract statistical rules and concrete simulation data, ensuring your experiments are repeatable, traceable, and easy to manage.
Installation
Install the package via your preferred manager:
uv add stochas
or with pip:
pip install stochas
Core Features
- Salted Seeding: Combines Global Seeds, Parameter Names, and Trial Numbers for unique but deterministic draws.
- Numeric Mixins: Use your data containers directly in math operations (
container * 5.0) without manually extracting values. - Nominal Support: Easily toggle between "Perfect World" (Trial 0) and "Probabilistic World" (Monte Carlo) results.
- Pydantic Foundation: Every component is a Pydantic model, providing out-of-the-box validation and effortless JSON serialization.
- Unit System: Declare SI, IPS, FPS, or a custom unit system once and tag distributions with
unit=u.inch, sampling paths convert values automatically so your input data stays in familiar units while the simulation receives physically consistent numbers.
Why use stochas?
Managing hundreds of simulation trials can quickly become a mess of manual seeds and inconsistent data. stochas solves this by providing:
- Repeatable Randomness: Our "Salted Seed" logic ensures that any specific trial can be perfectly recreated, even years later, by tying randomness to simple to set and store values.
- Smart Containers:
NamedValueobjects behave like numbers or arrays but protect your data from accidental overwrites using a state-machine logic. - Physics-Ready Distributions: A wide range of built-in distributions (Normal, Truncated Normal, Log-Normal, etc.) that handle their own random number generators internally.
- Automatic Unit Conversion: Attach a
UnitDescriptorto any distribution or design variable and letStochasBasemultiply the conversion factor at sampling time (without manual scaling in generator code). - Serialized Registries: Automatically track exactly which "rules" (
Distributions) and "results" (NamedValues) were used in every trial for easy export to JSON or databases.
Metadata
Release files for stochas 2.2.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| stochas-2.2.9.tar.gz | 2.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| stochas-2.2.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.7 MB
Release files / stochas-2.2.9.tar.gz
| Download URL | stochas-2.2.9.tar.gz |
|---|---|
| Size | 2.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8fffa0c36723e24907974ed0b1f5742654d0251b1bca70026d77b1c61a9cfc70
|
|
BLAKE2b-256 checksum How to use checksums |
c8bb3c5cbbb1543bb878251605108550dc49b19de5e811a56696ccc2a6bc5b2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / stochas-2.2.9-py3-none-any.whl
| Download URL | stochas-2.2.9-py3-none-any.whl |
|---|---|
| Size | 49.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e6bbb026b4311db9403aca0a8318983d50ce47f0c69713e04d8af78701598a6f
|
|
BLAKE2b-256 checksum How to use checksums |
825adfb8051236a4e48622b8ca7bcb01b69a8f5848408500d56a7811e1d74504
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|