You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FARSITE and FlamMap can offer a usable workflow because LANDFIRE gives the US a harmonised national fuel-model raster. Europe has no LANDFIRE, which is why users hit the landscape-file wall (#167, #169).
What is missing is one entry point:
ff.new_case(bbox=(...), date="2023-08-10T14:00Z")
Bounding box and date in, runnable case out, pulling Copernicus DEM plus CORINE or ESA CCI land cover plus ERA5 wind — all free and API-accessible across Europe. Mostly Python glue over existing pieces: no C++, no conflict with the session refactor, and it kills #167 as a side effect.
What already exists in the repository
tools/preprocessing/extract_from_eu_land_cover.py, satImage2fuel.py, learnFuelTifPng.py, tifToPngFuel.py, lidar2fuel.py — several independent attacks on the land-cover-to-fuel problem.
FUELCOVER.md — 88 lines cataloguing ESA CCI (11 classes), CORINE CLC and S2GLC, each with codes, definitions and colours.
A correction that changes the estimate
FUELCOVER.md is often described as containing the land-cover-to-fuel crosswalk. It does not. Its ESA CCI table has a "Corine Land Cover" column that is empty in all 11 rows, and nothing in the file mentions ForeFire fuel indices, fuels.csv, or any propagation model. The mapping from land-cover class to fuel index does not exist there or anywhere else in the repository.
So the expensive expert-judgement step is ahead of this work, not behind it — the main risk to scope, better known now than discovered midway. It is also the most valuable part to publish: a defensible European land-cover-to-fuel crosswalk is a citable artefact on its own.
FARSITE and FlamMap can offer a usable workflow because LANDFIRE gives the US a harmonised national fuel-model raster. Europe has no LANDFIRE, which is why users hit the landscape-file wall (#167, #169).
What is missing is one entry point:
Bounding box and date in, runnable case out, pulling Copernicus DEM plus CORINE or ESA CCI land cover plus ERA5 wind — all free and API-accessible across Europe. Mostly Python glue over existing pieces: no C++, no conflict with the session refactor, and it kills #167 as a side effect.
What already exists in the repository
tools/preprocessing/extract_from_eu_land_cover.py,satImage2fuel.py,learnFuelTifPng.py,tifToPngFuel.py,lidar2fuel.py— several independent attacks on the land-cover-to-fuel problem.genForeFireCase.py— the NetCDF writer, currently deleted; see genForeFireCase.py is documented in four places but is not in the repository #167.FUELCOVER.md— 88 lines cataloguing ESA CCI (11 classes), CORINE CLC and S2GLC, each with codes, definitions and colours.A correction that changes the estimate
FUELCOVER.mdis often described as containing the land-cover-to-fuel crosswalk. It does not. Its ESA CCI table has a "Corine Land Cover" column that is empty in all 11 rows, and nothing in the file mentions ForeFire fuel indices,fuels.csv, or any propagation model. The mapping from land-cover class to fuel index does not exist there or anywhere else in the repository.So the expensive expert-judgement step is ahead of this work, not behind it — the main risk to scope, better known now than discovered midway. It is also the most valuable part to publish: a defensible European land-cover-to-fuel crosswalk is a citable artefact on its own.
Suggested decomposition
genForeFireCase.py(genForeFireCase.py is documented in four places but is not in the repository #167) — everything here writes through it.new_case(); validate with A landscape validation command #169.Steps 1 and 2 are worth doing even if the rest is never built.
Drafted by Claude Opus 5 from a codebase audit. Reviewed by a maintainer before filing.
EDIT: rewrote for human readability.