Полагаю, если у вас есть линейный набор уравнений, вы можете построить его, используя матрицу, тогда вы можете включать новые операции, добавляя строки и столбцы в матрицу и / или сопровождающий ее вектор правой части.
Если вы действительно пытаетесь использовать анонимные функции, скажем, если ваши функции нелинейны, то я бы посоветовал вам изучить массивы анонимных функций . Например,
A = cell(3,1); % Preallocate a 3 by 1 cell array
for ii = 1:3
A{ii} = @(x) x^2+ii; % Fill up the array with anonymous functions
end
Теперь, если вы проверите, что содержится в массиве ячеек 'A',
A = @(x)x^2+ii
@(x)x^2+ii
@(x)x^2+ii
Не беспокойтесь об отображении 'ii' вместо фактического номера переменной цикла, как мы указали ранее, MATLAB внутренне заменила их этими значениями. Изменение 'ii' в текущей области действия функции также не повлияет на их значения в 'A'.
Таким образом,
A{1}(2) = 5
, A{2}(2) = 6
и A{3}(2) = 7
Если вы не знакомы с массивами ячеек, вы можете прочитать об их использовании здесь .
Опять же, то, что вы пытаетесь достичь, может быть другим. Я надеюсь, что это работает для вас.