Difference between revisions of "WRF-Fire"

From openwfm
Jump to navigation Jump to search
 
(74 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
{{historical|WRF-SFIRE user guide}}
 
{{software}}
 
{{software}}
'''WRF-Fire''' combines the Weather Research and Forecasting model ([[WRF]]) with a surface fire behavior model. Semi-empirical formulas calculate the rate of spread of the fire line, the interface between burning and unignited fuel, based on fuel properties, wind velocities from WRF, and terrain slope.  This interface is implemented by the [[wikipedia:Level set method|level set method]]. The heat release from the fire line as well as post-frontal heat release feeds back into WRF dynamics, affecting the simulated weather in the vicinity of the fire.   WRF-Fire is written in [[wikipedia:Fortran|Fortran 90]] following [http://www.mmm.ucar.edu/wrf/WG2/WRF_conventions.html WRF coding conventions]. It is integrated as a physics option, called from WRF as a subroutine. It calls WRF libraries for utilities such as I/O and communication between [[MPI]] processes. WRF-Fire executes on a part of the domain, called a tile (in WRF nomenclature). All communication between the tiles is in the caller; thus, one time step requires multiple calls to WRF-Fire. WRF-Fire can also be run independently without an atmosphere model by substituting its own main program and linking with stubs that replace the WRF subroutines called, although this capability has fallen behind at the moment and is not physically meaningful.
+
: ''The code under continued development in our repository and mirrors [http://repo.or.cz/git-browser/by-commit.html?r=wrffire.git] [https://github.com/jbeezley/wrf-fire/] is called '''[[SFIRE]]''', and the coupled code is called [[WRF]] and [[SFIRE]]. We reserve the designation [[WRF-Fire]] for the [[fire code in WRF release|version released with WRF]].''
  
==Distribution==
+
'''WRF-Fire''' combines the Weather Research and Forecasting model ([[WRF]]) with a fire code implementing a surface fire behavior model, called [[SFIRE]], based on semi-empirical formulas calculate the rate of spread of the fire line (the interface between burning and unignited fuel) based on fuel properties, wind velocities from WRF, and terrain slope.  The fire spread is implemented by the [[wikipedia:Level set method|level set method]]. The heat release from the fire line as well as post-frontal heat release feeds back into WRF dynamics, affecting the simulated weather in the vicinity of the fire.  The fire code is written in [[wikipedia:Fortran|Fortran 90]] following [http://www.mmm.ucar.edu/wrf/WG2/WRF_conventions.html WRF coding conventions]. It is integrated as a physics option, called from WRF as a subroutine. It calls WRF libraries for utilities such as I/O and communication between [[MPI]] processes. The fire code executes on a part of the domain, called a tile (in WRF nomenclature). All communication between the tiles is in the caller; thus, one time step requires multiple calls to WRF-Fire.
  
WRF-Fire is public domain software, [http://github.com/jbeezley/wrf-fire/blob/master/license.txt released] under the [http://www.mmm.ucar.edu/wrf/users/public.html WRF public domain notice and disclaimer].
+
WRF-Fire is essentially a reimplementation of [[CAWFE]] with the weather model replaced by WRF and with the fire spread implemented by the level set method in SFIRE. The subroutines for the computation of the rate of spread and for the insertion of the heat flux to the atmosphere are taken from [[CAWFE]]. Click on the following images for the origins and a summary of current capabilities of WRF-Fire:
  
===Current development version===
+
[[Image:Agu-poster-8mp.gif|400px]] [[Image:Coupled-wrf-fire-moisture-chem.png|400px]]
  
This version also contains a number of additional tools such as [[Matlab]] scripts for visualization. See [[How to get WRF-Fire]] and [[How to run WRF-Fire]] for installation instructions.
+
==Distribution==
 
* [http://github.com/jbeezley/wrf-fire/tree/master Source code repository]
 
  
===From WRF release===
+
WRF-Fire is public domain software, [http://github.com/jbeezley/wrf-fire/blob/master/license.txt released] under the [http://www.mmm.ucar.edu/wrf/users/public.html WRF public domain notice and disclaimer].
  
WRF-Fire is included in WRF 3.2, released on April 2, 2010.
+
The development version is called [[SFIRE]]; further information and links to downloads are in the [[Coupled WRF and SFIRE model user's guide|Users' Guide]]. We'll be happy to consider [[WRF-Fire development notes#Wish list|additional features]]. A restricted version is [[Fire_code_in_WRF_release|available in WRF releases]].
  
* [http://www.mmm.ucar.edu/wrf/users/download/get_source.html WRF download]
+
==Contact==
  
==Contact==
+
* Janice Coen (WRF release version), Jonathan Beezley or  Jan Mandel (development version)
  
 
==File format==
 
==File format==
Line 32: Line 31:
 
===Technical description===
 
===Technical description===
  
* [[Media:Wrf-fire-doc.pdf|Description of the fire scheme in WRF]] describes the algorithms and software structure of WRF-Fire. It is intended to become a chapter in the [http://www.mmm.ucar.edu/wrf/users/docs/arw_v3.pdf WRF Technical Note] in the future. The description is based on sections ''Fireline propagation model'' and ''Level set-based wildland file model'' in Jan Mandel, Jonathan D. Beezley, Janice L. Coen, Minjeong Kim, ''Data Assimilation for Wildland Fires: Ensemble Kalman filters in coupled atmosphere-surface models'', [http://dx.doi.org/10.1109/MCS.2009.932224 IEEE Control Systems Magazine 29, Issue 3, June 2009, 47-65]. Preprint at [http://arxiv.org/abs/0712.3965 arXiv:0712.3965], December 2007.
+
* The algorithms and software structure of WRF-Fire are described in  Jan Mandel, Jonathan D. Beezley, and Adam K. Kochanski, [http://www.geosci-model-dev-discuss.net/4/497/2011/gmdd-4-497-2011.html '''Coupled atmosphere-wildland fire modeling with WRF-Fire version 3.3'''], [http://www.geoscientific-model-development.net Geoscientific Model Development Discussions (GMDD)] 4, 497-545, 2011. {{doi|10.5194/gmdd-4-497-2011}}. Current version is maintained at {{arXiv|1102.1343}}. An older version is in the sections ''Fireline propagation model'' and ''Level set-based wildland file model'' of Jan Mandel, Jonathan D. Beezley, Janice L. Coen, Minjeong Kim, ''Data Assimilation for Wildland Fires: Ensemble Kalman filters in coupled atmosphere-surface models'', [http://dx.doi.org/10.1109/MCS.2009.932224 IEEE Control Systems Magazine 29, Issue 3, June 2009, 47-65]. Preprint at [http://arxiv.org/abs/0712.3965 arXiv:0712.3965], December 2007.
  
 
===User's guides===
 
===User's guides===
  
* [[Media:Users guide chap-wrf-fire.pdf|WRF-Fire user's guide]], updated continuously with the software as [[How to get WRF-Fire|distributed by the developers]].
+
* [[Users guide]], updated continuously with SFIRE the software as [[How to get WRF-Fire|distributed by the developers]]. The guide consists of selected pages from this wiki.
 
* The [[List of WRF-Fire pages|WRF-Fire pages]] on this wiki, updated continuously.
 
* The [[List of WRF-Fire pages|WRF-Fire pages]] on this wiki, updated continuously.
* The WRF-Fire chapter in the [http://www.mmm.ucar.edu/wrf/users/docs/user_guide_V3/contents.html WRF 3.2 User's guide] for the version frozen in the [http://www.mmm.ucar.edu/wrf/users/downloads.html WRF release].
+
* The WRF-Fire chapter in the [http://www.mmm.ucar.edu/wrf/users/docs/user_guide_V3/contents.html WRF 3 User's guide] for the version in the [http://www.mmm.ucar.edu/wrf/users/downloads.html WRF release].
  
 
==Support==
 
==Support==
  
===Email support===
+
===Mailing list===
 +
 
 +
Questions and suggestions can be sent to the maling list at http://mailman.ucar.edu/mailman/listinfo/wrf-fire. Please subscribe to this list for further support, announcements, questions, and discussions.
 +
 
 +
===Email support for SFIRE===
  
Questions regarding WRF-Fire can be sent to [mailto:wrffirehelp@openwfm.org wrffirehelp@openwfm.org].  This email address is forwarded to the developers. When you write us, please:
+
When you write us, please:
  
* Identify the version (WRF version if from the WRF release, the first line of the output of <code>git log</code> if your code is from the git repository)
+
* Make sure you test the issue first on the code exactly as you have received it from the repository as described in [[How to get WRF-Fire]]
* Make sure you test the issue first on the code exactly as you have received it and the code version is up to date. If you obtained the code by [[git]] ''(highly recommended)'' as described in [[How to get WRF-Fire]],
+
** <code>git diff</code> should return no output, meaning that you have not modified any files
** <code>git diff</code> should return no output
+
** Send us the output of the command <code>git log | head -3 </code> to identify the version
** please verify that you are on the latest commit on the master branch from the repository.
+
** Verify that you are on the latest commit on the master branch from the repository
 
* Recompile the code from scratch after typing <code>clean -a</code> first
 
* Recompile the code from scratch after typing <code>clean -a</code> first
* Send us sufficient information to identify and reproduce the problem if needed (output of wrf compilation, namelist.input, output from the run)
+
* Send us sufficient information to identify and reproduce the problem if needed (output of wrf compilation, namelist.input, output from the run, wrfinput file for a small test problem)
  
===Mailing list===
+
===Email support for [[Fire code in WRF release|code in WRF release]]===
  
For further support, WRF-Fire announcements, questions, and discussions, please subscribe to the WRF-Fire mailing list at [http://mailman.ucar.edu/mailman/listinfo/wrf-fire http://mailman.ucar.edu/mailman/listinfo/wrf-fire].
+
The version of WRF-Fire in the WRF download is supported by NCAR. Please contact wrfhelp@ucar.edu with any questions regarding the version of WRF-Fire in the [http://wrf-model.org WRF release].
  
 
===Wiki===
 
===Wiki===
  
We welcome contributions and discussion on the pages of this wiki. Please see the [[Main Page]] for [[Main Page#How to get an account|How to get an account]]. The [[WRF-Fire wish list]] is recommended for requests and [[Talk:WRF-Fire wish list]] for further discussions regarding future developments of WRF-Fire.
+
We welcome contributions and discussion on the pages of this wiki. Please see the [[Main Page]] for [[Main Page#How to get an account|How to get an account]].  
 +
* The [[WRF-Fire wish list]] and [[Talk:WRF-Fire wish list]] are intended for further discussions regarding future developments of WRF-Fire.
 +
* See the [[list of WRF-Fire pages]] for many quick guides how to do useful things, such as diagnostics and visualization
  
 
==Publications==
 
==Publications==
  
=== Description of WRF-Fire===
+
See [[WRF-Fire publications]].
 
 
* Jan Mandel, Jonathan D. Beezley, Janice L. Coen, Minjeong Kim, ''[http://dx.doi.org/10.1109/MCS.2009.932224 Data Assimilation for Wildland Fires: Ensemble Kalman filters in coupled atmosphere-surface models]'', IEEE Control Systems Magazine 29, Issue 3, June 2009, 47-65. Also available as {{arXiv|0712.3965}}, December 2007.
 
 
 
* Jonathan Beezley, Janice Coen, Jan Mandel, John Michalakes, and Ned Patton, ''[[media:NCAR-MPG-Nov24-08.pdf‎|WRF-Fire: A Wildland Fire Behavior module for WRF]]'', presentation at the [http://www.mmm.ucar.edu/mp/mp.html NCAR Mesoscale Prediction Group] meeting, November 24, 2008
 
 
 
* Kara Yedinak, J. L. Coen, and B. Lamb, ''WRF-Fire: A fire-atmosphere dynamics module for air quality modeling'', [http://ams.confex.com/ams/89annual/techprogram/MEETING.HTM The 89th American Meteorological Society Annual Meeting (Phoenix, AZ)], [http://ams.confex.com/ams/89annual/techprogram/program_532.htm 11th Conference on Atmospheric Chemistry], [http://ams.confex.com/ams/89annual/techprogram/paper_150173.htm Poster JP 1.10], January 2009.
 
 
 
===Other related papers and presentations===
 
 
 
* Jan Mandel, Jonathan D. Beezley, and Volodymyr Y. Kondratenko, ''Fast Fourier Transform Ensemble Kalman Filter with Application to a Coupled Atmosphere-Wildland Fire Model'', [http://www.amse-modeling.com/ms10/ MS2010], in print. Preprint  {{arXiv|1001.1588}}
 
 
 
* K M Yedinak, B K Lamb, J L Coen, ''Sensitivity Analysis and Application of WRF-Fire'', poster at the session [http://www.agu.org/meetings/fm09/program/scientific_session_search.php?show=detail&sessid=578 A35: Wildfire Dynamics: Observations and Modeling of Fire-Atmosphere Interactions], [http://www.agu.org/meetings/fm09/ American Geophysical Union Fall 2009 Meeting]. Listed in the [http://www.agu.org/meetings/fm09/pdf/AGU_FM09_Scientific_Program.pdf Scientific program] at p. 344.
 
  
 
==Contributors==
 
==Contributors==
  
* Janice Coen (NCAR) developed the physics components of the fire model in [[CAWFE]] (Coen (2005) and Clark et al. (2004)), in particular the fire spread rate and the heat flux insertion modules, which were adopted into WRF-Fire with no substantial changes.
+
* Janice Coen (NCAR) developed the physics components of the fire model in [[CAWFE]] (Coen (2005) and Clark et al. (2004)), in particular the fire spread rate and the heat flux insertion modules, which were adopted into WRF-Fire with no substantial changes, and has been refining the fuel and spread rate models.
 
* Ned Patton (NCAR) ported the fire code from (Clark et al., 2004) and interfaced it with WRF (Patton and Coen, 2004).
 
* Ned Patton (NCAR) ported the fire code from (Clark et al., 2004) and interfaced it with WRF (Patton and Coen, 2004).
 
* Minjeong Kim and Jan Mandel (University of Colorado Denver) have identified a version of the level set metod suitable for fire spread, and developed a prototype Matlab code.
 
* Minjeong Kim and Jan Mandel (University of Colorado Denver) have identified a version of the level set metod suitable for fire spread, and developed a prototype Matlab code.
* Jan Mandel (University of Colorado Denver), has been leading the WRF-Fire software development. He has implemented the fire spread by the level set method as a parallel WRF-compliant code with assistance from Jonathan Beezley and Minjeong Kim, starting from Ned Patton's WRF interface and using the subroutines for the spread rate computation and the insertion of heat fluxes into the atmosphere from CAWFE.
+
* Jan Mandel (University of Colorado Denver) has been developing the level set code and the overall fire module software structure.
 
* John Michalakes (formerly NCAR, now NREL) modified WRF to support refined grids (submesh) for the fire code.
 
* John Michalakes (formerly NCAR, now NREL) modified WRF to support refined grids (submesh) for the fire code.
* Jonathan Beezley (University of Colorado Denver) has further modified WRF to support the fire software, provided the software engineering infrastructure, has set up and maintains the git repository, maintains synchronization with WRF changes, and developed the modified version of WPS for WRF with the fire model to enable the use of real data.
+
* Jonathan Beezley (University of Colorado Denver) has further modified WRF to support the fire software, provided the software engineering infrastructure, has set up and maintains the git repository, maintains synchronization with WRF changes, and has been developing the modified version of WPS for WRF with the fire model to enable the use of real data.
 
* Volodymyr Kondratenko (University of Colorado Denver) has improved memory handing in the computation of remaining fuel.
 
* Volodymyr Kondratenko (University of Colorado Denver) has improved memory handing in the computation of remaining fuel.
* Adam Kochanski (University of Utah) has contributed variable atmospheric bubble initialization and suggested the walking line ignition.
+
* Adam Kochanski (University of Utah) has contributed variable atmospheric bubble initialization and suggested the walking line ignition. He is currently leading the validation effort.
* Kara Yedinak (Washington State University) has pointed out possible improvements in fire initialization. See [[Talk:WRF-Fire development notes#Gradual ignition|discussion]]
+
* Kara Yedinak (Washington State University) has improved in fire initialization. See [[Talk:WRF-Fire development notes#Gradual ignition|discussion]]
  
 
==See also==
 
==See also==
  
 
* [[List of WRF-Fire pages]]
 
* [[List of WRF-Fire pages]]
 +
* [[WRF-Fire and SFIRE user's guide]]
 
* [[WRF-Fire development notes]]
 
* [[WRF-Fire development notes]]
* [[wikipedia:Wildfire modeling|Wildfire modeling]]
+
* [[wikipedia:Wildfire modeling]]
 
* [http://www.servinghistory.com/topics/WRF-Fire WRF-Fire at servinghistory.com]
 
* [http://www.servinghistory.com/topics/WRF-Fire WRF-Fire at servinghistory.com]
  

Latest revision as of 06:53, 17 July 2020

This is an archived historical WRF-Fire/WRF-SFIRE page. Please go to WRF-SFIRE user guide for the current software version.
This is a page with basic information about a software. Please see Template for creating software pages for what should be here.
The code under continued development in our repository and mirrors [1] [2] is called SFIRE, and the coupled code is called WRF and SFIRE. We reserve the designation WRF-Fire for the version released with WRF.

WRF-Fire combines the Weather Research and Forecasting model (WRF) with a fire code implementing a surface fire behavior model, called SFIRE, based on semi-empirical formulas calculate the rate of spread of the fire line (the interface between burning and unignited fuel) based on fuel properties, wind velocities from WRF, and terrain slope. The fire spread is implemented by the level set method. The heat release from the fire line as well as post-frontal heat release feeds back into WRF dynamics, affecting the simulated weather in the vicinity of the fire. The fire code is written in Fortran 90 following WRF coding conventions. It is integrated as a physics option, called from WRF as a subroutine. It calls WRF libraries for utilities such as I/O and communication between MPI processes. The fire code executes on a part of the domain, called a tile (in WRF nomenclature). All communication between the tiles is in the caller; thus, one time step requires multiple calls to WRF-Fire.

WRF-Fire is essentially a reimplementation of CAWFE with the weather model replaced by WRF and with the fire spread implemented by the level set method in SFIRE. The subroutines for the computation of the rate of spread and for the insertion of the heat flux to the atmosphere are taken from CAWFE. Click on the following images for the origins and a summary of current capabilities of WRF-Fire:

Agu-poster-8mp.gif Coupled-wrf-fire-moisture-chem.png

Distribution

WRF-Fire is public domain software, released under the WRF public domain notice and disclaimer.

The development version is called SFIRE; further information and links to downloads are in the Users' Guide. We'll be happy to consider additional features. A restricted version is available in WRF releases.

Contact

  • Janice Coen (WRF release version), Jonathan Beezley or Jan Mandel (development version)

File format

All input, output, and restart files (with the complete model state) are in NetCDF format.

Programming language and environments

Fortran 90 with CPP preprocessor. Part of the WRF code is generated by C programs from a description in the registry.

Documentation

Technical description

User's guides

Support

Mailing list

Questions and suggestions can be sent to the maling list at http://mailman.ucar.edu/mailman/listinfo/wrf-fire. Please subscribe to this list for further support, announcements, questions, and discussions.

Email support for SFIRE

When you write us, please:

  • Make sure you test the issue first on the code exactly as you have received it from the repository as described in How to get WRF-Fire
    • git diff should return no output, meaning that you have not modified any files
    • Send us the output of the command git log | head -3 to identify the version
    • Verify that you are on the latest commit on the master branch from the repository
  • Recompile the code from scratch after typing clean -a first
  • Send us sufficient information to identify and reproduce the problem if needed (output of wrf compilation, namelist.input, output from the run, wrfinput file for a small test problem)

Email support for code in WRF release

The version of WRF-Fire in the WRF download is supported by NCAR. Please contact wrfhelp@ucar.edu with any questions regarding the version of WRF-Fire in the WRF release.

Wiki

We welcome contributions and discussion on the pages of this wiki. Please see the Main Page for How to get an account.

Publications

See WRF-Fire publications.

Contributors

  • Janice Coen (NCAR) developed the physics components of the fire model in CAWFE (Coen (2005) and Clark et al. (2004)), in particular the fire spread rate and the heat flux insertion modules, which were adopted into WRF-Fire with no substantial changes, and has been refining the fuel and spread rate models.
  • Ned Patton (NCAR) ported the fire code from (Clark et al., 2004) and interfaced it with WRF (Patton and Coen, 2004).
  • Minjeong Kim and Jan Mandel (University of Colorado Denver) have identified a version of the level set metod suitable for fire spread, and developed a prototype Matlab code.
  • Jan Mandel (University of Colorado Denver) has been developing the level set code and the overall fire module software structure.
  • John Michalakes (formerly NCAR, now NREL) modified WRF to support refined grids (submesh) for the fire code.
  • Jonathan Beezley (University of Colorado Denver) has further modified WRF to support the fire software, provided the software engineering infrastructure, has set up and maintains the git repository, maintains synchronization with WRF changes, and has been developing the modified version of WPS for WRF with the fire model to enable the use of real data.
  • Volodymyr Kondratenko (University of Colorado Denver) has improved memory handing in the computation of remaining fuel.
  • Adam Kochanski (University of Utah) has contributed variable atmospheric bubble initialization and suggested the walking line ignition. He is currently leading the validation effort.
  • Kara Yedinak (Washington State University) has improved in fire initialization. See discussion

See also

External links