## Library Engine: Function manipultion

 polynEval(p, x)Evaluates a polynomial. polynFunc(p)Converts a vector representing a polynomial into a function. polynForRoots(x)Returns the normalised polynomial with prescribed roots. polynWithRootsVal(r, x)Calculates the value of the normalised polynomial with prescribed roots at x. polynLagrange(xy)Constructs the Lagrange interpolating polynomial. polynInterp(xy, x)Neville's algorithm to interpolate without calculating the coefficients. polynRoots(q)Calculates roots of a polynomial. polynAdd(s1, s2) Adds two polynomials. polynMult(s1, s2)Multiplies two splines. polynDiff(p, n)Calucates the derivative of a polynomial. polynInteg(p, n)Calculates the primitive function of a polynomial. splineEval(s, x)Evaluates a spline. splineFunc(s)Converts a table representing a polynomial into a function. splineNeg(s)Negates a spline. splineAdd(s1, s2) Adds two splines. splineMult(s1, s2)Multiplies two splines. splineDiff(s, n)Differentiates (from right) a spline. splineInteg(s)Calculates the nth primitive function of a spline. splineInterp(xy, cond)Constructs an interpolating spline. solveBrent(f, y0, a, b, max_steps, tol_x, tol_y)Brent's algorithm to solve equations. solveToms(f, y0, a, b, max_steps, tol_x, tol_y)TOMS748 algorithm to solve equations. optimBrent(f, a, b, max_steps, tol_x, tol_y)Brent's algorithm to find local minimum of a function f. integSimpson(f, a, b, rel_eps, max_steps)Calculates the integral of a function using the Simpson's method. integRomberg(f, a, b, rel_eps, max_steps, nr)Calculates the integral of a function using the Romberg's extrapolating method. odeRK(func, t0, t1, dt, x0, butcher, adapt_set, unit_hint)Calculates the solution of an ODE $\dot x(t) = f(t,x)$ for a given Butcher parametrisation. odeRungeKutta3()Third-order RK Butcher settings. odeRungeKutta4()Fourth-order RK Butcher settings. odeDormandPrince54()Butcher tables of the embedded 5(4) Dormand-Prince setting of Runge-Kutta. odeDormandPrince853()Butcher tables of the embedded 8(5,3) Dormand-Prince setting of Runge-Kutta. odeRKEvalInterp(rk_res, t)Evaluates an interpolated Runge-Kutta result 'rk_res' at 't'.