gschur() was declared obsolete in Scilab 4, now removed
[scilab.git] / scilab / modules / linear_algebra / help / en_US / pencil / quaskro.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) 2008 - INRIA
5  *
6  * Copyright (C) 2012 - 2016 - Scilab Enterprises
7  *
8  * This file is hereby licensed under the terms of the GNU GPL v2.0,
9  * pursuant to article 5.3.4 of the CeCILL v.2.1.
10  * This file was originally licensed under the terms of the CeCILL v2.1,
11  * and continues to be available under such terms.
12  * For more information, see the COPYING file which you should have received
13  * along with this program.
14  *
15  -->
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="quaskro">
17     <refnamediv>
18         <refname>quaskro</refname>
19         <refpurpose>quasi-Kronecker form</refpurpose>
20     </refnamediv>
21     <refsynopsisdiv>
22         <title>Syntax</title>
23         <synopsis>
24             [Q, Z, Qd, Zd, numbeps, numbeta] = quaskro(F)
25             [Q, Z, Qd, Zd, numbeps, numbeta] = quaskro(E,A)
26             [Q, Z, Qd, Zd, numbeps, numbeta] = quaskro(F,tol)
27             [Q, Z, Qd, Zd, numbeps, numbeta] = quaskro(E,A,tol)
28         </synopsis>
29     </refsynopsisdiv>
30     <refsection role="parameters">
31         <title>Arguments</title>
32         <variablelist>
33             <varlistentry>
34                 <term>F</term>
35                 <listitem>
36                     <para>
37                         real matrix pencil <literal>F=s*E-A</literal>  (<literal>s=poly(0,'s')</literal>)
38                     </para>
39                 </listitem>
40             </varlistentry>
41             <varlistentry>
42                 <term>E,A</term>
43                 <listitem>
44                     <para>two real matrices of same dimensions</para>
45                 </listitem>
46             </varlistentry>
47             <varlistentry>
48                 <term>tol</term>
49                 <listitem>
50                     <para>a real number (tolerance, default value=1.d-10)</para>
51                 </listitem>
52             </varlistentry>
53             <varlistentry>
54                 <term>Q,Z</term>
55                 <listitem>
56                     <para>two square orthogonal matrices</para>
57                 </listitem>
58             </varlistentry>
59             <varlistentry>
60                 <term>Qd,Zd</term>
61                 <listitem>
62                     <para>two vectors of integers</para>
63                 </listitem>
64             </varlistentry>
65             <varlistentry>
66                 <term>numbeps</term>
67                 <listitem>
68                     <para>vector of integers</para>
69                 </listitem>
70             </varlistentry>
71         </variablelist>
72     </refsection>
73     <refsection role="description">
74         <title>Description</title>
75         <para>
76             Quasi-Kronecker form of matrix pencil: <literal>quaskro</literal> computes two
77             orthogonal matrices <literal>Q, Z</literal> which put the pencil <literal>F=s*E -A</literal> into
78             upper-triangular form:
79         </para>
80         <screen><![CDATA[
81            | sE(eps)-A(eps) |        X       |      X     |
82            |----------------|----------------|------------|
83            |        O       | sE(inf)-A(inf) |      X     |
84 Q(sE-A)Z = |=================================|============|
85            |                                 |            |
86            |                O                | sE(r)-A(r) |
87  ]]></screen>
88         <para>
89             The dimensions of the blocks are given by:
90         </para>
91         <para>
92             <literal>eps=Qd(1) x Zd(1)</literal>, <literal>inf=Qd(2) x Zd(2)</literal>,
93             <literal>r = Qd(3) x Zd(3)</literal>
94         </para>
95         <para>
96             The <literal>inf</literal> block contains the infinite modes of
97             the pencil.
98         </para>
99         <para>
100             The <literal>f</literal> block contains the finite modes of
101             the pencil
102         </para>
103         <para>
104             The structure of epsilon blocks are given by:
105         </para>
106         <para>
107             <literal>numbeps(1)</literal> = <literal>#</literal> of eps blocks of size 0 x 1
108         </para>
109         <para>
110             <literal>numbeps(2)</literal> = <literal>#</literal> of eps blocks of size 1 x 2
111         </para>
112         <para>
113             <literal>numbeps(3)</literal> = <literal>#</literal> of eps blocks of size 2 x 3  etc...
114         </para>
115         <para>
116             The complete (four blocks) Kronecker form is given by
117             the function <literal>kroneck</literal> which calls <literal>quaskro</literal> on
118             the (pertransposed) pencil <literal>sE(r)-A(r)</literal>.
119         </para>
120         <para>
121             The code is taken from T. Beelen
122         </para>
123     </refsection>
124     <refsection role="see also">
125         <title>See Also</title>
126         <simplelist type="inline">
127             <member>
128                 <link linkend="kroneck">kroneck</link>
129             </member>
130             <member>
131                 <link linkend="schur">schur</link>
132             </member>
133             <member>
134                 <link linkend="spec">spec</link>
135             </member>
136         </simplelist>
137     </refsection>
138 </refentry>