rank_condition: Calculate matrix ranks for identification

Description Usage Arguments Details Value Examples

Description

There are necessary and sufficient algebraic conditions for checking whether a model is (locally) identified. These conditions relate to the rank of certain matrices of first-order partial derivatives. The following functions compute those ranks.

Usage

1
2
3
4
5
6
7
rank_A_model(A, SIGMA_U = A_INV %*% t(A_INV),
  C_A = selection_matrix(A))

rank_B_model(B, C_B = selection_matrix(B))

rank_AB_model(A, B, SIGMA_U = A_INV %*% B %*% t(B) %*% t(A_INV),
  C_A = selection_matrix(A), C_B = selection_matrix(B))

Arguments

A

A square numeric matrix, the coefficient of contemporaneous effects between endogenous variables. Its dimension is (K x K).

SIGMA_U

A square numeric matrix, the reduced-form residual covariances. Its dimension is (K x K). The default setting assumes unit variance of the structural shocks.

C_A, C_B

A numeric matrix, the selection matrix for imposing linear restrictions on matrix A or B. Its dimension is (K * (K + 1) / 2 x K^2). The default assumes all elements of A or B equal to 0 or 1 are restricted to those values.

B

A square numeric matrix, the coefficient of contemporaneous effects of structural shocks on endogenous variables. Its dimension is (K x K).

Details

Note that rank_AB_model nests both rank_A_model and rank_B_model if supplied with the appropriate arguments.

Value

A scalar integer. The rank of the respective partial derivative involved in achieving identification. For successful identification, the rank must be equal to the number of unidentified parameters.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
set.seed(819)
K <- 4
A <- matrix(rnorm(K^2), K, K)
A[sample((1:K^2)[-seq(1, K^2, K+1)], K * (K-1) / 2)] <- 0
diag(A) <- 1
A
SIGMA_U <- solve(A) %*% t(solve(A))
rank_A_model(A)
is_identified(A, SIGMA_U = SIGMA_U)

K <- 3
A <- matrix(rnorm(K^2), K, K)
A[c(3, 6, 7)] <- 0
A[c(1, 5, 9)] <- 1

nielsaka/zeitreihe documentation built on March 17, 2020, 8:38 p.m.