mc_chain_subset: Internal utilities for mc eigenvectors

View source: R/mcompanion.R

mc_chain_subsetR Documentation

Internal utilities for mc eigenvectors

Description

Utilities for manipulation of mc eigenchains: subset, merge.

Usage

mc_chain_subset(ev, chainno)
mc_chain_merge(ev1, ev2)

Arguments

ev

eigensystem, a list, see details.

ev1

chain, a list.

ev2

chain, a list.

chainno

chains to extract, integer vector.

Details

The lists representing eigensystems (ev, ev1, ev2) have the following structure:

mo the multi-companion order,
mo.col the mc column order,
eigval a vector of eigenvalues containing one entry for each chain,
len.block a vector of chain lengths, len.block[i] is the length of the chain
corresponding to eigval[i],
eigvec a matrix of generalised eigenvectors,
co the seed parameters (always bottom?), a matrix.

A chain with no elements is represented by the empty list.

If component co is non-NULL, it is processed as expected. It may also be NULL or absent. In that case it will be NULL in the result returned by mc_chain_subset, similarly for mc_chain_merge but since it has two arguments, see the details below.

mc_chain_subset takes a subsystem of ev, basically ev$eigval[chaino], etc, but catering also for the possibility that some chains have length greater than one. chainno specifies which chains to take (or omit) with the usual R index syntax.

mc_chain_merge concatenates the two chains. If co is NULL in both arguments, it is NULL in the result. Otherwise co is set to the bottom parts of the vectors. Components mo and mo.col in the two chains should be the same but currently this is not checked.

Value

for mc_chain_subset and mc_chain_merge, a list having the same format as ev1 and ev2

Author(s)

Georgi N. Boshnakov

See Also

mc_chain_extend


mcompanion documentation built on May 29, 2024, 4:31 a.m.