Sensor
Model ElementSensorは、モデル内のイベントセンサーを定義します。対象のイベントが発生したら、そのイベントに応じてアクションをとることができます。
クラス名
センサー
説明
例えば、車両シミュレーション中に車体の横加速度を監視することで、車が制御不能になるかどうかを判断することができます。この量がしきい値を超えたら、シミュレーションを停止できます。
属性の概要
名前 | プロパティ | コマンドで変更可能か | 設計可能か |
---|---|---|---|
id | Int () | × | |
label | Str () | ○ | |
value | Double () | ||
error | Double () | ||
operator | Enum ("LE EQ GE", default="EQ") | ○ | |
dt | Double () | ||
hmax | Double () | ||
halt | Bool () | ||
print_ | Bool () | ||
restart | Bool () | ||
return_ | Bool () | ||
stepsize | Double () | ||
zero_crossing | Double () | ||
function | Function ("SENSUB") | ○ | |
routine | Routine () | ||
evaluate | Function ("SEVSUB") | ||
evaluate_routine | Routine () | ||
active | Bool () | ○ |
使用法
#1: Sensor event is specified in a MotionSolve expression
Sensor (value=double, function=expressionString, optional_arguments)
#2: Sensor event is specified in a compiled user-subroutine
Sensor (value=double, function=userString, routine=string, optional_arguments)
#3: Sensor event is specified in a Python function
Sensor (value=double, function=userString, routine=functionPointer, optional_arguments)
属性
- value
- 倍精度
- function
- 有効なMotionSolve式を定義する文字列。
- value
- 倍精度
- function
- 有効なユーザー関数MotionSolve式を定義する文字列。
- routine
- 文字列
- value
- 倍精度
- function
- 有効なユーザー関数MotionSolve式を定義する文字列。
- routine
- Python内の呼び出し可能な関数へのポインタ。
- id
- 整数
- label
- 文字列
- operator
- 文字列
- error
- 倍精度
- zero_crossing
- 倍精度
- dt
- 倍精度
- hmax
- 倍精度
- halt
- ブール
- ブール
- restart
- ブール
- return
- ブール
- stepsize
- 倍精度
- evaluate
- 関数式を指定する場合
- 有効なMotionSolve関数式を定義する文字列
- 値に評価する適切なMotionSolve式を指定します。
- evaluate_routine
- コンパイルされたユーザーサブルーチンを指定する場合
- 文字列
ユーザーサブルーチンの代替名を指定します。この名前は、“∷”で区切られた情報の2つの部分で構成されます。1つ目は、ユーザー定義のVariableの応答を計算する関数を含む共有ライブラリへのパス名です。2つ目は、計算を実行する共有ライブラリ内の関数の名前です。
例: routine="/staff/Altair/engine.dll::mySevsub"
- "/staff/Altair/engine.dllはDLLです。
- mySevsubは、計算を実行するこのDLL内の関数です。
- 文字列
- active
- ブール
例
|
コメント
- プロパティの概要、使用理由、および拡張方法については、プロパティをご参照ください。
- Sensorの詳細については、Sensor: Eventをご参照ください。