Не могу придумать как решить задачу
Необходимо сделать FFT анализ в разные моменты времени. Сам анализ выполняется, через цикл for задал моменты времени, результат выводится в Command window как надо. Но проблема в том, что в Workspace сохраняется только последний результат.
Как сохранить результаты всех итераций в матрицу значений или/и каждую итерацию отдельно?
В качестве исходных данных используется массив времени и амплитуды сигнала
Код: Выделить всё
% Массив для FFT анализа
FFTDATA_Umax=power_fftscope(Scope_Umax); % Массив для FFT
% Параметры FFT для Umax
% Aveilable signals
FFTDATA_Umax.input=1;
FFTDATA_Umax.signal=1;
% FFT setting
for s=1:0.5:9;
FFTDATA_Umax.blockName='FFT_Umax'; % Имя блока
[u]FFTDATA_Umax.startTime=s; [/u] % Время начала FFT анализа
FFTDATA_Umax.cycles=10; % Кол-во циклов
FFTDATA_Umax.fundamental=50; % Основная частота
FFTDATA_Umax.maxFrequency=2000; % Максимальная вычисляемая частота
FFTDATA_Umax.THDmaxFrequency=Inf; % Максимальная частота для расчета THD. inf для вычисления THD на частоте Найквиста.
FFTDATA_Umax.freqAxis='Harmonicorder'; % hertz или harmonicorders
FFTresults_Umax=power_fftscope(FFTDATA_Umax) % FFT анализ и сохранение результатов
% Экспорт результатов FFT анализа
FFTmag_Umax=FFTresults_Umax.mag; % Амплитуда гармоник
FFTfreq_Umax=FFTresults_Umax.freq; % Частота (с шагом 5)
FFTphase_Umax=FFTresults_Umax.phase; % Фаза
FFT_THD_Umax=FFTresults_Umax.THD;
% Сохранение THD&mag
sigma2_mag=FFTmag_Umax;
sigma2_THD=FFT_THD_Umax;