T. rex Growth Curve Estimation — Dimorphism Bias Simulator

Generates synthetic cortical growth mark (CGM) records from two morphs with different asymptotic sizes, then fits a single pooled logistic curve using the Woodward et al. (2026) simultaneous start-age estimation approach. Quantifies whether pooling produces systematic lifespan overestimates or peak-growth-rate underestimates.

Raw CGM Growth Series

Each line = one specimen's record (circumference vs. CGM count within that bone). Absolute ages are unknown, as in a real fossil study. Large morph in amber, small morph in teal.

Large morph (male)
Small morph (female)

True Age-Aligned CGM Series

Each specimen's CGM series plotted at its true simulated absolute age. This shows the actual growth trajectories that generated the data, before any estimation bias from the pooled fitting process.

Large morph specimens (true ages)
Small morph specimens (true ages)

Recovered vs. True Curves (Age-Aligned)

After simultaneous start-age estimation + logistic sigmoid fit on the pooled sex-blind sample.

True large-morph curve
True small-morph curve
True average (m+f)/2
Recovered pooled fit

Age-Aligned Specimens + Pooled Fit

Each specimen's CGM series plotted at its estimated absolute age (after simultaneous start-age estimation). The optimizer sees exactly this scatter when fitting the red pooled curve.

Large morph specimens (age-aligned)
Small morph specimens (age-aligned)
Recovered pooled fit

Age Estimation Accuracy

Each point = one specimen. X-axis = true age (known in simulation), Y-axis = estimated age (from start-age optimization). Dashed line = perfect agreement. Points above the line = overestimated ages; below = underestimated.

Large morph specimens
Small morph specimens
Perfect agreement (y=x)

Age Estimation Bias vs. Size

Each point = one specimen. X-axis = final circumference at death (proxy for body size), Y-axis = age estimation error in years (estimated age - true age). Shows whether larger or smaller specimens have systematically biased age estimates.

Large morph specimens
Small morph specimens
Zero bias (y=0)

Key Parameter Comparison

Direct comparison of peak growth rate (mm/yr at inflection) and age to reach 95% asymptotic size across the two true curves and the recovered pooled fit. Bias = recovered minus true.

Curve Asymptote
(mm)
Peak growth rate
(mm circ./yr)
Age at 95% size
(yr)
♂ True large morph
♀ True small morph
▫ True average (m+f)/2
■ Recovered (pooled)
Bias (recovered − average)
Bias (recovered − large morph)
Bias (recovered − small morph)

Growth Curve Equations

True large morph:
True small morph:
True average:
Recovered pooled:

Interpretation

Click Run Simulation to generate synthetic data and fit the model.