Skip to content

Jablonski

  • Example
    from jablonski.plots import graph_spectra
    
    fig, ax = graph_spectra(
        Hydrogen,
        [
            Hydrogen.absorption_1,
            Hydrogen.absorption_2,
            Hydrogen.absorption_3,
            Hydrogen.absorption_4,
        ],
        height=1e8/(u.cm**2 *u.s),
    )
    
Spectra from simplified hydrogen model in Jablonski. Widths are arbitrary.

Jablonski is a Python-based package for simulation of photochemical systems. It extends poincare, a package for modelling dynamical systems. It's designed around:

  • Modularity: Jablonski is intended to create a layer to separate the actual declaration and simulation of models, allowing to easily switch between methods and compile to different backends (including NumPy Numba and JAX).

  • Composability: models are composable, allowing for the combination of smaller systems to create larger ones; complex models can be broken up into more manageable parts.

  • Reproducibility: it intends to be a centralized place for all information concerning models, making it easy to extract data about information and parameters and encouraging consistency between analytical formulations and numerical implementations.

  • Utility: jablonski contains a number of simulation and analysis tools, such as piecewise simulation for pulse excitations and getting a system's time resolved and steady state emission spectra.


Installation

It can be installed from PyPI:

pip install -U jablonski

or conda-forge:

conda install -c conda-forge jablonski

Documentation

Documentation is structured as a series of interactive marimo notebooks which cover basic and advanced topics. They can be ran in the browser either in a static or interactive version or by cloning the dyscolab-tutorials repository to open them locally. For more information, see Pioncare's documentation.

Basics

  • Getting started with Jablonski: the essentials necessary to use jablonski. Interactive / Static