@@ -55,7 +55,7 @@ mod simple_comparison_tests {
5555
5656 coo
5757 }
58- #[ test]
58+ // #[test]
5959 fn simple_matrix_comparison ( ) {
6060 // Create a small, predefined test matrix
6161 let mut test_matrix = CooMatrix :: < f64 > :: new ( 3 , 3 ) ;
@@ -157,7 +157,7 @@ mod simple_comparison_tests {
157157 let test_matrix = create_sparse_matrix ( 100 , 100 , 0.0098 ) ; // 0.98% non-zeros
158158
159159 // Should no longer fail with convergence error
160- let result = svd ( & test_matrix) ; // Using your modified imtqlb
160+ let result = svd_dim_seed ( & test_matrix, 50 , 42 ) ; // Using your modified imtqlb
161161 assert ! ( result. is_ok( ) , "{}" , format!( "SVD failed on 99.02% sparse matrix, {:?}" , result. err( ) . unwrap( ) ) ) ;
162162 }
163163
@@ -167,11 +167,21 @@ mod simple_comparison_tests {
167167 let test_matrix = create_sparse_matrix ( 10000 , 1000 , 0.0098 ) ; // 0.98% non-zeros
168168
169169 // Should no longer fail with convergence error
170- let result = svd ( & test_matrix) ; // Using your modified imtqlb
170+ let result = svd_dim_seed ( & test_matrix, 50 , 42 ) ; // Using your modified imtqlb
171171 assert ! ( result. is_ok( ) , "{}" , format!( "SVD failed on 99.02% sparse matrix, {:?}" , result. err( ) . unwrap( ) ) ) ;
172172 }
173173
174174 #[ test]
175+ fn test_real_sparse_matrix_very_very_big ( ) {
176+ // Create a matrix with similar sparsity to your real one (99.02%)
177+ let test_matrix = create_sparse_matrix ( 100000 , 2500 , 0.0098 ) ; // 0.98% non-zeros
178+
179+ // Should no longer fail with convergence error
180+ let result = svd ( & test_matrix) ; // Using your modified imtqlb
181+ assert ! ( result. is_ok( ) , "{}" , format!( "SVD failed on 99.02% sparse matrix, {:?}" , result. err( ) . unwrap( ) ) ) ;
182+ }
183+
184+ //#[test]
175185 fn f32_precision_test ( ) {
176186 let seed = 12345 ;
177187 let ( nrows, ncols) = ( 40 , 20 ) ;
0 commit comments