Extend chains for the top
mc.0chain.dx.Rd
Extend 0chains of the top left corner to chains for the top left square corner, internal function.
Arguments
- mo
mc order
- mo.col
mc column order, must be less than
mo
- chF0top
0chains of the top of the mc matrix, a list with one matrix for each chain
- F0bot
bottom of the top of the mc matrix, a matrix
- tol0
tolerance for declaring a vector to be 0
Details
For each chain in chF0top
there are two possibilities. Let
\(v\) be the eigenvector in the chain, i.e. F0top
\(\times
v=0\). If F0bot
\(\times v\) is the zero vector,
then the corresponding chain for the larger matrix is obtained by
extending the vector to size mo x mo
arbitrarily, most
naturally with 0s. Otherwise, if F0bot
\(\times v\) is
not the zero vector, a new eigenvector is (0,...,0,F0bot
\(\times v\)) (there are mo.col zeroes here) and the remaining
members of the chain are obtained from the given chain by
...
. Notice that the eigenvector in chF0top
(after
extension) becomes the second member of the resulting chain, etc.
If the eigenvectors (0,...0,F0bot
\(\times v_i\)) are
linearly independent the job is done. But they may be linearly
dependent. If this is the case some of them need to be dropped and a
transformation is performed to obtain proper Jordan chains.