Числовой градиент
возвращает одномерный числовой градиент вектора FX = gradient(F)F. Продукция FX соответствует ∂F/∂x, которые представляют собой различия в направлении x (по горизонтали). Предполагается, что расстояние между точками равно 1.
[ возвращает компоненты x и y двумерного числового градиента матрицы FX,FY] = gradient(F)F. Дополнительный выход FY соответствует ∂F/∂y, которые представляют собой различия в направлении y (по вертикали). Расстояние между точками в каждом направлении принимается равным 1.
Использовать diff или пользовательский алгоритм для вычисления нескольких числовых производных вместо вызова gradient несколько раз.
gradient вычисляет центральную разницу для внутренних точек данных. Например, рассмотрим матрицу с разнесенными по единицам данными, A, который имеет горизонтальный градиент G = gradient(A). Значения внутреннего градиента, G(:,j)являются
G(:,j) = 0.5*(A(:,j+1) - A(:,j-1));
Нижний индекс j варьируется между 2 и N-1, с N = size(A,2).
gradient вычисляет значения по краям матрицы с односторонними различиями:
G(:,1) = A(:,2) - A(:,1); G(:,N) = A(:,N) - A(:,N-1);
Если указать интервал между точками, то gradient соответствующим образом масштабирует различия. При указании двух или более выходов функция также вычисляет различия по другим размерам аналогичным образом. В отличие от diff функция, gradient возвращает массив с тем же количеством элементов, что и вход.