Learn R Programming

LEdecomp (version 1.0.4)

sen_chandrasekaran_III_instantaneous: Instantaneous sensitivity via Chandrasekaran III decomposition

Description

Estimates the sensitivity of life expectancy to small changes in mortality rates using the Chandrasekaran III decomposition. This is done by perturbing the input mortality rates up and down by a small factor and computing directional sensitivity from the result.

Specifically: $$m_x^{1} = m_x \cdot \left( \frac{1}{1 - h} \right)$$ $$m_x^{2} = m_x \cdot (1 - h)$$ and applies sen_chandrasekaran_III(mx1, mx2, ...) to the result.

Usage

sen_chandrasekaran_III_instantaneous(
  mx,
  age = (1:length(mx1)) - 1,
  nx = rep(1, length(mx1)),
  sex = "t",
  perturb = 1e-06,
  closeout = TRUE
)

Value

numeric vector of sensitivity of life expectancy to perturbations in mx.

Arguments

mx

Numeric vector of mortality rates (central death rates).

age

integer vector of the lower bound of each age group (currently only single ages supported)

nx

integer vector of age intervals, default 1.

sex

Character; "m" for male, "f" for female, or "t" for total.

perturb

Numeric; a small constant determining the perturbation size (default: 1e-6).

closeout

logical. Default TRUE. Shall we use the HMD Method Protocol to close out the ax and qx values? See details.

Details

This approach provides an approximation of the derivative of life expectancy with respect to each age-specific mortality rate, evaluated near the input mx. It gives numerically identical results to sen_arriaga_sym_instantaneous(), sen_lopez_ruzicka_instantaneous(), and sen_chandrasekaran_II_instantaneous().

See Also

sen_chandrasekaran_III, sen_chandrasekaran_III_instantaneous2, sen_arriaga_sym_instantaneous, sen_lopez_ruzicka_instantaneous

Examples

Run this code
a <- 0.001
b <- 0.07
x <- 0:100
mx <- a * exp(x * b)
s <- sen_chandrasekaran_III_instantaneous(mx, age = x)
# \donttest{
plot(x, s, type = "l")
# }

Run the code above in your browser using DataLab