SFMS: Add D-2 fuel model to FBP System code repo
- Dominant language
- Python
- Stars
- 65
- Forks
- 11
- Avg merge
- 21h 25m
- Merged PRs (30d)
- 70
Description
**Describe the task**
Contribute equations for the D-2 fuel type to the FBP Python code repository maintained by CFS.
**Acceptance Criteria**
- [ ] Use D-1 fuel type equations and parameters for the D-2 fuel type.
- [ ] Add a conditional statement to Surface Fuel Consumption (SFC) where no fuel is consumed if the BUI is less than 80.
- [ ] Multiply the initial rate of spread (RSI) by 1/5.
- [ ] Add a conditional statement to the Buildup Effect (BE) where initial rate of spread is multiplied by a BE of zero if the BUI is less than 80.
**Additional context**
- **Reference:** Alexander M.E. 2010. Surface fire spread potential in trembling aspen during summer in the Boreal Forest Region of Canada. The Forestry Chronicle 86(2), 200-212. https://doi.org/10.5558/tfc86200-2
- Pseudo code for D-2 fuel type equations follows:
```
if(fuel_type == "D-2") {
# Surface Fuel Consumption (Eq.9-25)
SFC = if(BUI < 80) { 0 } else { 1.5 * ( 1 - exp(-0.0183 * BUI) ) }
# Initial Rate of Spread (Eq. 26-34)
RSI = 0.2 * a[d1] * (1 - exp(-b * ISI))^c0
# Buildup effect on spread rate (Eq.54)
BE = if(BUI < 80) { 0 } else { exp( 50 * log(q) * (1/BUI - 1/BUI0) ) }
}
# The following D-1 fuel type parameters can be assigned to the D-2 fuel type
a = 30
b = 0.0232
c0 = 1.6
q = 0.9
BUI0 = 32
Contributor guide
Research direction
Locate the existing D-1 fuel-type implementation and its related tests or entry points in the FBP Python code repository, then read how SFC, RSI, and BE equations are selected by fuel type. Add D-2 using the specified D-1 parameters and BUI conditions, and verify that the acceptance-criteria cases produce the expected values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 72/100