Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.1.0 - English

Change language to:
Français - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab Help >> Linear Algebra > Matrix Pencil > rowshuff

rowshuff

shuffle algorithm

Syntax

[Ws,Fs1]=rowshuff(Fs, [alfa])

Arguments

Fs

square real pencil Fs = s*E-A

Ws

polynomial matrix

Fs1

square real pencil F1s = s*E1 -A1 with E1 non-singular

alfa

real number (alfa = 0 is the default value)

Description

Shuffle algorithm: Given the pencil Fs=s*E-A, returns Ws=W(s) (square polynomial matrix) such that:

Fs1 = s*E1-A1 = W(s)*(s*E-A) is a pencil with non singular E1 matrix.

This is possible iff the pencil Fs = s*E-A is regular (i.e. invertible). The degree of Ws is equal to the index of the pencil.

The poles at infinity of Fs are put to alfa and the zeros of Ws are at alfa.

Note that (s*E-A)^-1 = (s*E1-A1)^-1 * W(s) = (W(s)*(s*E-A))^-1 *W(s)

Examples

F=randpencil([],[2],[1,2,3],[]);
F=rand(5,5)*F*rand(5,5);   // 5 x 5 regular pencil with 3 evals at 1,2,3
[Ws,F1]=rowshuff(F,-1);
[E1,A1]=pen2ea(F1);
svd(E1)           //E1 non singular
roots(det(Ws))
clean(inv(F)-inv(F1)*Ws,1.d-7)

See also

  • pencan — canonical form of matrix pencil
  • glever — inverse of matrix pencil
  • penlaur — Laurent coefficients of matrix pencil
Report an issue
<< randpencil Matrix Pencil State-Space Matrices >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 25 08:49:19 CET 2020