Reference Guide > D Routines > DERIV Function
  

DERIV Function
Standard Library function that calculates the first derivative of a function in x and y.
Usage
result = DERIV([x,] y)
Input Parameters
x — (optional) The vector of independent x-coordinates of the data (i.e., the variable with respect to which the function should be differentiated). Must be a one-dimensional array (a vector).
y — The vector of dependent y-coordinates at which the derivative of function  f  is evaluated. Must be a one-dimensional array (a vector).
Returned Value
result — The first derivative of the vector y, with respect to the independent variable x. The result has the same size as y.
Keywords
None.
Discussion
 
note
DERIV does not support complex numbers.
The numerical differentiation algorithm for DERIV uses a three-point Lagrangian interpolation.
The vector of x-coordinates, x, is optional. The conditions set on this vector are given below:
*If you specify x, then both x and y must be one-dimensional and have the same number of elements. Selecting this option allows you to define the spacing along the x-axis, for the case where the independent data is not monotonically increasing.
*If you don’t specify x, then it is automatically provided with even spacing, using a unit of one, along the x-axis. (In other words,
x(i) = i, where i = 0, 1, 2, 3, ... n.)
Example 1
x = FINDGEN(10)
xx = x^2
d = DERIV(xx)
PRINT, d
; PV-WAVE prints:
;        1.00000       2.00000       4.00000
;       6.00000       8.00000
;       10.0000       12.0000       14.0000
;       16.0000       17.0000
PLOT, xx
OPLOT, d, Linestyle=2
Example 2
Create array with values 0, 10, 20 ... and multiply these by !Dtor (which equals 0.0174533) to convert the values from degrees to radians.
x = FINDGEN(100) * 10 * !Dtor
sin_x = SIN(x)
d_sin_x = DERIV(x, sin_x)
PLOT, sin_x
OPLOT, d_sin_x, Linestyle=2
See Also
  DERIVN 
For an example of the three-point Lagrangian interpolation used in DERIV, see the Introduction to Numerical Analysis by F. B. Hildebrand, Dover Publishing, New York, 1987.

Version 2017.0
Copyright © 2017, Rogue Wave Software, Inc. All Rights Reserved.