Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: Français - Português - 日本語

Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Scilab help >> CACSD > pfss


partial fraction decomposition

Calling Sequence




syslin list (state-space or transfer linear system) rmax : real number controlling the conditioning of block diagoanalization cord : character string 'c' or 'd'.


Partial fraction decomposition of the linear system Sl (in state-space form, transfer matrices are automatically converted to state-space form by tf2ss):

elts is the list of linear systems which add up to Sl i.e. elts=list(S1,S2,S3,...,Sn) with:

Sl = S1 + S2 +... +Sn.

Each Si contains some poles of S according to the block-diagonalization of the A matrix of S.

For non proper systems the polynomial part of Sl is put in the last entry of elts.

If Sl is given in transfer form, it is first converted into state-space and each subsystem Si is then converted in transfer form.

The A matrix is of the state-space is put into block diagonal form by function bdiag. The optional parameter rmax is sent to bdiag. If rmax should be set to a large number to enforce block-diagonalization.

If the optional flag cord='c' is given the elements in elts are sorted according to the real part (resp. magnitude if cord='d') of the eigenvalues of A matrices.


W1=0;for k=1:size(elts), W1=W1+ss2tf(elts(k));end

See Also

  • pbig — eigen-projection
  • bdiag — block diagonalization, generalized eigenvectors
  • coffg — inverse of polynomial matrix
  • dtsi — stable anti-stable decomposition



Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Mar 03 10:59:41 CET 2011