cderivative

Derivative of a univariate, vector-valued function using the central difference approximation.

Syntax

df = cderivative(f,x0)
df = cderivative(f,x0,h)


Description

df = cderivative(f,x0) numerically evaluates the derivative of with respect to at using the central difference approximation with a default relative step size of , where is the machine zero.

df = cderivative(f,x0,h) numerically evaluates the derivative of with respect to at using the central difference approximation with a user-specified relative step size .

Input/Output Parameters

 Variable Symbol Description Format Input f $\inline&space;\mathbf{f}(x)$ univariate, vector-valued function ($\inline&space;\mathbf{f}:\mathbb{R}\rightarrow\mathbb{R}^{m}$) 1×1function_handle x0 $\inline&space;x_{0}$ evaluation point 1×1double h $\inline&space;h$ (OPTIONAL) relative step size 1×1double Output df $\inline&space;\dfrac{d\mathbf{f}}{dx}\bigg\rvert_{x=x_{0}}$ derivative of $\inline&space;\mathbf{f}$ with respect to $\inline&space;x$, evaluated at $\inline&space;x=x_{0}$ m×1double

Note

• This function requires 2 evaluations of .
• If the function is scalar-valued, then .

Example #1: Derivative of a scalar-valued function.

Approximate the derivative of at using the cderivative function, and compare the result to the true result of .

Approximating the derivative,

f = @(x) x^3;
df = cderivative(f,2)

df =

12.0000



Calculating the error,

error = df-12

error =

3.3153e-10



Example #2: Derivative of a vector-valued function.

Approximate the derivative of

at using the cderivative function, and compare the result to the true result of

Approximating the derivative,

f = @(t) [sin(t);cos(t)];
df = cderivative(f,1)

df =

0.5403
-0.8415



Calculating the error,

error = df-[cos(1);-sin(1)]

error =

1.0e-10 *

-0.1420
0.1959