# TV010 v28 Cascade Head field audit — 13 September 2026 Reproduce the counts with `python audit_tv010.py`; full stand-by-census counts and code distributions are in `tv010_audit.json`. Input is the five ZIPs supplied in `D:/Downloads`. The four entity filenames end in `v2` or `v21`; those are **entity revisions**, while the dataset catalog identifies the combined package as **TV010 version 28**, published 4 June 2025, EDI `knb-lter-and.2742.28`. [DOI](https://doi.org/10.6073/pasta/dc4be3db15934e0e5eb4820f56e5d569); [catalog and CC BY 4.0 licence](https://andrewsforest.oregonstate.edu/data/datacatalog/TV010). Citation: Franklin, J.; Bell, D.; Remillard, S.; Pabst, R.; Bluhm, A.; Powers, M. 2025. *Long-term growth, mortality and regeneration of trees in permanent vegetation plots in the Pacific Northwest, 1910 to present*. Andrews Forest LTER / Forest Science Data Bank. TV010 v28. DOI above. Accessed 13 September 2026. ## Coverage before fitting `CH01`, `CH03`–`CH13` are the twelve catalogued Cascade Head hemlock–spruce stands (`HSGY`). Hoh River `HR`, Neskowin/Quinault `HS`, and `NCNA` are **not** Cascade Head stands. The 1999 [Cascade Head plot report](https://andrewsforest.oregonstate.edu/sites/default/files/lter/pubs/webdocs/reports/permplot/psp3.htm) describes twelve original one-acre square plots, established in 1935, with nine then remaining; tree recruitment monitoring starts in the late 1970s/1983. The table calls the catalog's `STANDID` a stand and preserves `PLOTNUMBER` as a subplot/plot identifier. The supplied files contain no surveyed corner geometry or within-plot tree positions for these stands. A one-acre description does not make the four `PLOTNUMBER` labels independent acres. The report says original plot 6 ended after blowdown in 1955, while TV010 CH06 has residual/revisit rows through 2019 (28 PISI dead-status rows in 1962 and four PISI rows in 2019). CH09 ends in 1945 as reported. This difference needs provider clarification before treating every stand-year as the same intact sampled area. | Stand | PISI TREEIDs | Remeasurements | Mortality rows | Height rows | 1935 AGE samples | XY pairs | |---|---:|---:|---:|---:|---:|---:| | CH01 | 6 | 45 | 4 | 13 | 1 | 0 | | CH03 | 76 | 796 | 43 | 122 | 9 | 0 | | CH04 | 122 | 1,329 | 59 | 173 | 11 | 0 | | CH05 | 114 | 1,180 | 61 | 179 | 11 | 0 | | CH06 | 39 | 177 | 35 | 39 | 4 | 0 | | CH07 | 44 | 480 | 25 | 65 | 5 | 0 | | CH08 | 4 | 46 | 2 | 9 | 1 | 0 | | CH09 | 160 | 470 | 23 | 70 | 12 | 0 | | CH10 | 441 | 1,781 | 70 | 174 | 8 | 0 | | CH11 | 398 | 2,302 | 337 | 6 | 0 | 0 | | CH12 | 32 | 322 | 19 | 59 | 5 | 0 | | CH13 | 17 | 187 | 6 | 50 | 5 | 0 | | **Total** | **1,453** | **9,115** | **684** | **959** | **72** | **0** | The all-species neighbour pool has 43,899 remeasurement rows and 3,864 mortality rows; western hemlock dominates, with Douglas-fir and alder also present. Entity 1 has only 157 initial-condition rows in these stands (72 PISI), all dated 1935, and **none has both XCOORD and YCOORD**. The metadata defines those fields in metres, but the coordinates advertised by the entity title are entirely blank here. This is a Cascade Head coverage gap, not a universal defect in entity 1: across all 51,491 initial-condition rows, 31,011 have X/Y pairs, including 330 of 4,166 `HSGY` rows outside the selected Cascade Head stands. Only 68 of the 72 PISI initial TREEIDs occur in entity 2; 1,385 of 1,453 measured PISI TREEIDs have no initial-condition row. This entity is an age/condition subsample, not a full initial census. All 684 PISI mortality TREEIDs join to the remeasurements; all 3,864 all-species mortality TREEIDs do. No TREEID changes stand/plot/species across entities 1–3, and no duplicate TREEID-year occurs in entity 2. Entity 4 has **no TREEID**; stand/plot/tag/species/ year yields 2,302 unique all-species matches, 305 unmatched and zero ambiguous matches, but tag changes and sampling must be considered before using heights longitudinally. AGE is sampled for 72 PISI initial rows (range 63–80 years in 1935), of which 68 join the measured population; the other 1,385 measured PISI TREEIDs have no initial AGE row. It is not a universal age field. This selected, fire-origin cohort does not give a field young/mature/250+ census. Of 9,115 PISI remeasurement rows, `TREE_STATUS` is 7,977 living, 453 ingrowth, 684 dead, and one missing. `DBH_CODE` is 8,378 normally measured (`G`), 685 missing (`M`), 45 estimated (`1`,`2`,`3`,`8`), six adjustment-needed (`A`), and one verified (`V`); 685 DBH cells are blank. DBH is centimetres at 1.37 m. `SAMPLEDATE` may use the first of a month when the day was not recorded. Of consecutive positive-year PISI remeasurements, 5,112 intervals are five years, 534 six years, and the remainder span 1–13 years (full breakdown in JSON). The **6,563** living-to-living, `G`/`G` intervals have both measured diameters; 270 have negative and 412 zero differences. Neither should be silently clipped when reporting field growth. The 453 ingrowth rows mean entry across the current **≥5 cm tagged DBH threshold**, not germination or exact establishment; historic original tagging was ≥1.6 inches and later recruitment was incompletely followed. Mortality is recorded at census, so the death lies after the last living observation and no later than that census, unless a note gives more detail. The cause is a field assessment, not an exact mechanism: among 684 PISI deaths, primary causes are 119 suppression, 71 windthrow, 34 windsnap, 10 broken top, 9 crushed by green tree/limb, 10 disease, 6 bark insect, 366 unknown and 50 unable-to-determine, with small other categories in JSON. `MORT_CAUSE2` is blank/unknown (`99`) for 631. The last observed PISI DBH before death lies in 5–20/20–50/50–100/100+ cm classes for 389/134/147/14 records. Among prior-live, good-DBH records with a later census, those classes have 386/2,442, 134/958, 145/3,446 and 13/766 next-census deaths (15.8%, 14.0%, 4.2%, 1.7%). Intervals differ in length, plot and period; these are **observed follow-up proportions, not an annual or causal hazard**. Local crowding at the dying stem is unavailable. ## Field-only relationships and missing comparisons Using only living-to-living `G`/`G` endpoints, interval DBH change divided by year separation has p10/median/p90 **0/0.225/0.600 cm/year**. By initial DBH 5–20, 20–50, 50–100 and 100+ cm, medians are 0.16, 0.08, 0.26 and 0.44 cm/year (n=1,711/822/3,291/739). These marginal classes confound age, site, survival and period; negative changes remain in the quantiles. In the selected age-known subset, 610 intervals give medians 0.354 cm/year below age 100 (n=238), 0.300 at 100–149 (n=337), and 0.400 at 150+ (n=35). That sparse oldest bin is not evidence for a general old-tree release law. Stand medians range 0.16–0.44 cm/year; they are **site/stand contrasts, not mapped-neighbour effects**. The supplied entities have stand identity but no tree-level site index or topographic exposure field, so the model's S2 site score cannot be fitted here. | Census | Good PISI DBH p10 / median / p90 (cm) | Good all-species subplot Dq p10 / median / p90 (cm) | PISI / all-species rows | |---|---|---|---| | 1935 | 39.4 / 58.9 / 83.8 | 40.1 / 47.4 / 61.9 | 656 / 2,336 | | 1978 | 50.0 / 75.7 / 106.7 | 50.3 / 62.3 / 76.6 | 352 / 1,319 | | 1998 | 7.3 / 77.0 / 113.1 | 26.8 / 40.6 / 63.3 | 390 / 2,838 | | 2019 | 6.1 / 14.5 / 116.0 | 22.7 / 36.0 / 47.8 | 568 / 3,542 | These are cross-census marginals from different sampled plots and tagged populations, **not** paired individual changes. The Dq is calculated within `STANDID`+`PLOTNUMBER`, mixing all species; it is not the model's 12 m local Dq. The real stand is chiefly western hemlock whereas SpruceDraw generates Sitka spruce, so even a correctly measured plot Dq is a mixed-stand context, not a direct pure-Sitka model target. We cannot compute exact stems/ha, S5 boundary agreement or a point pattern from these files without verified subplot areas and coordinates. Whole-stand spatial aggregation/spacing, contemporaneous 12 m neighbours, before/after release, nor ingrowth *after a mapped opening* is identified. Of 453 PISI ingrowth rows, 449 share a plot and census year with at least one all-species death; that broad co-occurrence has no within-interval order, opening footprint or causal attribution. No source-calibrated S7 coefficient or exact establishment/death time is inferred. ## Focused hypothesis scan: CH10 recruitment and relative notes A second pass through the raw text fields finds **partial spatial evidence** that the empty X/Y columns concealed. CH10 accounts for 393 of the 453 PISI ingrowth records: 32/58/58/81/74/90 in 1993/1998/2003/2008/2013/2019. CH11 contributes 59, mostly in 1951–56; CH12 contributes one. CH10's 1993 entries are concentrated in `PLOTNUMBER` 1 (29/32), with later entries spread across the four labels. This is a testable *plot-level recruitment wave*, not evidence that birth happened in 1993 or that a particular tree opened the site. Tagging practices, changing plot coverage and detection of >5 cm stems must be checked before comparing ingress rates across stands. For all 164 CH10 PISI ingrowth rows in 2013 and 2019, `CHECK_NOTES` gives a pattern like `from 196, 3 m at 36 deg`: a reference tag, distance and bearing. At the same stand and census, 163 references resolve uniquely to a living tree (147 PISI, 16 TSHE); 13 references cross a `PLOTNUMBER` boundary. One reference does not resolve. The recorded distance has p10/median/p90 1.0/3.4/6.7 m (range 0–11 m; the zero requires review). **93** recruits are recorded within 5 m of a matched living tree whose DBH is at least 50 cm. This supports the existence of tagged recruits close to large surviving trees and can challenge a blanket five-metre recruitment exclusion. It does **not** identify the nearest neighbour, complete competitive neighbourhood, absolute position, slope correction, survey accuracy or causal release. The original 5 m source applies to overstory-overstory spacing, not this tagged recruit-to-large-tree relation. Relative notes also occur for TSHE ingrowth in several other stands; coverage is selective. Field documentation of the bearing and distance convention is still needed before using the vectors as coordinates. **13 September follow-up: public master table and note topology.** The [TV010 catalog](https://andrewsforest.oregonstate.edu/data/datacatalog/TV010) says master tree IDs and spatial coordinates moved to TP001. However, the published [TP001 v6 catalog](https://andrewsforest.oregonstate.edu/data/datacatalog/TP001) lists only 12 attributes for its downloadable `TP00101_v13.csv` master-tree entity: database/entity/tree/study/stand/plot/quarter/species identifiers, tag history, field note, comments and NNT. **No X/Y field is exposed in that public entity.** This is a metadata check, not a row-level audit of TP001 or a claim that the provider has no internal maps. The TP001 catalog exposes no separate spatial-position entity. Its plot-activity entity may help with sampling coverage but does not supply individual stem positions. Rechecking the held TV01002 rows: all 74 CH10 PISI ingrowth notes in 2013 and all 90 in 2019 match the distance/bearing pattern. Of their 164 references, 163 join to a living tree at that census (147 PISI, 16 TSHE); 52 distinct trees serve as anchors. One 2019 anchor was itself a 2013 recruit. Linking by stable TREEID yields **51 disconnected components**, largest 18 trees; the other 50 are smaller. No same-census recruit anchors another recruit. The unmatched note is tag 412 in 2013 referring to tag 204. Two bearings are written as 360 degrees; one zero-distance note also says the recruit shares a base with a different tag. These are reasons to retain the recorded distances as selective pair observations, not solve for a stand-wide map or assume a verified compass convention. The 93 within-5-m, ≥50-cm-anchor pairs remain a bounded coexistence observation, not a nearest-neighbour distribution. **Model consequence:** this follow-up does not identify S7's 12 m neighbour index or S5's local Dq. First bring the optional event-time algorithm to numerical stability under smaller growth/mortality steps using the existing fixed attempts and events. Then compare observable pair and interval summaries with matched field definitions, and seek surveyed coordinates or field-map access before fitting local competition or mortality timing. No biological parameter or production path changes from this research. ## Model decision For the requested side-by-side review, the **field** column is: young/mature/ 250+ counts **unidentified** outside 68 joinable selected age samples; measured PISI DBH and mixed-species subplot Dq **as above**; 12 m Dq, complete spacing/aggregation and S5 boundary **unidentified** without coordinates and verified subplot geometry; individual before/after release **unidentified**; specimen acceptance, branches, foliage occupancy and raster-visible canopy **model-only quantities**. The **model** column for all four historical baselines plus the event candidate is in `stand_history_validation.md`: it keeps all those measures separate rather than turning missing field values into apparent agreement. Field height rows exist but are sampled and lack TREEID; they do not validate branch count, foliage or canopy visibility. The separate September 12 [model ledger](stand_history_validation.md) already shows the optional candidate preserves ordered events, stable IDs, release without instantaneous wood gain, camera invariance, deterministic renders and the terminal S5 ceiling, but loses young/old stems and canopy on fixed seeds and fails 5/10/20-year numerical convergence. TV010 now supplies real interval growth and mortality bounds, yet lacks the mapped and all-age histories needed to identify the candidate's S7 release response, S6 occupancy or S5 death schedule. **No candidate or provisional numeric parameter is changed from these data, and production stays survivor-first.** Model counts, local Dq, spacing, specimens, branches, foliage and raster canopy remain reported separately in that ledger; field measurements are not treated as comparable raster scores.