Skip to content

wirc-sjsu/firebench

Repository files navigation

FireBench

FireBench Logo

CI pages-build-deployment codecov Security Analysis Pylint Score Check linting with Pylint Black Code Formatting Check GitHub License DOI

FireBench is a Python library designed for the systematic benchmarking and inter-comparison of fire models. Recent advancements in fire modeling have introduced complex and varied models, but there is a lack of systematic evaluation regarding their accuracy, efficiency, sensitivity, validity domain, and inter-compatibility. FireBench aims to address this gap by providing a framework to assess fire models on the following criteria:

  • Accuracy: Precision in predicting fire front positions and plume dynamics.
  • Efficiency: Computational resources required for specific computation.
  • Sensitivity: Model outputs' responsiveness to input variations, crucial for calibration and data assimilation.
  • Validity Domain: Operational input ranges for which models are applicable.
  • Inter-Compatibility: Integration capabilities with other models.

FireBench offers a dual approach for evaluation: intercomparison without extensive observational data and benchmarking against a validation dataset. This framework aims to enhance fire modeling for both scientific research and operational applications, with results archived in a dedicated database.

Installation

Prerequisites

To install the FireBench library, follow these steps:

1. Clone the Repository

You can clone the repository using either HTTPS or SSH. Choose one of the following methods:

Using HTTPS:

git clone https://github.com/wirc-sjsu/firebench.git

Using SSH:

git clone [email protected]:wirc-sjsu/firebench.git

2. Install FireBench and its Dependencies

Navigate to the cloned repository and install the FireBench library along with its dependencies using pip:

cd firebench
pip install .

3. Set up local paths

FireBench uses ~/.firebench/local_db as the default local database directory for files managed locally by workflows. Functions that write workflow records also accept an explicit local_db_path argument.

FireBench contains package data such as fuel models in the repository data directory. Data helpers use that directory by default, and get_firebench_data_directory(data_path=...) can be used when a custom data location is needed.

Community Discussions

We encourage you to use the GitHub Discussions tab for questions, help requests, and general discussions about the project. This helps keep our issue tracker focused on bugs and feature requests.

How to Use Discussions

  • Q&A: If you have a question about using FireBench, please check the Q&A category.
  • Ideas: Share your ideas for new features or improvements in the Ideas category.
  • Show and Tell: Showcase your projects and workflows using FireBench.
  • General: For any other discussions related to FireBench.

Feel free to start a new discussion or join existing ones to engage with the community!

Contributing

We welcome contributions to FireBench! For more information on how to contribute, please see our contribution guidelines.

About

FireBench is a Python library designed for the systematic benchmarking and inter-comparison of fire models.

Resources

License

Stars

10 stars

Watchers

2 watching

Forks

Contributors