LAPACK Archives

### [Lapack] [CLAPACK] Questions regarding gesvd

 ```Hi, I am new to using CLapack. I am using CLapack 3.1.1 with boost-numeric-bindings-20081116 (under Visual Studio 2008). I have 2 questions regarding the use of the gesvd function. 1) Values of the U and the Vt matrix? Finding the SVD of a 3x3 matrix, while trying to check the validity of the solution, I multiply the outputs (I check if A == U S Vt). Since the answer was not the original matrix, I took a look to see the values of the U and the Vt matrix seem swapped (compared to a MATLAB execution). In fact Vt S U == A. The code fragment is: double min_delta=0.00001; matrix U(3,3); matrix Vt(3,3); matrix A(3,3); matrix S_mat(3,3); boost::numeric::ublas::vector S(3); for (unsigned i = 0; i < A.size1 (); ++ i) { for (unsigned j = 0; j < A.size2 (); ++ j) { A(i, j) = (3 * i + j); } } gesvd('A','A',A,S,U,Vt); //Init S_mat for (unsigned i = 0; i < S_mat.size1 (); ++ i) { for (unsigned j = 0; j < S_mat.size2 (); ++ j) { S_mat(i, j) = 0.0; } if(i res_t=prec_prod(U,S_mat); matrix res=prec_prod(res_t,Vt); //Comparing values for (unsigned i = 0; i < res.size1 (); ++ i) { for (unsigned j = 0; j < res.size2 (); ++ j) { CPPUNIT_ASSERT(fabs(res(i,j) - (3 * i + j))Assertion failed: info == 0, file d:\spaceapps\projects\wear_ga\yashodev\wear\libraries\boost-numeric-bindings\boost\numeric\bindings\lapack\gesvd.hpp, line 213 1>** On entry to DGESVD, parameter number 6 had an illegal value The code is: matrix U(5,5); matrix Vt(3,3); matrix A(5,3); boost::numeric::ublas::vector S(3); for (unsigned i = 0; i < A.size1 (); ++ i) { for (unsigned j = 0; j < A.size2 (); ++ j) { A(i, j) = (3 * i + j); } } gesvd('A','A',A,S,U,Vt); Any help or suggestions on tackling these issues would be greatly appreciated! Thank you, Yashodhan -- Yashodhan Nevatia Systems Engineer Space Applications Services Leuvensesteenweg 325 B-1932 Zaventem Belgium Tel: +32 (0)2-721.54.84 Fax: +32 (0)2-721.54.44 URL: www.spaceapplications.com ```
 Current Thread [Lapack] [CLAPACK] Questions regarding gesvd, Yashodhan Nevatia <=

For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or