h_*() and array_h_*() are C++ functions for calculating the second derivative of the log-likelihood function.

h_1pl(x, b, u)

h_2pl(x, a, b, u)

h_m_2pl(x, a, d, u)

h_3pl(x, a, b, c, u)

h_m_3pl(x, a, d, c, u)

h_pc(x, b, u)

h_gpc(x, a, b, u)

h_m_gpc(x, a, d, u)

h_gr(x, a, b, u)

h_m_gr(x, a, d, u)

array_h_1pl(x, b, u)

array_h_2pl(x, a, b, u)

array_h_3pl(x, a, b, c, u)

array_h_pc(x, b, u)

array_h_gpc(x, a, b, u)

array_h_gr(x, a, b, u)

Arguments

x

the theta value. The number of columns should correspond to the number of dimensions. For array_*() functions, the number of theta values must correspond to the number of rows.

b, d

the difficulty parameter. b is used for unidimensional items, and d is used for multidimensional items.

u

the response value.

a

the a-parameter.

c

the c-parameter.

Details

h_*() functions accept a single theta value, and array_h_*() functions accept multiple theta values.

Supports unidimensional and multidimensional models.

  • h_1pl(), array_h_1pl(): 1PL models

  • h_2pl(), array_h_2pl(): 2PL models

  • h_3pl(), array_h_3pl(): 3PL models

  • h_pc(), array_h_pc(): PC (partial credit) models

  • h_gpc(), array_h_gpc(): GPC (generalized partial credit) models

  • h_gr(), array_h_gr(): GR (graded response) models

  • h_m_2pl(), array_h_m_2pl(): multidimensional 2PL models

  • h_m_3pl(), array_h_m_3pl(): multidimensional 3PL models

  • h_m_gpc(), array_h_m_gpc(): multidimensional GPC models

  • h_m_gr(), array_h_m_gr(): multidimensional GR models

References

Rasch, G. (1960). Probabilistic models for some intelligence and attainment tests. Copenhagen: Danish Institute for Educational Research.

Lord, F. M. (1952). A theory of test scores (Psychometric Monograph No. 7). Richmond, VA: Psychometric Corporation.

Birnbaum, A. (1957). Efficient design and use of tests of mental ability for various decision-making problems (Series Report No. 58-16. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.

Birnbaum, A. (1958). On the estimation of mental ability (Series Report No. 15. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.

Birnbaum, A. (1958). Further considerations of efficiency in tests of a mental ability (Series Report No. 17. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.

Birnbaum, A. (1968). Some latent trait models and their use in inferring an examinee's ability. In Lord, F. M., Novick, M. R. (eds.), Statistical Theories of Mental Test Scores, 397-479. Reading, MA: Addison-Wesley.

Masters, G. N. (1982). A Rasch model for partial credit scoring. Psychometrika, 47(2), 149-174.

Andrich, D. (1978). A rating formulation for ordered response categories. Psychometrika, 43(4), 561-573.

Muraki, E. (1992). A generalized partial credit model: Application of an EM algorithm. Applied Psychological Measurement, 16(2), 159-176.

Samejima, F. (1969). Estimation of latent ability using a response pattern of graded scores. Psychometrika Monograph, 17.

Examples

u <- 1

x <- 0.5
h_1pl(x, 1, u)
#> [1] -0.2350037
h_2pl(x, 1, 2, u)
#> [1] -0.1491465
h_3pl(x, 1, 2, 0.25, u)
#> [1] 0.1000472
h_pc(x, c(0, 1), u)
#> [1] -0.5481372
h_gpc(x, 2, c(0, 1), u)
#> [1] -1.695532
h_gr(x, 2, c(0, 2), u)
#> [1] -0.9671544

x <- matrix(seq(-3, 3, 1)) # three theta values, unidimensional
array_h_1pl(x, 1, u)
#>             [,1]
#> [1,] -0.01766271
#> [2,] -0.04517666
#> [3,] -0.10499359
#> [4,] -0.19661193
#> [5,] -0.25000000
#> [6,] -0.19661193
#> [7,] -0.10499359
array_h_2pl(x, 1, 2, u)
#>              [,1]
#> [1,] -0.006648057
#> [2,] -0.017662706
#> [3,] -0.045176660
#> [4,] -0.104993585
#> [5,] -0.196611933
#> [6,] -0.250000000
#> [7,] -0.196611933
array_h_3pl(x, 1, 2, 0.25, u)
#>             [,1]
#> [1,]  0.01890763
#> [2,]  0.04593920
#> [3,]  0.09331728
#> [4,]  0.12286925
#> [5,]  0.04428875
#> [6,] -0.09000000
#> [7,] -0.11948177
array_h_pc(x, c(0, 1), u)
#>             [,1]
#> [1,] -0.04844342
#> [2,] -0.12512079
#> [3,] -0.29124772
#> [4,] -0.50641549
#> [5,] -0.50641549
#> [6,] -0.29124772
#> [7,] -0.12512079
array_h_gpc(x, 2, c(0, 1), u)
#>              [,1]
#> [1,] -0.009879268
#> [2,] -0.071348174
#> [3,] -0.449817451
#> [4,] -1.470879498
#> [5,] -1.470879498
#> [6,] -0.449817451
#> [7,] -0.071348174
array_h_gr(x, 2, c(0, 2), u)
#>             [,1]
#> [1,] -0.01004762
#> [2,] -0.07199178
#> [3,] -0.42984038
#> [4,] -1.07065082
#> [5,] -0.83994868
#> [6,] -1.07065082
#> [7,] -0.42984038