Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.0.0 - 日本語


scicos_simulate

シミュレーションをバッチモードで実行する関数

呼び出し手順

Info=scicos_simulate(scs_m)
Info=scicos_simulate(scs_m,Info)
Info=scicos_simulate(scs_m,context)
Info=scicos_simulate(scs_m,flag)
Info=scicos_simulate(scs_m ,Info [, context] [,flag])

引数

scs_m: ダイアグラムデータ構造体 (scs_m 構造体参照).

Info: リスト. 初回コール時はlist(),次回コール以降は Info出力をInfo入力として 指定してください. Infoにはコンパイルおよびシミュレーション関連情報 が含まれ,不要な再コンパイルを避けるために使用されます.

ContextValues: Scilab構造体で,コンテキストおよびxcosブロックで使用されるシンボル変数の値を有します.

flag: 文字列. 'nw' (no window)の場合, グラフィックウインドウを使用するブロックは実行されません. このようなブロックのリストは,新規ブロック追加時に更新する必要があることに注意してください.

説明

この関数はバッチモードで xcos ダイアグラムをシミュレートする際に使用されます. この関数には,.zcosファイルをScilabにロードした際に 得られる scs_m構造体を指定します (importXcosDiagram参照).

ContextValuesは,主ダイアグラムコンテキストで 設定される主要なパラメータの値を変更する際に使用することができます. 例: 変数 A がダイアグラムの主コンテキストで 1に設定された場合, A の値を scicos_simulate シミュレーション時に 以下のように設定することにより変更することができます.

ContextValues.A=2

ContextValues引数を使用せずに Scilab内部で定義された変数を直接使用することも可能ですが, このような用途の場合,コンテキストの定義でこれが可能である ことが必要です: 例えば,パラメータAとして Scilab変数Aの値を 使用するシミュレーションを可能としたい場合, ダイアグラムコンテキストの定義に以下を記述する必要があります:

if ~exists('A') then  A=1,end
この第二の手法は,Scilabで定義されたAのカレントの値に依存するという 弱点があることに注意してください.

ファイルの内容

  • SCI/modules/scicos/macros/scicos_auto/scicos_simulate.sci

xcos diagram は, SCI/modules/xcos/demos/batch_simulation.zcosにあります.

importXcosDiagram("SCI/modules/xcos/demos/batch_simulation.zcos")
typeof(scs_m) //ダイアグラムデータ構造体
//このダイアグラムは以下の3つのコンテキスト変数を使用する :
//  Amplitude : sin関数の大きさ
//  Pulsation : sin関数の脈動
//  Tf        : シミュレーション終了時間
scs_m.props.context; //組込み定義
//ダイアグラムに埋め込まれたパラメータを用いたバッチシミュレーション(初回)
scicos_simulate(scs_m);
// 終了時間を変更
Context.Tf=10;
scicos_simulate(scs_m,Context);
// 表示なしに変更
Context.Tf=10;
Context.Pulsation=9;
scicos_simulate(scs_m,list(),Context,'nw');
// "from workspace block"で作成された変数を取得
counter

参照

Report an issue
<< lincos Batch functions scicosim >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Oct 24 14:36:20 CEST 2023