Немного про то, как можно увеличить скорость работы программ в Matlab. Хотя Matlab автоматически регулирует размеры векторов и матриц, оказывается, что лучше будет предварительно выделить матрицы. Такое предварительное распределение берет на себя расходы на выделение памяти только один раз, и это гарантирует, что матричные элементы будут храниться в смежных ячейках оперативной памяти (по столбцам).
Рассмотрим следующий код:
clear all;
nx = 50000;
dx = 5;
for i = 1:nx
x(i) = (i-1)*dx;
y(i) = sin(3*x(i));
end
Рассмотрим следующий код:
clear all;
nx = 50000;
dx = 5;
for i = 1:nx
x(i) = (i-1)*dx;
y(i) = sin(3*x(i));
end