<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Scilab ( https://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="norm" xml:lang="ru">
    <refnamediv>
        <refname>norm</refname>
        <refpurpose>нормы вектора или матрицы</refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Синтаксис</title>
        <synopsis>
        y = norm(x)
        y = norm(x, normType)
        </synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Аргументы</title>
        <variablelist>
            <varlistentry>
                <term>x</term>
                <listitem>
                    <para>
                        вещественный или комплексный вектор/матрица (полной или разрежённой формы)
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>normType</term>
                    <para>
                        <itemizedlist>
                            <listitem>
                                Для матрицы <literal>x</literal>: число из
                                <literal>1, 2, %inf, -%inf</literal>, или слово среди
                                <literal>"inf"</literal> (или <literal>"i"</literal>) или
                                <literal>"fro"</literal> (или <literal>"f"</literal>).
                            </listitem>
                            <listitem>
                                Для вектора <literal>x</literal>: любое число или <literal>%inf</literal>,
                                <literal>-%inf</literal>; либо слово <literal>"inf"</literal>
                                (<literal>"i"</literal>), <literal>"fro"</literal> (<literal>"f"</literal>).
                            </listitem>
                        </itemizedlist>
                    </para>
                    Значение по умолчанию = 2.
            </varlistentry>
            <varlistentry>
                <term>y</term>
                <listitem>
                    <para>
                        norm: отдельное положительное вещественное число.
                    </para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Описание</title>
        <para>Для матриц</para>
        <variablelist>
            <varlistentry>
                <term>norm(x), norm(x,2)</term>
                <listitem>
                    <para>
                        наибольшее сингулярное значение <literal>x</literal> (<literal>max(svd(x))</literal>).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>norm(x,1)</term>
                <listitem>
                    <para>
                        l_1-норма <literal>x</literal> (наибольшая сумма столбцов:
                        <literal>max(sum(abs(x),'r'))</literal>).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>norm(x,'inf'),norm(x,%inf)</term>
                <listitem>
                    <para>
                        Бесконечная норма <literal>x</literal> (наибольшая сумма строк:
                        <literal>max(sum(abs(x),'c'))</literal>).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>norm(x,'fro')</term>
                <listitem>
                    <para>
                        Норма Фробениуса, т. е.
                        <literal>sqrt(sum(diag(x'*x)))</literal>.
                    </para>
                </listitem>
            </varlistentry>
        </variablelist>
        <para>Для векторов</para>
        <variablelist>
            <varlistentry>
                <term>norm(v,p)</term>
                <listitem>
                    <para>
                        l_p-норма  <literal>sum(abs(v(i))^p)^(1/p)</literal> .
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>norm(v), norm(v,2)</term>
                <listitem>
                    <para>
                        Норма l_2.
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>norm(v,'inf')</term>
                <listitem>
                    <para>
                        <literal>max(abs(v(i)))</literal>.
                    </para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Примечание</title>
        <para>
            <literal>norm([])</literal> и <literal>norm([],p)</literal> возвращают 0.
        </para>
        <para>
          По соглашению <literal>norm (x)</literal> и <literal>norm (x,p)</literal> возвращают
          <literal>NaN</literal>, если <literal>x</literal> содержит <literal>NaN</literal>.
        </para>
    </refsection>
    <refsection>
        <title>Примеры</title>
        <programlisting role="example"><![CDATA[
A = [1,2,3];
norm(A,1)
norm(A,'inf')
A = [1,2;3,4]
max(svd(A)) - norm(A)

A=sparse([1 0 0 33 -1])
norm(A)
 ]]></programlisting>
    </refsection>
    <refsection role="see also">
        <title>Смотрите также</title>
        <simplelist type="inline">
            <member>
                <link linkend="h_norm">h_norm</link>
            </member>
            <member>
                <link linkend="dhnorm">dhnorm</link>
            </member>
            <member>
                <link linkend="h2norm">h2norm</link>
            </member>
            <member>
                <link linkend="abs">abs</link>
            </member>
            <member>
                <link linkend="svd">svd</link>
            </member>
        </simplelist>
    </refsection>
</refentry>
