Re: [Numbers] Arrays of "Complex" objects and RAM

2019-11-06 Thread Alex Herbert
> On 6 Nov 2019, at 18:08, Gilles Sadowski wrote: > > Hi. > [...] >>> >>> public class ComplexArray { >>> private final MultidimensionalCounter counter; >>> // ... >>> >>> public ComplexArray(int... dimensions) { >>> counter = new

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Alex Herbert
> On 7 Nov 2019, at 00:28, Gilles Sadowski wrote: > > 2019-11-06 23:38 UTC+01:00, Alex Herbert >: >> >> >>> On 6 Nov 2019, at 18:17, Gilles Sadowski wrote: >>> [...] Any objections to updating multiply/divide/isNaN to match the

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Alex Herbert
> On 7 Nov 2019, at 00:34, Gilles Sadowski wrote: > > 2019-11-07 1:03 UTC+01:00, Alex Herbert >: >> >> >>> On 6 Nov 2019, at 23:17, Eric Barnhill >> > wrote: >>> >>> +1 on all suggestions. Thanks, Alex. >> >> I’ve borrowed

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Gilles Sadowski
2019-11-07 1:03 UTC+01:00, Alex Herbert : > > >> On 6 Nov 2019, at 23:17, Eric Barnhill wrote: >> >> +1 on all suggestions. Thanks, Alex. > > I’ve borrowed the checkstyle, PMD and spot bugs config from commons-rng. I > updated the parent to 49 and updated the travis build script to run the >

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Gilles Sadowski
2019-11-06 23:38 UTC+01:00, Alex Herbert : > > >> On 6 Nov 2019, at 18:17, Gilles Sadowski wrote: >> >>> [...] >>> >>> >>> Any objections to updating multiply/divide/isNaN to match the standard? >> >> Let me think... ;-) > > OK, I’ll fix it and double check the other tests against the c

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Alex Herbert
> On 6 Nov 2019, at 23:17, Eric Barnhill wrote: > > +1 on all suggestions. Thanks, Alex. I’ve borrowed the checkstyle, PMD and spot bugs config from commons-rng. I updated the parent to 49 and updated the travis build script to run the check goal instead of creating reports. This requires

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Eric Barnhill
+1 on all suggestions. Thanks, Alex. On Wed, Nov 6, 2019 at 2:38 PM Alex Herbert wrote: > > > > On 6 Nov 2019, at 18:17, Gilles Sadowski wrote: > > > >> [...] > >> > >> > >> Any objections to updating multiply/divide/isNaN to match the standard? > > > > Let me think... ;-) > > OK, I’ll fix it

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Alex Herbert
> On 6 Nov 2019, at 18:17, Gilles Sadowski wrote: > >> [...] >> >> >> Any objections to updating multiply/divide/isNaN to match the standard? > > Let me think... ;-) OK, I’ll fix it and double check the other tests against the c reference. > >> >> I'll add unit tests to hit the edge

Re: [numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Gilles Sadowski
> [...] > > > Any objections to updating multiply/divide/isNaN to match the standard? Let me think... ;-) > > I'll add unit tests to hit the edge cases that should fail with the > current implementation. Thanks, Gilles > > > [1] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf > > [2]

Re: [Numbers] Arrays of "Complex" objects and RAM

2019-11-06 Thread Gilles Sadowski
Hi. >>> [...] > > > > public class ComplexArray { > > private final MultidimensionalCounter counter; > > // ... > > > > public ComplexArray(int... dimensions) { > > counter = new MultidimensionalCounter(dimensions); > > data = new data[counter.getSize()]; > >

[numbers] Bug in complex multiply + divide + isNaN

2019-11-06 Thread Alex Herbert
The method Complex::multiply(Complex) has the following check to recover infinities:     double x = ac - bd;     double y = ad + bc;     if (Double.isNaN(a) && Double.isNaN(b)) { The divide method checks x and y:     double x = Math.scalb( (a*c + b*d) / denom, -ilogbw);    

Re: [Numbers] Arrays of "Complex" objects and RAM

2019-11-06 Thread Alex Herbert
On 06/11/2019 12:41, Gilles Sadowski wrote: Hello. Le mar. 5 nov. 2019 à 18:38, Alex Herbert a écrit : On 05/11/2019 00:09, Eric Barnhill wrote: That's interesting. The JTransforms library performs Fourier transforms that can take complex input, output, or both. They do this with

Re: [IO] Travis build fails due to missing package documentation

2019-11-06 Thread Gary Gregory
Thanks for your pointer to your GH page, I'll take a look over the weekend... Gary On Tue, Nov 5, 2019 at 6:18 PM Rob Spoor wrote: > See https://travis-ci.org/apache/commons-io/jobs/607784753. The reason > is commit 14d6f4c6dbb429ebb915b530ea61fe911d36b20b, which added > interface IOConsumer

Re: [IO] Travis build fails due to missing package documentation

2019-11-06 Thread Gary Gregory
Hi Rob, Thank you for the note. I added minimal package level Javadoc. Gary On Tue, Nov 5, 2019 at 6:18 PM Rob Spoor wrote: > See https://travis-ci.org/apache/commons-io/jobs/607784753. The reason > is commit 14d6f4c6dbb429ebb915b530ea61fe911d36b20b, which added > interface IOConsumer in

Re: [Numbers] Arrays of "Complex" objects and RAM

2019-11-06 Thread Gilles Sadowski
Hello. Le mar. 5 nov. 2019 à 18:38, Alex Herbert a écrit : > > On 05/11/2019 00:09, Eric Barnhill wrote: > > That's interesting. The JTransforms library performs Fourier transforms > > that can take complex input, output, or both. They do this with interleaved > > double[] arrays, which I