diff liboctave/floatSVD.h @ 10601:3ce0c530a9c9

implement svd_driver
author Jaroslav Hajek <highegg@gmail.com>
date Mon, 03 May 2010 13:21:35 +0200
parents cbc402e64d83
children 367bfee35ba0
line wrap: on
line diff
--- a/liboctave/floatSVD.h
+++ b/liboctave/floatSVD.h
@@ -38,11 +38,14 @@
 
   FloatSVD (void) : sigma (), left_sm (), right_sm () { }
 
-  FloatSVD (const FloatMatrix& a, SVD::type svd_type = SVD::std) { init (a, svd_type); }
+  FloatSVD (const FloatMatrix& a, 
+            SVD::type svd_type = SVD::std, SVD::driver svd_driver = SVD::GESVD) 
+    { init (a, svd_type, svd_driver); }
 
-  FloatSVD (const FloatMatrix& a, octave_idx_type& info, SVD::type svd_type = SVD::std)
+  FloatSVD (const FloatMatrix& a, octave_idx_type& info, 
+            SVD::type svd_type = SVD::std, SVD::driver svd_driver = SVD::GESVD) 
     {
-      info = init (a, svd_type);
+      info = init (a, svd_type, svd_driver);
     }
 
   FloatSVD (const FloatSVD& a)
@@ -80,7 +83,9 @@
   FloatMatrix left_sm;
   FloatMatrix right_sm;
 
-  octave_idx_type init (const FloatMatrix& a, SVD::type svd_type = SVD::std);
+  octave_idx_type init (const FloatMatrix& a, 
+                        SVD::type svd_type = SVD::std, 
+                        SVD::driver svd_driver = SVD::GESVD);
 };
 
 #endif