Объедините (складывайте) вектор с помощью функции
fold( возвращает значение fun,v,defaultVal)defaultVal если v пуст.
Сложите вектор символьных переменных с помощью 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 путем применения or к условиям x == 1..., x == 10 использование fold. Проверяйте, что предположение установлено при помощи 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 выдает ошибку.
При создании функции для суммирования вектора задайте значение по умолчанию 0, таким образом, что функция возвращается 0 когда вектор пуст.
sumVector = @(x) fold(@plus, x, 0); sumVector([])
ans =
0