Refer to the Wiki for a more detailed guide on using ForeFire.
ForeFire is an open-source code for wildland fire spread models, developed and maintained by Université de Corse Pascal Paoli.
Access the demo simulator here.
It has been designed and runs on Unix systems. Three modules can be built with the source code.
The main binaries are
- An interpreter (executable)
- A shared library (with C/C++/Java and Fortran bindings)
The requirements and ForeFire can be installed by running install-forefire.sh
(Ubuntu or Debian distributions)
cd forefire
sudo sh install-forefire.sh
The program will be built in: ./bin/forefire
OR run the commands:
apt-get update
apt install build-essential -y
apt install libnetcdf-dev libnetcdf-cxx-legacy-dev -y
apt install cmake -y
To install
- The C++ compiler
- NetCDF Library and NetCDF-C++ legacy
- Cmake build tool
To build with cmake run the script
sh cmake-build.sh
To make the program executable from eveywhere (during the session) Add the bin folder to path
export PATH=$PATH:`pwd`/bin
If you want to change it permanently, paste
export PATH="</path/to/file>:$PATH"
at the end of your ~/.bashrc
file. The file can be edited with
nano ~/.bashrc
for example
export PATH="/mnt/c/gitrepos/forefire/bin:$PATH"
More information on other build systems are available here
An example for the region of aullene in south France is provided. The example contains 3 files
- fuels.ff
- aullene.ff
- landscape.nc:
Run the example with
cd firefront/examples/aullene/
../../bin/forefire -i aullene.ff
The simulation result will be outputed in JSON format
Installing requirements
cd py3_tools
pip install -r requirements.txt
You can use the script coord_to_ff.py
to run the simulation in a default location
python coord_to_ff.py
For running in a chosen location, the script accepts latitude and longitude in epsg:4326 projection as inputs. It reprojects the coordinates into epsg:32632 projection, used in aullene's landscape.
python coord_to_ff.py --lat 41.6 --lon 9.1
The GeoJSON of geometry type Polygon will be saved in the /examples/aullene
folder
The /swig
folder contains and Sconstruct
file for python bindings.
Requires numpy (and numpy.i), swig, and matplotlib for testing.
A sample Dockerfile can allow to build a Docker image with
docker build . -t forefire
To run this image and interactively acces the continer use
docker run -it forefire bash