leslie#
- scipy.linalg.leslie(f, s)[source]#
Create a Leslie matrix.
Given the length n array of fecundity coefficients f and the length n-1 array of survival coefficients s, return the associated Leslie matrix.
- Parameters:
- f(…, N,) array_like
The “fecundity” coefficients.
- s(…, N-1,) array_like
The “survival” coefficients. The length of each slice of s (along the last axis) must be one less than the length of f, and it must be at least 1.
- Returns:
- L(…, N, N) ndarray
The array is zero except for the first row, which is f, and the first sub-diagonal, which is s. For 1-D input, the data-type of the array will be the data-type of
f[0]+s[0]
.
Notes
Added in version 0.8.0.
The Leslie matrix is used to model discrete-time, age-structured population growth [1] [2]. In a population with n age classes, two sets of parameters define a Leslie matrix: the n “fecundity coefficients”, which give the number of offspring per-capita produced by each age class, and the n - 1 “survival coefficients”, which give the per-capita survival rate of each age class.
N-dimensional input are treated as a batches of coefficient arrays: each slice along the last axis of the input arrays is a 1-D coefficient array, and each slice along the last two dimensions of the output is the corresponding Leslie matrix.
References
[1]P. H. Leslie, On the use of matrices in certain population mathematics, Biometrika, Vol. 33, No. 3, 183–212 (Nov. 1945)
[2]P. H. Leslie, Some further notes on the use of matrices in population mathematics, Biometrika, Vol. 35, No. 3/4, 213–245 (Dec. 1948)
Examples
>>> from scipy.linalg import leslie >>> leslie([0.1, 2.0, 1.0, 0.1], [0.2, 0.8, 0.7]) array([[ 0.1, 2. , 1. , 0.1], [ 0.2, 0. , 0. , 0. ], [ 0. , 0.8, 0. , 0. ], [ 0. , 0. , 0.7, 0. ]])