|
virtual MathSize | cfl () const =0 |
| Crown fuel load (kg/m^2) [ST-X-3 table 8].
|
|
constexpr | FuelType (const FuelCodeSize &code, const char *name, const bool can_crown) noexcept |
| Fuel type.
|
|
| FuelType (FuelType &&rhs) noexcept=delete |
|
| FuelType (const FuelType &rhs) noexcept=delete |
|
FuelType & | operator= (FuelType &&rhs) noexcept=delete |
|
FuelType & | operator= (const FuelType &rhs) noexcept=delete |
|
constexpr bool | canCrown () const |
| Whether or not this fuel can have a crown fire.
|
|
virtual MathSize | grass_curing (const int, const wx::FwiWeather &) const |
| Grass curing.
|
|
virtual MathSize | cbh () const =0 |
| Crown base height (m) [ST-X-3 table 8].
|
|
virtual MathSize | crownFractionBurned (MathSize rss, MathSize rso) const noexcept=0 |
| Crown Fraction Burned (CFB) [ST-X-3 eq 58].
|
|
virtual MathSize | probabilityPeat (MathSize mc_fraction) const noexcept=0 |
| Calculate probability of burning [Anderson eq 1].
|
|
virtual ThresholdSize | survivalProbability (const wx::FwiWeather &wx) const noexcept=0 |
| Survival probability calculated using probability of ony survival based on multiple formulae.
|
|
virtual MathSize | buiEffect (MathSize bui) const =0 |
| BUI Effect on surface fire rate of spread [ST-X-3 eq 54].
|
|
virtual MathSize | crownConsumption (MathSize cfb) const =0 |
| Crown Fuel Consumption (CFC) (kg/m^2) [ST-X-3 eq 66].
|
|
virtual MathSize | calculateRos (int nd, const wx::FwiWeather &wx, MathSize isi) const =0 |
| Calculate rate of spread (m/min)
|
|
virtual MathSize | calculateIsf (const SpreadInfo &spread, MathSize isi) const =0 |
| Calculate ISI with slope influence and zero wind (ISF) [ST-X-3 eq 41/42].
|
|
virtual MathSize | surfaceFuelConsumption (const SpreadInfo &spread) const =0 |
| Surface fuel consumption (SFC) (kg/m^2) [ST-X-3 eq 9-25].
|
|
virtual MathSize | lengthToBreadth (MathSize ws) const =0 |
| Length to Breadth ratio [ST-X-3 eq 79].
|
|
virtual MathSize | finalRos (const SpreadInfo &spread, MathSize isi, MathSize cfb, MathSize rss) const =0 |
| Final rate of spread (m/min)
|
|
virtual MathSize | criticalSurfaceIntensity (const SpreadInfo &spread) const =0 |
| Critical Surface Fire Intensity (CSI) [ST-X-3 eq 56].
|
|
constexpr const char * | name () const |
| Name of the fuel.
|
|
constexpr FuelCodeSize | code () const |
| Code for this fuel type.
|
|
|
static constexpr FuelCodeSize | safeCode (const FuelType *fuel) |
| Convert FuelType to its code, or 0 if nullptr.
|
|
static constexpr const char * | safeName (const FuelType *fuel) |
| Convert FuelType to its name, or 0 if nullptr.
|
|
static constexpr MathSize | criticalRos (const MathSize sfc, const MathSize csi) |
| Critical rate of spread (m/min)
|
|
static constexpr bool | isCrown (const MathSize csi, const MathSize sfi) |
| Whether or not this is a crown fire.
|
|
virtual MathSize fs::fuel::FuelType::calculateIsf |
( |
const SpreadInfo & | spread, |
|
|
MathSize | isi ) const |
|
nodiscardpure virtual |
Calculate ISI with slope influence and zero wind (ISF) [ST-X-3 eq 41/42].
- Parameters
-
spread | SpreadInfo to use |
isi | Initial Spread Index |
- Returns
- ISI with slope influence and zero wind (ISF) [ST-X-3 eq 41/42]
Implemented in fs::fuel::FuelGrass< A, B, C >, fs::fuel::FuelGrass< 190, 310, 140 >, fs::fuel::FuelGrass< 250, 350, 170 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentMixed, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::FuelMixed< 110, 282, 150, 50, RosMultiplier, RatioMixed, 108, 25, 50 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentDeadFir, 61, 15, 75 >, fs::fuel::FuelNonMixed< A, B, C, Bui0, Cbh, Cfl, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::FuelNonMixed< 30, 232, 160, 32, 0, 0, 61, 59, 24 >, fs::fuel::FuelNonMixed< 6, 232, 160, 32, 0, 0, 61, 59, 24 >, fs::fuel::FuelVariable< FuelSpring, FuelSummer >, fs::fuel::FuelVariable< FuelD1, FuelD2 >, fs::fuel::FuelVariable< FuelM1< PercentConifer >, FuelM2< PercentConifer > >, fs::fuel::FuelVariable< FuelM3< PercentDeadFir >, FuelM4< PercentDeadFir > >, fs::fuel::FuelVariable< FuelO1A, FuelO1B >, and fs::fuel::InvalidFuel.
virtual MathSize fs::fuel::FuelType::calculateRos |
( |
int | nd, |
|
|
const wx::FwiWeather & | wx, |
|
|
MathSize | isi ) const |
|
nodiscardpure virtual |
Calculate rate of spread (m/min)
- Parameters
-
nd | Difference between date and the date of minimum foliar moisture content |
wx | FwiWeather to use for calculation |
isi | Initial Spread Index (may differ from wx because of slope) |
- Returns
- Rate of spread (m/min)
Implemented in fs::fuel::fbp::FuelD2, fs::fuel::FuelGrass< A, B, C >, fs::fuel::FuelGrass< 190, 310, 140 >, fs::fuel::FuelGrass< 250, 350, 170 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentMixed, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::FuelMixed< 110, 282, 150, 50, RosMultiplier, RatioMixed, 108, 25, 50 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentDeadFir, 61, 15, 75 >, fs::fuel::FuelNonMixed< A, B, C, Bui0, Cbh, Cfl, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::FuelNonMixed< 30, 232, 160, 32, 0, 0, 61, 59, 24 >, fs::fuel::FuelNonMixed< 6, 232, 160, 32, 0, 0, 61, 59, 24 >, fs::fuel::FuelVariable< FuelSpring, FuelSummer >, fs::fuel::FuelVariable< FuelD1, FuelD2 >, fs::fuel::FuelVariable< FuelM1< PercentConifer >, FuelM2< PercentConifer > >, fs::fuel::FuelVariable< FuelM3< PercentDeadFir >, FuelM4< PercentDeadFir > >, fs::fuel::FuelVariable< FuelO1A, FuelO1B >, and fs::fuel::InvalidFuel.
virtual MathSize fs::fuel::FuelType::crownConsumption |
( |
MathSize | cfb | ) |
const |
|
nodiscardpure virtual |
Crown Fuel Consumption (CFC) (kg/m^2) [ST-X-3 eq 66].
- Parameters
-
cfb | Crown Fraction Burned (CFB) [ST-X-3 eq 58] |
- Returns
- Crown Fuel Consumption (CFC) (kg/m^2) [ST-X-3 eq 66]
Implemented in fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentMixed, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::FuelMixed< 110, 282, 150, 50, RosMultiplier, RatioMixed, 108, 25, 50 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentDeadFir, 61, 15, 75 >, fs::fuel::FuelVariable< FuelSpring, FuelSummer >, fs::fuel::FuelVariable< FuelD1, FuelD2 >, fs::fuel::FuelVariable< FuelM1< PercentConifer >, FuelM2< PercentConifer > >, fs::fuel::FuelVariable< FuelM3< PercentDeadFir >, FuelM4< PercentDeadFir > >, fs::fuel::FuelVariable< FuelO1A, FuelO1B >, fs::fuel::InvalidFuel, fs::fuel::StandardFuel< A, B, C, Bui0, Cbh, Cfl, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::StandardFuel< A, B, C, 1, 0, 0, 0, 0, static_cast< int >(DUFF_FFMC_DEPTH *10.0)>, and fs::fuel::StandardFuel< A, B, C, Bui0, 6, 80, BulkDensity, InorganicPercent, DuffDepth >.
virtual MathSize fs::fuel::FuelType::finalRos |
( |
const SpreadInfo & | spread, |
|
|
MathSize | isi, |
|
|
MathSize | cfb, |
|
|
MathSize | rss ) const |
|
nodiscardpure virtual |
Final rate of spread (m/min)
- Parameters
-
spread | SpreadInfo to use |
isi | Initial Spread Index (may differ from wx because of slope) |
cfb | Crown Fraction Burned (CFB) [ST-X-3 eq 58] |
rss | Surface Rate of spread (ROS) (m/min) [ST-X-3 eq 55] |
- Returns
- Final rate of spread (m/min)
Implemented in fs::fuel::fbp::FuelC6, fs::fuel::FuelVariable< FuelSpring, FuelSummer >, fs::fuel::FuelVariable< FuelD1, FuelD2 >, fs::fuel::FuelVariable< FuelM1< PercentConifer >, FuelM2< PercentConifer > >, fs::fuel::FuelVariable< FuelM3< PercentDeadFir >, FuelM4< PercentDeadFir > >, fs::fuel::FuelVariable< FuelO1A, FuelO1B >, fs::fuel::InvalidFuel, fs::fuel::StandardFuel< A, B, C, Bui0, Cbh, Cfl, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::StandardFuel< A, B, C, 1, 0, 0, 0, 0, static_cast< int >(DUFF_FFMC_DEPTH *10.0)>, and fs::fuel::StandardFuel< A, B, C, Bui0, 6, 80, BulkDensity, InorganicPercent, DuffDepth >.
virtual MathSize fs::fuel::FuelType::surfaceFuelConsumption |
( |
const SpreadInfo & | spread | ) |
const |
|
nodiscardpure virtual |
Surface fuel consumption (SFC) (kg/m^2) [ST-X-3 eq 9-25].
- Parameters
-
- Returns
- Surface fuel consumption (SFC) (kg/m^2) [ST-X-3 eq 9-25]
Implemented in fs::fuel::fbp::FuelC1, fs::fuel::fbp::FuelC2, fs::fuel::fbp::FuelC7, fs::fuel::fbp::FuelD1, fs::fuel::fbp::FuelD2, fs::fuel::FuelGrass< A, B, C >, fs::fuel::FuelGrass< 190, 310, 140 >, fs::fuel::FuelGrass< 250, 350, 170 >, fs::fuel::FuelJackpine< A, B, C, Bui0, Cbh, Cfl, BulkDensity, DuffDepth >, fs::fuel::FuelJackpine< 110, 293, 150, 66, 4, 120, 31, 62 >, fs::fuel::FuelJackpine< 110, 444, 300, 62, 8, 115, 20, 65 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentMixed, BulkDensity, InorganicPercent, DuffDepth >, fs::fuel::FuelMixed< 110, 282, 150, 50, RosMultiplier, RatioMixed, 108, 25, 50 >, fs::fuel::FuelMixed< A, B, C, Bui0, RosMultiplier, PercentDeadFir, 61, 15, 75 >, fs::fuel::FuelMixedWood< RosMultiplier, RatioMixed >, fs::fuel::FuelMixedWood< 10, PercentConifer >, fs::fuel::FuelMixedWood< 2, PercentConifer >, fs::fuel::FuelPine< A, B, C, Bui0, Cbh, Cfl, BulkDensity, DuffDepth >, fs::fuel::FuelPine< 30, 697, 400, 56, 18, 120, 93, 46 >, fs::fuel::FuelPine< 30, 800, 300, 62, 7, 180, 50, 50 >, fs::fuel::FuelSlash< A, B, C, Bui0, FfcA, FfcB, WfcA, WfcB, BulkDensity >, fs::fuel::FuelSlash< 40, 438, 170, 63, 10, -130, 6, -600, 132 >, fs::fuel::FuelSlash< 55, 829, 320, 31, 12, -166, 20, -210, 100 >, fs::fuel::FuelSlash< 75, 297, 130, 38, 4, -250, 4, -340, 78 >, fs::fuel::FuelVariable< FuelSpring, FuelSummer >, fs::fuel::FuelVariable< FuelD1, FuelD2 >, fs::fuel::FuelVariable< FuelM1< PercentConifer >, FuelM2< PercentConifer > >, fs::fuel::FuelVariable< FuelM3< PercentDeadFir >, FuelM4< PercentDeadFir > >, fs::fuel::FuelVariable< FuelO1A, FuelO1B >, and fs::fuel::InvalidFuel.