Re: [eigen] Re: Error when using the += operator on complex vectors

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


On Sat, Jul 24, 2010 at 8:55 AM, Carlos Becker <carlosbecker@xxxxxxxxx> wrote:
Ok I think I just figured it out,
again the array syntax, and now with the * operator

The problem is that this works:

fftData[0] += fftData[2].array();

and to make the last one work I had to add:

fftData[0].array() += fftData[2].array() * fftData[1].array();

shouldn't Matrix = Array be completely prohibited?

Regardless of what the code currently does, it seems as though matrix += array should be unambiguous, and work fine. Is there a technical reason this can't be supported? Furthermore, would it be possible to make arrays "viral" in that A OP B with A an array or B an array gives an array so the next lines become equivalent:

A += B.array() * C
A += B * C.array()
A.array() += B.array() * C
A.array() += B * C.array()
A.array() += B.array() * C.array()

I imagine there is some pitfall preventing this, but it would reduce .array() clutter.

Keir
 


On Sat, Jul 24, 2010 at 4:54 PM, Carlos Becker <carlosbecker@xxxxxxxxx> wrote:
Hello, I am trying to do this:

fftData[0] += fftData[2].array() * fftData[1].array();

and I get the error:
THE_EVAL_EVALTO_FUNCTION_SHOULD_NEVER_BE_CALLED_FOR_DENSE_OBJECTS

fftData is an array of VectorXcf, is this a bug or is it warning me about something I should not do?

Thanks




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/