TFL 6 LidarBC Fixture
examples/lidar_tfl6 is a small public FHOPS scenario built from seven clipped VRI polygons
(about 100 ha) in the TFL 6 pilot AOI and FEMIC bundle
lidarbc-995fb1f771f4d7fe / 2026.10.0-tfl6-pilot. It is a public example, not a production
dataset or a field inventory.
What It Exercises
Native 1 m block and landing slope/CHM support rows.
A road construction job with optional road geometry.
Bundle/product checksums, selection provenance, OGL-BC attribution, and the scenario
lidar_supportcontract.The advisory P14.4 ground/cable/helicopter classifier, including explicit mismatches and labelled class-average roughness fallbacks.
A short simulated-annealing schedule smoke test.
Terrain And Canopy Evidence
The block support values are the native-resolution means used by the WS4/FEMIC shared-AOI parity check. The assessment also compares each block with its landing slope; the class below is the reported terrain class.
Block |
Work (m³) |
Slope (%) |
CHM (m) |
Class |
Current system |
|---|---|---|---|---|---|
|
108.6 |
18.09 |
10.65 |
ground |
|
|
44.8 |
51.55 |
19.20 |
cable |
|
|
104.5 |
19.69 |
1.08 |
ground |
|
|
1462.4 |
22.59 |
8.70 |
ground |
|
|
122.5 |
40.47 |
13.97 |
cable |
|
|
132.6 |
22.01 |
1.99 |
ground |
|
|
24.7 |
27.32 |
16.54 |
ground |
|
Work volumes, machine rates (500 m³ per machine-day), landing capacity, and the road job are synthetic smoke-test values. Only the LiDAR values and clipped VRI geometry are source data.
Files
examples/lidar_tfl6 contains:
scenario.yaml: bundle pin, support rows, and scenario metadata;blocks.geojson,landings.geojson,roads.geojson: EPSG:3005 support geometry;data/: block, machine, landing, calendar, and productivity tables;provenance.json: bundle/product checksums, licence, selection, and synthetic-table labels;README.md: operator summary.
Commands
fhops scenario lidar validate /path/to/lidarbc-995fb1f771f4d7fe
fhops scenario lidar operability examples/lidar_tfl6/scenario.yaml --json
fhops solve-heur examples/lidar_tfl6/scenario.yaml \
--out /tmp/tfl6-assignments.csv --iters 200 --seed 7
The P14.5 smoke solve returned objective 1434.900, production 1717.5 m³, three completed
blocks, and zero sequencing violations. This is a schedule smoke test, not an optimality or
financial-feasibility claim.
Regeneration
The fixture can be regenerated from the bundle and clipped VRI layer:
python scripts/build_p14_lidar_fixture.py \
--bundle /path/to/lidarbc-995fb1f771f4d7fe \
--vri /path/to/vri_aoi.geojson
The script writes deterministic tables, support rows, provenance, and README, then validates the
scenario through the normal FHOPS loader. It requires fhops[lidar].
Parity And Limits
The seven block slope/CHM means match the WS4 P52 / FEMIC P79.9 shared-AOI rows to the recorded
six-decimal precision (maximum absolute difference 0.0). The fixture is not a provincial
scenario, does not include the source rasters or bundle, and does not claim field accuracy,
calibrated cost, or production readiness. Cable/helicopter recommendations stay advisory; the
fixture intentionally supplies only ground-based machines so the mismatch is visible.