I would like to use Julia mostly on applied numerical math problems. I
think what I need is an overview of what is available in Base and
contributed packages. Therefore I decided to write a short "vignette"
listing all relevant functions and packages, possibly with a short
description, usage, and one or two examples.
I have identified the items in the following list. I would welcome any
suggestions of functions I have overlooked in this area.
(Optimization at the moment is not covered by intention.)
### Julia Base 0.2.0
------------------- --------------------------------------------------
sin, cos, ... Trigonometric, hyperbolic functions, square root,
exponential and logarith functions, etc.
factor, gcd, primes Number-theoretic and combinatorial functions
factorial, binomial
...
gamma, airy, bessel Special functions
beta, eta, zeta
...
quadgk Gauss-Kronrod adaptive integration
### Calculus 0.1.3
------------------- --------------------------------------------------
derivative, ... finite-differences numerical derivatives
gradient, hessian second-order, gradients and hessians
[unfortunately:] finite_difference and complex_step not exported!
integrate adaptive Simpson, Monte-Carlo integration
differentiate symbolic differentiation
### DualNumbers 0.0.0 (??)
------------------- --------------------------------------------------
Dual, epsilon Automated Differentiation
[if the function accepts dual numbers]
### Cubature 1.0.1
------------------- --------------------------------------------------
h/pquadrature one- and multidimensional adaptive integration
h/pcubature (Gauss-Kronrod, Genz-Malik, Clenshaw-Curtis)
### Grid 0.2.8
------------------- --------------------------------------------------
InterpGrid function interpolation on (regular) grids
[a simpler interp1d() function for irregular
grids might still be helpful]
### BSplines 0.0.0 (??)
------------------- --------------------------------------------------
linear/quadratic/
cubicSplineBFE
### ApproxFun 0.0.0 (??)
------------------- --------------------------------------------------
Fun generates an approximating function
diff, cumsum differentiate or integrate the approximation
### Polynomial 0.0.0 (??)
------------------- --------------------------------------------------
Poly, poly construct polynomial from coefficients resp. roots
polyval evaluate the polynomial (Horner scheme)
polyint, polyder derivative, anti-derivative of a polynomial
roots determine the roots/zeros of the polynomial
(as eigenvalues of the companion matrix)
[missing is a polyfit() function]
### PowerSeries
------------------- --------------------------------------------------
series, restrict generates or truncates a (finite) power series
(used to determine the Taylor series)
### Roots 0.1.0
------------------- --------------------------------------------------
find_zero, fzero bracketing/derivative-free root finding methods
[Ridders' method is not implemented !]
newton, halley derivative-based root finding methods
multroot multiple roots of (inexact) polynomials
### NLsolve 0.1.1
------------------- --------------------------------------------------
nlsolve solves systems of nonlinear equations, based on
Newton and trust-region approaches
### ODE 0.0.0 (??)
------------------- --------------------------------------------------
ode23 Runge-Kutta (2, 3)-method with variable step size
ode4 Runge-Kutta of order 4 (with fixed step size?)
### Elliptic 0.2.0
------------------- --------------------------------------------------
K, F, E, Pi (in)complete elliptic integrals of 1. and 2. kind
### GSL 0.1.1
------------------- --------------------------------------------------
interface to the GNU Scientific Library(GSL)
e.g., hypergeom Gauss' hypergeometric function 2F1