fbpRaster {cffdrs} | R Documentation |
Raster-based Fire Behavior Prediction System Calculations
Description
fbpRaster
calculates the outputs from the Canadian Forest
Fire Behavior Prediction (FBP) System (Forestry Canada Fire Danger Group
1992) based on raster format fire weather and fuel moisture conditions (from
the Canadian Forest Fire Weather Index (FWI) System (Van Wagner 1987)), fuel
type, date, and slope. Fire weather, for the purpose of FBP System
calculation, comprises observations of 10 m wind speed and direction at the
time of the fire, and two associated outputs from the Fire Weather Index
System, the Fine Fuel Moisture Content (FFMC) and Buildup Index (BUI).
Raster-based FWI System components can be calculated with the sister
function fwiRaster
.
The Canadian Forest Fire Behavior Prediction (FBP) System (Forestry Canada Fire Danger Group 1992) is a subsystem of the Canadian Forest Fire Danger Rating System, which also includes the Canadian Forest Fire Weather Index (FWI) System. The FBP System provides quantitative estimates of head fire spread rate, fuel consumption, fire intensity, and a basic fire description (e.g., surface, crown) for 16 different important forest and rangeland types across Canada. Using a simple conceptual model of the growth of a point ignition as an ellipse through uniform fuels and under uniform weather conditions, the system gives, as a set of secondary outputs, estimates of flank and back fire behavior and consequently fire area perimeter length and growth rate.
The FBP System evolved since the mid-1970s from a series of regionally developed burning indexes to an interim edition of the nationally develop FBP system issued in 1984. Fire behavior models for spread rate and fuel consumption were derived from a database of over 400 experimental, wild and prescribed fire observations. The FBP System, while providing quantitative predictions of expected fire behavior is intended to supplement the experience and judgment of operational fire managers (Hirsch 1996).
The FBP System was updated with some minor corrections and revisions in 2009 (Wotton et al. 2009) with several additional equations that were initially not included in the system. This fbp function included these updates and corrections to the original equations and provides a complete suite of fire behavior prediction variables. Default values of optional input variables provide a reasonable mid-range setting. Latitude, longitude, elevation, and the date are used to calculate foliar moisture content, using a set of models defined in the FBP System; note that this latitude/longitude-based function is only valid for Canada. If the Foliar Moisture Content (FMC) is specified directly as an input, the fbp function will use this value directly rather than calculate it. This is also true of other input variables.
Note that Wind Direction (WD) is the compass direction from which wind is coming. Wind azimuth (not an input) is the direction the wind is blowing to and is 180 degrees from wind direction; in the absence of slope, the wind azimuth is coincident with the direction the head fire will travel (the spread direction azimuth, RAZ). Slope aspect is the main compass direction the slope is facing. Slope azimuth (not an input) is the direction a head fire will spread up slope (in the absence of wind effects) and is 180 degrees from slope aspect (Aspect). Wind direction and slope aspect are the commonly used directional identifiers when specifying wind and slope orientation respectively. The input theta specifies an angle (given as a compass bearing) at which a user is interested in fire behavior predictions; it is typically some angle off of the final spread rate direction since if for instance theta=RAZ (the final spread azimuth of the fire) then the rate of spread at angle theta (TROS) will be equivalent to ROS.
Because raster format data cannot hold characters, we have to code these fuel types in numeric codes. In sequence, the codes are c(1:19). FuelType could also be converted as factor and assigned to the raster layer, the function will still work.
Fuel Type | code |
C-1 | 1 |
C-2 | 2 |
C-3 | 3 |
C-4 | 4 |
C-5 | 5 |
C-6 | 6 |
C-7 | 7 |
D-1 | 8 |
M-1 | 9 |
M-2 | 10 |
M-3 | 11 |
M-4 | 12 |
NF | 13 |
O-1a | 14 |
O-1b | 15 |
S-1 | 16 |
S-2 | 17 |
S-3 | 18 |
WA | 19 |
Usage
fbpRaster(input, output = "Primary", select = NULL, m = NULL, cores = 1)
Arguments
input |
The input data, a RasterStack containing fuel types, fire weather component, and slope layers (see below). Each vector of inputs defines a single FBP System prediction for a single fuel type and set of weather conditions. The RasterStack can be used to evaluate the FBP System for a single fuel type and instant in time, or multiple records for a single point (e.g., one weather station, either hourly or daily for instance) or multiple points (multiple weather stations or a gridded surface). All input variables have to be named as listed below, but they are case insensitive, and do not have to be in any particular order. Fuel type is of type character; other arguments are numeric. Missing values in numeric variables could either be assigned as NA or leave as blank.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
output |
FBP output offers 3 options (see details in Values section):
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
select |
Selected outputs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
m |
Optimal number of pixels at each iteration of computation when
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cores |
Number of CPU cores (integer) used in the computation, default
is 1. By signing |
Value
fbpRaster
returns a RasterStack with primary, secondary, or
all output variables, a combination of the primary and secondary outputs.
Primary FBP output includes the following 8 raster layers:
CFB |
Crown Fraction Burned by the head fire |
CFC |
Crown Fuel Consumption [kg/m^2] |
FD |
Fire description (1=Surface, 2=Intermittent, 3=Crown) |
HFI |
Head Fire Intensity [kW/m] |
RAZ |
Spread direction azimuth [degrees] |
ROS |
Equilibrium Head Fire Rate of Spread [m/min] |
SFC |
Surface Fuel Consumption [kg/m^2] |
TFC |
Total Fuel Consumption [kg/m^2] |
Secondary FBP System outputs include the following 34 raster layers. In order to calculate the reliable secondary outputs, depending on the outputs, optional inputs may have to be provided.
BE |
BUI effect on spread rate |
SF |
Slope Factor (multiplier for ROS increase upslope) |
ISI |
Initial Spread Index |
FFMC |
Fine fuel moisture code [FWI System component] |
FMC |
Foliar Moisture Content [%] |
Do |
Julian Date of minimum FMC |
RSO |
Critical spread rate for crowning [m/min] |
CSI |
Critical Surface Intensity for crowning [kW/m] |
FROS |
Equilibrium Flank Fire Rate of Spread [m/min] |
BROS |
Equilibrium Back Fire Rate of Spread [m/min] |
HROSt |
Head Fire Rate of Spread at time hr [m/min] |
FROSt |
Flank Fire Rate of Spread at time hr [m/min] |
BROSt |
Back Fire Rate of Spread at time hr [m/min] |
FCFB |
Flank Fire Crown Fraction Burned |
BCFB |
Back Fire Crown Fraction Burned |
FFI |
Equilibrium Spread Flank Fire Intensity [kW/m] |
BFI |
Equilibrium Spread Back Fire Intensity [kW/m] |
FTFC |
Flank Fire Total Fuel Consumption [kg/m^2] |
BTFC |
Back Fire Total Fuel Consumption [kg/m^2] |
DH |
Head Fire Spread Distance after time hr [m] |
DB |
Back Fire Spread Distance after time hr [m] |
DF |
Flank Fire Spread Distance after time hr [m] |
TI |
Time to Crown Fire Initiation [hrs since ignition] |
FTI |
Time to Flank Fire Crown initiation [hrs since ignition] |
BTI |
Time to Back Fire Crown initiation [hrs since ignition] |
LB |
Length to Breadth ratio |
LBt |
Length to Breadth ratio after elapsed time hr |
WSV |
Net vectored wind speed [km/hr] |
TROS* |
Equilibrium Rate of Spread at bearing theta [m/min] |
TROSt* |
Rate of Spread at bearing theta at time t [m/min] |
TCFB* |
Crown Fraction Burned at bearing theta |
TFI* |
Fire Intensity at bearing theta [kW/m] |
TTFC* |
Total Fuel Consumption at bearing theta [kg/m^2] |
TTI* |
Time to Crown Fire initiation at bearing theta [hrs since ignition] |
*These outputs represent fire behaviour at a point on the perimeter of an elliptical fire defined by a user input angle theta. theta represents the bearing of a line running between the fire ignition point and a point on the perimeter of the fire. It is important to note that in this formulation the theta is a bearing and does not represent the angle from the semi-major axis (spread direction) of the ellipse. This formulation is similar but not identical to methods presented in Wotton et al (2009) and Tymstra et al (2009).
Author(s)
Xianli Wang, Alan Cantin, Marc-André Parisien, Mike Wotton, Kerry Anderson, and Mike Flannigan
References
1. Hirsch K.G. 1996. Canadian Forest Fire Behavior Prediction (FBP) System: user's guide. Nat. Resour. Can., Can. For. Serv., Northwest Reg., North. For. Cent., Edmonton, Alberta. Spec. Rep. 7. 122p.
2. Forestry Canada Fire Danger Group. 1992. Development and structure of the Canadian Forest Fire Behavior Prediction System. Forestry Canada, Ottawa, Ontario Information Report ST-X-3. 63 p. https://cfs.nrcan.gc.ca/pubwarehouse/pdfs/10068.pdf
3. Wotton, B.M., Alexander, M.E., Taylor, S.W. 2009. Updates and revisions to the 1992 Canadian forest fire behavior prediction system. Nat. Resour. Can., Can. For. Serv., Great Lakes For. Cent., Sault Ste. Marie, Ontario, Canada. Information Report GLC-X-10, 45p. https://publications.gc.ca/collections/collection_2010/nrcan/Fo123-2-10-2009-eng.pdf
4. Tymstra, C., Bryce, R.W., Wotton, B.M., Armitage, O.B. 2009. Development and structure of Prometheus: the Canadian wildland fire growth simulation Model. Nat. Resour. Can., Can. For. Serv., North. For. Cent., Edmonton, AB. Inf. Rep. NOR-X-417. https://d1ied5g1xfgpx8.cloudfront.net/pdfs/31775.pdf
See Also
Examples
# The dataset is the standard test data for FBP system
# provided by Wotton et al (2009), and randomly assigned
# to a stack of raster layers
test_fbpRaster <- rast(
system.file("extdata", "test_fbpRaster.tif", package = "cffdrs")
)
input <- test_fbpRaster
# Stack doesn't hold the raster layer names, we have to assign
# them:
names(input) <- c(
"FuelType", "LAT", "LONG", "ELV", "FFMC", "BUI", "WS", "WD", "GS",
"Dj", "D0", "hr", "PC", "PDF", "GFL", "cc", "theta", "Accel", "Aspect",
"BUIEff", "CBH", "CFL", "ISI"
)
# Primary outputs:
system.time(foo <- fbpRaster(input = input))
# Using the "select" option:
system.time(foo <- fbpRaster(input = input, select = c("HFI", "TFC", "ROS")))
# Secondary outputs:
system.time(foo <- fbpRaster(input = input, output = "S"))
# All outputs:
system.time(foo <- fbpRaster(input = input, output = "A"))
### Additional, longer running examples ###
# Keep only the required input layers, the other layers would be
# assigned with default values:
# keep only the required inputs:
dat0 <- input[[c(
"FuelType", "LAT", "LONG", "FFMC", "BUI", "WS", "GS", "Dj", "Aspect"
)]]
system.time(foo <- fbpRaster(input = dat0, output = "A"))