ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Math Function

ライブラリ

Math Operations

説明

Math Function ブロックは、一般的な各種の数学関数を実行します。

    ヒント:   平方根の計算を行うには、Sqrt ブロックを使用します。

[関数] パラメーター リストから以下のいずれかの関数を選択できます。

関数説明数式MATLAB® 等価
exp

指数

eu

exp
log

自然対数

ln u

log
10^u

基数 10 のべき乗

10u

10.^u
(power を参照)

log10

常用対数 (基底 10)

log u

log10
magnitude^2

複素絶対値の 2 乗

|u|2

(abs(u)).^2
(abspower を参照)

square

2 乗

u2

u.^2
(power を参照)

pow

べき乗

uv

power
conj

複素共役

ū

conj
reciprocal

逆数

1/u

1./u
(rdivide を参照)

hypot

平方和の平方根

(u2+v2)0.5

hypot
rem

除算後の剰余

rem
mod

除算後のモジュラス

mod
transpose

転置

uT

u.'
(「配列演算と行列演算」 を参照)

hermitian

複素共役転置

uH

u'
(「配列演算と行列演算」 を参照)

このブロックは、単一または複数の入力に選択された関数演算を実行した結果を出力します。これらの関数は、以下のタイプの演算をサポートします。

関数スカラー演算要素単位のベクトル演算と行列演算ベクトル演算と行列演算
exp

あり

あり

log

あり

あり

10^u

あり

あり

log10

あり

あり

magnitude^2

あり

あり

square

あり

あり

pow

あり

あり

conj

あり

あり

reciprocal

あり

あり

hypot

2 つの入力において、あり

2 つの入力 (同じサイズの 2 つのベクトルまたは 2 つの行列、スカラーとベクトル、またはスカラーと行列) において、あり

rem

2 つの入力において、あり

2 つの入力 (同じサイズの 2 つのベクトルまたは 2 つの行列、スカラーとベクトル、またはスカラーと行列) において、あり

mod

2 つの入力において、あり

2 つの入力 (同じサイズの 2 つのベクトルまたは 2 つの行列、スカラーとベクトル、またはスカラーと行列) において、あり

transpose

あり

あり

hermitian

あり

あり

関数の名前は、ブロックに表示されます。適切な数の入力端子が自動的に表示されます。

    ヒント:   Fcn ブロックはスカラー出力しか生成しないため、ベクトル出力または行列出力が必要な場合は、Fcn ブロックの代わりに Math Function ブロックを使用します。

サポートするデータ型

以下の表は、ブロックの各関数がサポートできる入力データ型を示しています。

関数singledoubleboolean組み込み整数固定小数点

exp

あり

あり

log

あり

あり

10^u

あり

あり

log10

あり

あり

magnitude^2

あり

あり

あり

あり

square

あり

あり

あり

あり

pow

あり

あり

conj

あり

あり

あり

あり

reciprocal

あり

あり

あり

あり

hypot

あり

あり

rem

あり

あり

あり

mod

あり

あり

あり

transpose

あり

あり

あり

あり

あり

hermitian

あり

あり

あり

あり

サポートされるすべてのモードは、複素固定小数点入力を受け入れない reciprocal を除き、実数入力と複素数入力を両方とも受け入れます。

ブロック出力は [信号出力タイプ] にどのタイプを選択したかにより、実数または複素数です。

パラメーターとダイアログ ボックス

[Math Function ブロック] ダイアログ ボックスの [メイン] ペインは、次のように表示されます。

関数

数学関数を指定します。このパラメーターのオプションの詳細は、「説明」を参照してください。

出力信号タイプ

Math Function ブロックの出力信号タイプを [auto]、[real]、または [complex] として選択します。

関数入力信号タイプ出力信号タイプ
自動実数複素数

exp, log, 10u, log10, square, pow, reciprocal, conjugate, transpose, hermitian

real

complex

real

complex

real

error

complex

complex

magnitude squared

real

complex

real

real

real

real

complex

complex

hypot, rem, mod

real

complex

real

error

real

error

complex

error

サンプル時間 (継承は -1)

サンプルの時間間隔を指定します。サンプル時間を継承するには、このパラメーターを -1 に設定します。詳細は、オンライン ドキュメンテーションの「 サンプル時間の指定」を参照してください。

[Math Function ブロック] ダイアログ ボックスの [信号属性] ペインは、次のように表示されます。

    メモ:   このペインの一部のパラメーターは、[関数] パラメーターで選択した関数が固定小数点データ型をサポートしている場合にのみ使用できます。

出力の最小値

ブロックが出力する最小値を指定します。既定値は [] (指定なし) です。Simulink® ソフトウェアは、以下を行う際にこの値を使用します。

  • シミュレーション範囲のチェック (「信号範囲」を参照)

  • 固定小数点データ型の自動スケーリング

出力の最大値

ブロックが出力する最大値を指定します。既定値は [] (指定なし) です。Simulink ソフトウェアは、以下を行う際にこの値を使用します。

  • シミュレーション範囲のチェック (「信号範囲」を参照)

  • 固定小数点データ型の自動スケーリング

出力データ型

出力データ型を指定します。以下を指定可能です。

  • データ型継承ルール (例: 継承:逆伝播による継承)

  • 組み込みデータ型名 (例: single)

  • データ型オブジェクト名 (例: Simulink.NumericType オブジェクト)

  • データ型を評価する式 (例: fixdt(1,16,0))

[データ型アシスタントを表示] ボタン をクリックして、[出力データ型] パラメーターに関する設定を行う [データ型アシスタント] を表示します。

詳細は、「ブロックの出力データ型の指定」を参照してください。

固定小数点ツールによる変更に対して出力データ型の設定をロックする

固定小数点ツールや固定小数点アドバイザーによる変更を避けるために、このブロックの出力データ型の設定をロックします。詳細は、「[出力データ型の設定をロックする] の使用」を参照してください。

整数丸めモード

固定小数点演算の丸めモードを指定します。詳細は、Fixed-Point Designer™ ドキュメンテーションの「丸め」を参照してください。

整数オーバーフローで飽和
アクションこのアクションを行う理由オーバーフロー発生時に起きること

このチェック ボックスをオンにする。

モデルでオーバーフローが発生する可能性があるので、生成コードに飽和保護を明示的に組み込むことをお勧めします。

オーバーフローは、データ型が表現できる最小値または最大値のいずれかに飽和します。

int8 (符号付き、8 ビット整数) データ型が表すことができる最大値は 127 です。この最大値を超えるブロックの演算結果により 8 ビット整数のオーバーフローが発生します。チェック ボックスがオンになっていると、ブロック出力は 127 で飽和します。同様に、ブロック出力は最小出力値である -128 で飽和します。

このチェック ボックスをオンにしない。

生成コードの効率を最適化することをお勧めします。

ブロックが範囲外の信号を処理する方法を指定しすぎないようにすることをお勧めします。詳細は、「信号範囲のエラーのチェック」を参照してください。

オーバーフローは、データ型によって表現される適切な値にラップされます。

int8 (符号付き、8 ビット整数) データ型が表すことができる最大値は 127 です。この最大値を超えるブロックの演算結果により 8 ビット整数のオーバーフローが発生します。チェック ボックスをオフにすると、オーバーフローを引き起こした値は int8 として解釈され、意図しない結果が引き起こされる可能性があります。たとえば、int8 として表されるブロック結果 130 (バイナリで 1000 0010) は -126 です。

このチェック ボックスをオンにすると、飽和は出力や結果だけでなく、このブロックの内部演算すべてに適用されます。通常、オーバーフローが可能ではない場合は、コード生成プロセスで検出されます。この場合、コード ジェネレーターでは飽和コードは生成されません。

特性

直接フィードスルー

あり

サンプル時間

[サンプル時間] パラメーターで指定

スカラー拡張

あり、関数が 2 つ入力を必要とする場合

離散化

あり

多次元化

あり、ただし、hermitiantranspose の場合は除く。

ゼロクロッシング検出

なし

この情報は役に立ちましたか?