 
 
 
5.17.5  Derivative and partial derivative
diff or derive may have one or two arguments 
to compute a first order derivative (or first order partial
derivative) of an expression or of a list of expressions, 
or several arguments to compute 
the n-th partial derivative of an expression or list of expressions.
Derivative and first order partial derivative : diff derive deriver
diff (or derive) takes two arguments : an expression and a variable
(resp. a vector of variable names) (see several variable functions in
5.54). If only one argument is provided, the derivative
is taken with respect to x
diff (or derive) returns the derivative (resp. a vector of 
derivatives) of the expression with respect to the variable (resp. with respect 
to each variable) given as second argument.
Examples :
- 
Compute :
Input :
diff(x*y^2*z^3+x*y*z,z)
 Output :x*y^2*3*z^2+x*y
 
- Compute the 3 first order partial derivatives of x*y2*z3+x*y*z.
 Input :diff(x*y^2*z^3+x*y,[x,y,z])
 Output :[y^2*z^3+y*z, x*2*y*z^3+x*z, x*y^2*3*z^2+x*y]
 
Derivative and n-th order
partial derivative : diff derive deriver
derive (or diff) may take more than two arguments : an
expression and the names of the derivation variables (each variable
may be followed by $n to indicate the number n of derivations).
diff returns the partial derivative of the expression with respect to 
the variables given after the first argument.
The notation $ is useful if you want to derive k times with
respect to the same variable, instead of entering k times the
same variable name, one enters the variable name followed by $k,
for example x$3 instead of (x,x,x). 
Each variable may be followed by a $, for example 
diff(exp(x*y),x$3,y$2,z) is the same as 
diff(exp(x*y),x,x,x,y,y,z)
Examples
- 
Compute :
| | ∂2 (x y2 z3+x y z) |  |  |  | ∂ x∂ z | 
 |  
 Input :diff(x*y^2*z^3+x*y*z,x,z)
 Output :y^2*3*z^2+y
 
- Compute :
| | ∂3 (x y2 z3+x y z) |  |  |  | ∂ x∂2 z | 
 |  
 Input :diff(x*y^2*z^3+x*y*z,x,z,z)
 or :diff(x*y^2*z^3+x*y*z,x,z$2)
 Output :y^2*3*2*z
 
- Compute the third derivative of :
Input :
normal(diff((1)/(x^2+2),x,x,x))
 or :normal(diff((1)/(x^2+2),x$3))
 Output :(-24*x^3+48*x)/(x^8+8*x^6+24*x^4+32*x^2+16)
 
Remark
 
 
