Jordan: Generate Jordan blocks with a set of given eigenvalues.

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/misc_funcs.R

Description

This function creates the Jordan blocks over the field of real numbers from a list of eigenvalues.

Usage

1
Jordan(eigenvals)

Arguments

eigenvals

A list of d eigenvalues.

Details

this is a convenient function that creates Jordan blocks (the J matrix in a Jordan canonical form) over the field of real numbers from a list of eigenvalues. Note that for each complex eigenvalue (those with nonzero imaginary part), this function will automatically add its complex conjugate to the list of eigenvalues. Therefore, there is no need to explicitly include both a+b*i and a-b*i in the input.

The returned value, J matrix, is organized in such way: the first K1 diagonal elements are real eigenvalues; the rest are 2x2 rotational matrices correspond with pairs of complex eigenvalues.

Value

J

The block-diagonal matrix that represents real (1x1 blocks) and complex eigenvalues (2x2 blocks) of A.

Author(s)

Xing Qiu

References

https://en.wikipedia.org/wiki/Jordan_normal_form

See Also

eigen

Examples

1
2
3
ll1 <- c(complex(real=c(-0.1, -0.5), imaginary=3*c(1, 0)))
J1 <- Jordan(ll1)
J1

qiuxing/ode.ident documentation built on Sept. 30, 2020, 11:17 a.m.