Note: We are still improving this website. If you find a mistake or have a question, please get in contact

transmission

transmission Compute the transmission effect given a transmission condition.

effects = transmission(from, arr1, arr2, q, method) calculates the transmission effect for a given transmission condition q using either the BOmega method or the irf method. If BOmega is used, then transmission effects will be calculated using the systems form x=Bx+Ωε

Arguments

  • from (integer): Index of the shock.
  • arr1 (matrix):
  • If method = "BOmega", this must be B from the systems form.
  • If method = "irf", this must be structural irfs (technically only those of the shock that is being investigates (from)). Has to be a IRF matrix. See toTransmissionIrfs for more information.
  • arr2 (matrix):
  • If method = "BOmega", this must be Omega from the systems form.
  • If method = "irf", this must be irfsOrtho (Cholesky IRFs) following the ordering of the transmission matrix.
  • q (Q): A transmission condition. See also Q.
  • method (string): Specifies the calculation method:
  • "BOmega" uses the systems form.
  • "irf" uses only IRFs and can thus be used with local projections.
  • order (vector, optional): variable ordering as defined by the transmission matrix.

Returns:

  • effects (vector): A vector where entry i corresponds to the transmission effect on variable x_i. If x_k is the variable in the transmission condition with the highest index, all entries in the returned vector with index less than k are NaN, since interpretation of those results is nonsensical.

Example:

k = 6;
h = 3;
s = "(x1 | x2) & !x3";
cond = makeCondition(s);

B = randn(k*(h+1), k*(h+1));
Omega = randn(k*(h+1), k*(h+1));

effect = transmission(1, B, Omega, cond, "BOmega");

irfs = randn(k, k, h+1);
irfsOrtho = randn(k, k, h+1);

irfs = toTransmissionIrfs(irfs);
irfsOrtho = toTransmissionIrfs(irfsOrtho);

effect = transmission(1, irfs, irfsOrtho, cond, "irf");

Notes:

  • If method = "BOmega", the function applies transmissionBOmega.
  • If method = "irf", the function applies transmissionIrfs.
  • If order is provided, the returned effects will be a 3D array of dimension (nVariables, 1, horizons) where the variables are in the original ordering (before applying the transmission matrix).
  • If order is not provided, the returned effects will be a (nVariable*horizons, 1) dimensional vector following the ordering after applying the transmission matrix. This is similar to the matrix obtained via (IB)1Ω using the matrices from the systems form.

See also transmissionBOmega, transmissionIrfs, makeCondition, through, notThrough