Skip to main content

OFire - Fire Safety Engineering Library

PyPI Python Version

A comprehensive Python package for fire safety engineering calculations and tools, built on industry standard fire engineering documents and implemented in Rust for performance and reliability.

Overview

OFire provides Python bindings for a wide range of fire engineering calculations from authoritative sources including:

  • BR 187 - External Fire Spread (Building Research Establishment)
  • BS 9999 - Code of Practice for Fire Safety in the Design, Management and Use of Buildings
  • CIBSE Guide E - Fire Safety Engineering
  • PD 7974 - Application of Fire Safety Engineering Principles to the Design of Buildings
  • SFPE Handbook - Fire Protection Engineering
  • Introduction to Fire Dynamics - Fundamental fire behavior principles
  • TR 17 - Fire Safety Engineering Technical Reports

All calculations are implemented in Rust and exposed through Python bindings using PyO3 for optimal performance and memory safety.

Installation

Install from PyPI using pip:

pip install ofire

Quick Start

import ofire

# Calculate thermal radiation intensity using BR 187
radiation = ofire.br_187.appendix_a.equation_a2.radiation_intensity_at_receiver(0.15, 50000.0)
print(f"Received radiation: {radiation:.1f} W/m²")

# Calculate view factor for parallel surfaces using BR 187 
x = ofire.br_187.appendix_a.equation_a3.x(5.0, 10.0)
y = ofire.br_187.appendix_a.equation_a3.y(3.0, 10.0)
view_factor = ofire.br_187.appendix_a.equation_a3.phi(x, y, True)
print(f"View factor: {view_factor:.4f}")

# Calculate heat release rate at flashover using CIBSE Guide E
flashover_hrr = ofire.cibse_guide_e.chapter_6.equation_6_7.heat_release_rate_flashover(2.0, 2.1)
print(f"Flashover HRR: {flashover_hrr:.1f} kW")

# Calculate mean flame height using CIBSE Guide E
flame_height = ofire.cibse_guide_e.chapter_6.equation_6_55.mean_flame_height(1000.0)
print(f"Mean flame height: {flame_height:.2f} m")

📚 Documentation

📖 Complete API Documentation & Examples →

Find the complete function reference, mathematical formulations, detailed examples, and all supported fire engineering standards and modules in the full documentation.

Links

Contributing

We welcome contributions! Please see our Contributing Guidelines for information on how to get started.

License

This project is licensed under the terms specified in the PYTHON_LICENSE file.

Metadata

Release files for ofire 0.1.16

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

Source distribution (sdist)

Source distribution for ofire 0.1.16
File Size Uploaded
ofire-0.1.16.tar.gz 171.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for ofire 0.1.16
File
ofire-0.1.16-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ ARM64 Details
ofire-0.1.16-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ ARM64 Details
ofire-0.1.16-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.8 PyPy 3.8 7.3 Linux glibc 2.17+ ARM64 Details
ofire-0.1.16-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.7 PyPy 3.7 7.3 Linux glibc 2.17+ ARM64 Details
ofire-0.1.16-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
ofire-0.1.16-cp38-abi3-manylinux_2_34_x86_64.whl CPython 3.8 abi3 Linux glibc 2.34+ x86-64 Details
ofire-0.1.16-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 abi3 Linux glibc 2.17+ ARM64 Details
ofire-0.1.16-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details
ofire-0.1.16-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details

Total release size: 3.0 MB

Release files / ofire-0.1.16.tar.gz

Download URL ofire-0.1.16.tar.gz
Size 171.3 kB
Tags Source
SHA-256 checksum
How to use checksums
47e11bc2083c8f86ad912470e417068f7e787b8a50c82ef76e0b7a5437cfcdd1
BLAKE2b-256 checksum
How to use checksums
85a46b82ff4ee7715ead46fd2b723f067851c28e4172670f0d1a90bcc6a0dfb8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofire-0.1.16-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 335.7 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
690ac464faa54130e1c0ef4cb86f72eec7ef58628bd8fe53ce889655c88ffde7
BLAKE2b-256 checksum
How to use checksums
5e4f553e6d6ca2fdf84d34f305081c63b1820f8626d1c8d0f61e715b8faedc3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofire-0.1.16-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 336.4 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
c882187c6b30443f0e190b588d0365156ac84a3d4487f66f1e096d98ce0f899e
BLAKE2b-256 checksum
How to use checksums
f8fe837d3d4f932b7e6e82ef9d64902d8062202eed462c066990da660f90e620
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofire-0.1.16-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 336.4 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.8 PyPy 3.8 7.3
SHA-256 checksum
How to use checksums
f54d20c479127d1fce89db7bc7aeccea91e5212d0a8c07842cb957f9b54f73a8
BLAKE2b-256 checksum
How to use checksums
bd467a509bee638efa4f4823862793488b0eba0c38c7ece4d678f29106260ef6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofire-0.1.16-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 339.9 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.7 PyPy 3.7 7.3
SHA-256 checksum
How to use checksums
60f623fd595cc44eba4e11fbfb6c4ed3feaf1b8a76c84b2171efbf2ba7878f94
BLAKE2b-256 checksum
How to use checksums
1ad90611e0141f3be9e7b5379f1c7107e53171df8d286b963b7e8f29e48d47a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-cp38-abi3-win_amd64.whl

Download URL ofire-0.1.16-cp38-abi3-win_amd64.whl
Size 187.4 kB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
002f1d05a2cd89e3fbf8b218b1c282ba4941688bd8d455d1da05bb96b7f45098
BLAKE2b-256 checksum
How to use checksums
c05a0d5a146275b632f2741b7ab21106cc577ae1ccf5ba858b1d6a10088ece13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-cp38-abi3-manylinux_2_34_x86_64.whl

Download URL ofire-0.1.16-cp38-abi3-manylinux_2_34_x86_64.whl
Size 340.1 kB
Tags CPython 3.8 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
589dc04ec9098bcb0d01673e4dcd91235a4d7fdea8570abb67d0d163fcf2aaac
BLAKE2b-256 checksum
How to use checksums
b2a5c19b2f2234a49d8e74cbd8143d17781c81bdb8a3cc0234e16f457a16e3b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ofire-0.1.16-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 340.8 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
eee189c1092957d5e6f8708820b05464e00dd8efee29f54df7897d8e39a295ee
BLAKE2b-256 checksum
How to use checksums
1edbb009f37204bdcdeb65e6ff3362ed8fa884865714cb285b942f7411cd81ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-cp38-abi3-macosx_11_0_arm64.whl

Download URL ofire-0.1.16-cp38-abi3-macosx_11_0_arm64.whl
Size 299.9 kB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2dbd7ad8ade62a6ded2615f166b450f5de48b44ffa8b662a423b5f55b21c0980
BLAKE2b-256 checksum
How to use checksums
f8c01008845f50902c70545ef70de16bb73a74521db0b08d483933f042c015cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release files / ofire-0.1.16-cp38-abi3-macosx_10_12_x86_64.whl

Download URL ofire-0.1.16-cp38-abi3-macosx_10_12_x86_64.whl
Size 298.0 kB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
f64acb6ba75bab8e72990042ccdd23436372ce483ae982e191e73d5f8b1f9d3c
BLAKE2b-256 checksum
How to use checksums
455f5d45e4efee03607c0de9e90f20a13d8e6ea7e27936731ca4f4120b084929
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.11.5

Release history Release notifications | RSS feed

This release

0.1.16 This release

10 release files

0.1.6

10 release files

0.1.5

10 release files

0.1.4

10 release files

0.1.3

10 release files

0.1.2

10 release files

0.1.1

10 release files

0.1.0

6 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