Overview

This document is a quality-control pass over the data behind AdaptSAT. Here, we review the six databases the tool draws on so we can observe the values and evaluate each layer’s spatial coverage against the percentile logic the sensitivity engine will use.

All Section and Province summaries use USFS Cleland Sections (National Hierarchical Framework of Ecological Units / ECOMAP; Cleland et al. 1997), n = 188, EPSG:5070, clipped to the western states. Everything is moderate-emissions: RCP-4.5 for Climate Toolbox and Davis, SSP2-4.5 for Anderegg, Holden, and Prasad, with Hoecker a single +2 C turnover score. While generally deemed ‘mid-century’, projection windows are not aligned across sources (2040-2069 for Climate Toolbox and Anderegg, ~2035-2065 for Holden, 2031-2050 for Davis, 2071-2100 for Prasad), so each figure states its own horizon and they should not be cross-read as a common date. Value-map fills are Section medians, and these maps are QC overviews. To be clear: the app delivers a point value at the user’s coordinate, not a Section aggregate.

1 · Data sources and variable summary

AdaptSAT draws on six datasets, explored in this document. Climate Toolbox supplies downscaled climate and fire-weather (MACAv2-METDATA plus a monthly water-balance model, a 17-20 GCM ensemble) at ~4 km. Anderegg et al. 2022 contributes modeled wildfire, climate-stress, and insect-mortality risk at ~4 km; its baseline is modeled near-present rather than observed, and the climate-stress layer includes co-occurring insect mortality. Davis et al. 2023 gives post-fire conifer recruitment probability at ~4 km, where low values mean regeneration failure and the likely/unlikely thresholds are species-specific. Holden et al. 2024 provides potential soil-surface temperature and thermal regeneration probability on exposed, post-disturbance ground at 250 m - a seedling thermal barrier, not a canopy climate. Hoecker & Davis yields a Bray-Curtis vegetation-turnover score at ~280 m; the 51 categorical classes behind it are analyzed in the Hoecker section. Prasad et al. 2025 maps tree-species habitat quality and colonization likelihood at ~20 km. Each variable’s baseline, projection window, scenario, units, and exact statistics are in the table below.

The table below holds all variable fields with some summary statistics.

2 · Value maps

Each variable is one combined figure, self-titled, with baseline, moderate-emissions projection, and change panels side by side. Each panel carries its own caption and color key; the change panel is diverging on a symmetric scale where red is an increase, blue a decrease (not good versus bad, so wetter or snowier increases also read red). A few variables are single-panel: Very Large Fire Potential (no RCP-4.5 projection at source, baseline only) and Hoecker turnover (a single change metric).

Climate Toolbox

Downscaled CMIP5 climate and fire-weather (MACAv2-METDATA + monthly water-balance model, ~4 km). These are associated with Fire Risk, Water Stress, Insect & Disease, and Seedling Survival sensitivities. Baseline 1971-2000, projection 2040-2069 (RCP-4.5). ::: mapfig :::

Anderegg

Modeled disturbance/mortality risk (Anderegg et al. 2022, CarbonPlan, ~4 km): annual burn-area exposure (fire), climate-stress mortality (drought + co-occurring insects), and insect mortality. Baseline is a modeled ~2020s, not observed; projection 2040-2069 (SSP2-4.5). The fire layer is a per-pixel expected annual burned fraction. ::: mapfig :::

Davis

Probability of post-fire conifer recruitment (Davis et al. 2023, ~4 km), per species under low- and high-severity fire. Low values mean natural regeneration is unlikely. Baseline 1981-2000, projection 2031-2050 (RCP-4.5). Associated with Fire Risk, Seedling Survival, and Shifting Species sensitivities. ::: mapfig :::

Holden

Potential soil-surface temperature (95th pct) and thermal probability of regeneration on exposed, post-disturbance ground (Holden et al. 2024, 250 m) - a seedling thermal barrier, not a canopy climate. Below ~0.58 a site is thermally marginal. Baseline 1982-2018, projection ~2050 (SSP2-4.5). Associated with Seedling Survival and Shifting Species sensitivities. ::: mapfig :::

Hoecker (vegetation turnover)

Bray-Curtis dissimilarity between contemporary and projected +2 C vegetation composition (Hoecker & Davis, ~280 m): 0 = no change, 1 = complete turnover. A single Section-median map - there is no baseline/projection/change triad because the score is itself a change metric (baseline dissimilarity = 0). Associated with the Shifting Species sensitivity. ::: mapfig :::

3 · Hoecker categorical vegetation

51-class vegetation, contemporary versus the +2 C plurality-vote future. A 280 m cell is 0.0784 km^2. The focus here is forest dynamics: whether forest persists, opens to woodland, or is lost.

Overall vegetation transition rate by Section (share of each Section’s cells that change class):

Forest-based transitions

The 51 classes are collapsed into structural bins so that forest loss can be read separately from canopy opening. Forest = interior aspen-mixed conifer (29), the conifer forest classes (31-44), and Mediterranean subalpine forest/woodland (45). Woodland = the woodland classes (23-28), pinyon-juniper woodland/shrubland (27, within that range), pine woodland & savanna (30), and subalpine woodland (46). Everything else is non-forest (barren/sparse, grassland, shrubland, subalpine non-forest, wetland/riparian). Forest and woodland are kept as distinct bins on purpose: it lets forest -> woodland (canopy opening, thinning toward an open structure) be separated from forest -> non-forest (outright forest loss). Note: the figure below does not account for the specific acreage of forest within each of the mentioned sections.

Forest fate by Section, with baseline forest area (cells x 0.0784 km^2), sorted by area lost out of forest:

4 · Prasad species range shifts

End-of-century (2071-2100), SSP2-4.5, ~20 km. Prasad has no Section grain by design (20 km is too coarse per Section), so all maps are on the native point grid over a Section outline.

How to read the fate matrices. Each cell counts species-points whose baseline habitat-quality class (rows) becomes a given end-of-century class under SSP2-4.5 (columns). The diagonal (bottom left to top right) is no class change. Mass below the diagonal (toward Low and Absent) is habitat loss; mass above it is gain. Color is on a log scale because the no-change cells dominate. The first matrix is all species-points; the second restricts to species established at baseline (Medium or High and Occupied), which removes the large Absent-to-Absent cell and shows the trajectory of the community actually present today.

5 · Coverage maps

AdaptSAT’s analysis mirrors FIP in that it is based on the 188 Cleland Sections that overlap the western states, and the coverage maps are cropped to that western extent. A Section renders grey where the source has no data.

How much data is there, and at what grain? Sections and Provinces differ in size, so the number of source cells falling inside each one differs too. The table below counts, per source and grain, how many units have thin coverage. This matters for the percentile-distinctiveness signal, which reads each unit’s 99th percentile and compares it across units: where a unit holds few cells, its p99 rests on very few points, so the percentile is less decisive (around 500 points only ~5 sit above the 99th percentile, so the tail is noisy, and well below that it collapses toward the maximum). We mark units under 500 points sparse and 500-1000 marginal. This is about percentile resolution, not the median value-map fill, which is stable from far fewer points. Province vs. Section grain: pooling to Province reduces thin cells but does not eliminate them (Anderegg and Davis still leave thin Provinces), so the comparison in the table guides the grain choice rather than defaulting to one.

A thin Section is often not a data problem. Four of the five sources (i.e., Anderegg, Davis, Holden, Hoecker) store rows only where their target cover exists (masked to presence), so a low count usually means little forest or relevant cover in that Section, not coarse sampling: those Sections may simply have little at stake. Climate Toolbox is the exception: it is a full CONUS climate grid, so its per-Section counts track Section area; a thin CT Section is a small Section.

Reading the maps. Each source is one figure with Section and Province panels side by side, cropped to the western data (the panels share a crop box so no data-bearing unit is cut off). Each data-bearing unit is filled by point count on a log scale; no number is printed on the map. Grey is no data for that source - so a Section where a Davis species is absent reads grey. There is no on-map flag for thin coverage: the sparse (<500) and marginal (500-1000) Sections are enumerated in the tables above and below, which are the sole record of which units are thin.

Climate Toolbox

CONUS climate grid (not forest-masked): points-per-Section track Section area, so a thin CT Section is a small one, not a gap.

Total points: 189,815 across all Sections with data.

Coverage flags. 3 of 90 Sections with data are sparse (<500 points) and 14 marginal (500-1000); at Province grain, 0 of 18 are sparse and 0 marginal.

Anderegg et al. 2022

Masked to the modeled extent; baseline is modeled near-present (~2020s), not observed.

Total points: 42,394 across all Sections with data.

Coverage flags. 54 of 85 Sections with data are sparse (<500 points) and 16 marginal (500-1000); at Province grain, 7 of 17 are sparse and 2 marginal.

Davis et al. 2023

Coverage is per species (one 2-panel figure each). High and low severity share an identical per-species mask, so severity is collapsed - one figure per species, not per species x severity. A Section reads grey where that species is absent.

Total points: 2,001,180 across all Sections with data.

Coverage flags. 15 of 74 Sections with data are sparse (<500 points) and 4 marginal (500-1000); at Province grain, 2 of 17 are sparse and 0 marginal.

White / Grand fir

Subalpine fir

Lodgepole pine

Engelmann spruce

Ponderosa / Jeffrey pine

Douglas-fir

Holden et al. 2024

Masked to presence; PSST is potential exposed post-disturbance soil-surface temperature (a regeneration barrier), not a canopy climate.

Total points: 49,110,927 across all Sections with data.

Coverage flags. 0 of 90 Sections with data are sparse (<500 points) and 0 marginal (500-1000); at Province grain, 0 of 18 are sparse and 0 marginal.

No sparse or marginal Sections for this source.

Hoecker & Davis

Covers all 51 vegetation classes incl. grassland/shrubland/barren, so coverage is broad (not forest-restricted).

Total points: 62,689,815 across all Sections with data.

Coverage flags. 0 of 90 Sections with data are sparse (<500 points) and 0 marginal (500-1000); at Province grain, 0 of 18 are sparse and 0 marginal.

No sparse or marginal Sections for this source.

6 · Distributions

Per source: exact SQL-binned histograms of every grid cell’s value across the western extent (full min-to-max range, so sentinels show up as isolated bars at the edges), with the RCP-4.5 / SSP2-4.5 projection overlaid (outline) on the baseline (filled). The bars are counts of individual grid cells by value - pooled across all Sections, not per-Section so they show the overall shape of the data and how it shifts under projection. (The percentile-distinctiveness signal the engine uses works within each Section’s own distribution, which a pooled histogram doesn’t show directly; this view is for range and shape QC.) Hoecker is single-series (one turnover score, no baseline/projection pair).

Climate Toolbox

Variable Season Units
High Fire Danger Days summer (JJA) days (FM100 < 20th pctile)
High Fire Danger Days fall (SON) days (FM100 < 20th pctile)
Percent Area Burned annual % burned/yr
Maximum Temperature summer (JJA) °F
Very Large Fire Potential summer (JJA) very-large-fire index
Very Large Fire Potential fall (SON) very-large-fire index
Vapor Pressure Deficit summer (JJA) kPa
Climatic Water Deficit summer (JJA) inches
Precipitation annual inches
Precipitation summer (JJA) inches
Soil Moisture summer (JJA) inches
Snow Water Equivalent (spring) spring (MAM) inches
Growing Degree Days (base 41°F) annual GDD (base 41°F)
Minimum Temperature winter (DJF) °F
First Fall Freeze annual day of year
Last Spring Freeze annual day of year
Number of Warm Days annual days > 86°F
Mean Temperature annual °F

Anderegg et al. 2022

Variable Season Units
Annual Burn Area Risk NA expected fraction burned/yr
Climate-Stress Mortality Risk NA fraction of basal area/yr
Insect-Driven Mortality Risk NA fraction of basal area/yr

Davis et al. 2023

Variable Season Units
Post-Fire Recruitment - Ponderosa / Jeffrey pine (low-severity fire) NA probability (0-1)
Post-Fire Recruitment - Ponderosa / Jeffrey pine (high-severity fire) NA probability (0-1)
Post-Fire Recruitment - Douglas-fir (low-severity fire) NA probability (0-1)
Post-Fire Recruitment - Douglas-fir (high-severity fire) NA probability (0-1)
Post-Fire Recruitment - White / Grand fir (low-severity fire) NA probability (0-1)
Post-Fire Recruitment - White / Grand fir (high-severity fire) NA probability (0-1)
Post-Fire Recruitment - Lodgepole pine (low-severity fire) NA probability (0-1)
Post-Fire Recruitment - Lodgepole pine (high-severity fire) NA probability (0-1)
Post-Fire Recruitment - Engelmann spruce (low-severity fire) NA probability (0-1)
Post-Fire Recruitment - Engelmann spruce (high-severity fire) NA probability (0-1)
Post-Fire Recruitment - Subalpine fir (low-severity fire) NA probability (0-1)
Post-Fire Recruitment - Subalpine fir (high-severity fire) NA probability (0-1)

Davis recruitment thresholds are species-specific - a thresh_high/thresh_low pair per species group from Davis et al., not a single global cutoff - so read each panel against its own likely / marginal / unlikely zones. Sanity checks: values stay in [0, 1], and each low-severity median sits above its paired high-severity median.

Holden et al. 2024

Variable Season Units
Potential Soil-Surface Temperature (95th pct) NA °F
Thermal Probability of Regeneration (10% canopy) NA probability (0-1)
Thermal Probability of Regeneration (20% canopy) NA probability (0-1)

The dashed line marks the 0.58 regeneration-viability threshold (the optimal classification cutoff from Holden et al.): below 0.58 a site is thermally marginal/unsuitable for forest. Holden has no stored binary layer - 0.58 is the binary. Where 140 F (60 C) falls within a PSST panel’s range, that lethal soil-surface band is also marked.

Hoecker & Davis

Variable Season Units
Vegetation Vulnerability (Bray-Curtis turnover) NA dissimilarity (0-1)

Hoecker’s score is a Bray-Curtis dissimilarity between contemporary and projected +2 C composition, scaled 0-1: 0 = no compositional change (future identical to today), 1 = complete turnover. Unlike the other sources it is itself a change metric with no separate baseline/projection pair (baseline dissimilarity is implicitly 0), which is why it gets a single-series histogram.

Open questions for the sensitivity & RAD logic

1. How should thin Sections be handled? The percentile-distinctiveness signal needs enough cells in a unit for a stable tail; below ~500 the 99th percentile is noisy, and a handful of Sections (and, for the masked sources, more than a handful) fall under that. Pooling to Province grain reduces the problem but does not eliminate it altogether. Potential options: do we (a) fall back to Province context whenever a Section is thin, accepting a coarser comparison; (b) withhold the percentile signal for that layer in that Section and let the threshold signal carry it; or (c) define an explicit “insufficient data” state that suppresses the trigger rather than firing on noise? Option (c) is the most honest but needs a fallback so a thin Section isn’t simply silent. Maybe a Province-level percentile with a confidence flag. This is a Signal 1 (percentile) problem specifically; the threshold signal is unaffected.

2. How should overlapping sensitivities be triggered gracefully? Many variables feed more than one sensitivity (max temperature and VPD into both Fire Risk and Seedling Survival; min temperature and growing-degree-days into Insect & Disease and Seedling Survival; Davis into three), as the Sensitivity column in Section 1 shows. A “flag the sensitivity if any of its variables fires” double-counts shared drivers and lets a sensitivity with more associated variables dominate. The concern-score normalization (proportion of a sensitivity’s variables flagged) is a start, but the cleaner question is how shared variables should contribute - once, weighted, or per-sensitivity - so that a single hot driver doesn’t light up three sensitivities and crowd the top-3 ranking.

Standing data caveats. Value-map fills are Section medians (a QC view, not the delivered point value). Projection horizons differ by source (see Overview). The Anderegg baseline is modeled ~2020s, not observed, and its fire layer is a per-pixel expected annual burned fraction. VLFP is RCP-8.5-only at source, so only its baseline is shown. Holden PSST is potential exposed post-disturbance soil-surface temperature, not a canopy climate. Prasad is ~20 km, too coarse for Section-grain stats, and its established filter uses the 4.5 Occupied tag as a baseline-presence proxy. Two edge Sections (313D, 413E) fall below 500 pixels.