Importance Sampling for State Space Models (isssm)

written in jax

Install

Option 1: Install from PyPI (for users)

pip install isssm

Option 2: Development Setup with uv (for contributors)

This project uses uv for dependency management and virtual environments.

  1. Install uv (if not already installed):

    # On macOS/Linux
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # On Windows
    powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
  2. Clone the repository:

    git clone https://github.com/stefanheyder/isssm.git
    cd isssm
  3. Create a virtual environment:

    uv venv
  4. Activate the virtual environment:

    # On macOS/Linux
    source .venv/bin/activate
    
    # On Windows
    .venv\Scripts\activate
  5. Install the package in development mode:

    uv pip install -e ".[dev]"

How to use

Please check out the documentation for details and examples.

For the mathematics and further details, please have a look at my PhD thesis.

Development Workflow with nbdev

This project uses nbdev for literate programming. Here’s how to work with it:

  1. Edit notebooks in the nbs/ directory:

    All development happens in Jupyter notebooks in the nbs/ directory.

  2. Export your changes to Python modules:

    nbdev_export
  3. Build the documentation:

    nbdev_docs
  4. Preview the documentation locally:

    nbdev_preview