Leslie matrix models 

> with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
with(LinearAlgebra); -1; `:=`(leslie, proc (f, t) local d, t1, cf, p, j, sol, lambda, egenv, R0, Tc; description
 

The program "leslie" computes the characteristic values of a Leslie matrix model 

> `:=`(f, `<,>`(`*`(2, `/`(1, 100)), `/`(1, 8), `/`(12, 5), `*`(5, `/`(1, 30)), `*`(2, `/`(1, 10)))); -1; `:=`(tau, `<,>`(`*`(8, `/`(1, 10)), `/`(5, 8), `/`(3, 5), `/`(1, 3))); -1
 

> leslie(f, tau); 1
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

`*`(Leslie, `*`(model, `*`(with)))
5
`*`(age, `*`(groups))
`*`(Fecundity, `*`(vector))
[`/`(1, 50), `/`(1, 8), `/`(12, 5), `/`(1, 6), `/`(1, 5)]
`*`(Survival, `*`(vector))
[`/`(4, 5), `/`(5, 8), `/`(3, 5), `/`(1, 3)]
`*`(Stable, `*`(growth, `*`(rate)))
1.118029163
`*`(Doubling, `*`(time))
6.212807788
`*`(Stable, `*`(distribution))
[417, 298, 167, 89, 26]
`*`(Reproduction, `*`(rate))
1.390000000
`*`(Generation, `*`(time))
2.964028777 (1)
 

> `:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
`:=`(f, `<,>`(0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2)); -1; `:=`(tau, `<,>`(.94697, ...
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

`*`(Leslie, `*`(model, `*`(with)))
21
`*`(age, `*`(groups))
`*`(Fecundity, `*`(vector))
[0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2]
[0, 0, .3964, 1.4939, 2.1777, 2.5250, 2.6282, 2.6749, 2.6018, 2.4419, 2.1865, 1.9044, 1.7259, 1.4918, 1.2415, .9522, .7141, .4618, .2518, 0.901e-1, 0.35e-2]
`*`(Survival, `*`(vector))
[.94697, .99665, .99926, .99899, .99863, .99817, .99753, .99667, .99553, .99399, .99196, .98926, .98572, .98107, .97511, .96748, .95797, .94631, .93247, .91649]
[.94697, .99665, .99926, .99899, .99863, .99817, .99753, .99667, .99553, .99399, .99196, .98926, .98572, .98107, .97511, .96748, .95797, .94631, .93247, .91649]
`*`(Stable, `*`(growth, `*`(rate)))
1.562482863
`*`(Doubling, `*`(time))
1.553180030
`*`(Stable, `*`(distribution))
[373, 226, 144, 92, 59, 37, 24, 15, 9, 6, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0]
`*`(Reproduction, `*`(rate))
25.66055342
`*`(Generation, `*`(time))
9.594817897 (2)
 

> `:=`(f, `<,>`(0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2)); -1; `:=`(tau, `<,>`(.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831)); -1; leslie(f, tau); 1
`:=`(f, `<,>`(0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2)); -1; `:=`(tau, `<,>`(.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831)); -1; leslie(f, tau); 1
`:=`(f, `<,>`(0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2)); -1; `:=`(tau, `<,>`(.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831)); -1; leslie(f, tau); 1
`:=`(f, `<,>`(0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2)); -1; `:=`(tau, `<,>`(.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831)); -1; leslie(f, tau); 1
`:=`(f, `<,>`(0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2)); -1; `:=`(tau, `<,>`(.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831)); -1; leslie(f, tau); 1
`:=`(f, `<,>`(0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2)); -1; `:=`(tau, `<,>`(.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831)); -1; leslie(f, tau); 1
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

`*`(Leslie, `*`(model, `*`(with)))
10
`*`(age, `*`(groups))
`*`(Fecundity, `*`(vector))
[0., 0.1e-2, 0.878e-1, .3487, .4761, .3377, .1833, 0.761e-1, 0.174e-1, 0.1e-2]
`*`(Survival, `*`(vector))
[.9966, .9983, .9979, .9968, .9961, .9947, .9923, .9987, .9831]
`*`(Stable, `*`(growth, `*`(rate)))
1.081848380
`*`(Doubling, `*`(time))
8.810703025
`*`(Stable, `*`(distribution))
[140, 129, 119, 110, 101, 93, 86, 78, 72, 66]
`*`(Reproduction, `*`(rate))
1.510254693
`*`(Generation, `*`(time))
5.306587876 (3)
 

This means that the US female population doubles approximately every 45 years, every female has 1.5 child in average, and about 10% of the population are 20-24 years old.