Я хочу иметь полосу ожидания для операции, которая занимает довольно много времени. Вот мой код:
h = waitbar(0,'Please wait...');
for i=1:counterend
waitbar(i/waitbarcounter)
Atemp = At+i*step;
handle = @(M) 1/M^2*((2/(gamma+1))*(1+(gamma-1)*M^2/2))^((gamma+1)/(gamma-1))-(Atemp/At)^2;
Mach = fzero(handle, 5);
Aplot(i) = Atemp/At;
Tplot(i) = Tc / (1+(gamma-1)*Mach^2/2);
Mplot(i) = Mach;
plot(Aplot, Tplot)
end
close(h)
Matlab выдает ошибку:
??? Ошибка при использовании ==> панели ожидания на 249
Неправильные аргументы для полосы ожидания
После расследования я уверен, что эта ошибка должна возникать из-за кода, окружающего цикл.
Примечание: цикл отлично работает без полосы ожидания.