fold
関数を使用したベクトルの結合 (たたみ込み)
説明
例
関数を使用したベクトルのたたみ込み
関数 power
を使用して、シンボリック変数で構成されるベクトルをたたみ込みます。出力は、fold
がどのように指定された関数を使い、ベクトルの要素を左から右に結合するかを示しています。
syms a b c d e fold(@power, [a b c d e])
ans = (((a^b)^c)^d)^e
変数が値の集合に属すると仮定する
変数 x
が値の集合 1, 2, ..., 10 に属すると仮定するには、fold
を使用して、or
を、x == 1
, ..., x == 10
という条件に適用します。assumptions
を使用して、仮定が設定されていることをチェックします。
syms x cond = fold(@or, x == 1:10); assume(cond) assumptions
ans = x == 1 | x == 2 | x == 3 | x == 4 | x == 5 |... x == 6 | x == 7 | x == 8 | x == 9 | x == 10
fold 演算の既定値の指定
入力が空のときの fold
の既定値を、3 番目の引数の指定によって指定します。入力が空のときに 3 番目の引数が指定されていない場合、fold
はエラーをスローします。
ベクトルの和を計算する関数を作成する場合、ベクトルが空のときに関数によって 0
が返されるように、既定値 0
を指定します。
sumVector = @(x) fold(@plus, x, 0); sumVector([])
ans = 0
入力引数
バージョン履歴
R2016b で導入