tlist
Scilab オブジェクトおよび型付のリスト定義.
呼び出し手順
tlist(typ,a1,....an )
パラメータ
- typ
文字列または文字列のベクトル
- ai
Scilabオブジェクト (
行列, リスト,文字列...
).
説明
要素ai
を有する
型付のリスト
を作成します.
typ
引数はリストの型を指定する引数です.
この 型付のリスト
により
ユーザはScilab関数によりこれらのオブジェクトで動作する
新しい処理を定義できるようになります.
型付のリスト
と リスト
の唯一の差は型の値(15ではなく16)です.
typ(1)
はリストの型を指定します
(ソフトコードされた処理を定義するために使用される文字列)
typ(i)
が指定された場合,
i+1
番目の形式要素の名前を指定します.
リスト
における標準処理は
型付リスト
でも類似性があります:
展開
: [x,y,z...]=l(v)
ただし v
は添え字のベクトルです;
[x,y,z]=l(:)
は全ての要素を展開します.
挿入
: l(i)=a
削除
: l(i)=null()
はtlist l
の i番目の要素を削除します.
表示
更にtyp(2:n+1)
が指定された場合,
ユーザは名前で要素を指定することができます
以下に tlist の使用例を示します.
線形システムは,特定の型付リスト
で表されます.
例えば,線形システム [A,B,C,D]
は
tlist Sys=tlist(['lss';'A';'B';'C';'D';'X0';'dt'],A,B,C,D,x0,'c')
で表されこの特別のリストは関数syslin
により
作成することが可能です.
Sys(2), Sys('A') または Sys.A は状態行列で, Sys('dt') または Sys.dt は 時間領域です
有理行列 H
は型付リスト
H=rlist(Num,Den,[])
により表されます.
ただし,Num
および Den
は多項式行列です.
伝達関数行列 H
を有する(連続時間)線形システムは
syslin('c',H)
で作成できます.
H(2), H('num') または H.num は伝達関数行列の分子です.
例
// tlist creation t = tlist(["listtype","field1","field2"], [], []); t.field1(1) = 10; t.field1(2) = 20; t.field2(1) = "Scilab"; t.field2(2) = "tlist"; t.field2(3) = "example"; // Fields contents display disp(t.field1) disp(t.field2) // Generic tlist display disp(t) // Overloading display for this type of tlist function %listtype_p(mytlist) f = fieldnames(mytlist); // typeof(mytlist) <=> f(1) mprintf("Displaying a tlist of type: %s\n", typeof(mytlist)); mprintf("\n"); mprintf("-- Field ''%s'' --\n", f(1)); mprintf("Contents: %s\n", sci2exp(mytlist(f(1)))); mprintf("\n"); mprintf("-- Field ''%s'' --\n", f(2)); mprintf("Contents: %s\n", sci2exp(mytlist(f(2)))); endfunction // Display using overloading function disp(t)
参照
Report an issue | ||
<< struct | Data Structures | tree_show >> |