Skip to main content

Fire simulator built in Python

Project description

SimFire Fire Simulator


SimFire uses PyGame to display and simulate different fire spread models, including the Rothermel Surface fire spread model described in this paper.

For more comprehensive documentation, go to our docs page.

Running the Simulation

Left: Fire simulated near Julian, CA. Right: Fire simulated near Reno, NV.
Both fires have winds from the east at 20mph

Install simfire by following the installation instructions. Then run the script:


Running as a Python Module

from simfire.sim.simulation import FireSimulation
from simfire.utils.config import Config

config = Config("configs/operational_config.yml")
sim = FireSimulation(config)

# Run a 1 hour simulation"1h")

# Run the same simulation for 30 more minutes"30m")

# Render the next 2 hours of simulation
sim.rendering = True"2h")

# Now save a GIF and fire spread graph from the last 2 hours of simulation
# Saved to the location specified in the config: simulation.sf_home

# Update agents for display
# (x, y, agent_id)
agent_0 = (5, 5, 0)
agent_1 = (5, 5, 1)

agents = [agent_0, agent_1]

# Create the agents on the display

# Loop through to move agents
for i in range(5):
    agent_0 = (5 + i, 5 + i, 0)
    agent_1 = (5 + i, 5 + i, 1)
    # Update the agent positions on the simulation
    sim.update_agent_positions([agent_0, agent_1])
    # Run for 1 update step

# Turn off rendering so the display disappears and the simulation continues to run in the
# background
sim.rendering = False

Installing the Package

pip install simfire


For contributing, see the Contribution Page in our docs.


To cite this software, use the “Cite this repository” link built into GitHub on the right.


Copyright ©2023 The MITRE Corporation. ALL RIGHTS RESERVED. Approved for Public Release; Distribution Unlimited. Public Release Case Number 22-3261.

Project details

Download files

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

Source Distribution

simfire-1.5.9.tar.gz (434.1 kB view hashes)

Uploaded Source

Built Distribution

simfire-1.5.9-py3-none-any.whl (449.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page