Skip to contents

A structure run's curves carry one row per (cell, timestep, COHORT), because the design they are joined against is per cohort. The biomass column is a WHOLE-CELL total either way, so a two-cohort cell arrives with its trajectory repeated and any naive aggregation counts it twice.

Usage

growth_structure_cell_curves(curves, biomass = c("cell", "cohort"))

Arguments

curves

A tibble of structure-run curves, carrying at least batch, map_code, species, cohort_age, age and aboveground_c_mg_ha. An optional variant column is carried through.

biomass

What aboveground_c_mg_ha MEANS, which differs by extension and cannot be detected from the data. "cell" (the default) is a whole-cell total already, repeated once per cohort by the join, and is de-duplicated. "cohort" is that cohort's own biomass and is SUMMED over the cell's cohorts. Getting this wrong is quiet: de-duplicating per-cohort values keeps one row per DISTINCT VALUE, which is neither a total nor a trajectory.

Value

A tibble with batch, map_code, age, aboveground_c_mg_ha, n_cohorts, composition (a display label, counted: Hw for one cohort, Hw x3 for three), species_set (the species present, for matching) and start_age (the oldest cohort the cell begins with).

Details

This reduces to one row per (cell, timestep) and attaches the cell's composition: how many cohorts it carries and which modelled species, as a +-separated label ordered OLDEST cohort first, so that A+B and B+A are different mixtures rather than the same one.