Rate-of-Spread
- ROSWRFFire
model
wildland_fire
fire_behavior
Rate of spread normal to the fire front as evaluated by fire_behavior's Calc_ros_wrffire (physics/ros_wrffire_mod.F90) at one cell and time step, from the level-set normal (nvx, nvy), the mid-flame wind (uf, vf), the terrain slope and the cell's Rothermel constants (RothermelWRFFire). With FIRE_ADVECTION = 1 (the compiled setting) the wind and slope factors are evaluated from the TOTAL wind speed and TOTAL slope and then multiplied by the clipped cosines of their angles to the spread direction: ros = min(r_0 (1 + phi_w(|U|) cos_w + phi_s(|grad z|) cos_s), 6 m/s) with cos_w = max(0, U.n/|U|), cos_s = max(0, grad z . n/|grad z|). DIFFERENCE from EarthSciModels level_set_fire_spread.esm (Mandel 2011 form phi_W(max(0, U.n)), phi_S(max(0, grad z . n)^2)): there the PROJECTED speed enters the power laws, |U|^B cos_w vs (|U| cos_w)^B and |grad z|^2 cos_s vs (grad z . n)^2, and that file has neither the 30 m/s wind cap, the 6 m/s ROS cap nor the chaparral branch, so it is not reused. Chaparral (ischap > 0) uses the Clark et al. (2004) law ros_wind = max(1.2974 |U|^1.41, 0.033) m/s with no base or slope term. Tests: per-cell values of the instrumented test7 run (ls_tend dump, RK stage 1 of step 20, t = 10 s; real32; FORTRAN's speed and slope carry tiny(real32) additions reproduced here), rel 1e-5.
- RothermelWRFFire
model
wildland_fire
fire_behavior
Rothermel (1972) fuel-bed spread parameters as evaluated by fire_behavior's Set_ros_parameters_wrffire (physics/ros_wrffire_mod.F90) for one cell: from the category's fuel properties and the ground fuel moisture, the packing ratio, optimum packing ratio, reaction velocity, moisture and mineral damping, reaction intensity, propagating flux ratio, heat of preignition and effective heating number, and hence the no-wind no-slope spread rate r_0 (ft/min, and ros_base in m/s), the wind-factor coefficients bbb (exponent B) and phiwc, and I_R t_r (iboros) for Byram's flame length. The fits are evaluated in US customary units exactly as the Fortran does (SI load and depth converted with 0.3048 and 2.205), so the intermediates are dimensionless carriers of lb/ft^2, ft, 1/ft, Btu/lb quantities. DIFFERENCES from the EarthSciModels rothermel/fire_spread.esm (Andrews 2018 SI form), which is therefore NOT reused: (1) the reaction-velocity exponent is Rothermel's original A = 1/(4.774 savr^0.1 - 7.27), not Albini's 133 savr^-0.7913; (2) the net load is w_0/(1 + S_T), not w_0 (1 - S_T); (3) the moisture ratio and the mineral damping are not capped at 1; (4) the load entering the fits is the DRY part (1 - M/(1+M)) of fgi, fire_behavior treating fgi as the moist load; (5) the wind factor is split into the cell constants B and phiwc = C (beta/beta_op)^-E applied per time step in ROSWRFFire. The no-fuel category (has_fuel = 0) returns betafl = bbb = 1, phiwc = r_0 = iboros = 0 as the Fortran does. Tests are the dumped per-cell intermediates of the instrumented fire_behavior test7 run (real32; a real64 re-evaluation of the same formulae agrees to <= 8e-7 relative), rel 1e-5.