File: penlaur.cat

package info (click to toggle)
scilab 2.4-1
  • links: PTS
  • area: non-free
  • in suites: potato, slink
  • size: 55,196 kB
  • ctags: 38,019
  • sloc: ansic: 231,970; fortran: 148,976; tcl: 7,099; makefile: 4,585; sh: 2,978; csh: 154; cpp: 101; asm: 39; sed: 5
file content (52 lines) | stat: -rw-r--r-- 1,190 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52

penlaur(1)                     Scilab Function                     penlaur(1)
NAME
  penlaur - Laurent coefficients of matrix pencil

CALLING SEQUENCE
  [Si,Pi,Di,order]=penlaur(Fs)
  [Si,Pi,Di,order]=penlaur(E,A)

PARAMETERS

  Fs          : a regular pencil s*E-A

  E, A        : two real square matrices

  Si,Pi,Di    : three real square matrices

  order       : integer

DESCRIPTION
  penlaur computes the first Laurent coefficients of (s*E-A)^-1 at infinity.

  (s*E-A)^-1 = ... + Si/s - Pi - s*Di + ... at s = infinity.

  order = order of the singularity (order=index-1).

  The matrix pencil Fs=s*E-A should be invertible.

  For a index-zero pencil, Pi, Di,... are zero and Si=inv(E).

  For a index-one pencil (order=0),Di =0.

  For higher-index pencils, the terms  -s^2 Di(2), -s^3 Di(3),...  are given
  by:

   Di(2)=Di*A*Di,  Di(3)=Di*A*Di*A*Di  (up to Di(order)).

Remark
  Experimental version: troubles when bad conditioning of so*E-A

EXAMPLE
  F=randpencil([],[1,2],[1,2,3],[]);
  F=rand(6,6)*F*rand(6,6);[E,A]=pen2ea(F);
  [Si,Pi,Di]=penlaur(F);
  [Bfs,Bis,chis]=glever(F);
  norm(coeff(Bis,1)-Di,1)

SEE ALSO
  glever, pencan, rowshuff

AUTHOR
  F. D. (1988,1990)