Fire simulator built in Python
Reason this release was yanked:
The fire spread calculation for all versions of simfire <2.0.0 is incorrect.
Project description
SimFire Fire Simulator
Introduction
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
Install simfire
by following the installation instructions. Then run the run_game.py
script:
python run_game.py
Running as a Python Module
from simfire.utils.config import Config
from simfire.sim.simulation import FireSimulation
config = Config("configs/operational_config.yml")
sim = FireSimulation(config)
# Run a 1 hour simulation
sim.run("1h")
# Run the same simulation for 30 more minutes
sim.run("30m")
# Render the next 2 hours of simulation
sim.rendering = True
sim.run("2h")
# Now save a GIF and fire spread graph from the last 2 hours of simulation
sim.save_gif()
sim.save_spread_graph()
# Saved to the location specified in the config: simulation.save_path
# Update agents for display
# (x, y, agent_id)
agent_0 = (5, 78, 0)
agent_1 = (80, 105, 1)
agents = [agent_0, agent_1]
# Create the agents on the display
sim.update_agent_positions(agents)
# Loop through to move agents
for i in range(60):
# Do something here to choose the new agent locations
agent_0 = (new_col, new_row, 0)
agent_1 = (new_col, new_row, 1)
# Update the agent positions on the simulation
sim.update_agent_positions([agent_0, agent_1])
# Run for 1 update step
sim.run(1)
# Turn off rendering so the display disappears and the simulation continues to run in the background
sim.rendering = False
Installing the Package
Contributing
For contributing, see the Contribution Page in our docs.
Project details
Release history Release notifications | RSS feed
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.4.30.tar.gz
(436.5 kB
view hashes)
Built Distribution
simfire-1.4.30-py3-none-any.whl
(452.1 kB
view hashes)