Re: [eigen] Lazy evaluation and adjoint(): Bug? |
[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]
Dear Gael,
Am 14.09.2016 um 18:06 schrieb Gael Guennebaud:
Hi,
is the result correct? If yes, then this means Eigen is following a custom conjugation path. If not, then could you try the following patch (this code path seems to assume that IsComplex <=> std::complex):
no, otherwise I would not have noticed it.
Applying your changes my little Test code of the previous email
results in
# Complex: 1
# ------- Mark 1: -------
#diff conjugate called 1 : (0,1)
# ------- Mark 2: -------
#diff conjugate called 2 : (0.5,0.5)
#diff conjugate called 3 : (0.5,0.5)
#diff conjugate called 4 : (0.5,0.5)
#diff conjugate called 5 : (0.5,0.5)
#diff conjugate called 6 : (0.5,0.5)
#diff conjugate called 7 : (0.5,0.5)
#diff conjugate called 8 : (0.5,0.5)
#diff conjugate called 9 : (0.5,0.5)
# ------- Mark 3: -------
#diff conjugate called 10 : (0.5,0.5)
#diff conjugate called 11 : (0.5,0.5)
#diff conjugate called 12 : (0.5,0.5)
#diff conjugate called 13 : (0.5,0.5)
# ------- Mark 4: -------
#diff conjugate called 14 : (0,1)
#diff conjugate called 15 : (0,1)
#diff conjugate called 16 : (0,1)
#diff conjugate called 17 : (0,1)
# ------- Mark 5: -------
#diff conjugate called 18 : (0,-1)
#diff conjugate called 19 : (0,-1)
#diff conjugate called 20 : (0,-1)
#diff conjugate called 21 : (0,-1)
# ------- Mark 6: -------
#diff conjugate called 22 : (0.5,0.5)
#diff conjugate called 23 : (0.5,0.5)
#diff conjugate called 24 : (0.5,0.5)
#diff conjugate called 25 : (0.5,0.5)
# ------- Mark 7: -------
(0.5,0.5) : (0.5,-0.5) : (0.5,-0.5)
(0,-1) : (0,1)
So this looks fine.
I've just rewritten my stuff using a hand crafted Transpose.
I'll re-rewrite it step by step to see whether it's fine now.
Thanks for your help,
Best regards,
Peter
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |