funcsim
Lightweight, functional stochastic simulation
Documentation: https://funcsim.readthedocs.io/
Features:
- static (cross-sectional) and recursive-dynamic simulations from a single user-written function
- pseudo-random numbers with an explicit seed (so that results are reproducible and comparable across runs or scenarios)
- stratified/Latin hypercube sampling
- painless multi-core simulations
- fitting and comparison of univariate distributions, kernel density estimates, and goodness-of-fit tests
- multivariate normal (fitted to data or specified by a mean vector and covariance matrix) and multivariate KDE distributions; Gaussian, Student's t, Clayton, Gumbel, and Frank copulas, fitted to pseudo-observations or specified by their parameters (implemented natively, no additional packages required); information-criterion comparison of copula families; Iman-Conover; covariance shrinkage
- expected utility and cumulative prospect theory calculations
- plotly-based fan charts and diagnostic plots
- highly flexible, and as simple as possible (but no more)
- functional paradigm
Requirements:
- python >= 3.11
- numpy >= 2.2.0
- scipy >= 1.16.0
- pandas >= 2.2.0 (pandas 2.2+ and 3.x are both supported)
- xarray >= 2025.4.0
For optional functionality, additional packages are needed:
- plotting: plotly (
pip install "funcsim[plotting]"); kaleido for static image export
Additionally, to run the tests and build the docs:
- pytest
- sphinx, sphinx-autodoc-typehints (
pip install "funcsim[docs]")
installation
pip install funcsim
building html docs
From the top-level funcsim directory...
sphinx-build -W -b html docs/source/ docs/build/
running tests
From the top-level funcsim directory...
python3 -m pytest
Metadata
Release files for funcsim 0.2.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| funcsim-0.2.8.tar.gz | 77.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| funcsim-0.2.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 162.3 kB
Release files / funcsim-0.2.8.tar.gz
| Download URL | funcsim-0.2.8.tar.gz |
|---|---|
| Size | 77.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c00a7c50e333bdd306134a0fc9fcc9e027a7a758a9c0b85d4456d61a76382962
|
|
BLAKE2b-256 checksum How to use checksums |
cf694627c2ffbb7319c96e2d813cb9a0704f2374a421c1efd760986eef44830d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Release files / funcsim-0.2.8-py3-none-any.whl
| Download URL | funcsim-0.2.8-py3-none-any.whl |
|---|---|
| Size | 84.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7d93382751fc465c669cf803fd0717095a853f4ac405daf0cfecc71314d912a3
|
|
BLAKE2b-256 checksum How to use checksums |
d8000c2fbc7c73fc836041d4d7d06a19e18ca6e1cd9ce049c0eeb26c65a9f2ca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Security for funcsim 0.2.8
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.