Skip to content

Farsite mode: match the mbedward/farsite reference #265

Closed

Description

@antonio-leblanc

Make the Farsite propagation model give the same surface spread as mbedward/farsite (head/flank/back ROS and length-to-breadth ratio) for the 13 fuel models across wind, slope and moisture. Add a test comparing both, extending tests/python/farsite_flat.py, then fix one difference per PR. Includes the unused Farsite.adjustementWind (#161). Crown fire and spotting are out of scope.

Activity

  1. antonio-leblanc commented on Nov 10, 2026

    @antonio-leblanc
    CollaboratorAuthor

    first step is the test in #268, no change in src/

    what it shows

    • head ROS is the same as the reference (6 digits, 468 cases, 13 fuel models) when the inputs are the same, so no porting bug in getSpeed
    • on slope the model gets sinθ instead of tanθ and the wind × cosθ, because the normal has a z (FireNode.cpp:591). at 30° the head ROS is 75-100% of the reference
    • flank and back are R0, there is no ellipse. flank is 4-9x slower than the reference

    next PRs

    • slope: convert back to tanθ and horizontal wind only inside the farsite model
    • ellipse (richards) for flank, back and L/B

    rothermel and balbi get the same sinθ, if its on purpose is up to filippi, im not touching them

  2. antonio-leblanc commented on Nov 11, 2026

    @antonio-leblanc
    CollaboratorAuthor

    done with #268 #269 #270. farsite now matches mbedward/farsite at head, flank and back on flat ground
    on slopes with wind still approx, the model only sees the slope along the normal. to match it needs the whole slope vector from the core, up to filippi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions