[SciPy-dev] genetic algorithm, number theory, filterdesign,zerofinding

Travis Oliphant oliphant at ee.byu.edu
Thu Apr 11 12:06:44 CDT 2002


> I've taken a look at the 1-D solvers in CVS. A few comments
>
> 1.	fixed_point computes incorrect roots

On what problem?  I've used it successfully.   Thanks for the pointer.
Please give more info.

> 2.	they make assumptions on the arguments that are not enforced

True.  Can you suggest checks.

> 3.	none take into account the varying granularity of floating point

What do you mean by this?

> 4.	newton should probably check for blowup, as this is not uncommon

A blowup of what?  The second derivative becoming very large?

> 5.	all the python routines suffer from large overheads. We should go for C.

I'm not sure I agree with this.  I'd gladly accept C code that works the
same.  Indeed, eventually it would be nice if everything were in C.
However, we may get this for free (via psyco or Pat Miller's work).

But, if the function call is most of the overhead, then this will not be
helped much by moving the iteration into C.

>
> For newton, I don't think the option of using computed derivatives is worth including. There is a slightly higher order of convergence (2 vs 1.4), but this is likely to be swamped in function evaluation time, especially if the function is python and the routine is C.

I disagree here.  The secant method is useful when derivatives cannot be
computed. Now, if you want to replace the secant method with something
better like your brent routines, then that is a different story.


Thanks for your interest and help,

-Travis





More information about the Scipy-dev mailing list