Re: [eigen] A not so simple product |

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

*To*: eigen@xxxxxxxxxxxxxxxxxxx*Subject*: Re: [eigen] A not so simple product*From*: "Benoit Jacob" <jacob.benoit.1@xxxxxxxxx>*Date*: Wed, 10 Dec 2008 19:39:36 +0100*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=tKUlrFcrAr9YcNg1jT3rBvpsDsCm6ARVDJPHU1EPdl4=; b=gfHl85JwsCZO3GH/00jyXAeFDURgvhaCNqT8uLDItGiYWxA5fldvTa1S2yRaNlGAu5 ZyN1aqNhEypMjQg5BB9IMFomwxxnJ/lF/yMXP+wTvk1RhpX3iJSd9PIV+hP6tZyjYLd8 V6FQaz7q1/r+RDOgDCikwX3An9bkUPHBGMmQ4=*Domainkey-signature*: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=n4KtfOLbUhcc7FkqtEsO1KrVw1dIVNb2jAdk4+3HbcKusAknkSA5XTltJv0SVUowML tfC4cbWpILjuJg9IszIlM2Q+f3gY7H9RvpLMHLrgvTYPd+nrm+izoEpCympoXRiq87s/ QLsHVwJXvw2vzSRMME/h4YZ79Wy5/wEKS1mtk=

Sure, we do that all the time! We have 33 large tests (each consisting of dozens of unit tests and applied to several different types/sizes). Cheers, Benoit 2008/12/10 Keir Mierle <mierle@xxxxxxxxx>: > One small note: Before these bugs are fixed, please put a test case in the > test directory that fails first! This way the bugs stay fixed, and outside > contributors can be more confident they don't break existing code. I do test > driven development at work, and I would never go back. Without extensive > regression tests for every bug, it's hard to maintain quality. > > Making a habit of writing a test case for every bug before even searching > for the guilty lines of code is a good way to do this. > > Cheers, > Keir > > On Wed, Dec 10, 2008 at 6:46 AM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> > wrote: >> >> I just discovered yet another bug in diagonal product. This part of >> Eigen is really very buggy!! >> >> To grade my exam I made this program: >> >> #define EIGEN_DEFAULT_IO_FORMAT EIGEN_DOCS_IO_FORMAT >> #include <Eigen/QR> >> >> using namespace Eigen; >> using namespace std; >> >> int main() >> { >> Matrix3d A; >> A << 0,1,1, >> 1,0,1, >> 1,1,0; >> SelfAdjointEigenSolver<Matrix3d> s(A); >> cout << "Eigenvalues:" << endl << s.eigenvalues() << endl; >> cout << "Eigenvectors:" << endl << s.eigenvectors() * >> (s.eigenvectors().row(2).cwise().inverse().asDiagonal()).eval() << >> endl; >> } >> >> This program produces the correct result. >> >> But if I remove the .eval() it produces the wrong result. >> >> Fixing diagonal product is really my top priority in eigen.... will >> take me a while though as a first have to grade 400 exams. >> >> Cheers, >> Benoit >> >> --- >> > > ---

**References**:**[eigen] A not so simple product***From:*Benjamin Schindler

**Re: [eigen] A not so simple product***From:*Gael Guennebaud

**Re: [eigen] A not so simple product***From:*Benoit Jacob

**Re: [eigen] A not so simple product***From:*Benoit Jacob

**Re: [eigen] A not so simple product***From:*Benjamin Schindler

**Re: [eigen] A not so simple product***From:*Benoit Jacob

**Re: [eigen] A not so simple product***From:*Benjamin Schindler

**Re: [eigen] A not so simple product***From:*Benoit Jacob

**Re: [eigen] A not so simple product***From:*Benoit Jacob

**Messages sorted by:**[ date | thread ]- Prev by Date:
**Re: [eigen] A not so simple product** - Next by Date:
**Re: [eigen] A not so simple product** - Previous by thread:
**Re: [eigen] A not so simple product** - Next by thread:
**Re: [eigen] A not so simple product**

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