## Documentation Center |

To compute derivatives of functions, use the differential operator `D`. This operator
differentiates both standard mathematical functions and your own functions
created in MuPAD^{®}. For example, find the first derivatives of
the following standard mathematical functions implemented in MuPAD:

D(sin), D(exp), D(cosh), D(sqrt), D(heaviside)

Create your own function with one variable and compute a derivative of this function:

f := x -> x^3: D(f)

f := x -> sin(x)/x^2: f'; f'(x)

Computing the first derivatives of a function lets you find
its local extrema (minima and maxima). For example, create this function
and plot it on the interval `-10 < x < 10`:

F := x -> x^3*sin(x); plot(F, x = -10..10)

Find the local extrema of `F` on the interval `-10
< x < 10`. If the point is a local extremum (either
minimum or maximum), the first derivative of the function at that
point equals 0. Therefore, to find the local extrema of `F`,
solve the equation `F'(x) = 0`. Use the `AllRealRoots` option
to return more than one solution.

extrema := numeric::solve(F'(x) = 0, x = -10..10, AllRealRoots)

Now, compute the corresponding values of `F`.
For example, compute `F` for the third element, `-2.455643863`,
in the solution set:

F(extrema[3])

To compute the values of `F` for all local
minima and maxima, use the following command. Here, `$` is
used to evaluate `F` for every element of the `extrema` set.

points := {[x, F(x)] $ x in extrema}

Plot function `F` with extrema points:

plot(F, points, x = -10..10)

To compute a derivative of a multivariable function, specify
the differentiation variable. The operator `D` does not accept the
variable names. Instead of providing a variable name, provide its
index. For example, integrate the following function with respect
to its first variable `x`. Then integrate the function
with respect to its second variable `y`:

f := (x, y) -> x^2 + y^3: D([1], f); D([2], f)

The list of indices accepted by the operator `D` refers to the order
in which you provided the variables when creating a function:

f := (x, y) -> x^2 + y^3: D([1], f); f := (y, x) -> x^2 + y^3: D([1], f)

To find second- and higher-order partial derivatives of a function,
use the same index two or more times. For example, compute the second-order
partial derivatives with respect to `x` and with
respect to `y`:

f := (x, y) -> x^3*sin(y): D([1, 1], f); D([2, 2], f)

To compute second- and higher-order derivatives with respect to several variables (mixed derivatives), provide a list of indices of differentiation variables:

f := (x, y) -> x^3*sin(y): D([1, 2], f);

Was this topic helpful?