Сначала объявите переменную как глобальную:
global my_glob_var;
MATLAB на самом деле не поддерживает концепцию «неинициализированных» переменных, но вы можете создать массив NaN (не число), чтобы указать, что каждое значение еще не было назначено. Аргументы функции nan
указывают размер массива NaN, который вы хотите создать:
my_glob_var = nan(200, 200)
Существуют и другие подобные функции, если вы хотите инициализировать массивы нулей, единиц, Inf и т. Д.
Затем внутри функций, в которых вы хотите его использовать, снова объявите его как глобальный:
function my_function
global my_glob_var % allows this function to use the global variable
my_glob_var % outputs the variable to command
Кроме того, обратите внимание, что вы "инициализируете его до некоторого значения позже, используя цикл for". В зависимости от того, как вы инициализируете массив, может существовать векторизованный способ достижения этого (то есть без использования цикла for). В MATLAB векторизованные операции обычно выполняются намного быстрее.