mc.0chain.structfill: Add structural vectors to a 0eigenchain, internal function

View source: R/mcompanion.R

mc.0chain.structfillR Documentation

Add structural vectors to a 0eigenchain, internal function

Description

Add structural (generalised) eigenvectors to a 0eigenchain, if possible. These are vectors that do not depend on the elements in the non-trivial part of the mc matrix. In particular, their first mo.col elements are zeroes.

Usage

mc.0chain.structfill(mo, mo.col, chain, v0 = rep(0, mo))

Arguments

mo

mc order

mo.col

mc column order

chain

a matrix with the eigenvector in the first column and successive generalised eigenvectors in the following columns. A vector may stand for a matrix with one column.

v0

vector to use as bottom of the new vectors

Details

The size of the matrix is deduced from the length of the vector(s) in chain.

Structural chains associated with the zero eigenvalue appear when mo.col is smaller than the dimension of the matrix. Such chains do not depend on the actual values in the non-structural part of the matrix. As such they are the same when the size, multi-companion order and mo.col are fixed. If the core of the matrix is singular the structural chains do not describe completely the space associated with the zero eigenvalue.

It is quite straight-forward to generate a structural chain associated with a given eigenvector or to complete a partially given chain. However, no attempt is made to check if the supplied chain may indeed be the beginning of a structural chain. Such a check is straightforward but is not implemented since the function is internal and is called only by functions that know (hopefully) what they are doing.

Value

the chain, possibly appended with additional vectors

Author(s)

Georgi N. Boshnakov


mcompanion documentation built on Sept. 22, 2023, 5:12 p.m.