<literal>ans</literal>は,直近の代入されていない評価式の値を有しています.
</para>
<para>
- 変数 <literal>ans</literal> は <literal>predef</literal>で保護されません.
+ 変数 <literal>ans</literal> は <function>predef</function> で保護されません.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+2+2
+ans // 4
+ans=10 // 10
+clear ans
+a=2+2;
+isdef("ans") // F
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
];
x=A\b
A*x-b // ゼロに近い
+
A=rand(3,2);
b=[1;1;1];
x=A\b;
x=A\b;
y=pinv(A)*b;
x-y, A*x-b, A*y-b
+
// ランク落ちの場合
A=rand(3,1)*rand(1,2);
b=[1;1;1];
x=A\b;
y=pinv(A)*b;
A*x-b, A*y-b
+
// 複数の線形ソルバのベンチマーク
+
[A,descr,ref,mtype] = ReadHBSparse(SCI+..
"/modules/umfpack/examples/bcsstk24.rsa");
+
b = zeros(size(A,1),1);
+
tic();
res = umfpack(A,'\',b);
mprintf('\nTime with umfpack: %.3f\n',toc());
+
tic();
res = linsolve(A,b);
mprintf('\ntime with linsolve: %.3f\n',toc());
+
tic();
res = A\b;
mprintf('\ntime with backslash: %.3f\n',toc());
</revhistory>
</refsection>
</refentry>
+
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>a11,a12,... </term>
['this is';'a string';'vector']
s=poly(0,'s');[1/s,2/s]
[tf2ss(1/s),tf2ss(2/s)]
+
[u,s]=schur(rand(3,3))
]]></programlisting>
</refsection>
<term>A(:)</term>
<listitem>
<para>
- <literal>A</literal>の全要素を一つの列としてベクトル.
+ は,<literal>A</literal>の全要素を一つの列としてベクトル.
</para>
</listitem>
</varlistentry>
<term>A(:,j)</term>
<listitem>
<para>
- <literal>A</literal>の<literal>j</literal>番目の列
+ は,<literal>A</literal>の<literal>j</literal>番目の列;
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>A(i,:)</term>
+ <listitem>
+ <para>
+ は,<literal>A</literal>の<literal>i</literal>番目の行;
</para>
</listitem>
</varlistentry>
<term>A(j:k)</term>
<listitem>
<para>
- <literal>[A(j),A(j+1),...,A(k)]</literal>
+ は,<literal>[A(j),A(j+1),...,A(k)]</literal>;
</para>
</listitem>
</varlistentry>
<term>A(:,j:k)</term>
<listitem>
<para>
- <literal>[A(:,j),A(:,j+1),...,A(:,k)] </literal>
+ は,
+ <programlisting><![CDATA[
+ [A(1,j) A(1,j+1) ... A(1,k)
+ A(2,j) A(2,j+1) ... A(2,k)
+ . . . . . . . . . . .
+ A(M,j) A(M,j+1) ... A(M,k)]
+ ]]></programlisting>
+ ただし,<literal>A</literal> の大きさが
+ <literal>M</literal>行<literal>N</literal>列の場合;
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>A(j:k,:)</term>
+ <listitem>
+ <para>は,
+ <programlisting><![CDATA[
+ [A(j,1) A(j,2) ... A(j,N)
+ A(j+1,1) A(j+1,2) ... A(j+1,N)
+ . . . . . . . . . . .
+ A(k,1) A(k,2) ... A(k,N)]
+ ]]></programlisting>
+ ただし,<literal>A</literal>の大きさが
+ <literal>M</literal>行<literal>N</literal>列の場合;
</para>
</listitem>
</varlistentry>
<para>
行列 <literal>A</literal>に<literal>w</literal>のエントリを代入します
(<literal>w</literal> が行列の場合,列毎に取り出されます).
+ <literal>A</literal>のエントリの数は,
+ <literal>w</literal>のエントリの数を等しい必要があります.
</para>
</listitem>
</varlistentry>
</variablelist>
+ <para>
+ <literal>i</literal>, <literal>j</literal>,
+ <literal>k</literal>または<literal>d</literal>に小数点以下が
+ ある場合でも,整数部のみが使用されることに注意してください.
+ </para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting><![CDATA[
+a = 1:5
+b = 1:3:12
+A = matrix(1:42,7,6);
+// Aの全要素のベクトル
+A(:)
+
+// Aのj列目
+A(:,j)
+
+// Aのi行目
+A(i,:)
+
+// jからk列の全ての行の要素
+A(:,j:k)
+
+// jからk行の全ての列の要素
+A(j:k,:)
+
+w = matrix(101:142,7,6);
+A(:) = w
+
+// 添字が整数ではない場合
+i = 1:0.4:10; //添字
+A(i)
+
+ ]]></programlisting>
</refsection>
<refsection role="see also">
<title>参照</title>
<title>例</title>
<programlisting role="example"><![CDATA[
g=9.81// the gravity
+
text='a//b'
+
function y=myfunction(x)
// myfunction は y=x^2+1 を計算します
// x はベクトルまたは行列である必要があります
y=x^2+1
endfunction
+
help myfunction
]]></programlisting>
</refsection>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>a</term>
list(1,2,3)~=list(1,3,3)
"foo"=="bar"
sparse([1,2;4,5;3,10],[1,2,3]) == sparse([1,2;4,5;3,10],[1,2,3])
+
//オブジェクト毎の比較
(1:10)==[4,3]
'foo'==3
1==[]
list(1,2,3)==1
+
isequal(list(1,2,3),1)
isequal(1:10,1)
+
//型変換を伴う比較
int32(1)==1
int32(1)<1.5
<link linkend="less">less</link>
</member>
<member>
+ <link linkend="greater">greater</link>
+ </member>
+ <member>
<link linkend="boolean">boolean</link>
</member>
<member>
<programlisting role="example"><![CDATA[
a=[1,2,3;4,5,6];
a($)
+
b = [1 2 3;4 5 6;7 8 9];
// 最初の行の最後の要素(3)にアクセス
b(1,$)
b($,2)
//bの最後の要素(9)にアクセス
b($,$)
+
// 行列bの最後に行を追加
b($+1,:) = [1 1 1]
+
// $記号をLaTeXデリミタとして使用
titlepage(['$\Huge\textrm{It is }\LaTeX:$';'$\Huge 2^2+1=\sqrt{25}$'])
]]></programlisting>
<programlisting role=""><![CDATA[
function foo
a=1
+
disp(a),disp('ok')
endfunction
]]></programlisting>
<programlisting role="example"><![CDATA[
//decimal point
1.345
+
//used as part of an operator
x=[1 2 3];x.^2 .*x // a space is required between 2 and dot
+
// used to enter continuation lines
T=[123,..//first element
456] //second one
+
a="here I start a very long string... //but I'm not in the mood of continuing
- and here I go on"
y=12..
<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="ja" xml:id="else">
<refnamediv>
<refname>else</refname>
- <refpurpose>if-then-elseのキーワード</refpurpose>
+ <refpurpose>if-then-elseおよびselect-case-then-elseのキーワード</refpurpose>
</refnamediv>
<refsection>
<title>説明</title>
<para>
- <literal>if</literal>で使用.
+ <literal>if</literal>および<literal>select</literal>で使用されます.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+val = %t
+
+if val==%t then
+ disp("true");
+else
+ disp("false");
+end
+
+select val
+ case %t then
+ disp("true");
+ case %f then
+ disp("false");
+ else
+ disp("a third variant");
+end
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="if">if</link>
</member>
+ <member>
+ <link linkend="select">select</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<refsection>
<title>説明</title>
<para>
- <literal>if,then,else</literal>を参照ください.
+ 条件が複数ある場合,キーワード<literal>elseif</literal>
+ が便利です.
+ 複数の<literal>elseif</literal>がある場合,
+ 最初にtrue条件となったものが選択されます(他のものがtrueの場合でも).
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+a=1;
+if a==1 then
+ disp("a equals 1")
+elseif a==2 then
+ disp("a equals 2")
+elseif a==1 & a>0 then
+ disp("this condition is true, but never will be selected, because it is the second true condition.")
+else
+ disp("Case not handled.")
+end
+ ]]></programlisting>
+ </refsection>
+ <refsection role="see also">
+ <title>参照</title>
+ <simplelist type="inline">
+ <member>
+ <link linkend="if">if</link>
+ </member>
+ <member>
+ <link linkend="select">select</link>
+ </member>
+ </simplelist>
+ </refsection>
</refentry>
<title>説明</title>
<para>
ループまたは条件文の末尾で使用されます.
- <literal>for, while, if, select</literal> は <literal>end</literal> で
+ <literal>for</literal>, <literal>while</literal>, <literal>if</literal>,
+ <literal>select</literal> は, <literal>end</literal> で
終わる必要があります.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+a=42
+if a==42 then
+ disp("the answer to all questions")
+end
+
+i = 0
+while i<5
+ disp("i");
+ i = i + 1;
+end
+
+n=5;
+for i = 1:n
+ for j = 1:n
+ a(i,j) = 1/(i+j-1);
+ end;
+end
+
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<title>説明</title>
<variablelist>
<varlistentry>
- <term>代入t:</term>
+ <term>代入:</term>
<listitem>
<para>
等号記号 <literal>=</literal> は値の変数への代入を定義する
<itemizedlist>
<listitem>
<para>
- <literal>a=expr</literal> ただし
+ <literal>a=expr</literal> ただし,
<literal>a</literal> は変数名, <literal>expr</literal> は
単一の結果を返すScilab式です.
</para>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>x</term>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>nam1,..., namn</term>
<refsection>
<title>説明</title>
<para>
- もともと, 各 Scilab 関数は固有のローカルな変数を有し,
- 基本ワークスペースで作成された全ての変数を"読む"または
- 関数コールにより読むことができます.
- <literal>global</literal> キーワードにより,複数の関数をまたがって
- 変数を読み/書きすることができます.
- 関数の内部で変数に代入すると,この変数を<literal>global</literal>として
- 宣言した他の関数でも利用可能となります.
+ もともと, 各 Scilab 関数は固有のローカルな変数を有し,
+ 基本ワークスペースで作成された全ての変数を"読む"または
+ 関数コールにより読むことができます.
+ <literal>global</literal> キーワードにより,複数の関数をまたがって
+ 変数を読み/書きすることができます.
+ 関数の内部で変数に代入すると,この変数を<literal>global</literal>として
+ 宣言した他の関数でも利用可能となります.
</para>
<para>
- <literal>global</literal>命令を初めて実行した時点で
- そのグローバス変数が存在しない場合,
- 空行列に初期化されます.
+ <literal>global</literal>命令を初めて実行した時点で
+ そのグローバス変数が存在しない場合,空行列に初期化されます.
</para>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
-//first: calling environnment and a function share a variable
+//最初: 環境でコールし, 関数は変数を共用する
global a
a=1
deff('y=f1(x)','global a,a=x^2,y=a^2')
f1(2)
a
-//second: three functions share variables
+//2回目: 3つの関数が変数を共用
deff('initdata()','global A C ;A=10,C=30')
deff('letsgo()','global A C ;disp(A) ;C=70')
deff('letsgo1()','global C ;disp(C)')
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>x</term>
</varlistentry>
</variablelist>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+(1:5)==3
+(1:5)<=4
+(1:5)<=[1 4 2 3 0]
+1<[]
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
</para>
<para>
減算は,"ソフトコードされた"演算により他のデータ型についても
- 定義できます.
+ 定義できます
+ (<link linkend="overloading">オーバーローディング</link>参照).
</para>
</refsection>
<refsection>
<programlisting role="example"><![CDATA[
[1,2]-1
[]-2
+
%s-2
1/%s-2
-"cat"+"enate"
]]></programlisting>
</refsection>
<refsection role="see also">
<member>
<link linkend="mtlb_mode">mtlb_mode</link>
</member>
+ <member>
+ <link linkend="plus">plus</link>
+ </member>
+ <member>
+ <link linkend="overloading">overloading</link>
+ </member>
</simplelist>
</refsection>
</refentry>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>x</term>
</para>
<para>
*
- 式の中で評価の順序を指定します,
+ 式の中で評価の順序を指定します;
</para>
<para>
*
関数の右辺の引数のリストを作成します.
- 複数の右辺の引数の間はカンマで区切られる必要があります.
+ 複数の右辺の引数の間はカンマで区切られる必要があります;
</para>
<para>
+ *
ベクトル,行列およびリストの中の要素を選択します.
詳細にについては,
- 展開および挿入のヘルプを参照ください.
+ <link linkend="extraction">展開</link> および
+ <link linkend="insertion">挿入</link>
+ のヘルプを参照ください;
</para>
<para>
- *
- [x1,x2,...]=(e1,e2,...) は,まず
- %t_1 = e1, %t_2 = e2, ...,を実行した後,
- x1 = %t_1, x2 = %t_2, ..., とすることに等価です.
- ただし, 変数 %t_i, i = 1, 2, ...はユーザから不可視です.
+ <literal>[x1,x2,...]=(e1,e2,...)</literal> は,まず
+ <literal>%t_1 = e1, %t_2 = e2, ...</literal>を実行した後,
+ <literal> x1 = %t_1, x2 = %t_2, ...</literal>とすることに等価です.
+ ただし, 変数 <literal>%t_i, i = 1, 2, ...</literal>は,ユーザから不可視です.
</para>
</refsection>
<refsection>
例えば,関数 <literal>%rmr</literal> は乗算(<literal>m</literal>)
処理<literal>x*y</literal>を有理行列(<literal>r</literal>)
<literal>x</literal> および <literal>y</literal> に関して実行します.
- コード記法はディレクトリ<literal>SCIDIR/macros/percent</literal>の
- readmeファイルにより指定されています.
+ コード記法は,
+ <link linkend="overloading">オーバーローディング</link>の
+ ヘルプページに記載されています.
</para>
</refsection>
<refsection>
</refnamediv>
<refsynopsisdiv>
<title>呼出し手順</title>
- <synopsis>X+Y
- str1+str2
+ <synopsis>
+ X+Y
+ str1+str2
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>X,Y</term>
<listitem>
<para>
- 数値,多項式または有理数のスカラーまたはベクトルまたは行列. <literal>syslin</literal> リストとすることも可能
+ 数値,多項式または有理数のスカラーまたはベクトルまたは行列.
+ <literal>syslin</literal> リストとすることも可能
</para>
</listitem>
</varlistentry>
s=poly(0,"s");
s+2
1/s+2
-"cat"+"enate"
+"con"+"cat"+"enate"
]]></programlisting>
</refsection>
<refsection role="see also">
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>A,t</term>
<refsection>
<title>説明</title>
<itemizedlist>
- <listitem>
- <para>
- <literal>"(A:square)^(b:scalar)"</literal><literal>A</literal> が正方行列で<literal>b</literal> がスカラーの場合,
- <literal>A^b</literal>gは行列<literal>A</literal>の <literal>b</literal>乗に
- なります.
- </para>
- </listitem>
- <listitem>
- <para>
- <literal>"(A:matrix).^(b:scalar)"</literal><literal>b</literal> がスカラーで<literal>A</literal>が行列の場合,
- <literal>A.^b</literal>は<literal>A</literal>の各要素を<literal>b</literal>乗
- (要素毎の累乗)にした行列となります.
- <literal>A</literal> がベクトルで <literal>b</literal> がスカラーの場合,
- <literal>A^b</literal> と <literal>A.^b</literal> は同じ意味となります
- (すなわち,要素毎の累乗).
- </para>
- </listitem>
- <listitem>
- <para>
- <literal>"(A:scalar).^(b:matrix)"</literal><literal>A</literal> がスカラーで <literal>b</literal> が行列 (またはベクトル)の場合,
- <literal>A^b</literal> および <literal>A.^b</literal> は,
- <literal> a^(b(i,j))</literal> により構成される行列 (またはベクトル) となります.
- </para>
- </listitem>
- <listitem>
- <para>
- <literal>"(A:matrix).^(b:matrix)"</literal><literal>A</literal> および <literal>b</literal> が同じ大きさのベクトル (行列) の場合,
- <literal>A.^b</literal> はベクトル <literal>A(i)^b(i)</literal> (行列<literal>A(i,j)^b(i,j)</literal>)
- となります.
+ <listitem>
+ <para>
+ <literal>A</literal> が正方行列で<literal>b</literal> がスカラーの場合,
+ <literal>A^b</literal>は行列<literal>A</literal>の<literal>b</literal>乗に
+ なります.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>b</literal> がスカラーで<literal>A</literal>が行列の場合,
+ <literal>A.^b</literal>は<literal>A</literal>の各要素を<literal>b</literal>乗
+ (要素毎の累乗)にした行列となります.
+ <literal>A</literal> がベクトルで <literal>b</literal> がスカラーの場合,
+ <literal>A^b</literal> と <literal>A.^b</literal> は同じ意味となります
+ (すなわち,要素毎の累乗).
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>A</literal> がスカラーで,<literal>b</literal> が行列 (またはベクトル)の場合,
+ <literal>A^b</literal> および <literal>A.^b</literal> は,
+ <literal> a^(b(i,j))</literal> により構成される行列 (またはベクトル) となります.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>A</literal> および <literal>b</literal> が同じ大きさのベクトル (行列) の場合,
+ <literal>A.^b</literal> はベクトル <literal>A(i)^b(i)</literal>
+ (行列<literal>A(i,j)^b(i,j)</literal>)となります.
</para>
</listitem>
</itemizedlist>
+ </refsection>
+ <refsection>
+ <title>追加の注記</title>
+ <para>
+ <note>注意:</note>
+ </para>
+ <para>
+ 1.正方行列の場合, <literal>A^p</literal>は,
+ <literal>p</literal>が正のスカラーの場合は行列の逐次乗算により計算され,
+ それ以外の場合,<emphasis>対角化</emphasis>により計算されます
+ (詳細は"注記2および3"を参照).
+ </para>
+ <para>
+ 2. <varname>A</varname>が正方かつエルミート行列で
+ <varname>p</varname> が整数でないスカラーの場合,
+ <literal>A^p</literal> は以下の様に計算されます:
+ </para>
+ <para>
+ <code>A^p = u*diag(diag(s).^p)*u'</code> (<varname>A</varname>が実数行列の場合,
+ 答えの実部のみが考慮されます).
+ </para>
+ <para>
+ <varname>u</varname>および<varname>s</varname> は, <code>[u,s] = schur(A)</code>
+ により定義されます.
+ </para>
+ <para>
+ 3. <varname>A</varname> がエルミート行列でなく,
+ <varname>p</varname> が非整数スカラーの場合,
+ <literal>A^p</literal> は以下の様に計算されます:
+ </para>
+ <para>
+ <code>A^p = v*diag(diag(d).^p)*inv(v)</code>
+ (<varname>A</varname>が実数行列の場合, 答えの実部のみが考慮されます).
+ </para>
<para>
- 注記:
+ <varname>d</varname> および <varname>v</varname> は,
+ <code>[d,v] = bdiag(A+0*%i)</code>により定義されます.
</para>
<para>
- -
- 正方行列の場合, <literal>A^p</literal>は,<literal>p</literal>が正の整数の場合,
- 行列の逐次乗算により計算され,それ以外の場合,対角化により計算されます.
+ 4. <varname>A</varname> および <varname>p</varname> が実数または複素数の場合,
+ <literal>A^p</literal> は以下のように計算される
+ <emphasis>主値</emphasis>となります:
</para>
<para>
- -
- <literal>**</literal> および <literal>^</literal> 演算子は同義です.
+ <code>A^p = exp(p*log(A))</code> (または<code>A^p = exp(p*(log(abs(A))+ %i*atan(imag(A)/real(A))))</code> ).
+ </para>
+ <para>
+ 5. <varname>A</varname> が正方行列で
+ <varname>p</varname> が実数または複素数の場合,
+ <literal>A.^p</literal> は以下のように計算される
+ <emphasis>主値</emphasis> となります:
+ </para>
+ <para>
+ <code>A.^p = exp(p*log(A))</code> (上記のケース4と同じ).
+ </para>
+ <para>
+ 6. <literal>**</literal> および <literal>^</literal> 演算子は同義です.
</para>
</refsection>
<refsection>
A.^2.5
(1:10)^2
(1:10).^2
+
+A^%i
+A.^%i
+exp(%i*log(A))
+
s=poly(0,'s')
s^(1:10)
]]></programlisting>
<member>
<link linkend="exp">exp</link>
</member>
+ <member>
+ <link linkend="hat">hat</link>
+ </member>
</simplelist>
</refsection>
</refentry>
引用符 (<literal>.'</literal>) は,行列の(非共役)転置に使用されます.
</para>
<para>
- 1重 (') または2重 (") 引用符は文字列を定義する際に使用されます
+ 1重引用符 (') または2重引用符 (")
+ は,文字列を定義する際に使用されます
(2つの引用符の間にあるものは文字列として定義されます).
文字列の中の引用符は2つの引用符で定義できます.
</para>
[1+%i, 2]'
[1+%i, 2].'
x='This is a character string'
+x="This is another character string"
'He said:''Good'''
+'He said:""Very Good""'
]]></programlisting>
</refsection>
+ <refsection role="see also">
+ <title>参照</title>
+ <simplelist type="inline">
+ <member>
+ <link linkend="conj">conj</link>
+ </member>
+ </simplelist>
+ </refsection>
</refentry>
エントリ<literal>A(i,j)/B(i,j)</literal>を有する行列となります.
<literal>B</literal> がスカラー (1x1 行列)の場合,この演算は
<code>A./B*ones(A)</code>と同じになります.
- <literal>A</literal>がスカラーの場合も
- 同様です.
+ <literal>A</literal>がスカラーの場合も同様です.
</para>
<para>
<note>
];
x=a/B
x*B-a // ゼロに近い
+
a=4 / 2; // 2となります
a=2 ./ [2,4]; // 1. 0.5
// コメントは有用です. コードを理解しやすくします.
<link linkend="inv">inv</link>
</member>
<member>
- <link linkend="percent">percent</link>
- </member>
- <member>
<link linkend="backslash">backslash</link>
</member>
<member>
- <link linkend="ieee">ieee</link>
+ <link linkend="comments">comments</link>
</member>
</simplelist>
</refsection>
<para>
<literal>A*.B</literal> は
定義済みの意味がない演算子で, * または /. と同様に
- 新しい演算子を定義する際に使用可能です(オーバーロード参照).
+ 新しい演算子を定義する際に使用可能です(
+ (<link linkend="overloading">オーバーロード</link>参照).
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+// 基本的な数値演算
+2 * 2 // 4
+2 * [%pi, %eps] // 6.2831853 4.441D-16
+rand(2,2) * rand(2)
+[1, 2; 3, 4] * [%pi,%eps; %e, %pi]
+ ]]></programlisting>
+ <programlisting role="example"><![CDATA[
+// 多項式演算
+s=poly(0,"s");
+p=1+s+2*s^2;
+q=1+s+2*s^3;
+p * q
+// 2 3 4 5
+// 1 + 2s + 3s + 4s + 2s + 4s
+ ]]></programlisting>
+ <programlisting role="example"><![CDATA[
+// 有理数
+s=poly(0,'s');
+W=[1/s,1/(s+1)];
+W' * W
+// 1 1
+// - -----
+// 2 2
+// s s + s
+//
+// 1 1
+// ----- ---------
+// 2 2
+// s + s 1 + 2s + s
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
+ <link linkend="dot">dot</link>
+ </member>
+ <member>
<link linkend="slash">slash</link>
</member>
<member>
<member>
<link linkend="syslin">syslin</link>
</member>
+ <member>
+ <link linkend="overloading">overloading</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<td>Scilab ヘルプの名前</td>
</tr>
<tr>
- <td> ',", .'</td>
+ <td>',", .'</td>
<td>
<link linkend="quote">quote</link>
</td>
</tr>
<tr>
- <td> +</td>
+ <td>+</td>
<td>
<link linkend="plus">plus</link>
</td>
</tr>
<tr>
- <td> -</td>
+ <td>-</td>
<td>
<link linkend="minus">minus</link>
</td>
</tr>
<tr>
- <td> *,.*</td>
+ <td>*,.*</td>
<td>
<link linkend="star">star</link>
</td>
</tr>
<tr>
- <td> /, ./, /.</td>
+ <td>/, ./, /.</td>
<td>
<link linkend="slash">slash</link>
</td>
</tr>
<tr>
- <td> \,.\ ,\. </td>
+ <td>\,.\ ,\.</td>
<td>
<link linkend="backslash">backslash</link>
</td>
</tr>
<tr>
- <td> .</td>
+ <td>.</td>
<td>
<link linkend="dot">dot</link>
</td>
</tr>
<tr>
- <td> =, ==</td>
+ <td>=, ==</td>
<td>
<link linkend="equal">equal</link>
</td>
</tr>
<tr>
- <td> <,>,>=,<=,<></td>
+ <td><,>,>=,<=,<></td>
<td>
<link linkend="less">less</link>, <link linkend="greater">greater</link>
</td>
</tr>
<tr>
- <td> ~</td>
+ <td>~</td>
<td>
<link linkend="tilde">tilde</link>
</td>
</tr>
<tr>
- <td> []</td>
+ <td>[]</td>
<td>
<link linkend="brackets">brackets</link>
</td>
</tr>
<tr>
- <td> ()</td>
+ <td>()</td>
<td>
<link linkend="parentheses">parentheses</link>
</td>
</tr>
<tr>
- <td> %</td>
+ <td>%</td>
<td>
<link linkend="percent">percent</link>
</td>
</tr>
<tr>
- <td> :</td>
+ <td>:</td>
<td>
<link linkend="colon">colon</link>
</td>
</tr>
<tr>
- <td> ,</td>
+ <td>,</td>
<td>
<link linkend="comma">comma</link>
</td>
</tr>
<tr>
- <td> ;</td>
+ <td>;</td>
<td>
<link linkend="semicolon">semicolon</link>
</td>
</td>
</tr>
<tr>
- <td> |</td>
+ <td>|</td>
<td>
<link linkend="or_op">or_op</link>
</td>
</tr>
<tr>
- <td> &</td>
+ <td>&</td>
<td>
<link linkend="and_op">and_op</link>
</td>
</tr>
<tr>
- <td> .*., ./., .\.</td>
+ <td>.*., ./., .\.</td>
<td>
<link linkend="kron">kron</link>
</td>
<refsection>
<title>説明</title>
<para>
- <literal>~m</literal> は, <literal>m</literal>の否定です.
+ <code>~m</code> は,
+ 論理値行列<code>m</code>の要素の要素毎の否定を出力します.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+a = %T
+~a == %F
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
これは,特に構文エラーを処理する際に有用です.
</para>
<para>
- <literal>try-catch</literal> は
- に多少なりとも似ていることにも注意してください:
+ <literal>try-catch</literal> は以下に
+ 多少なりとも似ていることにも注意してください:
</para>
<programlisting role=""><![CDATA[
if execstr("<try instructions>","errcatch")<>0 then
x=1:10
end
[error_message,error_number]=lasterror(%t)
+
// 例 2 (ネストしたtry/catch構造)
function nestedtry(a,b)
disp("START")
disp("try 1")
try
disp("try 2")
- z=a+1; // err when string
+ z=a+1; // 文字列の場合はエラー
catch
disp("catch 2")
- t=b+1; // err when string
+ t=b+1; // 文字列の場合はエラー
end
disp("after try 2")
catch
<refsection>
<title>説明</title>
<para>
- <literal>abort</literal> は現在の評価を中断し,
- プロンプトを表示します.<literal>pause</literal> 中の場合,
- <literal>abort</literal>はレベル0プロンプトに戻します.
+ <code>abort</code> は現在の評価を中断し,
+ プロンプトを表示します.
+ <code>pause</code>レベルの中の場合,
+ <code>abort</code>はレベル0プロンプトに戻します.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+a=2
+b=3
+abort // 実行はここで停止します.
+c=4 // c は定義されません
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="break">break</link>
</member>
+ <member>
+ <link linkend="resume">resume</link>
+ </member>
</simplelist>
</refsection>
</refentry>
k=0;
while 1==1,
k=k+1;
- if k > 100 then
+ if k > 100 then
break
end;
end
<refsection>
<title>説明</title>
<para>
- <literal>select ... case</literal>で使用されるキーワード
+ <literal>select ... case ... end</literal>命令で使用されるキーワード
+ </para>
+ <para>
+ キーワード<literal>case</literal> は,変数値の1つの値を指します
+ (値の範囲から選択された変数値).
</para>
<para>
以下のように使用されます:
+ <programlisting role="no-scilab-exec"><![CDATA[
+select expr0
+ case expr1 then
+ instructions 1
+ case expr2 then
+ instructions 2
+ ...
+ case exprn then
+ instructions n
+ [else instructions]
+end
+ ]]></programlisting>
</para>
- <programlisting><![CDATA[
-select expr0,
- case expr1 then instructions1,
- case expr2 then instructions2,
- ...
- case exprn then instructionsn,
- [else instructions],
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+OS=getos()
+select OS
+case "Windows" then
+ disp("Scilab on Windows")
+case "Linux" then
+ disp("Scilab on Linux")
+case "Darwin" then
+ disp("Scilab on MacOs")
+else
+ error("Scilab on Unknown platform")
end
]]></programlisting>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
-for k=1:10,K=k;if k>2&k<=8 then continue,disp('hello'),end,k,end
+for k=1:10
+ K=k;
+ if k>2 & k<=8 then
+ continue
+ disp('hello')
+ end
+ k
+end
+
for j=1:2
x=[];
- for k=1:10,if k>j+1&k<=8 then continue,end,x=[x,k];end
+ for k=1:10
+ if k>j+1 & k<=8 then
+ continue
+ end
+ x=[x,k];
+ end
x
end
]]></programlisting>
ループ変数の定義と命令を分離するために使用されます.
</para>
</refsection>
+
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
a(i,j) = 1/(i+j-1);
end;
end
+
]]></programlisting>
</refsection>
<refsection role="see also">
値とします.
</para>
<para>
+ Scilabプログラミング言語のコード規約に基づき, 以下が推奨されます:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ 各命令を新しい行で開始する.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 1行に複数の命令を記述しない.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 複合命令は,複数行に分割する.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ 例えば, 以下のようにします:
+ </para>
+ <programlisting role=""><![CDATA[
+ for i = 1:5
+ disp(i);
+ end
+]]></programlisting>
+ <para>
+ 以下は推奨されません.
+ </para>
+ <programlisting role=""><![CDATA[
+ for i = 1:5 disp(i); end
+]]></programlisting>
+ <para>
+ <warning>
警告: 条件文(if while for または select/case)の本体を定義するために
使用できる文字の数は,16k に制限されています.
+ </warning>
</para>
</refsection>
<refsection>
<programlisting role="example"><![CDATA[
// "traditional" for loops
n=5;
-for i = 1:n, for j = 1:n, a(i,j) = 1/(i+j-1);end;end
-for j = 2:n-1, a(j,j) = j; end; a
-for j= 4:-1:1, disp(j),end // decreasing loop
+for i = 1:n
+ for j = 1:n
+ a(i,j) = 1/(i+j-1);
+ end;
+end
+for j = 2:n-1
+ a(j,j) = j;
+end;
+a
+for j= 4:-1:1
+ disp(j);
+end // decreasing loop
+
//loop on matrix columns
-for e=eye(3,3),e,end
-for v=a, write(6,v),end
-for j=1:n,v=a(:,j), write(6,v),end
+for e=eye(3,3), e, end
+for v=a, write(6,v), end
+for j=1:n, v=a(:,j), write(6,v), end
+
//loop on list entries
-for l=list(1,2,'example'); l,end
+for l=list(1,2,'example'); l, end
+
]]></programlisting>
</refsection>
<refsection role="see also">
</refnamediv>
<refsynopsisdiv>
<title>呼び出し手順</title>
- <synopsis>if expr1 then statements
- elseif expri then statements
+ <synopsis>
+ if expr1 then
+ statements
+ elseif expri then
+ statements
....
- else statements
+ else
+ statements
end
</synopsis>
</refsynopsisdiv>
<refsection>
+ <title>引数</title>
+ <variablelist>
+ <varlistentry>
+ <term>expr1, expri</term>
+ <listitem>
+ <para>
+ 論理式
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>statements</term>
+ <listitem>
+ <para>
+ 有効な命令のブロック
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsection>
+ <refsection>
<title>説明</title>
<para>
- <literal>if</literal> 命令は論理式を評価し,その値が真の時に
- 一連の命令を実行します.
+ <literal>if</literal> 命令は論理式を評価し,その値が真の時に
+ 一連の命令を実行します.
+ </para>
+ <para>
+ <literal>expri</literal> は数値または論理値を値とする式です.
+ <literal>expri</literal> が行列の場合,
+ 全ての行列のエントリが真またはゼロでない場合にのみ
+ その条件は真となります.
+ </para>
+ <para>
+ オプションの <literal>elseif</literal> および <literal>else</literal> により,
+ 別の命令のグループを実行することができます.
+ <literal>if</literal>に対応する
+ <literal>end</literal> キーワードにより,最後の命令のグループが
+ 終了します.
+ 上記の行の構造には意味がなく,唯一の拘束条件は,
+ 各<literal>then</literal>キーワードを対応する
+ <literal>if</literal> または <literal>elseif</literal>キーワードと
+ 同じ行に置く必要があることのみです.
+ </para>
+ <para>
+ キーワード <literal>then</literal> は,キャリッジ・リターンまたはカンマで
+ 置き換えることができます.
</para>
<para>
- <literal>expri</literal> は数値または論理値を値とする式です.
- <literal>expri</literal> が行列の場合,
- 全ての行列のエントリが真またはゼロでない場合にのみ
- その条件は真となります.
+ Scilabプログラミング言語のコード規約に基づき, 以下が推奨されます:
</para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ 各命令を新しい行で開始する.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 1行に複数の命令を記述しない.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 複合命令は,複数行に分割する.
+ </para>
+ </listitem>
+ </itemizedlist>
<para>
- オプションの <literal>elseif</literal> および <literal>else</literal> により,
- 別の命令のグループを実行することができます.
- <literal>if</literal>に対応する
- <literal>end</literal> キーワードにより,最後の命令のグループが
- 終了します.
- 上記の行の構造には意味がなく,唯一の拘束条件は,
- 各<literal>then</literal>キーワードを対応する
- <literal>if</literal> または <literal>elseif</literal>キーワードと
- 同じ行に置く必要があることのみです.
+ 例えば,以下のようにします:
</para>
+ <programlisting role=""><![CDATA[
+ if rand(1,1) > 0.5 then
+ disp("True");
+ else
+ disp("False");
+ end
+]]></programlisting>
<para>
- キーワード <literal>then</literal> はキャリッジ・リターンまたはカンマで
- 置き換えることができます.
+ 以下は推奨されません.
</para>
+ <programlisting role=""><![CDATA[
+ if rand(1,1) > 0.5 then disp("True"); else disp("False"); end
+]]></programlisting>
<para>
- 警告: 条件文(if while for または select/case)の内部に記述可能な文字数は
- 16kに制限されています.
+ 警告: 条件文(if while for または select/case)の内部に記述可能な文字数は
+ 16kに制限されています.
</para>
</refsection>
<refsection>
<member>
<link linkend="else">else</link>
</member>
+ <member>
+ <link linkend="comparison">comparison</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<refsection>
<title>説明</title>
<para>
- <literal>pause</literal> モードに切り替えます;
- 関数のコードに挿入すると,<literal>pause</literal> は関数の実行を中断し,
- <literal>pause</literal>のレベル (例: <literal>-1-></literal>)を
- 示すプロンプト記号が表示がされます.
- この時,ユーザは新しいワークスペースにおり,
- より低いレベルの変数(特にその関数内の全ての変数)が全て利用可能となっています.
- コールしたワークスペースに戻るには<literal>"return"</literal>を入力します
+ <code>pause</code>モードに切り替えます;
+ 関数のコードに挿入すると,<code>pause</code>は関数の実行を中断し,
+ <code>pause</code>のレベル (例: <literal>-1-></literal>)を
+ 示すプロンプト記号が表示がされます.
+ この時,ユーザは新しいワークスペースにおり,
+ より低いレベルの変数(特にその関数内の全ての変数)が全て利用可能となっています.
+ コールしたワークスペースに戻るには<code>return</code>を入力します.
</para>
<para>
- このモードでは, <literal>[...]=return(...) </literal>は
- 引数の変数 <literal>(...)</literal> をコールしたワークスペースに
- <literal> [...]</literal>という名前の出力として返します.
- 一方, より低いレベルの変数は保護され, 修正することはできません.
+ このモードでは, <literal>[...]=return(...) </literal>は
+ 引数の変数 <literal>(...)</literal> をコールしたワークスペースに
+ <literal> [...]</literal>という名前の出力として返します.
+ 一方, より低いレベルの変数は保護され, 修正することはできません.
</para>
<para>
- <literal>pause</literal> はデバッグの際に非常に有用です.
+ <literal>pause</literal> はデバッグの際に非常に有用です.
</para>
<para>
- このモードはコマンド <literal>"abort"</literal>により破棄することができます.
+ このモードはコマンド <literal>"abort"</literal>により破棄することができます.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+ function c=foo(b)
+ a=42+b
+ disp("Thanks to the pause, you can investigate if ''a'' has the right value");
+ disp("Value can be changed too if needed.");
+ pause
+ c=a+2
+ endfunction
+
+ foo(2)
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>Parameters</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
- <term>x</term>
+ <term>x1,..,xn</term>
<listitem>
- <para>...</para>
+ <para>コール側の環境の変数</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>a1,..,an</term>
+ <listitem>
+ <para>ローカル変数</para>
</listitem>
</varlistentry>
</variablelist>
<para>
<literal>resume</literal> は <literal>return</literal>と等価です.
</para>
+ <para>
+ <note>
+ 注意: この機能を使用すると,コードが複雑化する可能性があります.
+ 代わりに, <code>function b = foo()</code>構文が推奨されます.
+ </note>
+ </para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+function foo(a)
+ a=a+1
+ b=resume(a)
+ c=52
+endfunction
+
+foo(42);
+assert_checkequal(b,43);
+// c does not exist
+
+]]></programlisting>
+ <programlisting role="example"><![CDATA[
+
+// with several function calls
+function foo1()
+ a=1;
+ b=2;
+ c=3;
+ [x,y,z]=resume(a, b, c)
+endfunction
+
+function foo2()
+ foo1()
+ x, y, z // Declared
+endfunction
+
+foo2()
+// x y z does not exist here
+]]></programlisting>
</refsection>
<refsection role="see also">
<title>参照</title>
<member>
<link linkend="break">break</link>
</member>
+ <member>
+ <link linkend="pause">pause</link>
+ </member>
+ <member>
+ <link linkend="quit">quit</link>
+ </member>
+ <member>
+ <link linkend="return">return</link>
+ </member>
+ <member>
+ <link linkend="execstr">execstr</link>
+ </member>
</simplelist>
</refsection>
</refentry>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
- <variablelist>
+ <title>引数</title>
+ <variablelist>
<varlistentry>
- <term>x</term>
+ <term>x1,..,xn</term>
<listitem>
- <para>...</para>
+ <para>コール側の環境の変数</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>a1,..,an</term>
+ <listitem>
+ <para>ローカル変数</para>
</listitem>
</varlistentry>
</variablelist>
<para>
<literal>resume</literal> は <literal>return</literal>と等価です.
</para>
+ <para>
+ <note>
+ 注意: この機能を使用すると,コードが複雑化する可能性があります.
+ 代わりに, <code>function b = foo()</code>構文が推奨されます.
+ </note>
+ </para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+function foo(a)
+ a=a+1
+ b=resume(a)
+ c=52
+endfunction
+
+foo(42);
+assert_checkequal(b,43)
+// c does not exist
+
+ ]]></programlisting>
+ </refsection>
+
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="break">break</link>
</member>
+ <member>
+ <link linkend="execstr">execstr</link>
+ </member>
+ <member>
+ <link linkend="resume">resume</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<refname>select</refname>
<refpurpose>select キーワード</refpurpose>
</refnamediv>
+ <refsynopsisdiv>
+ <title>呼び出し手順</title>
+ <synopsis>
+ select variable
+ case value1 then
+ instructions 1
+ case value2 then
+ instructions 2
+ ...
+ case valuen then
+ instructions n
+ [else instructions]
+ end
+ </synopsis>
+ </refsynopsisdiv>
+ <refsection>
+ <title>引数</title>
+ <variablelist>
+ <varlistentry>
+ <term>variable</term>
+ <listitem>
+ <para>
+ 値を解析する変数.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>value1, ..., valuen</term>
+ <listitem>
+ <para>
+ 適当な命令ブロック
+ <literal>instructions 1, ..., instructions n</literal>
+ が存在する
+ <literal>variable</literal>の値.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>instructions</term>
+ <listitem>
+ <para>
+ 有効な命令のブロック.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsection>
<refsection>
<title>説明</title>
- <programlisting role=""><![CDATA[
-select expr,
- case expr1 then instructions1,
- case expr2 then instructions2,
- ...
- case exprn then instructionsn,
- [else instructions],
-end
- ]]></programlisting>
- <para>
- </para>
- <para>
+ <para>
注意:
</para>
<itemizedlist>
+ <listitem>
+ <para>
+ 唯一の規則は,各<literal>then</literal>キーワードを対応する
+ <literal>case</literal>キーワードと同じ行に置く必要があることです
+ (または,連続化記号を使用します, <link linkend="dot">ドット</link>参照).
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ キーワード <literal>"then"</literal>の代わりにキャレッジリターン
+ またはカンマを使用することができます.
+ <literal>instructions1</literal> は <literal>expr1=expr</literal> の場合に実行される,
+ といったようになります.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ Scilabプログラミング言語のコード規約に基づき, 以下が推奨されます:
+ </para>
+ <itemizedlist>
<listitem>
<para>
- 唯一の規則は,各 "then" キーワードを対応する "case" キーワードと同じ行に
- 置く必要があることです.
+ 各命令を新しい行で開始する.
</para>
</listitem>
<listitem>
- <para>キーワード "then" の代わりにキャレッジリターンまたはカンマを使用することができます.
- <literal>instructions1</literal> は <literal>expr1=expr</literal> の場合に実行される,
- といったようになります.
+ <para>
+ 1行に複数の命令を記述しない.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 複合命令は,複数行に分割する.
</para>
</listitem>
</itemizedlist>
<para>
- 警告: 条件文(if while for または select/case)の本体の定義に使用できる文字数は 16k に制限されています.
+ 例えば, 以下のようにします:
+ </para>
+ <programlisting role=""><![CDATA[
+A = 2
+select A
+case 1 then
+ disp(1)
+case 2 then
+ disp(2)
+else
+ disp(3)
+end
+]]></programlisting>
+ <para>
+ 以下は推奨されません.
+ </para>
+ <programlisting role=""><![CDATA[
+A = 2;select A case 1 then disp(1); case 2 then disp(2); else disp(3); end
+]]></programlisting>
+ <para>
+ <warning>
+ 警告: 条件文(if while for または select/case)の本体の定義に使用できる
+ 文字数は 16k に制限されています.
+ </warning>
</para>
</refsection>
<refsection>
<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="ja" xml:id="then">
<refnamediv>
<refname>then</refname>
- <refpurpose>if-then-elseのキーワード</refpurpose>
+ <refpurpose>'if'および'select'のキーワード</refpurpose>
</refnamediv>
<refsection>
<title>説明</title>
<para>
- <literal>if</literal>と共に使用されます.
+ 制御フロー<literal>if</literal>および<literal>select</literal>において
+ 使用されます.
+ 各<literal>then</literal>キーワードは,
+ <literal>if</literal>, <literal>elseif</literal> または
+ <literal>case</literal>キーワードと同じ行に置く必要があります.
+ </para>
+ <para>
+ キーワード<literal>then</literal> はキャレッジリターンまたはカンマで
+ 置換できます.
</para>
</refsection>
<refsection>
- <title>Examples</title>
+ <title>例</title>
<programlisting role="example"><![CDATA[
if 2*2 == 4 then
disp("It works")
end
+
n=round(10*rand(1,1))
select n
case 0 then
end
]]></programlisting>
</refsection>
+
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="if">if</link>
</member>
+ <member>
+ <link linkend="elseif">elseif</link>
+ </member>
+ <member>
+ <link linkend="select">select</link>
+ </member>
+ <member>
+ <link linkend="case">case</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<listitem>
<para>
唯一の制約は, <literal>then</literal> または
- <literal>do</literal>" キーワードを
+ <literal>do</literal>キーワードを
<literal>while</literal> キーワードと同じ行に置く必要がある
ことです.
</para>
</para>
</listitem>
</itemizedlist>
+ <para>
+ Scilabプログラミング言語のコード規約に基づき, 以下が推奨されます:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ 各命令を新しい行で開始する.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 1行に複数の命令を記述しない.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ 複合命令は,複数行に分割する.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ 例えば以下のようにします:
+ </para>
+ <programlisting role=""><![CDATA[
+ i = 0
+ while i<5
+ disp("i");
+ i = i + 1;
+ end
+]]></programlisting>
+ <para>
+ 以下は推奨されません.
+ </para>
+ <programlisting role=""><![CDATA[
+ i = 0; while i<5 disp("i"); i = i + 1; end
+]]></programlisting>
<para>
+ <warning>
警告: 条件付き命令(if while for または select/case)の本文を定義するために使用可能な
文字数は 16 k以下とする必要があります.
+ </warning>
</para>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
e=1; a=1; k=1;
-while norm(a-(a+e),1) > %eps, e=e/2; k=k+1; end
+while norm(a-(a+e),1) > %eps,
+ e=e/2;
+ k=k+1;
+end
e,k
]]></programlisting>
</refsection>
</refsynopsisdiv>
<refsection>
<title>説明</title>
- <para>getdebuginfo は, Scilab に関するデバッグ情報を取得します.</para>
- <para>dynamic_info = getdebuginfo(); はシステムに関する情報を返します.</para>
- <para>[dynamic_info,static_info] = getdebuginfo(); は, システムおよびScilabに
- 関する情報を返します.
+ <para>
+ <function>getdebuginfo</function> は, Scilab に関するデバッグ情報を取得します.
+ </para>
+ <para>
+ <code>dynamic_info = getdebuginfo();</code> はシステムに関する情報を返します.
+ </para>
+ <para>
+ <code>[dynamic_info,static_info] = getdebuginfo();</code> は,システムおよびScilabに
+ 関する情報を返します.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+[a,b]=getdebuginfo()
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="getversion">getversion</link>
</member>
+ <member>
+ <link linkend="getos">getos</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<synopsis>[free, total]=getmemory()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>Description</title>
+ <title>説明</title>
<para>
- <literal>getmemory()</literal> は利用可能なシステムメモリを取得します (キロ-オクテット).
+ <code>getmemory()</code> は利用可能なシステムメモリを取得します (キロ-オクテット).
</para>
<para>
- <literal>[free, total]=getmemory()</literal> は利用可能なシステムメモリおよびシステムメモリの総量を返します
- (キロ-オクテット).
+ <code>[free, total] = getmemory()</code>は,
+ 利用可能なシステムメモリおよびシステムメモリの総量を返します
+ (キロ-オクテット).
</para>
+ <para>
+ <note>
+ この関数を信用しすぎないようにしてください.
+ 様々なレベルのキャッシュのせいで,
+ 多くの現代的なオペレーティングシステムにおいて,
+ メモリ解放の検出は難しくなっています.
+ </note>
+ </para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+[a,b]=getmemory()
+ ]]></programlisting>
</refsection>
</refentry>
<synopsis>res=getmodules()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>res</term>
<title>説明</title>
<para>Scilabにインストールされているモジュールの一覧を返します.</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+modules=getmodules();
+find(modules=="core");
+with_module("core");
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<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="ja" xml:id="getos">
<refnamediv>
<refname>getos</refname>
- <refpurpose>オペレーティングシステムの名前をバージョンを返す</refpurpose>
+ <refpurpose>オペレーティングシステムの名前とバージョンを返す</refpurpose>
</refnamediv>
<refsynopsisdiv>
<title>呼出し手順</title>
- <synopsis>OS=getos()
- [OS,Version]=getos()
+ <synopsis>
+ OS=getos()
+ [OS,Version]=getos()
</synopsis>
</refsynopsisdiv>
<refsection>
<title>説明</title>
<para>
- <literal>getos </literal>は, オペレーティングシステムの名前をバージョンを返します.
+ <literal>[OS,Version]=getos()</literal>は,
+ オペレーティングシステムの名前とバージョンを返します.
</para>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
OS=getos()
-[OS,version]=getos()
+[OS,version] = getos()
+if (getos() == "Windows") then
+ disp("Scilab on Windows");
+end
+if (getos() == "Linux") then
+ disp("Scilab on Linux");
+end
+if (getos() == "SunOS") then
+ disp("Scilab on Solaris");
+end
+if (getos() == "Darwin") then
+ disp("Scilab on MacOs");
+end
+
]]></programlisting>
</refsection>
</refentry>
getscilabmode()
]]></programlisting>
</refsection>
+ <refsection role="see also">
+ <title>参照</title>
+ <simplelist type="inline">
+ <member>
+ <link linkend="scilab">scilab</link>
+ </member>
+ </simplelist>
+ </refsection>
</refentry>
</refnamediv>
<refsynopsisdiv>
<title>呼出し手順</title>
- <synopsis>version=getversion()
- [version,opts]=getversion()
- ver=getversion('scilab')
- versioninfo=getversion('scilab','string_info')
- ver=getversion('<module>')
- versioninfo=getversion('<module>','string_info')
+ <synopsis>version = getversion()
+ [version, opts] = getversion()
+ version_numbers = getversion('scilab')
+ versioninfo = getversion('scilab', 'string_info')
+ version_numbers = getversion('<module>')
+ versioninfo = getversion('<module>','string_info')
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>version</term>
<varlistentry>
<term>opts</term>
<listitem>
- <para>7個のエントリを有するベクトル
- :<literal>[compiler, tk, modelicac, release_mode, release_date, release_time]</literal>
+ <para>
+ 文字列のベクトル:
+ <literal>[compiler, architecture,[tk, modelicac, ] release_mode, release_date, release_time]</literal>
</para>
</listitem>
</varlistentry>
<refsection>
<title>説明</title>
<para>
- Scilab バージョン名を<literal>version</literal>,
- 構築オプションを <literal>opts</literal>に返します.
- この構築オプションは,
- Scilabが tk または modelica を組み込んで構築されたかどうかを
- 定義するために使用され, リリース日や時間も含まれます.
+ <literal>[version, opts] = getversion()</literal>は
+ Scilab バージョン名を<literal>version</literal>,
+ 構築オプションを <literal>opts</literal>に返します.
+ この構築オプションは,
+ Scilabが tk または modelica を組み込んで構築されたかどうかを
+ 定義するために使用され, リリース日や時間も含まれます.
</para>
+ <para> [tk, modelicac, atlas,] はオプションです. </para>
+ <para> compiler:
+ はscilab構築に使用されたコンパイラ ('GCC', 'VC++', 'PGI', 'ICC', 'SUN', 'UKN' unknown)
+ を返します
+ </para>
+ <para> architecture: 'x86' または 'x64'.</para>
+ <para> tk: tcl/tk が有効な場合は 'tk'.</para>
+ <para> modelicac:
+ modelica コンパイラが scilab/xcosに同梱されている場合は 'modelicac'.
+ </para>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
getversion()
-[version,opts]=getversion()
-ver=getversion('scilab')
-verstr=getversion('scilab','string_info')
-ver=getversion('overloading')
-verstr=getversion('overloading','string_info')
+
+[version, opts] = getversion()
+COMPILER = opts(1)
+ARCH = opts(2)
+or(opts == 'modelicac')
+or(opts == 'tk')
+RELEASE_MODE = opts($-2)
+RELEASE_DATE = opts($-1)
+RELEASE_TIME = opts($)
+
+version = getversion('scilab')
+versionstr = getversion('scilab','string_info')
+version = getversion('overloading')
+versionstr = getversion('overloading','string_info')
+
]]></programlisting>
</refsection>
<refsection role="see also">
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>n</term>
<refsection>
<title>説明</title>
<para>
- Scilab は, グローバル変数をスタックに保存します
+ Scilab は, グローバル変数をスタックに保存します.
</para>
<para>
- <literal>gstacksize(n)</literal> により,
- ユーザはこのスタックの大きさを増減させることができます.
- その最大値は,
- その時点で利用可能な空きメモリおよびスワップ空間大きさに依存します.
+ <code>gstacksize(n)</code> により,
+ ユーザはこのスタックの大きさを増減させることができます.
+ その最大値は,
+ その時点で利用可能な空きメモリおよびスワップ空間大きさに依存します.
+ </para>
+ <para>
+ <note>
Scilabは必要に応じてグローバルなスタックの大きさを自動的に増加させる
ことに注意してください.
+ </note>
</para>
<para>
- <literal>sz=gstacksize()</literal> は, カレントのグローバルスタックの大きさと
- 使用中のグローバルスタックの大きさを含む要素2個のベクトルを返します.
+ <code>sz=gstacksize()</code> は, カレントのグローバルスタックの大きさと
+ 使用中のグローバルスタックの大きさを含む要素数2のベクトルを返します.
</para>
<para>
- <literal>gstacksize('max')</literal> により,ユーザは
- グローバルスタックの大きさを最大値に増加させることができます.
+ <code>gstacksize('max')</code> により,ユーザは
+ グローバルスタックの大きさを最大値に増加させることができます.
</para>
<para>
- <literal>gstacksize('min')</literal> により,ユーザは
- グローバルスタックの大きさを最小値に減少させることができます.
+ <code>gstacksize('min')</code>により,ユーザは
+ グローバルスタックの大きさを最小値に減少させることができます.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+currentStackSize = gstacksize();
+disp("Maximum stacksize: " + string(currentStackSize(1)))
+disp("Current usage: "+ string(currentStackSize(2)))
+
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>n</term>
<varlistentry>
<term>sz</term>
<listitem>
- <para>要素2個のベクトル [total used]</para>
+ <para>要素数2のベクトル [total used]</para>
</listitem>
</varlistentry>
</variablelist>
<refsection>
<title>説明</title>
<para>
- Scilab は, "通常の"変数をスタック <literal>stk</literal> に保存します
- (グローバル変数の場合は <literal>gstacksize</literal>参照).
+ Scilab は, "通常の"変数をスタック <literal>stk</literal> に保存します
+ (グローバル変数の場合は,
+ <link linkend="gstacksize">gstacksize</link>参照).
</para>
<para>
- <literal>stacksize(n)</literal> により
- ユーザはこのスタックの大きさを増減させることができます.
- その最大値は,
- その時点で利用可能な空きメモリおよびスワップ空間大きさに依存します.
+ <code>stacksize(n)</code>により
+ ユーザはこのスタックの大きさを増減させることができます.
+ その最大値は,
+ その時点で利用可能な空きメモリおよびスワップ空間大きさに依存します.
</para>
<para>
- <literal>stacksize('max')</literal> により,ユーザは
- このスタックの大きさを最大値に増加させることができます.
+ <code>stacksize('max')</code> により,ユーザは
+ このスタックの大きさを最大値に増加させることができます.
</para>
<para>
- <literal>stacksize('min')</literal> により,ユーザは
- このスタックの大きさを最小値に減少させることができます.
+ <code>stacksize('min')</code>により,ユーザは
+ このスタックの大きさを最小値に減少させることができます.
</para>
<para>
- 引数<literal>n</literal> を指定したこの関数は,
- 任意の場所で使用可能です.
+ 引数<code>n</code>を指定したこの関数は,
+ 任意の場所で使用可能です.
</para>
<para>
- <literal>sz=stacksize()</literal> は, カレントの全スタックの大きさと
- 使用中のスタックの大きさを含む要素2個のベクトルを返します.
+ <code>sz = stacksize()</code>は, カレントの全スタックの大きさと
+ 使用中のスタックの大きさを含む要素数2のベクトルを返します.
</para>
+ <para>デフォルトで, スタックの大きさは 10 000 000 (~76 Mb)です.</para>
+ <para>64ビットプラットフォームの場合,
+ スタックの最大値は 268 435 454に制限されます.</para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+currentStackSize = stacksize();
+disp("Maximum stacksize: " + string(currentStackSize(1)))
+disp("Current usage: "+ string(currentStackSize(2)))
+
+ ]]></programlisting>
</refsection>
<refsection role="see also">
<title>参照</title>
<synopsis>r = ver()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>r</term>
<synopsis>r=with_javasci()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>r</term>
<constant>%t</constant>, それ以外の場合に <constant>%f</constant>
を返します.
</para>
+ <para>
+ <note>
+ この関数は, GNU/LinuxまたはMac OS Xにおいては常に
+ 真を返すことに注意してください.
+ </note>
+ </para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+if with_javasci() == %t then
+ disp("javasci is available");
+else
+ disp("javasci is not available");
+end
+ ]]></programlisting>
</refsection>
</refentry>
</refnamediv>
<refsynopsisdiv>
<title>呼び出し手順</title>
- <synopsis>r=with_macros_source()</synopsis>
+ <synopsis>r = with_macros_source()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>r</term>
<literal>%f</literal> を返します.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+if with_macros_source() == %t then
+ disp("Scilab macro sources are installed");
+end
+ ]]></programlisting>
+ </refsection>
</refentry>
</refnamediv>
<refsynopsisdiv>
<title>呼出し手順</title>
- <synopsis>r=with_module(module_name)</synopsis>
+ <synopsis>r = with_module(module_name)</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>r</term>
<varlistentry>
<term>module_name</term>
<listitem>
- <para>文字列. 例 : 'core'</para>
+ <para>文字列. 例 : <literal>'core'</literal></para>
</listitem>
</varlistentry>
</variablelist>
<title>説明</title>
<para>
Scilabモジュールがインストールされている場合に
- <literal>%t</literal>を返します.
+ <constant>%t</constant>, そうでない場合に
+ <constant>%f</constant> を返します.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+withXML = with_module("xml");
+if withXML == %t then
+ disp("XML module enabled");
+else
+ disp("XML module disabled");
+end
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
</refnamediv>
<refsynopsisdiv>
<title>呼出し手順</title>
- <synopsis>r=with_tk()</synopsis>
+ <synopsis>r = with_tk()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>r</term>
<refsection>
<title>説明</title>
<para>
- ScilabがTCL/TKインターフェイスと共に構築されている場合に
- <literal>%t</literal>, すうでない場合に <literal>%f</literal>
+ ScilabがTCL/TKインターフェイスと共に構築されている場合に
+ <constant>%t</constant>, そうでない場合に <constant>%f</constant>
を返します.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+if with_tk() == %t then
+ disp("Tk is available");
+else
+ disp("Tk is not available");
+end
+ ]]></programlisting>
+ </refsection>
</refentry>
<synopsis>delbpt([macroname [,linenumb]])</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>macroname</term>
<refsection>
<title>説明</title>
<para>
- 関数 <literal>macroname</literal>の<literal>linenumb</literal> 行目の
- ブレークポイントを削除する.
+ 関数 <literal>macroname</literal>の<literal>linenumb</literal> 行目の
+ ブレークポイントを削除します.
</para>
<para>
- <literal>linenumb</literal> には行または行番号の
- 列ベクトルまたはスカラーの行番号を指定することができます.
+ <literal>linenumb</literal> には行または行番号の
+ 列ベクトルまたはスカラーの行番号を指定することができます.
</para>
<para>
- Line numbers in <literal>linenumb</literal> の行番号は
- 関数<literal>macroname</literal>における物理的な行番号です.
+ <literal>linenumb</literal> の行番号は
+ 関数<literal>macroname</literal>における物理的な行番号です.
+ </para>
+ <para>
+ <note>
5.0より前のバージョンのScilabでは,
論理的な行番号が使用されていたことに注意してください.
物理的行番号と論理的行番号の差は,
継続行の数です(<link linkend="dot">dot</link>参照).
+ </note>
</para>
<para>
- <literal>linenumb</literal> を省略した場合,<literal>macroname</literal>関数内
- の全てのブレークポイントが削除されます.
+ <literal>linenumb</literal> を省略した場合,<literal>macroname</literal>関数内
+ の全てのブレークポイントが削除されます.
</para>
<para>
- <literal>macroname</literal> と <literal>linenumb</literal>の
- 両方が省略された場合, 全ての関数の全てのブレークポイントが削除されます.
+ <literal>macroname</literal>と <literal>linenumb</literal>の
+ 両方が省略された場合, 全ての関数の全てのブレークポイントが削除されます.
</para>
</refsection>
<refsection>
<programlisting role="example"><![CDATA[
setbpt('foo',1),setbpt('foo',10),delbpt('foo',10),dispbpt()
delbpt('foo',1),dispbpt()
+
setbpt('foo1',4),setbpt('foo1',9),setbpt('foo2',6),setbpt('foo3',8),dispbpt()
delbpt('foo2'),dispbpt()
delbpt(),dispbpt()
+
delbpt('foo',[1,2,5,6]),dispbpt()
]]></programlisting>
</refsection>
<member>
<link linkend="resume">resume</link>
</member>
+ <member>
+ <link linkend="abort">abort</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<refsection>
<title>説明</title>
<para>
- <literal>dispbpt()</literal> は関数に現在挿入されている
- アクティブなブレークポイントを全て表示します.
+ <code>dispbpt()</code> は,関数に現在挿入されている
+ アクティブなブレークポイントを全て表示します.
</para>
<para>
- <literal>dispbpt</literal>により表示される行番号は,
- 対象とする関数内での<emphasis>物理的な</emphasis>行番号です.
+ <code>dispbpt()</code> により表示される行番号は,
+ 対象とする関数内での<emphasis>物理的な</emphasis>行番号です.
+ </para>
+ <para>
+ <note>
5.0より前のバージョンのScilabでは<emphasis>論理的な</emphasis>
行番号が表示されることに注意してください.
物理的な行番号と論理的な行番号の差は,
<emphasis>継続行</emphasis>(<link linkend="dot">dot</link>参照)の数です.
+ </note>
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+setbpt('foo')
+setbpt('foo',10)
+dispbpt()
+delbpt()
+setbpt('foo',[1,2,5,6])
+dispbpt()
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="resume">resume</link>
</member>
+ <member>
+ <link linkend="abort">abort</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<synopsis>setbpt(macroname [,linenumb])</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>macroname</term>
<refsection>
<title>説明</title>
<para>
- <literal>setbpt</literal> は対話的にブレークポイントを
- 関数<literal>macroname</literal>の
- 行番号<literal>linenumb</literal>(デフォルト値: 1)に挿入します.
+ <function>setbpt</function>は,対話的にブレークポイントを
+ 関数<varname>macroname</varname>の
+ 行番号<varname>linenumb</varname>(デフォルト値: 1)に挿入します.
</para>
<para>
- <literal>linenumb</literal> は行または行番号の列ベクトル,または
+ <varname>linenumb</varname> は,行または行番号の列ベクトル,または
行番号のスカラー値とすることができます.
</para>
<para>
- <literal>linenumb</literal> の行番号は,
- 関数<literal>macroname</literal>内の
- 物理的な行番号となります.
+ <varname>linenumb</varname>の行番号は,
+ 関数<varname>macroname</varname>内の
+ 物理的な行番号となります.
+ </para>
+ <para>
+ <note>
5.0より前のバージョンのScilabでは,
論理的な行番号が使用されていたことに注意してください.
物理的行番号と論理的行番号の差は,
継続行の数です(<link linkend="dot">dot</link>参照).
+ </note>
</para>
<para>
ブレークポイントに達した時, Scilabは指定された
この<link linkend="pause">一次停止</link> は<link linkend="resume">resume</link> または
<link linkend="abort">abort</link>により解除できます.
</para>
- <para>関数を再定義してもブレークポイントは消去されません.
- ユーザーは<link linkend="delbpt">delbpt</link>により明示的にブレークポイントを削除する必要があります.
- ブレークポイントを指定する関数の数は 100以下,
- ブレークポイントの合計数は 1000 以下であつ必要があります.
+ <para>
+ 関数を再定義してもブレークポイントは消去されません.
+ ユーザーは<link linkend="delbpt">delbpt</link>により明示的にブレークポイントを
+ 削除する必要があります.
+ ブレークポイントを指定する関数の数は 100以下,
+ ブレークポイントの合計数は 1000 以下とする必要があります.
</para>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
-setbpt('foo'),setbpt('foo',10),dispbpt()
+setbpt('foo')
+setbpt('foo',10)
+dispbpt()
delbpt()
-setbpt('foo',[1,2,5,6]),dispbpt()
+setbpt('foo',[1,2,5,6])
+dispbpt()
]]></programlisting>
</refsection>
<refsection role="see also">
<member>
<link linkend="resume">resume</link>
</member>
+ <member>
+ <link linkend="abort">abort</link>
+ </member>
+ <member>
+ <link linkend="quit">quit</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<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="ja" xml:id="where">
<refnamediv>
<refname>where</refname>
- <refpurpose>カレントの命令呼び出しツリーを得る</refpurpose>
+ <refpurpose>カレントの命令の呼び出しツリーを得る</refpurpose>
</refnamediv>
<refsynopsisdiv>
<title>呼出し手順</title>
- <synopsis>[linenum,mac]=where()</synopsis>
+ <synopsis>[linenum, callername] = where()</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
- <varlistentry>
- <term>linenum</term>
- <listitem>
- <para>整数の列ベクトル</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>mac</term>
- <listitem>
- <para>文字列の列ベクトル</para>
- </listitem>
+ <varlistentry>
+ <term>linenum</term>
+ <listitem>
+ <para>整数の列ベクトル</para>
+ </listitem>
</varlistentry>
+ <varlistentry>
+ <term>callername</term>
+ <listitem>
+ <para>文字列の列ベクトル</para>
+ </listitem>
+ </varlistentry>
</variablelist>
</refsection>
<refsection>
<title>説明</title>
<para>
- <literal>linenum</literal> および <literal>mac</literal> を返します.
- この際,関数 <literal>mac(1)</literal> の <literal>linenum(1)</literal> 行目でカレントの命令がコールされ,
- 関数 <literal>mac(2)</literal> の <literal>linenum(2)</literal> 行目で <literal>mac(1)</literal> がコールされ,...,
- を意味します.
+ <code>[linenum, callername] = where()</code>は,
+ <varname>linenum</varname>および <varname>callername</varname> を返します.
+ この際,関数 <code>callername(1)</code> の <literal>linenum(1)</literal> 行目で
+ カレントの命令がコールされ,
+ 関数 <code>callername(2)</code>の <literal>linenum(2)</literal> 行目で
+ <code>callername(1)</code>がコールされ,...,
+ を意味します.
</para>
<para>
- <literal>mac(i)</literal> は一般には関数名ですが,
- 命令が <literal>exec</literal> ファイルまたは <literal>execstr</literal> 命令の中にある場合には,
- <literal>"exec"</literal> または <literal>"execstr"</literal> となる可能性もあります.
+ <code>callername(i)</code> は一般には関数名ですが,
+ 命令が <literal>exec</literal> ファイルまたは <literal>execstr</literal>
+ 命令の中にある場合には,
+ <literal>"exec"</literal> または <literal>"execstr"</literal> となる可能性もあります.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+function foo()
+ [a,b] = where()
+ disp("Line:")
+ disp(a);
+ disp("Function:")
+ disp(b);
+endfunction
+
+function bar()
+ function beer()
+ foo()
+ endfunction
+ beer()
+endfunction
+
+bar()
+
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<refsection>
<title>説明</title>
<para>
- <literal>whereami()</literal>を含む命令への呼び出しツリーを表示します.
- <literal>pause</literal>レベル内で使用可能です.
+ <code>whereami()</code>を含む命令への呼び出しツリーを表示します.
+ <function>pause</function>レベル内で使用可能です.
</para>
</refsection>
<refsection>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>n</term>
<refsection>
<title>説明</title>
<para>
- <literal>errcatch</literal> は,
- <literal>n</literal>型のエラーが発生した時に
- 実行される "処理" (エラーハンドラ)を指定します,
- <literal>n</literal> は以下の意味を有します:
+ <function>errcatch</function> は,
+ <literal>n</literal>型のエラーが発生した時に
+ 実行される "アクション" (エラーハンドラ)を指定します,
</para>
<para>
- <literal>n>0</literal>の場合, <literal>n</literal> は
- 捕捉するエラー番号となります.
+ <varname>n</varname> は以下の意味を有します:
</para>
<para>
- <literal>n<0</literal> の場合,全てのエラーが捕捉されます.
+ <varname>n</varname><literal>>0</literal>の場合, <varname>n</varname> は
+ 捕捉するエラー番号となります.
</para>
<para>
- <literal>action</literal> は以下の文字列のどれかとなります:
+ <varname>n</varname><literal><0</literal> の場合,全てのエラーが捕捉されます.
+ </para>
+ <para>
+ <varname>action</varname>は以下の文字列のどれかとなります:
</para>
<variablelist>
<varlistentry>
<term>"pause"</term>
<listitem>
<para>
- 誤差を捕捉した際に pause が実行されます.
- このオプションはデバッグの際に有用です.
- カレントのコンテキストで情報を取得するには
- <literal>whereami()</literal>を使用してください.
+ 誤差を捕捉した際に pause が実行されます.
+ このオプションはデバッグの際に有用です.
+ カレントのコンテキストで情報を取得するには
+ <code>whereami()</code>を使用してください.
</para>
</listitem>
</varlistentry>
<term>"continue"</term>
<listitem>
<para>
- 関数または実行ファイルないの次の命令が実行され,
- カレントの命令は無視されます.
- <literal>iserror</literal>関数により,
- エラーが発生したかどうかを調べることが可能です.できるだけ早く
- <literal>errclear</literal>関数によりエラーをクリアすることを
- 忘れないようにしてください.
- このオプションはエラーからの回復の際に有用です.
- 多くの場合,
- <link linkend="execstr">execstr</link> 関数または
- <link linkend="try">try</link>制御構造を使用することにより
- <literal>errcatch(n,"continue",..)</literal>を
- 置換することができます.
+ 関数または実行ファイルないの次の命令が実行され,
+ カレントの命令は無視されます.
+ <link linkend="iserror">iserror</link>関数により,
+ エラーが発生したかどうかを調べることが可能です.できるだけ早く
+ <link linkend="errclear">errclear</link>関数によりエラーをクリアすることを
+ 忘れないようにしてください.
+ このオプションはエラーからの回復の際に有用です.
+ 多くの場合,
+ <link linkend="execstr">execstr</link> 関数または
+ <link linkend="try">try</link>制御構造を使用することにより
+ <literal>errcatch(n,"continue",..)</literal>を
+ 置換することができます.
</para>
</listitem>
</varlistentry>
</varlistentry>
</variablelist>
<para>
- <literal>option</literal> は中断時のエラーメッセージである
- 文字列 <literal>'nomessage'</literal> です.
+ <varname>option</varname> は中断時のエラーメッセージである
+ 文字列 <literal>'nomessage'</literal> です.
</para>
<para>
- デフォルトモードに戻すためには,
- <literal>errcatch(-1,"kill")</literal>または
- <literal>errcatch(-1)</literal> と入力してください.
- <literal>errcatch()</literal> は以前使用されていた <literal>errcatch(-1)</literal> と
+ デフォルトモードに戻すためには,
+ <code>errcatch(-1,"kill")</code> または
+ <code>errcatch(-1)</code>と入力してください.
+ <code>errcatch()</code> は以前使用されていた<code>errcatch(-1)</code>と
等価です.
</para>
<para/>
<para>
- <literal>errcatch</literal>のアクションはカレントの評価コンテキスト
- (function, exec, pause) およびサブレベル全体に適用されます.
- あるサブレベル内で<literal>errcatch</literal> を2回コールすると
- このサブレベルでの最初のコールが隠蔽され,
- 最初の関数コールの効果は削除されます.
+ <function>errcatch</function>のアクションはカレントの評価コンテキスト
+ (function, exec, pause) およびサブレベル全体に適用されます.
+ あるサブレベル内で<function>errcatch</function>を2回コールすると
+ このサブレベルでの最初のコールが隠蔽され,
+ 最初の関数コールの効果は削除されます.
</para>
<para>
- Scilab関数または exec のコンテキスト内でコールされた場合,
- <literal>errcatch</literal>は,関数のリターンの時に自動的にリセットされます.
+ Scilab関数または exec のコンテキスト内でコールされた場合,
+ <function>errcatch</function>は,関数のリターンの時に自動的にリセットされます.
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+errcatch(144,"continue")
+2/"foo"
+disp(a) // Without the errcatch, this line would not be executed
+
+errcatch(-1,"kill") // Come back in the normal mode
+errcatch(144,"pause")
+2/"foo" // Enter in "pause" mode
+
+errcatch(27,'continue','nomessage')
+b=2/0 // No error message but b will not exist
+ ]]></programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="execstr">execstr</link>
</member>
+ <member>
+ <link linkend="exec">exec</link>
+ </member>
+ <member>
+ <link linkend="pause">pause</link>
+ </member>
</simplelist>
</refsection>
</refentry>
それ以外の場合,全ての誤差がクリアされます (デフォルトの場合)
</para>
</refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example">a = 1;
+ b = undefinedvariable + a;
+ lasterror()
+ b = undefinedvariable + a;
+ errclear()
+ lasterror()
+ b = undefinedvariable + a;
+ errclear(5) // error 4 always as last error
+ lasterror()
+ b = undefinedvariable + a;
+ errclear(4)
+ lasterror()
+ </programlisting>
+ </refsection>
<refsection role="see also">
<title>参照</title>
<simplelist type="inline">
</para>
<para>
<literal>error(message)</literal> は<literal>message</literal>の文字列を
- 出力します.
- エラーメッセージの番号は 10000 となります.
- </para>
- <para>
- <literal>error(message,n)</literal> は
- <literal>message</literal>の文字列を出力します.
- エラーメッセージの番号は<literal>n</literal>で指定されます.
- この番号は 10000 より大きい必要があります.
- </para>
- <para>
- <literal>error(n)</literal> は,
- エラー番号 <literal>n</literal>の
- 定義済みエラーメッセージを出力します.
- </para>
- <para>いくつかの定義済みエラーメッセージが
+ 出力します.
+ エラーメッセージの番号は 10000 となります.
+ </para>
+ <para>
+ <literal>error(message,n)</literal> は
+ <literal>message</literal>の文字列を出力します.
+ エラーメッセージの番号は<literal>n</literal>で指定されます.
+ この番号は 10000 より大きい必要があります.
+ </para>
+ <para>
+ <literal>error(n)</literal> は,
+ エラー番号 <literal>n</literal>の
+ 定義済みエラーメッセージを出力します.
+ </para>
+ <para>
+ いくつかの定義済みエラーメッセージは
パラメータを必要とします(
<link linkend="error_table">error_table</link>参照).
この場合,パラメータの値を指定するために
<synopsis>iserror([n])</synopsis>
</refsynopsisdiv>
<refsection>
- <title>説明</title>
- <para>
- (<literal>errcatch</literal>をコールした後に)
- エラー番号 <literal>n</literal> のエラーが発生したかどうかを確認します.
- <literal>iserror</literal> は,エラーが発生した場合に <literal>1</literal>,
- それ以外の場合に <literal>0</literal>を返します.
- </para>
- <para>
- <literal>n>0</literal> はエラー番号です ;
- <literal>n<0</literal>を指定すると全てのエラーが確認されます.
- </para>
+ <title>引数</title>
+ <variablelist>
+ <varlistentry>
+ <term>n</term>
+ <listitem>
+ <para>整数, エラー番号</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsection>
+ <refsection>
+ <title>説明</title>
+ <para>
+ (<function>errcatch</function>をコールした後に)
+ エラー番号 <varname>n</varname> のエラーが発生したかどうかを確認します.
+ <literal>iserror</literal> は,エラーが発生した場合に <literal>1</literal>,
+ それ以外の場合に <literal>0</literal>を返します.
+ </para>
+ <para>
+ <varname>n</varname><literal>>0</literal> はエラー番号です ;
+ <varname>n</varname><literal><0</literal>を指定すると全てのエラーが確認されます.
+ </para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+errcatch(4,'continue') // trap undefined variable
+unknown
+iserror() // 1
+errclear()
+iserror() // 0
+ ]]></programlisting>
</refsection>
<refsection role="see also">
<title>参照</title>
</synopsis>
</refsynopsisdiv>
<refsection>
- <title>パラメータ</title>
+ <title>引数</title>
<variablelist>
<varlistentry>
<term>str</term>
(<link linkend="dot">dot</link>参照)が含まれる場合のに差異を生じます.
</para>
<para>
- この関数は,<link linkend="errcatch">errcatch</link> または <link linkend="execstr">execstr</link>を使用する場合に特に有用です.
+ この関数は,<link linkend="errcatch">errcatch</link> または
+ <link linkend="execstr">execstr</link>を使用する場合に特に有用です.
</para>
- <para>記録されたエラーメッセージは,
- <literal>lasterror(%f)</literal>とコールすることにより次回
- <literal>lasterror</literal>をコールする時のために保持する
- ことができます.
+ <para>
+ 記録されたエラーメッセージは,
+ <literal>lasterror(%f)</literal>とコールすることにより次回
+ <literal>lasterror</literal>をコールする時のために保持する
+ ことができます.
</para>
</refsection>
<refsection>
<literal>'off'</literal> は警告メッセージを無効にします.
</para>
<para>
- <literal>'query'</literal> は, <literal>'on'</literal> または <literal>'off'</literal> の状態を取得します.
+ <literal>'query'</literal> は, <literal>'on'</literal> または
+ <literal>'off'</literal> の状態を取得します.
</para>
</refsection>
<refsection>
<member>
<link linkend="msprintf">msprintf</link>
</member>
+ <member>
+ <link linkend="messagebox">messagebox</link>
+ </member>
</simplelist>
</refsection>
</refentry>
<?xml version="1.0" encoding="UTF-8"?>
+
<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="ja" xml:id="perl">
+
<refnamediv>
+
<refname>perl</refname>
+
<refpurpose>
+
適当なオペレーティングシステムの実行ファイルにより
+
Perl スクリプトをコール
+
<emphasis role="bold">この関数は廃止されます.</emphasis>
+
</refpurpose>
+
</refnamediv>
+
<refsynopsisdiv>
+
<title>Calling Sequence</title>
+
<synopsis>perl('perlfile')
+
perl('perlfile',arg1,arg2,...)
+
result = perl(...)
+
</synopsis>
+
</refsynopsisdiv>
+
<refsection>
+
<title>説明</title>
+
<para>
+
<literal>perl('perlfile')</literal> は,
+
適当なオペレーティングシステムの実行ファイルを使用して
+
Perlスクリプト<literal>perlfile</literal>をコールします.
+
</para>
+
<para>
+
<literal>perl('perlfile',arg1,arg2,...)</literal>は Perlスクリプト
+
<literal>perlfile</literal> を
+
適当なオペレーティングシステムの実行ファイルを使用してコールし,
+
引数として <literal>arg1</literal>, <literal>arg2</literal>, ... を渡します.
+
</para>
+
<para>
+
<literal>result = perl(...)</literal>
+
は実行したPerlコールの結果を <literal>result</literal> に返します.
+
</para>
+
</refsection>
+
<refsection role="see also">
+
<title>参照</title>
+
<simplelist type="inline">
+
<member>
+
<link linkend="unix">unix</link>
+
</member>
+
</simplelist>
+
</refsection>
+
<refsection>
+
<title>履歴</title>
+
<revhistory>
+
<revision>
+
<revnumber>5.5.0</revnumber>
+
<revremark>Tagged が廃止予定となりました.
+
Scilab 6.0.0で削除されます.
</revremark>
+
</revision>
+
</revhistory>
+
</refsection>
+
</refentry>
+
// Scilabを終了
function foo(x),if x then quit,end,endfunction
foo(%t) //scilabを終了
+
//pauseコンテキストで開始された命令を終了
function foo(x),if x then quit,end,endfunction
pause
foo(%t) //メインプロンプトレベルにリターンl
+
function foo1(x),
mprintf('P1\n')
if x then pause, mprintf('P2\n'),end,
mprintf('P3\n')
endfunction
+
foo1(%t) //以下のプロンプトでquitを入力してください
]]></programlisting>
</refsection>
<?xml version="1.0" encoding="UTF-8"?>
+
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="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="scilab" xml:lang="ja">
+
<refnamediv>
+
<refname>scilab</refname>
+
<refpurpose>
+
Scilabおよび関連ツールを起動するためのツール
+
(GNU/Linux, Unix および Mac OS X)
+
</refpurpose>
+
</refnamediv>
+
<refsynopsisdiv>
+
<title>呼出し手順</title>
+
<synopsis>scilab <Options>
+
scilab-adv-cli <Options>
+
scilab-cli <Options>
+
</synopsis>
+
</refsynopsisdiv>
+
<refsection>
+
<title>説明</title>
+
<variablelist>
+
<varlistentry>
+
<term>-args Arguments</term>
+
<listitem>
+
<para>
+
このオプションが存在する場合,引数がScilabに渡されます.
+
これらは,<link linkend="sciargs">sciargs</link>関数で取得することが
+
できます.
+
複数の引数を指定する場合,以下のように一連の複数の単語を引用符で括り,
+
空白で分割してください: <literal>scilab -args 'foo1 foo2'</literal>.
+
このオプションを指定しない場合,未知の引数は受け付けられません.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-display Display</term>
+
<listitem>
+
<para>
+
Xwindow システム上でのみ使用可能で, 表示する
+
Xサーバーを指定します.
+
デフォルトの表示先は unix:0.0 です.
+
</para>
+
<para>
+
<literal>-display</literal> は,
+
<literal>-d</literal>と短縮形で指定できます.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-debug</term>
+
<listitem>
+
<para>デバッガgdb上でScilabを開始します(Unix/Linux/Mac OS Xのみ).</para>
+
<para>
+
gdb にカスタムオプションを追加する場合,
+
変数<literal>SCILAB_GDB_OPT</literal>を定義します.
+
</para>
+
<para>助言: このオプションをScilabソースツリー上で使用してください.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-debug-kdbg</term>
+
<listitem>
+
<para>kdbg上でScilabを開始します (Unix/Linux/Mac OS X のみ).</para>
+
<para>助言: このオプションをScilabソースツリー上で使用してください.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-profiling</term>
+
<listitem>
+
<para>valgrind上でScilabを開始します (Unix/Linux/Mac OS X のみ).</para>
+
<para>
+
valgrind にカスタムオプションを追加する場合
+
(および既存の valgrind オプションを上書きする場合),SCILAB_VALGRIND_OPT
+
を定義してください.
+
</para>
+
<para>助言: このオプションをScilabソースツリー上で使用してください.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-profiling-visu</term>
+
<listitem>
+
<para>callgrind上でScilabを開始します (Unix/Linux/Mac OS X のみ).</para>
+
<para>
+
callgrind にカスタムオプションを追加する場合
+
(および既存の callgrind オプションを上書きする場合),SCILAB_VALGRIND_OPT
+
を定義してください.
+
</para>
+
<para>助言: このオプションをScilabソースツリー上で使用してください.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-electric-fence</term>
+
<listitem>
+
<para>Electric Fence を指定して Scilab を開始します(Unix/Linux/Mac OS Xのみ).</para>
+
<para>助言: このオプションをScilabソースツリー上で使用してください.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-e 命令</term>
+
<listitem>
+
<para>
+
このオプションを指定すると Scilab 命令
+
<literal>Instruction</literal> が(スタートアップファイルの実行直後に)
+
まずScilabで実行されます.
+
<literal>-e</literal> および
+
<literal>-f</literal> オプションは相互に排他的です.
+
</para>
+
<para>
<literal>-e</literal>により複数の命令を指定できることに注意してください.
</para>
+
<programlisting role="no-scilab-exec">scilab-cli -e "a=1+%i; aPlusPi=a+%pi; disp(aPlusPi);exit;" -nb</programlisting>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-f file</term>
+
<listitem>
+
<para>
+
このオプションを指定すると, Scilab はスクリプト <literal>file</literal>
+
を(スタートアップファイルの実行直後,)Scilab上で最初に実行します.
+
+
+
<literal>-e</literal> および
+
<literal>-f</literal> オプションは相互に排他的です.
+
</para>
+
<para>.xcos 拡張子を有するファイルはXcosで開かれます.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-l lang</term>
+
<listitem>
+
<para>このオプションを指定した場合,
+
ユーザ言語を指定します.
+
<emphasis>lang</emphasis> は以下の値を指定できます: <emphasis>ca_ES de_DE en_US es_ES
+
fr_FR ja_JP pt_BR ru_RU zh_CN zh_TW
+
</emphasis>
+
(Scilab 5.2以降).
+
</para>
+
<para>
+
互換性維持のため,その他に <literal>lang</literal> の値は,フランス語として
+
<literal>'fr'</literal> および英語として <literal>'en'</literal> を使用可能です.
+
デフォルト値は,<literal>scilab.start</literal>ファイルで指定されます.
+
</para>
+
<para>いくつかのシステムでは,UTF-8フォントを正しく描画するために,
+
ロケールをコンパイルする必要があります.
+
</para>
+
<para>Scilab を以下のようにコールすることも可能です:</para>
+
<programlisting role="no-scilab-exec">LANG=ja_JP scilab
+
# これは以下と等価です
+
scilab -l ja_JP
+
</programlisting>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-mem N</term>
+
<listitem>
+
<para>
<literal>-ns</literal>オプションと共に指定し,
+
<literal>stacksize</literal>の初期値を設定します.
+
<literal>-ns</literal>オプションを指定しない場合,
+
<literal>stacksize</literal>の初期値は
+
<literal>scilab.start</literal>により設定されます.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-nb</term>
+
<listitem>
+
<para>
+
このオプションが指定された場合, Scilabの Welcome バナーは表示されません.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-ns</term>
+
<listitem>
+
<para>
+
このオプションが指定された場合, スタートアップファイル
+
<literal>SCI/etc/scilab.start</literal> およびユーザスタートアップファイル
+
<literal>SCIHOME/.scilab</literal>,
+
<literal>SCIHOME/scilab.ini</literal> は実行されません.
+
</para>
+
<para>このオプションは, Scilabの多くの機能を無効にします (動作を理解している場合のみ
+
使用してください).
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-nouserstartup</term>
+
<listitem>
+
<para>このオプションが指定された場合, スタートアップファイル
+
<literal>SCIHOME/.scilab</literal>,
+
<literal>SCIHOME/scilab.ini</literal> は実行されません.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-noatomsautoload</term>
+
<listitem>
+
<para>
+
このオプションが指定された場合,イントール済みのATOMモジュールは
+
このセッションでロードされません.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-nw</term>
+
<listitem>
+
<para>
+
このオプションが指定された場合, Scilab は
+
先進的な機能(グラフィック, export, xcos, scinotes, ヘルプブラウザ, ...)
+
と共にコマンドラインで起動されます.
+
</para>
+
<para>
このオプションは <literal>-f</literal>または <literal>-e</literal>
+
オプションと同時に指定することができます.
</para>
+
<para>Scilab 5.2以降:</para>
+
<itemizedlist>
+
<listitem>
+
<para>Scilab のディストリビューションには,
+
<literal>-nw</literal>と同様のバイナリを提供します:
+
<literal>scilab-adv-cli</literal>
+
(Scilab Advanced Command Line Interpreter).
+
</para>
+
</listitem>
+
<listitem>
+
<para>全てのオペレーティングシステムについて
+
パイプが有効です (詳細については例を参照ください).
+
</para>
+
</listitem>
+
</itemizedlist>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-nwni / -nogui</term>
+
<listitem>
+
<para>このオプションが指定された場合, Scilab は先進的な機能
+
(グラフィック, export, xcos, scinotes, ヘルプブラウザ, ...)なしで
+
コマンドラインで起動されます.
+
</para>
+
<para>
このオプションは <literal>-f</literal> または <literal>-e</literal>
+
オプションと同時に指定することができます.
</para>
+
<para>Scilab 5.2以降:</para>
+
<itemizedlist>
+
<listitem>
+
<para>
+
Scilab のディストリビューションでは,
+
<literal>-nwni</literal>と同じ専用バイナリが提供されています
+
: <literal>scilab-cli</literal>
+
(Scilab Command Line Interpreter).
+
</para>
+
</listitem>
+
</itemizedlist>
+
<itemizedlist>
+
<listitem>
+
<para>全てのオペレーティングシステムについて
+
パイプが有効です (詳細については例を参照ください).
+
</para>
+
</listitem>
+
</itemizedlist>
+
<para>このモードでは Java 仮想マシンはロードされません.
+
(起動は高速化され,メモリ消費量は減少します)
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>--texmacs</term>
+
<listitem>
+
<para>このオプションは TeXMacs用に予約されています.</para>
+
<para>
+
ATOMSモジュールをインストールしてください: <programlisting role="">atomsInstall('texmacs')</programlisting>
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-version</term>
+
<listitem>
+
<para>このオプションはプロダクトのバージョンを出力し,終了します.</para>
+
</listitem>
+
</varlistentry>
+
</variablelist>
+
</refsection>
+
<refsection>
+
<title>環境変数の説明</title>
+
<variablelist>
+
<varlistentry>
+
<term>SCIVERBOSE</term>
+
<listitem>
+
<para>
+
この変数が存在した場合, Scilab起動スクリプトは起動時デバッグ情報を表示します.
+
主にバグレポートおよびデバッグ目的で使用されます.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>JAVA_HOME</term>
+
<listitem>
+
<para>
+
使用するJavaを指定します. 例えば,
+
<literal>JAVA_HOME=/usr/lib/jvm/java-7-openjdk/ scilab</literal> は
+
Java 7 でScilabを起動します.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>SCI_DISABLE_TK</term>
+
<listitem>
+
<para>Tk (Tclではなく) 機能を無効にします.</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>SCI_JAVA_ENABLE_HEADLESS</term>
+
<listitem>
+
<para>
+
ヘッドレスJava仮想マシン (すなわち,GUI機能なし).
+
</para>
+
</listitem>
+
</varlistentry>
+
</variablelist>
+
</refsection>
+
<refsection>
+
<title>Java 仮想マシンオプション</title>
+
<para>Scilab 5.0以降, グラフィカルユーザインターフェイス (GUI) および
+
ドキュメントの構築は,Java機能に基づいています.
+
いくつかのケースでは,
+
JVM (Java仮想マシン)オプションを編集することが重要となります.
+
</para>
+
<para>これらのオプションは,
+
<emphasis>jvm_options.xml</emphasis>ファイルで利用可能です.
+
</para>
+
<para>5.0.X および 5.1.Xでは, このファイルは
+
<emphasis>SCI/modules/jvm/etc/jvm_options.xml</emphasis>に保存されています.
+
</para>
+
<para>>= 5.2.0以降, このファイルは
+
<emphasis>
+
etc/jvm_options.xml<emphasis> </emphasis>
+
</emphasis>
+
にあります.
+
</para>
+
<para>デフォルトで, 以下の3つのオプションが
+
設定ファイルで容易にアクセス可能です:
+
</para>
+
<variablelist>
+
<varlistentry>
+
<term>-XmxXXXm</term>
+
<listitem>
+
<para>
+
このオプションは,Java仮想マシンで利用可能なメモリ量を設定します.
+
デフォルトで, 256M が確保されます.
+
この値を変更した場合, その値がシステムで利用可能なメモリを
+
超えないことを確認してください.
+
</para>
+
<para>
+
Scilab 5.4.0以降, この値は設定メニュー内で変更可能です.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-Djava.compiler=JIT</term>
+
<listitem>
+
<para>
+
このオプションを引数<emphasis>JIT</emphasis>を付けて指定すると,
+
Java Just In Time compilerが有効になります.
+
このオプションはデフォルトで有効となります.
+
<emphasis>NONE</emphasis>によりJITは無効となり,
+
著しく性能が低下します.
+
</para>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>-verbose:jni / -Xcheck:jni</term>
+
<listitem>
+
<para>
+
これらのオプションは,JNIコールとその出力をより詳細に確認します.
+
デバッグ時にはこれらのオプションを利用可能ですが,
+
性能を低下させるためデフォルトでは無効となっています.
+
</para>
+
</listitem>
+
</varlistentry>
+
</variablelist>
+
<para>より多くのオプションが利用可能です.
+
これにより性能を改善したり,ルックアンドフィールを変更したり,
+
メモリ管理を変更したりといったことが可能です.
+
参照: <ulink url="http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html">http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html</ulink>
+
</para>
+
</refsection>
+
<refsection>
+
<title>例</title>
+
<programlisting role="no-scilab-exec"><![CDATA[
# Let's start Scilab in profiling mode without attaching a gdb once a SIGSEGV is met.
# We are under Bash shell
export SCILAB_VALGRIND_OPT="--db-attach=no --log-file=myfile.txt"
scilab -profiling
+
# Let's start Scilab in debug mode without stopping after each SIGSEGV
# First, we write a small command file
echo "handle SIGSEGV nostop" &> debug.txt
export SCILAB_GDB_OPT="--command=debug.txt"
# Start Scilab in debug mode
scilab -debug]]></programlisting>
+
<programlisting role="no-scilab-exec"><![CDATA[
# Under GNU/Linux, Mac OS X or Unix:
$ echo "disp(%pi)"|scilab-cli
or
$ echo "disp(%pi)"|scilab -nwni
+
# Only open the Scilab help window:
$ scilab-adv-cli -e "help()"
or
$ scilab -nw -e "help()"
+
+
# Scilab can be used for scripting aspects:
echo "if 1<>2 then exit(99) end"|scilab-cli
echo $? ]]></programlisting>
+
</refsection>
+
<refsection role="see also">
+
<title>参照</title>
+
<simplelist type="inline">
+
<member>
+
<link linkend="exit">exit</link>
+
</member>
+
<member>
+
<link linkend="startup">startup</link>
+
</member>
+
</simplelist>
+
</refsection>
+
<refsection>
+
<title>履歴</title>
+
<revhistory>
+
<revision>
+
<revnumber>5.4.0</revnumber>
+
<revremark>-noatomsautoload が追加されました.</revremark>
+
</revision>
+
<revision>
+
<revnumber>5.4.1</revnumber>
+
<revremark>scinotes と xcos 個別スクリプトが導入されました. SEP #87参照.</revremark>
+
</revision>
+
</revhistory>
+
</refsection>
+
</refentry>
+
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<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="ja" xml:id="sethomedirectory">
- <refnamediv>
- <refname>sethomedirectory</refname>
- <refpurpose>Scilabホームディレクトリを設定</refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <title>呼出し手順</title>
- <synopsis>[home,scilabhome] = sethomedirectory()</synopsis>
- </refsynopsisdiv>
- <refsection>
- <title>説明</title>
- <para>古い関数 : scilab 変数 "SCIHOME" および "home" を使用する必要があります.</para>
- <para>Scilab ホームのパスを設定 : "SCIHOME" 変数.</para>
- <para>OWindows 2k および XPの場合 , C:\Documents and
- Settings\<User>\Scilab\<Scilab-Version>
- </para>
- <para>Windows Vistaの場合 ,
- C:\Users\<User>\Scilab\<Scilab-Version>
- </para>
- <para>Unixの場合, /home/<User>/.Scilab/<Scilab-Version></para>
- </refsection>
-</refentry>
<refpurpose>スタートアップファイル</refpurpose>
</refnamediv>
<refsection>
- <title>説明</title>
- <para>
- スタートアップファイル <literal>SCIHOME/.scilab</literal> および
- <literal>SCIHOME/scilab.ini</literal> は,
- (もし存在する場合,) Scilabの起動時に自動的に実行されます.
- Scilab directory (SCI) にあるファイル<literal>scilab.star</literal>
- も同様です.
- </para>
+ <title>説明</title>
+ <para>
+ スタートアップファイル <link linkend="SCIHOME">SCIHOME</link>/.scilab および
+ <link linkend="SCIHOME">SCIHOME</link>/scilab.ini は,
+ (もし存在する場合,)
+ ファイル <link linkend="SCI">SCI</link>/etc/scilab.start と同様に,
+ Scilabの起動時に自動的に実行されます.
+ </para>
</refsection>
<refsection>
- <title>注意</title>
- <para>
- スタートアップファイルの最終行は, 有効とするために
- 改行で終わる必要があります.
- </para>
- <para>SCIHOME の定義 : Windowsの場合 : C:/Documents および
- Settings/<User>/Scilab/<Scilab-Version>
- </para>
- <para>Vistaの場合 :
- C:/<User>/AppData/Roaming/Scilab/<Scilab-Version>
- </para>
- <para>Linux/Unixの場合 :
- /home/<User>/.Scilab/<Scilab-Version>
- </para>
+ <title>注意</title>
+ <para>
+ スタートアップファイルの最終行は, 有効とするために
+ 改行で終わる必要があります.
+ </para>
+ </refsection>
+ <refsection>
+ <title>例</title>
+ <programlisting role="example"><![CDATA[
+ls(SCIHOME)
+if ls(SCIHOME+"/scilab.ini") == [] & ls(SCIHOME+"/.scilab") == []
+ disp("No startup file defined");
+end
+ ]]></programlisting>
</refsection>
<refsection role="see also">
<title>参照</title>
<link linkend="scilab">scilab</link>
</member>
</simplelist>
+ <simplelist type="inline">
+ <member>
+ <link linkend="SCIHOME">SCIHOME</link>
+ </member>
+ </simplelist>
+ <simplelist type="inline">
+ <member>
+ <link linkend="SCI">SCI</link>
+ </member>
+ </simplelist>
+ <simplelist type="inline">
+ <member>
+ <link linkend="TMPDIR">TMPDIR</link>
+ </member>
+ </simplelist>
</refsection>
</refentry>
<literal>exists(name)</literal> は,
<literal>name</literal>という名前の変数が存在する場合に
<literal>1</literal>,それ以外の場合に<literal>0</literal>を返します.
+
</para>
<para>
注意: <literal>exists</literal> を使用する関数は,
<term>parent: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>children: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>visible: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>data: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>box_mode: </term>
<listitem>
- <para>This field contains the default <literal>box_mode</literal> property
+ <para>
+ This field contains the default <literal>box_mode</literal> property
value for the datatip. Its value should be <literal>"on" </literal>(box
drawn) or <literal>"off"</literal> (no box drawn).
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>label_mode: </term>
<listitem>
- <para>This field contains the default <literal>label_mode</literal> property
+ <para>
+ This field contains the default <literal>label_mode</literal> property
value for the datatip. Its value should be <literal>"on" </literal>(label
written) or <literal>"off"</literal> (no label written).
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>orientation: </term>
<listitem>
<para>This field sets the position on the text box with respect to polyline point.
- The possible values are 0, 1, 2 or 3.
+ The possible values are 0, 1, 2 or 3.
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>z_component: </term>
<listitem>
- <para>This field adds z position in the box. Its value should be <literal>"on" </literal>
- (z position written) or <literal>"off"</literal> (no z position written).
+ <para>
+ This field adds z position in the box. Its value should be <literal>"on" </literal>
+ (z position written) or <literal>"off"</literal> (no z position written).
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>auto_orientation: </term>
<listitem>
- <para>This field contains the default <literal>auto_orientation</literal> property
- value for the datatip. Its value should be <literal>"on" </literal>(automatic orientation)
- or <literal>"off"</literal> (no automatic orientation). In the <literal>"off"</literal> case,
- See <literal>orientation</literal> property.
+ <para>
+ This field contains the default <literal>auto_orientation</literal> property
+ value for the datatip. Its value should be <literal>"on" </literal>(automatic orientation)
+ or <literal>"off"</literal> (no automatic orientation). In the <literal>"off"</literal> case,
+ See <literal>orientation</literal> property.
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>interp_mode: </term>
<listitem>
<para>This field sets the interpolation mode for tip location. Its value should be
- <literal>"on" </literal>(interpolation is made between mesh points) or <literal>"off"
- </literal> (the tips can only be located at the mesh points).
+ <literal>"on" </literal>(interpolation is made between mesh points) or <literal>"off"
+ </literal>
+ (the tips can only be located at the mesh points).
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>display_function: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>font_foreground: </term>
<listitem>
- <para>This field contains the default <literal>font_foreground</literal> property
+ <para>
+ This field contains the default <literal>font_foreground</literal> property
Its value should be a color index (relative to the current colormap).
</para>
</listitem>
<varlistentry>
<term>foreground: </term>
<listitem>
- <para>This field contains the default <literal>foreground</literal> property
+ <para>
+ This field contains the default <literal>foreground</literal> property
used to draw the box. Its value should be a color index (relative
to the current colormap).
</para>
<term>background: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>mark_mode: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>mark_style: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>mark_size_unit: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>mark_size: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>mark_foreground: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>mark_background: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<term>user_data: </term>
<listitem>
<para>See
- <literal>
- <link linkend="polyline_properties">polyline_properties</link>
- </literal> help page.
+ <literal>
+ <link linkend="polyline_properties">polyline_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
- <varlistentry>
+ <varlistentry>
<term>tag: </term>
<listitem>
<para>This fields contains a string generally used to identify the control.
- See <literal>
- <link linkend="figure_properties">figure_properties</link>
- </literal> help page.
+ See <literal>
+ <link linkend="figure_properties">figure_properties</link>
+ </literal>
+ help page.
</para>
</listitem>
</varlistentry>
<member>
<link linkend="polyline_properties">polyline_properties</link>
</member>
- <member>
+ <member>
<link linkend="figure_properties">figure_properties</link>
</member>
<member>
<varlistentry>
<term>auto_dimensionning: </term>
<listitem>
- <para>
- auto_dimensionning set to "off" is equivalent to text_box_mode set to "filled". If text_box_mode is "off" or "centered" then it implies that auto_dimensionning is "on".
- </para>
+ <para>
+ auto_dimensionning set to "off" is equivalent to text_box_mode set to "filled". If text_box_mode is "off" or "centered" then it implies that auto_dimensionning is "on".
+ </para>
</listitem>
</varlistentry>
<varlistentry>
<?xml version="1.0" encoding="UTF-8"?>
+
<!--
+
* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+
* Copyright (C) INRIA - Fabrice Leray
+
*
+
* This file must be used under the terms of the CeCILL.
+
* This source file is licensed as described in the file COPYING, which
+
* you should have received as part of this distribution. The terms
+
* are also available at
+
* http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
+
*
+
-->
+
<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="ja" xml:id="LineSpec">
+
<refnamediv>
+
<refname>LineSpec</refname>
+
<refpurpose>プロットの線の外観を簡単にカスタマイズするための仕様</refpurpose>
+
</refnamediv>
+
<refsection>
+
<title>説明</title>
+
<para>
- <literal>LineSpec</literal>は,
- <function>plot</function> コマンド内で使用できるオプションの引数で,
- 各ラインの外観をカスタマイズするために使用されます.
- このオプションは,色,線の種類やマーカといった情報を含む文字列を結合したもので指定します.
- このオプションは,基本的な線のプロパティを簡単に指定したい場合に非常に便利です.
+
+ <literal>LineSpec</literal>は,
+
+ <function>plot</function> コマンド内で使用できるオプションの引数で,
+
+ 各ラインの外観をカスタマイズするために使用されます.
+
+ このオプションは,色,線の種類やマーカといった情報を含む文字列を結合したもので指定します.
+
+ このオプションは,基本的な線のプロパティを簡単に指定したい場合に非常に便利です.
+
</para>
+
<para>
- ひし形のマーカを付けた赤い長い一点鎖線を指定するには,
- 文字列は<literal>'r-.diam'</literal>となります.
- 見てわかるように,各プロパティ値のスペルを完全に記述する必要はありませんが,
- これらの3種類のプロパティを結合したもの(順番は任意)は,一義的である必要があります.
- 更に,文字列の指定では大文字小文字は区別されません.
+
+ ひし形のマーカを付けた赤い長い一点鎖線を指定するには,
+
+ 文字列は<literal>'r-.diam'</literal>となります.
+
+ 見てわかるように,各プロパティ値のスペルを完全に記述する必要はありませんが,
+
+ これらの3種類のプロパティを結合したもの(順番は任意)は,一義的である必要があります.
+
+ 更に,文字列の指定では大文字小文字は区別されません.
+
</para>
+
<para>
- (<link linkend="plot">plot</link>により)指定可能な全ての<literal>LineSpec</literal>型の
- 一覧を以下に示します.
+
+ (<link linkend="plot">plot</link>により)指定可能な全ての<literal>LineSpec</literal>型の
+
+ 一覧を以下に示します.
+
</para>
+
<variablelist>
+
<varlistentry>
+
<term>LineStyle: </term>
+
<listitem>
+
<para>
- 線種を定義する文字列.このプロパティは
- オブジェクトの<literal>line_style</literal>プロパティとリンクしています
- (<link linkend="polyline_properties">polylineプロパティ</link>参照).
+
+ 線種を定義する文字列.このプロパティは
+
+ オブジェクトの<literal>line_style</literal>プロパティとリンクしています
+
+ (<link linkend="polyline_properties">polylineプロパティ</link>参照).
+
</para>
+
<para/>
+
<informaltable border="1">
+
<tr>
+
<td>
+
<literal>指定子</literal>
+
</td>
+
<td>
+
<literal>線種</literal>
+
</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>-</literal>
+
</td>
+
<td>実線 (デフォルト)</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>--</literal>
+
</td>
+
<td>破線e</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>:</literal>
+
</td>
+
<td>点線</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>-.</literal>
+
</td>
+
<td>一点鎖線</td>
+
</tr>
+
</informaltable>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>Color: </term>
+
<listitem>
+
<para>
- 線の色を定義する文字列. このプロパティは
- オブジェクトの <literal>foreground</literal>プロパティとリンクしています (
- <link linkend="polyline_properties">polylineプロパティ</link>参照).
+
+ 線の色を定義する文字列. このプロパティは
+
+ オブジェクトの <literal>foreground</literal>プロパティとリンクしています (
+
+ <link linkend="polyline_properties">polylineプロパティ</link>参照).
+
</para>
+
<para/>
+
<informaltable border="1">
+
<tr>
+
<td>
+
<literal>指定子</literal>
+
</td>
+
<td>
+
<literal>色</literal>
+
</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>r</literal>
+
</td>
+
<td>赤</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>g</literal>
+
</td>
+
<td>緑</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>b</literal>
+
</td>
+
<td>青</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>c</literal>
+
</td>
+
<td>シアン</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>m</literal>
+
</td>
+
<td>マゼンタ</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>y</literal>
+
</td>
+
<td>黄色</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>k</literal>
+
</td>
+
<td>黒</td>
+
</tr>
+
<tr>
+
<td>
+
<literal>w</literal>
+
</td>
+
<td>白</td>
+
</tr>
+
</informaltable>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term/>
+
<listitem>
+
<para>
- ( <literal>LineSpec</literal> または
- <link linkend="GlobalProperty">GlobalProperty</link>のどちらかで)
- 色を指定しない場合,
- 曲線をプロットする際にはデフォルトの色テーブルが使用されます.
- 複数の線を描画する際,プロットコマンドは自動的にこのテーブルを巡回します.
- 以下に使用される色を示します:
+
+ ( <literal>LineSpec</literal> または
+
+ <link linkend="GlobalProperty">GlobalProperty</link>のどちらかで)
+
+ 色を指定しない場合,
+
+ 曲線をプロットする際にはデフォルトの色テーブルが使用されます.
+
+ 複数の線を描画する際,プロットコマンドは自動的にこのテーブルを巡回します.
+
+ 以下に使用される色を示します:
+
</para>
+
<para/>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term/>
+
<listitem>
+
<informaltable border="1">
+
<tr>
+
<td>
+
<literal>R</literal>
+
</td>
+
<td>
+
<literal>G</literal>
+
</td>
+
<td>
+
<literal>B</literal>
+
</td>
+
</tr>
+
<tr>
+
<td>0.</td>
+
<td>0.</td>
+
<td>1.</td>
+
</tr>
+
<tr>
+
<td>0.</td>
+
<td>0.5</td>
+
<td>0.</td>
+
</tr>
+
<tr>
+
<td>1.</td>
+
<td>0.</td>
+
<td>0.</td>
+
</tr>
+
<tr>
+
<td>0.</td>
+
<td>0.75</td>
+
<td>0.75</td>
+
</tr>
+
<tr>
+
<td>0.75</td>
+
<td>0.</td>
+
<td>0.75</td>
+
</tr>
+
<tr>
+
<td>0.75</td>
+
<td>0.75</td>
+
<td>0.</td>
+
</tr>
+
<tr>
+
<td>0.25</td>
+
<td>0.25</td>
+
<td>0.25</td>
+
</tr>
+
</informaltable>
+
</listitem>
+
</varlistentry>
+
<varlistentry>
+
<term>Marker type: </term>
+
<listitem>
+
<para>
- マーカの種類を定義する文字列.
- 線種を指定しないでマーカを指定する場合,
- マーカのみが描画されることに注意してください.
- このプロパティはオブジェクトの <literal>mark_style</literal> および
- <literal>mark_mode</literal>プロパティにリンクしています
- (<link linkend="polyline_properties">polylineプロパティ</link>参照).
+
+ マーカの種類を定義する文字列.
+
+ 線種を指定しないでマーカを指定する場合,
+
+ &