Числовой градиент
FX = gradient(F)[FX,FY]
= gradient(F)[FX,FY,FZ,...,FN]
= gradient(F)[___] = gradient(F,h)[___] = gradient(F,hx,hy,...,hN) возвращает одномерный числовой градиент векторного 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 возвращает массив с тем же числом элементов как вход.