FitKalman: Fitting k-box models to abrupt 4xCO2 experiments

View source: R/fit_kalman.R

FitKalmanR Documentation

Fitting k-box models to abrupt 4xCO2 experiments

Description

FitKalman fits a k-box model to time series of global mean surface temperature and top-of-the-atmosphere net downward radiative flux from an abrupt 4xCO2 climate model experiment. Parameters are estimated using the Kalman filter and maximum likelihood estimation. Estimated parameters are returned in a list along with a suite of useful derived quantities.

Usage

FitKalman(inits, T1, N, alpha = 0, maxeval = 1e+05)

Arguments

inits

list of parameter starting values containing the following elements:

  • gamma - stochastic forcing correlation parameter;

  • C - vector of box heat capacities;

  • kappa - vector of heat transfer coefficients;

  • epsilon - deep ocean heat uptake efficacy factor;

  • sigma_eta - stochastic forcing standard deviation parameter;

  • sigma_xi - standard deviation of stochastic temperature disturbances;

  • F_4xCO2 - effective radiative forcing due to CO2 quadrupling.

T1

time series of global mean surface temperature.

N

time series of top-of-the-atmosphere net downward radiative flux.

alpha

quadratic penalty applied to heat capacity of deep-ocean box.

maxeval

maximum number of iterations in BOBYQA optimization algorithm.

Value

FitKalman returns a list containing the following elements:

  • mle - vector of logged maximum likelihood parameter estimates;

  • vcov - approximate covariance matrix of estimated parameters;

  • se - vector of approximate standard errors of logged parameter estimates;

  • confint - matrix with two rows containing lower and upper bounds of approximate 95 percent confidence intervals for logged parameters;

  • AIC - Akaike's information criterion score;

  • p - list of maximum likelihood parameter estimates;

  • m - list containing matrix representation of fitted model;

  • tau - vector containing characteristic timescales of fitted model;

  • T1 - time series of global mean surface temperature used in model fitting;

  • N - time series of top-of-the-atmosphere net downward radiative flux used in model fitting;

  • kf - fitted Kalman filter object (see fkf);

  • step - matrix with k + 1 rows containing expected trajectories of fitted model state variables F, T1, ..., Tk under abrupt 4xCO2 forcing;

  • transient - matrix with k rows containing expected trajectories of box temperatures under a one-percent-per-year increasing CO2 scenario;

  • impulse - matrix with k rows containing expected trajectories of box temperatures under a unit-impulse forcing scenario;

  • ECS - equilibrium climate sensitivity (equilibrium temperature increase after doubling CO2);

  • TCR - transient climate response (temperature increase after 70 years of one-percent-per-year increasing CO2).

See Also

BuildMatrices, SimStepData.

Examples

# load CMIP5 abrupt 4xCO2 runs
data("CMIP5")

# set three-box model starting values
inits3 <- list(
  gamma = 2.0,
  C = c(5.0, 20.0, 100.0),
  kappa = c(1.0, 2.0, 1.0),
  epsilon = 1.0,
  sigma_eta = 0.5,
  sigma_xi = 0.5,
  F_4xCO2 = 5.0
)

# fit three-box model to HadGEM2-ES
HadGEM2 <- with(CMIP5$MOHC, {
  FitKalman(inits = inits3, T1 = temp, N = flux)
})

# print parameter estimates
print(HadGEM2$p)

donaldcummins/EBM documentation built on Oct. 15, 2024, 6:17 a.m.