Metadata-Version: 2.4
Name: particlefilterbox
Version: 0.1.0
Summary: Particle filtering and Sequential Monte Carlo methods in Python
Project-URL: Documentation, https://nodesecon.github.io/particlefilterbox/
Project-URL: Repository, https://github.com/nodesecon/particlefilterbox
Project-URL: Issues, https://github.com/nodesecon/particlefilterbox/issues
Author: NodeSEcon
License-File: LICENSE
Keywords: bayesian inference,particle filter,sequential monte carlo,state space models,stochastic volatility
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Mathematics
Requires-Python: >=3.11
Requires-Dist: numpy>=1.24
Requires-Dist: pandas>=2.0
Requires-Dist: scipy>=1.10
Provides-Extra: accel
Requires-Dist: numba>=0.58; extra == 'accel'
Provides-Extra: all
Requires-Dist: matplotlib>=3.7; extra == 'all'
Requires-Dist: mkdocs-material>=9.0; extra == 'all'
Requires-Dist: mkdocs>=1.5; extra == 'all'
Requires-Dist: numba>=0.58; extra == 'all'
Requires-Dist: pymdown-extensions>=10.0; extra == 'all'
Requires-Dist: typer>=0.9; extra == 'all'
Provides-Extra: cli
Requires-Dist: typer>=0.9; extra == 'cli'
Provides-Extra: dev
Requires-Dist: matplotlib>=3.7; extra == 'dev'
Requires-Dist: pyright>=1.1; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: ruff>=0.4; extra == 'dev'
Requires-Dist: typer>=0.9; extra == 'dev'
Provides-Extra: docs
Requires-Dist: mkdocs-material>=9.0; extra == 'docs'
Requires-Dist: mkdocs>=1.5; extra == 'docs'
Requires-Dist: pymdown-extensions>=10.0; extra == 'docs'
Provides-Extra: gpu
Requires-Dist: cupy>=12.0; extra == 'gpu'
Provides-Extra: viz
Requires-Dist: matplotlib>=3.7; extra == 'viz'
Description-Content-Type: text/markdown

# particlefilterbox

Particle filtering and Sequential Monte Carlo methods for state estimation.

## Installation

```bash
pip install -e ".[dev]"
```

## Quick Start

```python
from particlefilterbox.core import ParticleCloud, PFConfig
from particlefilterbox.resampling import systematic

config = PFConfig(n_particles=1000, resampling='systematic')
cloud = ParticleCloud(n_particles=1000, k_states=1)
cloud.set_uniform_weights()

indices = systematic(cloud.normalized_weights)
cloud.resample(indices)
```

## License

MIT
