Skip to contents

Give the spectral parameters for eigenvalues of mc-matrices equal to one.

Usage

spec_root1(mo, root1 = numeric(0), iorder = 0, siorder = 0)

Arguments

mo

mc order.

root1

Jordan block lengths for the unit roots, a vector of positive integer numbers.

iorder

order of integration, a non-negative integer.

siorder

order of seasonal integration, a non-negative integer.

Details

The specifications given by root1, iorder and siorder are combined and the spectral parameters prepared.

In principle, argument root1 is sufficient, the other two are for convenient specification of integration and seasonal integration.

TODO: rename argument root1!

Value

a list with the following components:

mo

multi-companion order

ev.type

type of the eigenvalues

co.type

not used currently (:todo:)

n.root

number of non-zero roots

ev.abs

absolute values of roots

ev.arg

arguments of eigenvalues (0 for positive ev)

block.length

lengths of Jordan blocks

co.abs

absolute values of seed parameters

co.arg

arguments of seed parameters (Hz: 0 for positive; 1/2 for negative)

co1

temporary hack; TODO: check the calling code and remove it!

Author

Georgi N. Boshnakov

See also

Examples

spec_root1(4, root1 = 1)
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r"
#> 
#> $co.type
#> [1] "r"
#> 
#> $n.root
#> [1] 1
#> 
#> $ev.abs
#> [1] 1
#> 
#> $ev.arg
#> [1] 0
#> 
#> $block.length
#> [1] 1
#> 
#> $co.abs
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
#> $co.arg
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
#> $co1
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
spec_root1(4, root1 = c(1,0,0,0))  # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r"
#> 
#> $co.type
#> [1] "r"
#> 
#> $n.root
#> [1] 1
#> 
#> $ev.abs
#> [1] 1
#> 
#> $ev.arg
#> [1] 0
#> 
#> $block.length
#> [1] 1
#> 
#> $co.abs
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
#> $co.arg
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
#> $co1
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
spec_root1(4, iorder = 1)          # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r"
#> 
#> $co.type
#> [1] "r"
#> 
#> $n.root
#> [1] 1
#> 
#> $ev.abs
#> [1] 1
#> 
#> $ev.arg
#> [1] 0
#> 
#> $block.length
#> [1] 1
#> 
#> $co.abs
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
#> $co.arg
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 
#> $co1
#>      [,1]
#> [1,]   NA
#> [2,]   NA
#> [3,]   NA
#> [4,]   NA
#> 

spec_root1(4, root1 = 2)
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r"
#> 
#> $co.type
#> [1] "r"
#> 
#> $n.root
#> [1] 2
#> 
#> $ev.abs
#> [1] 1
#> 
#> $ev.arg
#> [1] 0
#> 
#> $block.length
#> [1] 2
#> 
#> $co.abs
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
#> $co.arg
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
#> $co1
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
spec_root1(4, root1 = c(2,0,0,0))  # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r"
#> 
#> $co.type
#> [1] "r"
#> 
#> $n.root
#> [1] 2
#> 
#> $ev.abs
#> [1] 1
#> 
#> $ev.arg
#> [1] 0
#> 
#> $block.length
#> [1] 2
#> 
#> $co.abs
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
#> $co.arg
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
#> $co1
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
spec_root1(4, iorder = 2)          # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r"
#> 
#> $co.type
#> [1] "r"
#> 
#> $n.root
#> [1] 2
#> 
#> $ev.abs
#> [1] 1
#> 
#> $ev.arg
#> [1] 0
#> 
#> $block.length
#> [1] 2
#> 
#> $co.abs
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
#> $co.arg
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 
#> $co1
#>      [,1] [,2]
#> [1,]   NA    0
#> [2,]   NA    0
#> [3,]   NA    0
#> [4,]   NA    0
#> 

spec_root1(4, root1 = c(1,1,1,1))
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r" "r"
#> 
#> $n.root
#> [1] 4
#> 
#> $ev.abs
#> [1] 1 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0 0
#> 
#> $block.length
#> [1] 1 1 1 1
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4]
#> [1,]    1    0    0    0
#> [2,]    0    1    0    0
#> [3,]    0    0    1    0
#> [4,]    0    0    0    1
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4]
#> [1,]    0    0    0    0
#> [2,]    0    0    0    0
#> [3,]    0    0    0    0
#> [4,]    0    0    0    0
#> 
#> $co1
#>      [,1] [,2] [,3] [,4]
#> [1,]    1    0    0    0
#> [2,]    0    1    0    0
#> [3,]    0    0    1    0
#> [4,]    0    0    0    1
#> 
spec_root1(4, siorder = 1)          # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r" "r"
#> 
#> $n.root
#> [1] 4
#> 
#> $ev.abs
#> [1] 1 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0 0
#> 
#> $block.length
#> [1] 1 1 1 1
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4]
#> [1,]    1    0    0    0
#> [2,]    0    1    0    0
#> [3,]    0    0    1    0
#> [4,]    0    0    0    1
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4]
#> [1,]    0    0    0    0
#> [2,]    0    0    0    0
#> [3,]    0    0    0    0
#> [4,]    0    0    0    0
#> 
#> $co1
#>      [,1] [,2] [,3] [,4]
#> [1,]    1    0    0    0
#> [2,]    0    1    0    0
#> [3,]    0    0    1    0
#> [4,]    0    0    0    1
#> 

spec_root1(4, root1 = c(2,2,2,2))
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r" "r"
#> 
#> $n.root
#> [1] 8
#> 
#> $ev.abs
#> [1] 1 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0 0
#> 
#> $block.length
#> [1] 2 2 2 2
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    1    0    0    0    0    0    0    0
#> [2,]    0    0    1    0    0    0    0    0
#> [3,]    0    0    0    0    1    0    0    0
#> [4,]    0    0    0    0    0    0    1    0
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    0    0    0    0    0    0    0    0
#> [2,]    0    0    0    0    0    0    0    0
#> [3,]    0    0    0    0    0    0    0    0
#> [4,]    0    0    0    0    0    0    0    0
#> 
#> $co1
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    1    0    0    0    0    0    0    0
#> [2,]    0    0    1    0    0    0    0    0
#> [3,]    0    0    0    0    1    0    0    0
#> [4,]    0    0    0    0    0    0    1    0
#> 
spec_root1(4, siorder = 2)          # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r" "r"
#> 
#> $n.root
#> [1] 8
#> 
#> $ev.abs
#> [1] 1 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0 0
#> 
#> $block.length
#> [1] 2 2 2 2
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    1    0    0    0    0    0    0    0
#> [2,]    0    0    1    0    0    0    0    0
#> [3,]    0    0    0    0    1    0    0    0
#> [4,]    0    0    0    0    0    0    1    0
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    0    0    0    0    0    0    0    0
#> [2,]    0    0    0    0    0    0    0    0
#> [3,]    0    0    0    0    0    0    0    0
#> [4,]    0    0    0    0    0    0    0    0
#> 
#> $co1
#>      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#> [1,]    1    0    0    0    0    0    0    0
#> [2,]    0    0    1    0    0    0    0    0
#> [3,]    0    0    0    0    1    0    0    0
#> [4,]    0    0    0    0    0    0    1    0
#> 


spec_root1(4, root1 = c(2,1,1,1))
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r" "r"
#> 
#> $n.root
#> [1] 5
#> 
#> $ev.abs
#> [1] 1 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0 0
#> 
#> $block.length
#> [1] 2 1 1 1
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4] [,5]
#> [1,]  Inf    0  Inf  Inf  Inf
#> [2,]  Inf    0  Inf  Inf  Inf
#> [3,]  Inf    0  Inf  Inf  Inf
#> [4,]  Inf    0  Inf  Inf  Inf
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4] [,5]
#> [1,]  0.5    0    0    0    0
#> [2,]  0.5    0    0    0    0
#> [3,]  0.5    0    0    0    0
#> [4,]  0.5    0    0    0    0
#> 
#> $co1
#>      [,1] [,2] [,3] [,4] [,5]
#> [1,] -Inf    0  Inf  Inf  Inf
#> [2,] -Inf    0  Inf  Inf  Inf
#> [3,] -Inf    0  Inf  Inf  Inf
#> [4,] -Inf    0  Inf  Inf  Inf
#> 
spec_root1(4, iorder = 1, siorder = 1) # same
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r" "r"
#> 
#> $n.root
#> [1] 5
#> 
#> $ev.abs
#> [1] 1 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0 0
#> 
#> $block.length
#> [1] 2 1 1 1
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4] [,5]
#> [1,]  Inf    0  Inf  Inf  Inf
#> [2,]  Inf    0  Inf  Inf  Inf
#> [3,]  Inf    0  Inf  Inf  Inf
#> [4,]  Inf    0  Inf  Inf  Inf
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4] [,5]
#> [1,]  0.5    0    0    0    0
#> [2,]  0.5    0    0    0    0
#> [3,]  0.5    0    0    0    0
#> [4,]  0.5    0    0    0    0
#> 
#> $co1
#>      [,1] [,2] [,3] [,4] [,5]
#> [1,] -Inf    0  Inf  Inf  Inf
#> [2,] -Inf    0  Inf  Inf  Inf
#> [3,] -Inf    0  Inf  Inf  Inf
#> [4,] -Inf    0  Inf  Inf  Inf
#> 


spec_root1(4, root1 = c(2,1))
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r"
#> 
#> $co.type
#> [1] "r" "r"
#> 
#> $n.root
#> [1] 3
#> 
#> $ev.abs
#> [1] 1 1
#> 
#> $ev.arg
#> [1] 0 0
#> 
#> $block.length
#> [1] 2 1
#> 
#> $co.abs
#>      [,1] [,2] [,3]
#> [1,]   NA   NA   NA
#> [2,]   NA   NA   NA
#> [3,]   NA   NA   NA
#> [4,]   NA   NA   NA
#> 
#> $co.arg
#>      [,1] [,2] [,3]
#> [1,]   NA   NA   NA
#> [2,]   NA   NA   NA
#> [3,]   NA   NA   NA
#> [4,]   NA   NA   NA
#> 
#> $co1
#>      [,1] [,2] [,3]
#> [1,]   NA   NA   NA
#> [2,]   NA   NA   NA
#> [3,]   NA   NA   NA
#> [4,]   NA   NA   NA
#> 
spec_root1(4, root1 = c(2,1,1))
#> $mo
#> [1] 4
#> 
#> $ev.type
#> [1] "r" "r" "r"
#> 
#> $co.type
#> [1] "r" "r" "r"
#> 
#> $n.root
#> [1] 4
#> 
#> $ev.abs
#> [1] 1 1 1
#> 
#> $ev.arg
#> [1] 0 0 0
#> 
#> $block.length
#> [1] 2 1 1
#> 
#> $co.abs
#>      [,1] [,2] [,3] [,4]
#> [1,]   NA   NA   NA   NA
#> [2,]   NA   NA   NA   NA
#> [3,]   NA   NA   NA   NA
#> [4,]   NA   NA   NA   NA
#> 
#> $co.arg
#>      [,1] [,2] [,3] [,4]
#> [1,]   NA   NA   NA   NA
#> [2,]   NA   NA   NA   NA
#> [3,]   NA   NA   NA   NA
#> [4,]   NA   NA   NA   NA
#> 
#> $co1
#>      [,1] [,2] [,3] [,4]
#> [1,]   NA   NA   NA   NA
#> [2,]   NA   NA   NA   NA
#> [3,]   NA   NA   NA   NA
#> [4,]   NA   NA   NA   NA
#>