Just to chime in: the biggest problem with the Calculus isn’t the absence of 
usable functionality, it’s that the published interface isn’t a very good one 
and the more reliable interface, including things like 
finite_difference_hessian, isn’t exported.

To fix this, we need someone to come in and do some serious design work, where 
they'll rethink interfaces and remove out-dated functionality. As Tim Holy 
mentioned, the combination of the unpublished finite diference methods and 
automatic differentation methods in DualNumbers should get you very far.

 — John

On Jan 21, 2014, at 7:20 AM, Tim Holy <[email protected]> wrote:

> On Tuesday, January 21, 2014 05:32:13 AM Hans W Borchers wrote:
>> When you say, Calculus is not developed much at the moment,
>> maybe it's too early for me to change.
> 
> Writing finite-differencing algorithms isn't that hard. That should not be a 
> make-or-break issue for your decision about whether to use Julia.
> 
> But don't underestimate the automatic differentiation facilities that have 
> recently been added to Julia (https://github.com/scidom/DualNumbers.jl). 
> Basically, AD computes numerical derivatives without the roundoff error, by 
> defining a new numerical type that behaves somewhat similarly to complex 
> numbers but extracts the first derivative exactly. The key point is that it 
> is 
> a _numerical_ approach, so it doesn't rely on anything symbolic. The one 
> place 
> you can't use AD is when your function relies on calling out to C (because C 
> doesn't know about Julia's Dual type). But any function defined in Julia, 
> including special functions like elliptic integrals, etc, should be fine.
> 
> For higher-order derivatives, you can do similar things with even more fancy 
> numerical types. Perhaps the new PowerSeries already does this? (I haven't 
> looked.)
> 
> --Tim
> 

Reply via email to