Testing latest pari + WASM + node.js... and it works?! Wow.
License: GPL3
ubuntu2004
Function: derivn Section: polynomials C-Name: derivn Prototype: GLDn Help: derivn(x,n,{v}): n-th derivative of x with respect to v, or to the main variable of x if v is omitted. Doc: $n$-th derivative of $x$ with respect to the main variable if $v$ is omitted, and with respect to $v$ otherwise; the integer $n$ must be nonnegative. The derivative of a scalar type is zero, and the derivative of a vector or matrix is done componentwise. One can use $x'$, $x''$, etc., as a shortcut if the derivative is with respect to the main variable of $x$. By definition, the main variable of a \typ{POLMOD} is the main variable among the coefficients from its two polynomial components (representative and modulus); in other words, assuming a polmod represents an element of $R[X]/(T(X))$, the variable $X$ is a mute variable and the derivative is taken with respect to the main variable used in the base ring $R$. \bprog ? f = (x/y)^5; ? derivn(f, 2) %2 = 20/y^5*x^3 ? f'' %3 = 20/y^5*x^3 ? derivn(f, 2, 'x) \\ same since 'x is the main variable %4 = 20/y^5*x^3 ? derivn(f, 2, 'y) %5 = 30/y^7*x^5 @eprog This function also operates on closures, in which case the variable must be omitted. It returns a closure performing a numerical differentiation as per \kbd{derivnum}: \bprog ? f(x) = x^10; ? g = derivn(f, 5) ? g(1) %3 = 30240.000000000000000000000000000000000 ? derivn(zeta, 2)(0) %4 = -2.0063564559085848512101000267299604382 ? zeta''(0) %5 = -2.0063564559085848512101000267299604382 @eprog