Re: [Mplapack-devel] possibly a bug in Cheev
Status: Pre-Alpha
Brought to you by:
nakatamaho
From: Maho N. <ma...@ri...> - 2012-08-09 07:05:20
|
Hi Sorry for being late. > I tried Cheev of MPACK with GMP but could not get correct results > for some simple matrices. For example, it does not diagonalize the > 3 x 3 matrix > > 1 0 1 > 0 0 0 > 1 0 1 > > and gives me "#Rlaev2 Checkpoint 13 Not checked". It works fine > for diag(1,0,0) and a matrix filled with 1's among others. I have just reproduced your result! Thanks Nakata Maho From: Akira SaiToh <aki...@ni...> Subject: [Mplapack-devel] possibly a bug in Cheev Date: Thu, 26 Jul 2012 19:05:41 +0900 > Dear Dr. Maho NAKATA, > > I am a postdoc working on quantum information and the matrices > I have to handle are quite often Hermitian matrices with some > eigenvalues degenerate or close to each other. I am trying several > libraries as well as writing my own library for matrix calculations > required in my research. > > I would like to report some issue as I think this is possibly a > bug of MPACK. Or, it might be a problem in my code or the environment. > > I tried Cheev of MPACK with GMP but could not get correct results > for some simple matrices. For example, it does not diagonalize the > 3 x 3 matrix > > 1 0 1 > 0 0 0 > 1 0 1 > > and gives me "#Rlaev2 Checkpoint 13 Not checked". It works fine > for diag(1,0,0) and a matrix filled with 1's among others. > > I am using mpack-0.7.0 on Fedora 15 where GMP 4.3.2 exists. > > Thanks for your attentions. > Regards, > Akira SAITOH, NII, Japan > > =========================================== > [saitoh@localhost test_cheev]$ g++ test.cpp -L/usr/local/lib > -lmlapack_gmp -lmblas_gmp -lmblas_gmp_ref -lmlapack_gmp_ref -lgmp -lmpfr > -lgmpxx -lgomp -g > /usr/bin/ld: warning: libgmp.so.3, needed by > /usr/lib/gcc/x86_64-redhat-linux/4.6.3/../../../../lib64/libmpfr.so, may > conflict with libgmp.so.10 > [saitoh@localhost test_cheev]$ LD_LIBRARY_PATH=/usr/local/lib ./a.out 1 > 0 1 0 0 0 1 0 1 > A = > 1 0 1 > 0 0 0 > 1 0 1 > #Rlaev2 Checkpoint 13 Not checked > [saitoh@localhost test_cheev]$ LD_LIBRARY_PATH=/usr/local/lib ./a.out 1 > 0 0 0 0 0 0 0 0 > A = > 1 0 0 > 0 0 0 > 0 0 0 > Eigenvalues: > 0 0 1 > Unitary matrix: > 0+i*0 0+i*0 1+i*0 > 1+i*0 0+i*0 0+i*0 > 0+i*0 1+i*0 0+i*0 > =========================================== > > test.cpp: > > =========================================== > #include <gmpxx.h> > #include <mpack/mpack_config.h> > #include <mpack/mpc_class.h> > #include <mpack/mlapack_gmp.h> > #include <cstdlib> > #include <iostream> > int main (int argc, char* argv[]) > { > mpf_set_default_prec(512); > mpackint n = 3; > mpc_class *A = new mpc_class [n * n]; > mpackint lda = n; > mpf_class *w = new mpf_class [n]; > mpc_class *work = new mpc_class [2 * n - 1]; > mpackint lwork = 2 * n - 1; > mpf_class *rwork = new mpf_class [3 * n - 2]; > mpackint info; > > for (int i = 1; i < argc && i < n * n + 1; i++) > A[i-1] = ::atof(argv[i]); > > std::cout << "A = " << std::endl; > for (int i = 0; i < n; i ++) > { > for (int j = 0; j < n; j++) > std::cout << A[i + n * j].real().get_d() << " "; > std::cout << std::endl; > } > > Cheev ("V", "U", n, A, lda, w, work, lwork, rwork, &info); > > std::cout << "Eigenvalues: " << std::endl; > for (int i = 0; i < n; i++) > std::cout << w[i].get_d() << " "; > std::cout << std::endl; > > std::cout << "Unitary matrix:" << std::endl; > for (int i = 0; i < n; i ++) > { > for (int j = 0; j < n; j++) > std::cout << A[i + n * j].real().get_d() << "+i*" > << A[i + n * j].imag().get_d() << " "; > std::cout << std::endl; > } > > delete [] A, w, work, rwork; > return 0; > } > =========================================== > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Mplapack-devel mailing list > Mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mplapack-devel > |