Skip to main content

PyReactSim

PyReactSim

PyPI Downloads PyPI Version Supported Python Versions License

PyReactSim is a Python package for chemical reactor simulation and design. It enables engineers and researchers to model common reactor types such as batch, CSTR, and plug flow reactors, incorporating reaction kinetics, thermodynamics, and transport effects. The initial version focuses on steady-state simulations, allowing users to analyze conversion, selectivity, and temperature profiles under different operating conditions. Designed for flexibility and integration, PyReactSim can be used alongside thermodynamic and phase equilibrium tools to build comprehensive reaction and process models, with dynamic simulation capabilities planned for future releases.

Available Reactor Methods (from examples)

The main reactor workflows follow the same pattern:

  1. Define reactor options (...ReactorOptions) and heat transfer options.
  2. Build a thermo source with build_thermo_source(...).
  3. Create a reactor using create_..._reactor(...).
  4. Run simulation with .simulate(...).
  • br (Batch Reactor)

    • API: create_batch_reactor(...) and BatchReactor.simulate(time_span=..., solver_options=...)
    • Typical use: time-domain simulation for closed systems (no inlet/outlet flow during reaction).
    • Examples:
      • examples/batch reactor/gas-batch-exe-1.py
      • examples/batch reactor/liquid-batch-exe-1.py
  • cstr (Continuous Stirred-Tank Reactor)

    • API: create_cstr_reactor(...) and CSTRReactor.simulate(time_span=..., solver_options=...)
    • Typical use: dynamic holdup behavior with inlet/outlet streams and mixing assumptions.
    • Examples:
      • examples/cstr/gas-cstr-exp-1.py
      • examples/cstr/liquid-cstr-exp-1.py
  • pfr (Plug Flow Reactor)

    • API: create_pfr_reactor(...) and PFRReactor.simulate(volume_span=..., solver_options=...)
    • Typical use: integration along reactor volume for tubular-reactor behavior.
    • Examples:
      • examples/pfr/gas-pfr-exp-1.py
      • examples/pfr/liquid-pfr-exp-1.py
  • pbr (Packed-Bed Reactor)

    • API: create_pbr_reactor(...) and PBRReactor.simulate(volume_span=..., solver_options=...)
    • Typical use: packed-bed modeling with catalyst-bulk effects (for example, bulk_density in model inputs).
    • Examples:
      • examples/pbr/gas-pbr-exp-1.py
      • examples/pbr/gas-pbr-exp-2.py
      • examples/pbr/liquid-pbr-exp-1.py
      • examples/pbr/liquid-pbr-exp-2.py

If you want to know how each method is configured in practice (options, model inputs, and solver setup), use the example scripts above as the reference.

Examples

You can also run PyReactSim examples in Google Colab:

🤝 Contributing

Contributions are highly welcome — bug fixes, new calculation routines, mixture models, extended unit tests, documentation, etc.

📝 License

This project is distributed under the Apache License, Version 2.0, which grants you broad freedom to use, modify, and integrate the software into your own applications or projects, provided that you comply with the conditions outlined in the license. Although Apache 2.0 does not require users to retain explicit author credit beyond standard copyright and license notices, I kindly request that if you incorporate this work into your own software, you acknowledge Sina Gilassi as the original author. Referencing the original repository or documentation is appreciated, as it helps recognize the effort invested in developing and maintaining this project.

❓ FAQ

For any question, contact me on LinkedIn

👨‍💻 Authors

Metadata

Release files for pyreactsim 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyreactsim 0.1.2
File Size Uploaded
pyreactsim-0.1.2.tar.gz 80.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyreactsim 0.1.2
File Interpreter ABI Platform
pyreactsim-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 200.8 kB

Release files / pyreactsim-0.1.2.tar.gz

Download URL pyreactsim-0.1.2.tar.gz
Size 80.2 kB
Tags Source
SHA-256 checksum
How to use checksums
a1a76cda7a57b992667905aa8930df5cd4313989d3cf2f42e3b20cdc8b44f272
BLAKE2b-256 checksum
How to use checksums
f21fc9edd2624dfd9d438eed877d88fec117e5078c459c5653302591a8c8f572
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release files / pyreactsim-0.1.2-py3-none-any.whl

Download URL pyreactsim-0.1.2-py3-none-any.whl
Size 120.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ab6ebd66de57adf1656eb28a23bd50246553f1a143635b452293cc62efe1b9c
BLAKE2b-256 checksum
How to use checksums
f4c67e3d4aaf49be5978af902a8554d4fc8ca020dfe8b8bb254f3cc359861cc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page