diff

Дифференцируйте символьное выражение или функцию

Синтаксис

diff(F)
diff(F,var)
diff(F,n)
diff(F,var,n)
diff(F,var1,...,varN)

Описание

пример

diff(F) дифференцирует F относительно переменной, определенной symvar(F,1).

пример

diff(F,var) дифференцирует F относительно переменной var.

пример

diff(F,n) вычисляет n th производная F относительно переменной, определенной symvar.

пример

diff(F,var,n) вычисляет n th производная F относительно переменной var.

пример

diff(F,var1,...,varN) дифференцирует F относительно переменных var1,...,varN.

Примеры

Дифференцируйте функцию

Найдите производную функционального sin(x^2).

syms f(x)
f(x) = sin(x^2);
df = diff(f,x)
df(x) =
2*x*cos(x^2)

Найдите значение производной в x = 2. Преобразуйте значение, чтобы удвоиться.

df2 = df(2)
df2 =
4*cos(4)
double(df2)
ans =
   -2.6146

Дифференцирование относительно конкретной переменной

Найдите первую производную этого выражения:

syms x t
diff(sin(x*t^2))
ans =
t^2*cos(t^2*x)

Поскольку вы не задавали переменную дифференцирования, diff использует переменную по умолчанию, заданную symvar. Для этого выражения переменной по умолчанию является x:

symvar(sin(x*t^2),1)
ans =
x

Теперь, найдите производную этого выражения относительно переменной t:

diff(sin(x*t^2),t)
ans =
2*t*x*cos(t^2*x)

Производные высшего порядка одномерного выражения

Найдите 4-е, 5-е, и 6-е производные этого выражения:

syms t
d4 = diff(t^6,4)
d5 = diff(t^6,5)
d6 = diff(t^6,6)
d4 =
360*t^2
 
d5 =
720*t
 
d6 =
720

Производные высшего порядка многомерного выражения относительно конкретной переменной

Найдите вторую производную этого выражения относительно переменной y:

syms x y
diff(x*cos(x*y), y, 2)
ans =
-x^3*cos(x*y)

Производные высшего порядка многомерного выражения относительно переменной по умолчанию

Вычислите вторую производную выражения x*y. Если вы не задаете переменную дифференцирования, diff использует переменную, определенную symvar. Для этого выражения symvar(x*y,1) возвращает x. Поэтому diff вычисляет вторую производную x*y относительно x.

syms x y
diff(x*y, 2)
ans =
0

Если вы используете, вложил вызовы diff, и не задавайте переменную дифференцирования, diff определяет переменную дифференцирования для каждого вызова. Например, дифференцируйте выражение x*y путем вызывания функции diff дважды:

diff(diff(x*y))
ans =
1

В первом вызове diff дифференцирует x*y относительно x, и возвращает y. Во втором вызове diff дифференцирует y относительно y и возвращает 1.

Таким образом diff(x*y, 2) эквивалентен diff(x*y, x, x), и diff(diff(x*y)) эквивалентен diff(x*y, x, y).

Смешанные производные

Дифференцируйте это выражение относительно переменных x и y:

syms x y
diff(x*sin(x*y), x, y)
ans =
2*x*cos(x*y) - x^2*y*sin(x*y)

Также можно вычислить смешанные производные высшего порядка путем обеспечения всех переменных дифференцирования:

syms x y
diff(x*sin(x*y), x, x, x, y)
ans =
x^2*y^3*sin(x*y) - 6*x*y^2*cos(x*y) - 6*y*sin(x*y)

Входные параметры

свернуть все

Выражение или функция, чтобы дифференцироваться, заданный как символьное выражение или функция или как вектор или матрица символьных выражений или функций. Если F является вектором или матрицей, diff дифференцирует каждый элемент F и возвращает вектор или матрицу, одного размера как F.

Переменная Differentiation, заданная как символьная переменная.

Переменные дифференцирования, заданные как символьные переменные.

Порядок дифференцирования, заданный как неотрицательное целое число.

Советы

  • Когда вычисление смешало производные высшего порядка, не используйте n, чтобы задать порядок дифференцирования. Вместо этого задайте все переменные дифференцирования явным образом.

  • Чтобы улучшать производительность, diff принимает, что все смешанные производные коммутируются. Например,

    xyf(x,y)=yxf(x,y)

    Это предположение достаточно для большинства технических и научных проблем.

  • Если вы дифференцируете многомерное выражение или функциональный F, не задавая переменную дифференцирования, то вложенный вызов diff и diff(F,n) может возвратить различные результаты. Это вызвано тем, что во вложенном вызове, каждый шаг дифференцирования определяет и использует свою собственную переменную дифференцирования. В вызовах как diff(F,n) переменная дифференцирования определяется однажды symvar(F,1) и используется для всех шагов дифференцирования.

  • Если вы дифференцируете выражение или функцию, содержащую abs или sign, гарантируете, что аргументы являются действительными значениями. Для сложных аргументов abs и sign, функция diff официально вычисляет производную, но этот результат не обычно допустим, потому что abs и sign не дифференцируемы по комплексным числам.

Представлено до R2006a