Skip to main content

Python package for stochastic simulations

Project description

pyssa : Python package for stochastic simulations

Build Status Build Status codecov Updates Documentation Status pypi License Code style: black

Introduction

pyssa is a Python package for stochastic simulations. It offers a simple API to define models, perform stochastic simulations with them and visualize the results in a convenient manner.

Currently under active development in the develop branch.

Install

Install with pip:

$ pip install pyssa

Documentation

Usage

A short summary follows, but a more detailed tutorial can be found at https://pyssa.readthedocs.io/en/latest/tutorial.html

from pyssa.simulation import Simulation
V_r = np.array([[1, 0], [0, 1], [0, 0]])  # Reactant matrix
V_p = np.array([[0, 0], [1, 0], [0, 1]])  # Product matrix
X0 = np.array([100, 0, 0])  # Initial state
k = np.array([1.0, 1.0])  # Rate constants
sim = Simulation(V_r, V_p, X0, k)  # Declare the simulation object
# Run the simulation
sim.simulate(max_t=150, max_iter=1000, chem_flag=True, n_rep=10)

Change simulation algorithm

You can change the algorithm used to perform the simulation by changing the algorithm parameter

sim.simulate(max_t=150, max_iter=1000, chem_flag=True, n_rep=10, algorithm="tau_adaptive")

Run simulations in parallel

You can run the simulations on multiple cores by specifying the n_procs parameter

sim.simulate(max_t=150, max_iter=1000, chem_flag=True, n_rep=10, n_procs=4)

Plot simulation results

sim.plot()

Plot of species A, B and C

Accessing simulation results

results = sim.results

You can also access the final states of all the simulation runs by

final_times, final_states = results.final

License

Copyright (c) 2018-2020, Dileep Kishore, Srikiran Chandrasekaran. Released under: Apache Software License 2.0

Credits

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyssa, version 0.9.1
Filename, size File type Python version Upload date Hashes
Filename, size pyssa-0.9.1.tar.gz (783.9 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page