Computes the discrete-time Keyfitz entropy for a stage-based (Lefkovitch) matrix population model using the **U** submatrix. This implementation follows the life-disparity / life-expectancy formulation (H_N) adapted to stage models (H_N^+): it projects survivorship directly from Umat and quantifies the dispersion of **ages at death** (in projection steps) relative to mean life expectancy.

entropy_k_stage(Umat, init_distrib = NULL, max_age = NULL, n_is_maxage = FALSE)

Arguments

Umat

A square numeric matrix representing the U submatrix of a stage-based (Lefkovitch) matrix population model.

init_distrib

The initial cohort distribution across stages. This should sum to 1. If it does not sum to 1, the function rescales it to 1. Defaults to an equal distribution across stages.

max_age

The upper age, in units of the projection interval. Defaults to 1000 if no information is provided.

n_is_maxage

If TRUE, survival p_n is set to zero. Defaults to FALSE.

Value

Returns a single numeric value representing the Keyfitz entropy for the given matrix. This value quantifies the dispersion of age at death (not stage at death).

Details

Interpretation. Values reflect the shape of mortality across age:

  • \(H < 1\): increasing mortality with age (senescence)

  • \(H = 1\): approximately age-constant mortality

  • \(H > 1\): decreasing mortality with age (negative senescence)

The function avoids age-from-stage preprocessing by obtaining survivorship from successive powers of \(U\) up to max_age. In pure age-class (Leslie) models with \(k\) age classes and no persistence in the terminal class, using max_age = k recovers the exact discrete-time value.

The result depends on the starting cohort init_distrib (e.g., all recruits, a single stage, or recruits at equilibrium). Choose init_distrib to match the biological question.

References

Keyfitz, N. 1977. Applied Mathematical Demography. New York: Wiley. Giaimo S. 2024. Discretising and validating Keyfitz entropy for any demographic classification. Methods in Ecology and Evolution. 15, 1278–1285.

Author

Stefano Giaimo <giaimo@evolbio.mpg.de>

Owen Jones <jones@biology.sdu.dk>

Examples

data(mpm1)

entropy_k_stage(mpm1$matU)
#> [1] 1.131567