Skip to content

Latest commit

 

History

History
472 lines (362 loc) · 56.5 KB

File metadata and controls

472 lines (362 loc) · 56.5 KB

About this Doc

The outline of this doc was created using the Information Architecture Diagrams (See public/pdf/information_architecture_diagrams). This document is meant to map each variable in the IA diagram to a c++ code block in repo https://github.com/firelab/behave. The git commit hash used for this document is: “c1f3d3dc7b60d4b80dae37779cc1da6462b4d474”.

Tags that need fixing:

  1. #todos: could not find code block. Need to look into. (0)
  2. #compute: Need to compute from formula either in pdf or behave6. Aslso need to build setter/getter fns (0)
  3. #make-getter: Variable exists, but need a public getter (29)
  4. #make-setter: Need public setter fn. (6)
  5. #ws-variable: No need to update behave. Value should be stored in the worksheet and used to either toggle conditioned inputs/outputs ro passed to the solver (10)
  6. #behave6: Code block is in the behave6 repo. Needs to be ported over to behave-mirror (16)
  7. #fix: Code block is wrong and need fixing, see notes. (1)
  8. #review: See notes (0)
  9. #diagram: related to the diagram work. (1)
  10. #expose: Code blocks exists in another class, but we need to expose this in the current class. We may need to bubble up the getters/setters through multiple classes to get to the current class. (i.e. SurfaceFuelbedIntermediates > SurfaceFire > Surface). Either update behave or SIG adapters. (8)
  11. #expose-or-new-solver: Code block exists in another MODULE. Shoule we instantiate this module in the current module’s constructor or have the solver instantiate the module? (21)

Crown

Outputs

Fire Type

Fire Type

IA Variablecpp code block
Fire Type (required)FireType::FireTypeEnum Crown::getFireType() const

Transition to Crown Fire

IA Variablecpp code blockNote
Transition Ratiovoid Crown::calculateCrownFireTransitionRatio()#make-getter BHP1-362
Critical Surface Flame Lengthvoid Crown::calculateCrownCriticalSurfaceFlameLength()#make-getter BHP1-364
Critical Surface Rate of Spreadvoid Crown::calculateCrownCriticalFireSpreadRate()#make-getter BHP1-365
Critical Surface Fireline Intensityvoid Crown::calculateCrownCriticalSurfaceFireIntensity()#make-getter BHP1-366

Active or Independent Crown Fire

IA Variablecpp code blockNote
Active Ratiovoid Crown::calculateCrownFireActiveRatio()#make-getter BHP1-363
Critical Crown Rate of Spreadvoid Crown::calculateCrownCriticalFireSpreadRate()#make-getter BHP1-367

Fire Behavior

IA Variablecpp code block
Rate of Spreaddouble Crown::getCrownFireSpreadRate(SpeedUnits::SpeedUnitsEnum spreadRateUnits)
Flame Lengthdouble Crown::getCrownFlameLength(LengthUnits::LengthUnitsEnum flameLengthUnits)

Size

IA Variablecpp code blockNote
Spread Distancedouble getCrownFireSpreadDistance(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)
Fire Areadouble FireSize::getFireArea(AreaUnits::AreaUnitsEnum areaUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)#expose BHP1-368
Fire Perimeterdouble FireSize::getFirePerimeter(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)#expose BHP1-369
Length-to-Width Ratiodouble FireSize::getFireLengthToWidthRatio()#expose BHP1-370

Spotting, Active Crown Fire

IA Variablecpp code block
Maximum Spotting Distancedouble Spot::getMaxMountainousTerrainSpottingDistanceFromTorchingTrees(LengthUnits::LengthUnitsEnum spottingDistanceUnits)#expose-or-new-solver
Flame Height above Canopydouble Spot::getFlameHeightForTorchingTrees(LengthUnits::LengthUnitsEnum flameHeightUnits)#expose-or-new-solver

Inputs

Calculations Options

Calculate crown fire using:

IA Variablecpp code blockNote
Rothermel (1991)void SIGCrown::setCrownFireCalculationMethod(CrownFireCalculationMethod CrownFireCalculationMethod)
Scott and Reinhardt (2001)void SIGCrown::setCrownFireCalculationMethod(CrownFireCalculationMethod CrownFireCalculationMethod)

Fuel Moisture

IA Variablecpp code block
Foliar Moisturevoid Crown::setMoistureFoliar(double moistureFoliar, MoistureUnits::MoistureUnitsEnum moistureUnits)

Canopy Fuel

IA Variablecpp code block
Canopy Heightvoid Crown::setCanopyHeight(double canopyHeight, LengthUnits::LengthUnitsEnum canopyHeightUnits)
Canopy Base Heightvoid Crown::setCanopyBaseHeight(double canopyBaseHeight, LengthUnits::LengthUnitsEnum heightUnits)
Canopy Bulk Densityvoid Crown::setCanopyBulkDensity(double canopyBulkDensity, DensityUnits::DensityUnitsEnum densityUnits)

Weather

IA Variablecpp code block
20-ft Wind Speedvoid Crown::setWindSpeed(double windSpeed, SpeedUnits::SpeedUnitsEnum windSpeedUnits, WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode)
Wind Adjustment Factorvoid Crown::setWindAdjustmentFactorCalculationMethod(WindAdjustmentFactorCalculationMethod::WindAdjustmentFactorCalculationMethodEnum windAdjustmentFactorCalculationMethod)

Spotting

Canopy Fuel

IA Variablecpp code blockNote
Canopy Heightvoid Spot::setTreeHeight(double treeHeight, LengthUnits::LengthUnitsEnum treeHeightUnits)#expose-or-new-solver

Weather

IA Variablecpp code blockNote
20-ft Wind Speedvoid Spot::setWindSpeedAtTwentyFeet(double windSpeedAtTwentyFeet, SpeedUnits::SpeedUnitsEnum windSpeedUnits)#expose-or-new-solver

Topography

IA Variablecpp code blockNote
Ridge-to-Valley Elevation Differencevoid Spot::setRidgeToValleyElevation(double ridgeToValleyElevation, LengthUnits::LengthUnitsEnum elevationUnits)#expose-or-new-solver
Ridge-to-Valley Horizontal Distancevoid Spot::setRidgeToValleyDistance(double ridgeToValleyDistance, LengthUnits::LengthUnitsEnum ridgeToValleyDistanceUnits)#expose-or-new-solver
Spotting Source Locationvoid Spot::setLocation(SpotFireLocation::SpotFireLocationEnum location)#expose-or-new-solver

Fire Behavior

IA Variablecpp code blockNote
Active Crown Flame Lengthvoid Spot::setFlameLength(double flameLength, LengthUnits::LengthUnitsEnum flameLengthUnits)#expose-or-new-solver

Surface

Outputs

Fire Behavior

Surface Fire

IA Variablecpp code blockNote
Rate of Spareaddouble Surface::getSpreadRate(SpeedUnits::SpeedUnitsEnum spreadRateUnits)
Flame Lengthdouble Surface::getFlameLength(LengthUnits::LengthUnitsEnum flameLengthUnits)
Spread Distancedouble getSpreadDistanceInDirectionOfInterest(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)
Distance of Maximum Spreaddouble getSpreadDistance(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)
Fireline Intensitydouble Surface::getFirelineIntensity(FirelineIntensityUnits::FirelineIntensityUnitsEnum firelineIntensityUnits)
Heat per Unit Areadouble Surface::getHeatPerUnitArea(HeatPerUnitAreaUnits::HeatPerUnitAreaUnitsEnum heatPerUnitAreaUnits)
Reaction Intensitydouble Surface::getReactionIntensity(HeatSourceAndReactionIntensityUnits::HeatSourceAndReactionIntensityUnitsEnum reactiontionIntensityUnits)

Intermediates

Fuel Moisture

IA Variablecpp code blockNote
Characteristic Deaddouble Surface::getCharacteristicMoistureByLifeState(FuelLifeState::FuelLifeStateEnum lifeState, MoistureUnits::MoistureUnitsEnum moistureUnits)#make-getter BHP1-340
Characteristic Livedouble Surface::getCharacteristicMoistureByLifeState(FuelLifeState::FuelLifeStateEnum lifeState, MoistureUnits::MoistureUnitsEnum moistureUnits)#make-getter BHP1-340
Live Fuel Moisture of Extinctiondouble Surface::getLiveFuelMoistureOfExtinction(MoistureUnits::MoistureUnitsEnum moistureUnits)

Fuel Characteristics

IA Variablecpp code blockNote
Characteristic SA/Vdouble getCharacteristicSAVR(SurfaceAreaToVolumeUnits::SurfaceAreaToVolumeUnitsEnum savrUnits)
Bulk Densitydouble getBulkDensity(DensityUnits::DensityUnitsEnum densityUnits)
Packing Ratiodouble SurfaceFuelbedIntermediates::getPackingRatio()#expose BHP1-354
Relative Packing Ratiodouble SurfaceFuelbedIntermediates::getRelativePackingRatio()#expose BHP1-355

Heat Source

IA Variablecpp code blockNote
Heat Sourcedouble getHeatSource(HeatSourceAndReactionIntensityUnits::HeatSourceAndReactionIntensityUnitsEnum heatSourceUnits)
Dead Fuel Reaction Intensitydouble Surface::getSurfaceFireReactionIntensityForLifeState(FuelLifeState::FuelLifeStateEnum lifeState)#make-getter BHP1-356
Live Fuel Reaction Intensitydouble Surface::getSurfaceFireReactionIntensityForLifeState(FuelLifeState::FuelLifeStateEnum lifeState)#make-getter BHP1-356
Wind Factordouble SurfaceFire::getWindAdjustmentFactor()#expose BHP1-357
Slope Factordouble SurfaceFire::getSlopeFactor()#expose BHP1-358

Heat Sink

IA Variablecpp code blockNote
Heat Sinkdouble Surface::getHeatSink(HeatSinkUnits::HeatSinkUnitsEnum heatSinkUnits)
Flame Residence Timedouble Surface::getResidenceTime(TimeUnits::TimeUnitsEnum timeUnits)

Size

Surface - Fire Size

IA Variablecpp code block
Fire Areadouble Surface::getFireArea(AreaUnits::AreaUnitsEnum areaUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)
Fire Perimeterdouble Surface::getFirePerimeter(LengthUnits::LengthUnitsEnum lengthUnits , double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)

Surface (Dependency to fire type conditionals for display) (Supplimental)

IA Variablecpp code blockNote
Fire Length-to-Width Ratiodouble SurfaceFire::getFireLengthToWidthRatio()#expose BHP1-371
Heading Spread Distancedouble Surface::getSpreadDistance(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)
Flanking Spread Distancedouble Surface::getFlankingSpreadDistance(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)
Backing Spread Distancedouble Surface::getBackingSpreadDistance(LengthUnits::LengthUnitsEnum lengthUnits, double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)

Diagram (Supplimental)

IA Variablecpp code blockNote
Fire Shape Diagram#diagram

Special Case Fuel Models

Western Aspen

Fuel Load
IA Variablecpp code blockNote
Create output for fuel characteristics?#ws-variable
1-h Fuel Loaddouble Surface::getAspenLoadDeadOneHour(LoadingUnits::LoadingUnitsEnum loadingUnits)
Live Woody Fuel Loaddouble Surface::getAspenLoadDeadOneHour(LoadingUnits::LoadingUnitsEnum loadingUnits)
Live Herbaceous Fuel Loaddouble Surface::getAspenLoadLiveHerbaceous(LoadingUnits::LoadingUnitsEnum loadingUnits)
Surface Area-to-Volume Ratio (SA/V)
IA Variablecpp code block
1-h SA/Vdouble Surface::getAspenSavrDeadOneHour(SurfaceAreaToVolumeUnits::SurfaceAreaToVolumeUnitsEnum savrUnits)
Live Woody SA/Vdouble Surface::getAspenSavrLiveWoody(SurfaceAreaToVolumeUnits::SurfaceAreaToVolumeUnitsEnum savrUnits)

Chaparral

Fuel Load
IA Variablecpp code blockNote
Create output for fuel characteristics?#ws-variable
Total Dead Fuel Loaddouble Surface::getChaparralTotalDeadFuelLoad(LoadingUnits::LoadingUnitsEnum loadingUnits)
Total Live Fuel Loaddouble Surface::getChaparralTotalLiveFuelLoad(LoadingUnits::LoadingUnitsEnum loadingUnits)
Total Fuel Load
IA Variablecpp code blockNote
Specified on the worksheetchaparralFuelLoadInputMode_;#make-getter BHP1-361
Calculated from fuel bed depth and typechaparralFuelLoadInputMode_;#make-getter BHP1-361
Dead Fuel Load
IA Variablecpp code blockNote
Less than: 0.25 Inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
From 0.25 Inches to 0.50 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
From 0.50 Inches to 1.0 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
From 1.0 Inches to 3.0 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
Live Fuel Load
IA Variablecpp code blockNote
Leavesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
Stems less than 0.25 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
Stems 0.25 Inches to 0.50 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
Stems 0.5 to 1.0 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339
Stems 1.0 to 3.0 inchesdouble Surface::getChaparralLoad(FuelLifeState::FuelLifeStateEnum lifeState, int sizeClass, LoadingUnits::LoadingUnitsEnum loadingUnits)#make-getter BHP1-339

Palmetto-Galberry

Dead Fuel Load
IA Variablecpp code blockNote
Fine: 0 to 0.25 inches#make-getter BHP1-337
Medium: 0.25 to 1 inches#make-getter BHP1-337
Foliage Fuel Load: On Stem#make-getter BHP1-337
Live Fuel Load
IA Variablecpp code blockNote
Fine: 0 to 0.25 inches#make-getter BHP1-337
Medium: 0.25 to 1 inches#make-getter BHP1-337
Foliage Fuel Load : On Stem#make-getter BHP1-337
Fuelbed
IA Variablecpp code blockNote
Fuelbed Depthdouble Surface::getPalmettoGallberyFuelBedDepth(LengthUnits::LengthUnitsEnum depthUnits)

Spot

Maximum Spotting Distance

IA Variablecpp code blockNote
Torching Treesdouble Spot::getMaxMountainousTerrainSpottingDistanceFromTorchingTrees(LengthUnits::LengthUnitsEnum spottingDistanceUnits)#expose-or-new-solver
Burning Piledouble Spot::getMaxMountainousTerrainSpottingDistanceFromTorchingTrees(LengthUnits::LengthUnitsEnum spottingDistanceUnits)#expose-or-new-solver
Wind-Driven Surface Firedouble Spot::getMaxMountainousTerrainSpottingDistanceFromTorchingTrees(LengthUnits::LengthUnitsEnum spottingDistanceUnits)#expose-or-new-solver

Burning Pile

IA Variablecpp code blockNote
Firebrand Height from a Burning Piledouble Spot::getMaxFirebrandHeightFromBurningPile(LengthUnits::LengthUnitsEnum firebrandHeightUnits)#expose-or-new-solver

Inputs

Directions of Surface Spread & Wind

Surface Spread Directions

IA Variablecpp code blockNote
Heading Only#make-setter BHP1-338
Heading, Flanking and Backingno longer needed, instead flanking and backing will be optional output variables whenever we do a heading fire.
User-Specified Directions#make-setter BHP1-338

Surface Fire Wind & Spread

Wind Direction
IA Variablecpp code blockNote
Degrees clockwise from upslope (standard)void Surface::setWindAndSpreadOrientationMode(WindAndSpreadOrientationMode::WindAndSpreadOrientationModeEnum windAndSpreadOrientationMode)
Degrees clockwise from north (supplimental)void Surface::setWindAndSpreadOrientationMode(WindAndSpreadOrientationMode::WindAndSpreadOrientationModeEnum windAndSpreadOrientationMode)

Fuel Models

Standard

IA Variablecpp code blockNote
The 53 (US)void Surface::setFuelModelNumber(int fuelModelNumber)
Mediterranean (S California)void Surface::setFuelModelNumber(int fuel ModelNumber)
Mediterranean (Portugal)void Surface::setFuelModelNumber(int fuelModelNumber)

Special Case

Chaparral (Upland)
Calculated from fuel depth and type
IA Variablecpp code blockNote
Fuelbed Depth (ft, m)void Surface::setChaparralFuelBedDepth(double chaparralFuelBedDepth, LengthUnits::LengthUnitsEnum depthUnts)
Dead Load Fraction (%)void Surface::setChaparralFuelDeadLoadFraction(double chaparralFuelDeadLoadFraction)
Fuel typevoid Surface::setChaparralFuelType(ChaparralFuelType::ChaparralFuelTypeEnum chaparralFuelType)
Palmetto-Gallberry
IA Variablecpp code blockNote
Age of Rough (years)void Surface::setAgeOfRough(double ageOfRough)
Understory Height (ft, m)void Surface::setHeightOfUnderstory(double heightOfUnderstory, LengthUnits::LengthUnitsEnum heightUnits)
Palmetto Coverage (%)[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/surfaceInputs.cpp#L423-L426\]\[SurfaceInputs::setPalmettoCoverage(double palmettoCoverage)\]\] ][void Surface::setPalmettoCoverage(double palmettoCoverage, CoverUnits::CoverUnitsEnum coverUnits)]]
Overstory Basal Area (ft 2 /ac, m2 /ha)void Surface::setOverstoryBasalArea(double overstoryBasalArea, BasalAreaUnits::BasalAreaUnitsEnum basalAreaUnits)
Western Aspen
Surface Fuel & Understory Vegetation
IA Variablecpp code blockNote
Aspen & Shrubvoid Surface::setAspenFuelModelNumber(int aspenFuelModelNumber)
Aspen & Tall Forbsvoid Surface::setAspenFuelModelNumber(int aspenFuelModelNumber)
Aspen and Low Forbsvoid Surface::setAspenFuelModelNumber(int aspenFuelModelNumber)
Mixed Overstory & Shrubvoid Surface::setAspenFuelModelNumber(int aspenFuelModelNumber)
Aspen Fuel Curing Levelvoid Surface::setAspenFuelModelNumber(int aspenFuelModelNumber)

Multiple Fuel Models

IA Variablecpp code blockNote
Fuel types are randomly[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/surface.h#LL99C25-L99C25\]\[setTwoFuelModelsMethod(TwoFuelModelsMethod::TwoFuelModelsMethodEnum twoFuelModelsMethod)\]\] ][void Surface::setTwoFuelModelsMethod(TwoFuelModelsMethod::TwoFuelModelsMethodEnum twoFuelModelsMethod)]]
Fuel types are in vegetation bands[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/surface.h#LL99C25-L99C25\]\[setTwoFuelModelsMethod(TwoFuelModelsMethod::TwoFuelModelsMethodEnum twoFuelModelsMethod)\]\] ][void Surface::setTwoFuelModelsMethod(TwoFuelModelsMethod::TwoFuelModelsMethodEnum twoFuelModelsMethod)]]

Custom Fuel Models

IA Variablecpp code blockNote
English Units#wont-do
Metric Units#wont-do

Fuel Moisture

Fuel moisture entered as:

IA Variablecpp code blockNote
Individual Size Classvoid Surface::setMoistureInputMode(MoistureInputMode::MoistureInputModeEnum moistureInputMode)
Dead, Live Herb, and Live Woodyvoid Surface::setMoistureInputMode(MoistureInputMode::MoistureInputModeEnum moistureInputMode)
Moisture Scenariovoid Surface::setMoistureInputMode(MoistureInputMode::MoistureInputModeEnum moistureInputMode)

Dynamic Curing Load Transfer

IA Variablecpp code blockNote
Calculated from Live Herbaceous#wont-do
Input Directly#wont-do

Size

Fire

IA Variablecpp code blockNote
Elapsed Timevoid SurfaceInputs::setElapsedTime(double elapsedTime, TimeUnits::TimeUnitsEnum timeUnits)#expose BHP1-341

Spot

Canopy Fuel

IA Variablecpp code blockNote
Downwind Canopy Heightvoid Spot::setDownwindCoverHeight(double downwindCoverHeight, LengthUnits::LengthUnitsEnum coverHeightUnits)#expose-or-new-solver
Downwind Canopy Covervoid Spot::setDownwindCanopyMode(SpotDownWindCanopyMode::SpotDownWindCanopyModeEnum downwindCanopyMode)#expose-or-new-solver

Torching Trees

IA Variablecpp code blockNote
Torching Tree Height[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/spotInputs.cpp#L75-L78\]\[void SpotInputs::setTreeHeight(double treeHeight, LengthUnits::LengthUnitsEnum treeHeightUnits)\]\] ][void Spot::setTreeHeight(double treeHeight, LengthUnits::LengthUnitsEnum treeHeightUnits)]]#expose-or-new-solver
Torching Tree Speciesvoid Spot::setTreeSpecies(SpotTreeSpecies::SpotTreeSpeciesEnum treeSpecies)#expose-or-new-solver
DBH (Diameter at Breast Height)void Spot::setDBH(double DBH, LengthUnits::LengthUnitsEnum DBHUnits)#expose-or-new-solver
Number of Torching Trees Numeric Valuevoid Spot::setTorchingTrees(int torchingTrees)#expose-or-new-solver

Topography

IA Variablecpp code blockNote
Ridge-to-Valley Elevation Differencevoid Spot::setRidgeToValleyElevation(double ridgeToValleyElevation, LengthUnits::LengthUnitsEnum elevationUnits)#expose-or-new-solver
Ridge-to-Valley Horizontal Distance[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/spotInputs.cpp#L60-L63\]\[void SpotInputs::setRidgeToValleyDistance(double ridgeToValleyDistance, LengthUnits::LengthUnitsEnum ridgeToValleyDistanceUnits)\]\] ][void Spot::setRidgeToValleyDistance(double ridgeToValleyDistance, LengthUnits::LengthUnitsEnum ridgeToValleyDistanceUnits)]]#expose-or-new-solver
Spott List Source Locationvoid Spot::setLocation(SpotFireLocation::SpotFireLocationEnum location)#expose-or-new-solver

Wind Speed

Wind speed is entered as

IA Variablecpp code blockNote
20-ft Wind and Wind Adjustment Factor[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/surface.h#L96\]\[setWindHeightInputMode(WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode);\]\] ][void Surface::setWindHeightInputMode(WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode)]]
Midflame (eye level) Wind[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/surface.h#L96\]\[setWindHeightInputMode(WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode);\]\] ][void Surface::setWindHeightInputMode(WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode)]]
10-m Wind and Wind Adjustment Factor[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/surface.h#L96\]\[setWindHeightInputMode(WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode);\]\] ][void Surface::setWindHeightInputMode(WindHeightInputMode::WindHeightInputModeEnum windHeightInputMode)]]

Wind and slope

IA Variablecpp code blockNote
are aligned wind is +- 30 from upslope#make-getter #make-setter BHP1-311
are NOT aligned wind is > 30 from uplsope#make-getter #make-setter BHP1-311

Mortality

Outputs

Scorch

IA Variablecpp code blockNote
Scorch Heightdouble Mortality::getFlameLengthOrScorchHeightValue(LengthUnits::LengthUnitsEnum flameLengthOrScorchHeightUnits)

Tree Mortality

IA Variablecpp code blockNote
Probability of Mortality[[ \[\[https://github.com/firelab/behave/blob/master/src/behave/mortality.cpp#L1847-L1850\]\[double Mortality::getProbabilityOfMortality(ProbabilityUnits::ProbabilityUnitsEnum probabilityUnits)\]\] ][double Mortality::getProbabilityOfMortality(ProbabilityUnits::ProbabilityUnitsEnum probabilityUnits)]]
Bark Thicknessdouble Mortality::getBarkThickness(LengthUnits::LengthUnitsEnum barkThicknessUnits)
Tree Crown Length Scorcheddouble Mortality::getTreeCrownLengthScorched(MortalityRateUnits::MortalityRateUnitsEnum mortalityRateUnits)
Tree Crown Volume Scorcheddouble Mortality::getTreeCrownVolumeScorched(MortalityRateUnits::MortalityRateUnitsEnum mortalityRateUnits)

Iutputs

Scorch

Fire

IA Variablecpp code blockNote
Surface Fire Flame Lengthvoid SIGMortality::setSurfaceFireFlameLength(double value, LengthUnits::LengthUnitsEnum lengthUnits)
Scorch Heightvoid SIGMortality::setSurfaceFireFlameLength(double value, LengthUnits::LengthUnitsEnum lengthUnits)
Surface Fireline Intensity

Weather

IA Variablecpp code blockNote
Midflame Wind Speed#make-setter BHP1-359
Air Temperature#make-setter BHP1-360

Fuel/Vegetation, Overstory

IA Variablecpp code blockNote
Mortality Tree Speciesvoid Mortality::setSpeciesCode(std::string speciesCode)
Canopy Heightvoid Mortality::setTreeHeight(double treeHeight, LengthUnits::LengthUnitsEnum treeHeightUnits)
Crown Ratiovoid Mortality::setCrownRatio(double crownRatio)
DBH (Diameter at Breast Height)void Mortality::setDBH(double dbh, LengthUnits::LengthUnitsEnum diameterUnits)