<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 * Copyright (C) 2008 - INRIA
 *
 * Copyright (C) 2012 - 2016 - Scilab Enterprises
 *
 * This file is hereby licensed under the terms of the GNU GPL v2.0,
 * pursuant to article 5.3.4 of the CeCILL v.2.1.
 * This file was originally licensed under the terms of the CeCILL v2.1,
 * and continues to be available under such terms.
 * For more information, see the COPYING file which you should have received
 * along with this program.
 *
 -->
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
          xmlns:scilab="http://www.scilab.org" xml:id="sysdiag" xml:lang="ru">
    <refnamediv>
        <refname>sysdiag</refname>
        <refpurpose>
            соединение блочно-диагональной системы <emphasis role="bold">(obsolete)</emphasis>
        </refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Синтаксис</title>
        <synopsis>r = sysdiag(a1,a2,...,an)</synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Аргументы</title>
        <variablelist>
            <varlistentry>
                <term>ai</term>
                <listitem>
                    <para>
                        constant, boolean, polynomial or rational matrices of any size.
                    </para>
                    <para>
                        подсистемы (т. е. усилители или линейные системы в пространстве состояний
                        или в передаточной форме)
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>r</term>
                <listitem>
                    <para>a matrix with a1, a2, a3, ... on the diagonal.</para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Описание</title>
        <warning>
            <literal>sysdiag()</literal> is obsolete. Please use <literal>blockdiag()</literal> instead.
        </warning>
        <para>
            Возвращает блочно-диагональную систему, созданную из подсистем, расположенных по главной диагонали.
        </para>
        <para>
            Given the inputs <varname>A</varname>, <varname>B</varname> and <varname>C</varname>,
            the output will have these matrices arranged on the diagonal:
            <latex style="display" alt="[A 0 0 ; 0 B 0 ; 0 0 C]">\begin{bmatrix} A \ \ 0 \ \ 0 \\ 0 \ \ B \ \ 0 \\ 0 \ \ 0 \ \ C \end{bmatrix}</latex>.
        </para>
        <note>
            If all the input matrices are square, the output is known as a <emphasis>block diagonal matrix</emphasis>.
        </note>
        <note>Особенно используется в системных взаимосвязях.</note>
        <para>
            For boolean matrices <literal>sysdiag()</literal> always returns a zero one matrix in
            the corresponding block ("true" values are replaced by 1 and "false" value by 0).
        </para>
    </refsection>
    <refsection>
        <title>Примеры</title>
        <programlisting role="example"><![CDATA[
s = poly(0,'s')
sysdiag(rand(2,2),1/(s+1),[1/(s-1);1/((s-2)*(s-3))])
sysdiag(tf2ss(1/s),1/(s+1),[1/(s-1);1/((s-2)*(s-3))])
 ]]></programlisting>
        <programlisting role="example"><![CDATA[
// a matrix of doubles:
A = [1 0; 0 1], B=[3 4 5; 6 7 8], C=7
D = sysdiag(A,B,C)
//
sysdiag([%t %f; %f %t], eye(2,2), ones(3,3))
// a polynomial matrix:
s = %s;
sysdiag([s 4*s; 4 s^4], [1 s^2 s+2; 3*s 2 s^2-1])
// a rational matrix:
sysdiag([1/s 2*s/(4*s+3)], [s; 4; 1/(s^2+2*s+1)])
// a block diagonal sparse matrix:
S = sysdiag([1 2; 3 4], [5 6; 7 8], [9 10; 11 12], [13 14; 15 16])
S = sparse(S)
 ]]></programlisting>
    </refsection>
    <refsection role="see also">
        <title>Смотрите также</title>
        <simplelist type="inline">
            <member>
                <link linkend="diag">diag</link>
            </member>
            <member>
                <link linkend="bdiag">bdiag</link>
            </member>
            <member>
                <link linkend="repmat">repmat</link>
            </member>
            <member>
                <link linkend="brackets">brackets</link>
            </member>
            <member>
                <link linkend="feedback">feedback</link>
            </member>
        </simplelist>
    </refsection>
    <refsection role="history">
        <title>История</title>
        <revhistory>
            <revision>
                <revnumber>6.1.0</revnumber>
                <revdescription>
                    sysdiag() is declared obsolete.
                </revdescription>
            </revision>
        </revhistory>
    </refsection>
</refentry>
