Skip to contents

Compute the transpose of a rational matrix \(x(z)\).

Usage

# S3 method for polm
t(x)

# S3 method for lpolm
t(x)

# S3 method for lmfd
t(x)

# S3 method for rmfd
t(x)

# S3 method for stsp
t(x)

# S3 method for pseries
t(x)

# S3 method for zvalues
t(x)

Arguments

x

rational matrix object, i.e. a polm, lpolm, lmfd, rmfd, stsp, pseries or zvalues object.

Value

A rational matrix object, which represents the transposed rational matrix \(x'(z)\). The output is of the same class as the input x unless

x is an lmfd or an rmfd object: The transposition of an lmfd object is an rmfd object, and vice versa.

Examples

x = test_polm(dim = c(2,3), degree = 3, random = TRUE)
all.equal(pseries(t(x)), t(pseries(x)))
#> [1] TRUE

x = test_stsp(dim = c(3,2), s = 1)
all.equal(zvalues(t(x)), t(zvalues(x)))
#> [1] TRUE

# the transpose of an LMFD object is RMFD
(x = test_lmfd(dim = c(3,2), degrees = c(1,1)))
#> ( 3 x 2 ) left matrix fraction description a^(-1)(z) b(z) with degrees (p = 1, q = 1)
#> left factor a(z):
#>      z^0 [,1]  [,2]  [,3]   z^1 [,1]       [,2]       [,3]
#> [1,]        1     0     0  1.1128444  1.5707491  0.2400267
#> [2,]        0     1     0 -0.1622396  0.7176393 -1.2201228
#> [3,]        0     0     1  1.6799761 -1.3955622  1.2804358
#> right factor b(z):
#>        z^0 [,1]       [,2]   z^1 [,1]        [,2]
#> [1,]  0.5602858  0.4737814 -0.1401662  0.33412629
#> [2,] -1.2834204 -0.6066674 -1.1380241 -0.02753544
#> [3,]  1.1649031 -0.6720017 -0.2829108 -1.11218295
t(x)
#> ( 2 x 3 ) right matrix fraction description d(z) c^(-1)(z) with degrees deg(c(z)) = p = 1, deg(d(z)) = q = 1
#> left factor d(z):
#>       z^0 [,1]       [,2]       [,3]   z^1 [,1]        [,2]       [,3]
#> [1,] 0.5602858 -1.2834204  1.1649031 -0.1401662 -1.13802408 -0.2829108
#> [2,] 0.4737814 -0.6066674 -0.6720017  0.3341263 -0.02753544 -1.1121829
#> right factor c(z):
#>      z^0 [,1]  [,2]  [,3]  z^1 [,1]       [,2]      [,3]
#> [1,]        1     0     0 1.1128444 -0.1622396  1.679976
#> [2,]        0     1     0 1.5707491  0.7176393 -1.395562
#> [3,]        0     0     1 0.2400267 -1.2201228  1.280436
all.equal(x, t(t(x)))
#> [1] TRUE