Fcn
指定された式を入力に適用
ライブラリ:
Simulink /
User-Defined Functions
説明
Fcn ブロックは、指定された数式をその入力に適用します。式には以下の構成要素を 1 つ以上含めることができます。
u
— ブロックへの入力。u
がベクトルの場合、u(i)
はベクトルの i 番目の要素を表します。最初の要素はu(1)
または単独のu
で表されます。数値定数。
算術演算子 (+ -
*
/ ^)。関係演算子 (
== != > < >= <=
) — 式は関係が真である場合に 1 を返し、それ以外の場合は 0 を返します。論理演算子 (&& || !) — 式は関係が真である場合に 1 を返し、それ以外の場合は 0 を返します。
かっこ。
数学関数 —
abs
、acos
、asin
、atan
、atan2
、ceil
、cos
、cosh
、exp
、floor
、hypot
、log
、log10
、power
、rem
、sgn
(MATLAB® のsign
と等価)、sin
、sinh
、sqrt
、tan
、tanh
。メモ
Fcn ブロックでは
round
とfix
はサポートされません。これらの丸めモードを適用するには Rounding Function ブロックを使用します。ワークスペース変数 — 上記の項目のリストで認識されない変数の名前は、評価のために MATLAB に渡されます。行列またはベクトルの要素は具体的に参照されていなければなりません。たとえば、行列の最初の要素には
A
ではなくA(1,1)
を使用します。
Fcn ブロックは、演算子の優先順位について、次の規則に従います。
( )
^
+ -
(unary)!
* /
+ -
> < <= >=
== !=
&&
||
MATLAB 式とは異なり、行列計算は実行できません。また、このブロックではコロン演算子 (:
) はサポートされません。
ブロック入力はスカラーまたはベクトルのいずれかになります。出力は、常にスカラーです。ベクトルの出力には Math Function ブロックの使用を検討してください。ブロック入力がベクトルで、関数が入力要素について個別に演算を行う関数 (たとえば sin
関数など) の場合、ブロックは最初のベクトル要素でのみ演算を行います。
制限
ノーマル モードまたはアクセラレータ モードでのシミュレーション中 (アクセラレータ モードの動作を参照) や生成コードでは式を調整できません。調整可能な式を実装するには、その式を Fcn ブロックの外で調整するようにしてください。たとえば、Relational Operator ブロックを使用して外部で式を評価します。
Fcn ブロックではカスタム ストレージ クラスはサポートされません。Struct ストレージ クラスを使用してパラメーター データを構造体に整理する (Embedded Coder)を参照してください。
端子
入力
出力
パラメーター
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|