* Bug 10668 fixed: bloc2ss() page was inaccurate
[scilab.git] / scilab / modules / elementary_functions / help / ja_JP / signalprocessing / bloc2ss.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 - Serge STEER
5  * Copyright (C) 2008 - INRIA - Francois DELEBECQUE
6  *
7  * Copyright (C) 2012 - 2016 - Scilab Enterprises
8  *
9  * This file is hereby licensed under the terms of the GNU GPL v2.0,
10  * pursuant to article 5.3.4 of the CeCILL v.2.1.
11  * This file was originally licensed under the terms of the CeCILL v2.1,
12  * and continues to be available under such terms.
13  * For more information, see the COPYING file which you should have received
14  * along with this program.
15  *
16  -->
17 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
18           xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
19           xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
20           xmlns:scilab="http://www.scilab.org" xml:id="bloc2ss" xml:lang="ja">
21     <refnamediv>
22         <refname>bloc2ss</refname>
23         <refpurpose>ブロック図を状態空間表現に変換</refpurpose>
24     </refnamediv>
25     <refsynopsisdiv>
26         <title>呼び出し手順</title>
27         <synopsis>sl = bloc2ss(blocd)</synopsis>
28     </refsynopsisdiv>
29     <refsection>
30         <title>引数</title>
31         <variablelist>
32             <varlistentry>
33                 <term>blocd</term>
34                 <listitem>
35                     <para>リスト</para>
36                 </listitem>
37             </varlistentry>
38             <varlistentry>
39                 <term>sl</term>
40                 <listitem>
41                     <para>リスト</para>
42                 </listitem>
43             </varlistentry>
44         </variablelist>
45     </refsection>
46     <refsection>
47         <title>説明</title>
48         <para>
49             線形システムのブロック図表現を指定すると,
50             <literal>bloc2ss</literal>はこの形式を状態空間線形システムに
51             変換します.
52             リスト <literal>blocd</literal>の最初の要素は,
53             文字列 <literal>'blocd'</literal>である必要があります.
54             このリストのその他の各要素はそれ自体,以下の型のリストとなります:
55         </para>
56         <programlisting role=""><![CDATA[
57 list('transfer','name_of_linear_system')
58  ]]></programlisting>
59         <programlisting role=""><![CDATA[
60 list('link','name_of_link',
61              [number_of_upstream_box,upstream_box_port],
62              [downstream_box_1,downstream_box_1_portnumber],
63              [downstream_box_2,downstream_box_2_portnumber],
64              ...)
65  ]]></programlisting>
66         <para>
67             文字列 <literal>'transfer'</literal> および
68             <literal>'link'</literal> はブロック図の中での要素の型を示す
69             キーワードです.
70         </para>
71         <para>ケース1 :
72             リストの2番目のパラメータは,
73             状態空間表現(<literal>syslin</literal> リスト)または伝達関数形式(有理数の行列)
74             で指定される
75             線形システムのScilab名を指す(またはそのように評価される)文字列
76             です.
77         </para>
78         <para>
79             各伝達関数ブロックには1つの整数値がふられます.
80             伝達関数ブロックの各入力および出力にも整数値の番号がふられます.
81             (例を参照)
82         </para>
83         <para>ケース2 :
84             ブロック図表現の2種類目の要素はリンクです.
85             リンクは,
86             対<literal>[number_of_upstream_box,upstream_box_port]</literal>で
87             表されるブロックの出力と
88             他のブロックの入力を結合します.
89             この際,各入力は,対
90             <literal>[downstream_box_i,downstream_box_i_portnumber]</literal>
91             のように表されます.
92         </para>
93         <para>ブロックの異なる要素を任意の順序で
94             定義できます.
95         </para>
96         <para>例えば,</para>
97         <para>
98             [1] ゲイン1のフィードバックを有する<literal>S1*S2</literal>.
99         </para>
100         <para>
101             3つの伝達関数, <literal>S1</literal> (番号
102             <literal>n_s1=2</literal>) , <literal>S2</literal> (番号
103             <literal>n_s2=3</literal>) および伝達関す記号が<literal>['1','1']</literal>
104             となる加算器  (番号
105             <literal>n_add=4</literal>) があります.
106         </para>
107         <para>
108             リンクは 4 つあります :
109             <itemizedlist>
110               <listitem>
111                 最初のリンク (名前は <literal>'U'</literal>) 入力 を加算器のポート1に結合します.
112               </listitem>
113               <listitem>
114                 2番目と3番目のリンクはそれぞれ,
115                 加算器の(出力)ポート1をシステム<literal>S1</literal>の(入力)ポート1,
116                 <literal>S1</literal>の(出力)ポート1を<literal>S2</literal>の(入力)ポート1
117                 に結合します.
118               </listitem>
119               <listitem>
120                 (<literal>'Y'</literal>という名前の)4番目のリンクは,
121                 <literal>S2</literal>の出力ポート1を出力
122                 (仮想的なブロック -1 のポート0, 省略されている)
123                 および加算器の(入力)ポート2に結合します.
124               </listitem>
125           </itemizedlist>
126         </para>
127     </refsection>
128     <refsection>
129         <title>例</title>
130         <programlisting role="example"><![CDATA[
131 //Initialization
132 syst=list('blocd'); l=1;
133 //Systems
134 l=l+1;n_s1=l;syst(l)=list('transfer','S1');  //System 1
135 l=l+1;n_s2=l;syst(l)=list('transfer','S2');  //System 2
136 l=l+1;n_adder=l;syst(l)=list('transfer',['1','1']);  //adder
137 //Links
138 // Inputs  -1 --> input 1
139 l=l+1;syst(l)=list('link','U1',[-1],[n_adder,1]);
140 // Internal
141 l=l+1;syst(l)=list('link',' ',[n_adder,1],[n_s1,1]);
142 l=l+1;syst(l)=list('link',' ',[n_s1,1],[n_s2,1]);
143 // Outputs // -1 -> output 1
144 l=l+1;syst(l)=list('link','Y',[n_s2,1],[-1],[n_adder,2]);
145  ]]></programlisting>
146         <para>
147             <literal>s=poly(0,'s');S1=1/(s+1);S2=1/s;</literal>を指定すると,
148             評価コール<literal>sl=bloc2ss(syst);</literal>の結果は,
149             <literal>1/(s^2+s-1)</literal>の状態空間表現となります.
150         </para>
151         <para>[2] LFT の例 (Linear Fractional Transformation):</para>
152         <programlisting role="example"><![CDATA[
153 //Initialization
154 syst=list('blocd'); l=1;
155 //System (2x2 blocks plant)
156 l=l+1;n_s=l;syst(l)=list('transfer',['P11','P12';'P21','P22']);
157 //Controller
158 l=l+1;n_k=l;syst(l)=list('transfer','k');
159 //Links
160 l=l+1;syst(l)=list('link','w',[-1],[n_s,1]);
161 l=l+1;syst(l)=list('link','z',[n_s,1],[-1]);
162 l=l+1;syst(l)=list('link','u',[n_k,1],[n_s,2]);
163 l=l+1;syst(l)=list('link','y',[n_s,2],[n_k,1]);
164  ]]></programlisting>
165         <para>ただし,</para>
166         <programlisting role="example"><![CDATA[
167 A=[0,1;0,0];
168 B=[1;1];
169 C=[1,1];
170 D=poly(0,'s');
171 P=syslin('c',A,B,C,D);
172  ]]></programlisting>
173     </refsection>
174     <refsection role="see also">
175         <title>参照</title>
176         <simplelist type="inline">
177             <member>
178                 <link linkend="poly">poly</link>
179             </member>
180         </simplelist>
181     </refsection>
182 </refentry>