You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Lance Finney <lm...@alum.wustl.edu> on 2012/03/11 02:15:14 UTC

[math] LaguerreSolver.ComplexSolver is private; functionality lost in 3.0

We used LaguerreSolver.solveAll() in version 2.1, but we never upgraded to
2.2. As such, we didn't notice that it was deprecated in that release.

Now that 3.0 is out, we want to upgrade, but that method has been
completely removed.

Interestingly, the logic is still there in the library in an inner class:
org.apache.commons.math3.analysis.solvers.LaguerreSolver.ComplexSolver.
Unfortunately for us, though, ComplexSolver is now private. So, for us as
users, we've lost access to a useful algorithm that is still in the library.

Please re-enable access to this useful algorithm that provides complex
roots of polynomial formulae. The simplest approach for our purposes would
be to make LaguerreSolver.ComplexSolver public, but perhaps another
approach would be considered better design.

Re: [math] LaguerreSolver.ComplexSolver is private; functionality lost in 3.0

Posted by Luc Maisonobe <Lu...@free.fr>.
Hi Gilles,

Le 11/03/2012 16:57, Gilles Sadowski a écrit :
> On Sat, Mar 10, 2012 at 07:15:14PM -0600, Lance Finney wrote:
>> We used LaguerreSolver.solveAll() in version 2.1, but we never upgraded to
>> 2.2. As such, we didn't notice that it was deprecated in that release.
>>
>> Now that 3.0 is out, we want to upgrade, but that method has been
>> completely removed.
>>
>> Interestingly, the logic is still there in the library in an inner class:
>> org.apache.commons.math3.analysis.solvers.LaguerreSolver.ComplexSolver.
>> Unfortunately for us, though, ComplexSolver is now private. So, for us as
>> users, we've lost access to a useful algorithm that is still in the library.
>>
>> Please re-enable access to this useful algorithm that provides complex
>> roots of polynomial formulae. The simplest approach for our purposes would
>> be to make LaguerreSolver.ComplexSolver public, but perhaps another
>> approach would be considered better design.
> 
> At first sight, I'd propose to create an "o.a.c.m.complex.solvers" package
> where a "ComplexLaguerreSolver" would reside.
> 
> However, I don't know what are the necessary and sufficient API methods that
> would define a "BaseUnivariateComplexSolver" interface that would be the
> counterpart of
>   BaseUnivariateSolver<FUNC extends UnivariateFunction>
> (in package "o.a.c.m.analysis.solvers").

I guess almost the same methods could be used, except either only one
solve method would be needed with a single start value, or min/max
interval definition should be replaced by a two-dimensional rectangle
definition.

Luc

> 
> 
> Best regards,
> Gilles
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Re: [math] LaguerreSolver.ComplexSolver is private; functionality lost in 3.0

Posted by Gilles Sadowski <gi...@harfang.homelinux.org>.
On Sat, Mar 10, 2012 at 07:15:14PM -0600, Lance Finney wrote:
> We used LaguerreSolver.solveAll() in version 2.1, but we never upgraded to
> 2.2. As such, we didn't notice that it was deprecated in that release.
> 
> Now that 3.0 is out, we want to upgrade, but that method has been
> completely removed.
> 
> Interestingly, the logic is still there in the library in an inner class:
> org.apache.commons.math3.analysis.solvers.LaguerreSolver.ComplexSolver.
> Unfortunately for us, though, ComplexSolver is now private. So, for us as
> users, we've lost access to a useful algorithm that is still in the library.
> 
> Please re-enable access to this useful algorithm that provides complex
> roots of polynomial formulae. The simplest approach for our purposes would
> be to make LaguerreSolver.ComplexSolver public, but perhaps another
> approach would be considered better design.

At first sight, I'd propose to create an "o.a.c.m.complex.solvers" package
where a "ComplexLaguerreSolver" would reside.

However, I don't know what are the necessary and sufficient API methods that
would define a "BaseUnivariateComplexSolver" interface that would be the
counterpart of
  BaseUnivariateSolver<FUNC extends UnivariateFunction>
(in package "o.a.c.m.analysis.solvers").


Best regards,
Gilles

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org