Присвойте значение переменной в заданной рабочей области
assignin( присваивает значение ws,var,val)val к переменной var в рабочей области ws. Например, assignin('base','x',42) присваивает значение 42 переменной x в базовом рабочем пространстве MATLAB®.
Если val требует оценки, MATLAB выполняет ее в функции, которая вызывает assignin, не в рабочей области задан ws. Если val указатель на функцию, это должно быть evaluable в функции, которая вызывает assignin.
assignin функция полезна для этих задач:
Экспортирование данных от функции до базового рабочего пространства.
Из функции, изменяя значение переменной, которая задана в рабочей области функции вызывающей стороны. Например, можно изменить значение переменной в списке аргументов функции вызова.
assignin функция не присваивает значения определенным элементам массива. Поэтому var не может содержать индексы массива. Этот код приводит к ошибке.
X = 1:8;
assignin('base','X(3:5)',-1);
Чтобы присвоить значения определенным элементам массива, используйте evalin функция.
evalin('base','X(3:5) = -1')