@@ -161,11 +161,9 @@ where
161161 let mut transposed_matrix: Vec < Vec < ValueType > > = vec ! [ ] ;
162162
163163 for i in 0 ..matrix. len ( ) {
164- let mut row: Vec < ValueType > = vec ! [ ] ;
165- for j in i..matrix. len ( ) {
166- row. push ( matrix[ j] [ i] ) ;
167- }
168- transposed_matrix. push ( row) ;
164+ transposed_matrix. push (
165+ ( i..matrix. len ( ) ) . map ( |j| matrix[ j] [ i] ) . collect ( )
166+ ) ;
169167 }
170168 transposed_matrix
171169 }
@@ -201,6 +199,7 @@ where
201199 let mut product_row: Vec < ValueType > = vec ! [ ] ;
202200 let mut product: Vec < Vec < ValueType > > = vec ! [ ] ;
203201
202+ #[ allow( clippy:: needless_range_loop) ]
204203 for i in 0 ..diagonal. len ( ) {
205204 product_row. clear ( ) ;
206205 for j in 0 ..( i + 1 ) {
@@ -232,12 +231,12 @@ where
232231 let mut matrix_entry: ValueType ;
233232
234233 for i in 0 ..upper_tri_matrix. len ( ) {
235- for j in 0 .. lower_tri_matrix_transpose. len ( ) {
234+ for ( j , lower_tri_matrix_transpose_entry ) in lower_tri_matrix_transpose. iter ( ) . enumerate ( ) {
236235 matrix_entry = ValueType :: zero ( ) ;
237236 let lower_diff: usize = ( i as i64 - j as i64 ) . max ( 0 ) as usize ;
238237 let upper_diff: usize = ( j as i64 - i as i64 ) . max ( 0 ) as usize ;
239- for k in 0 ..( upper_tri_matrix[ i] . len ( ) . min ( lower_tri_matrix_transpose [ j ] . len ( ) ) ) {
240- matrix_entry = matrix_entry + upper_tri_matrix[ i] [ k + upper_diff] * lower_tri_matrix_transpose [ j ] [ k + lower_diff] ;
238+ for k in 0 ..( upper_tri_matrix[ i] . len ( ) . min ( lower_tri_matrix_transpose_entry . len ( ) ) ) {
239+ matrix_entry += upper_tri_matrix[ i] [ k + upper_diff] * lower_tri_matrix_transpose_entry [ k + lower_diff] ;
241240 }
242241 product[ i] . push ( matrix_entry) ;
243242 }
@@ -246,6 +245,7 @@ where
246245 }
247246
248247 // Compute the spline value at a given point.
248+ #[ allow( clippy:: too_many_arguments) ]
249249 fn spline (
250250 & self ,
251251 point : IndexType ,
@@ -348,10 +348,10 @@ where
348348 self . second_derivatives = vec ! [ ValueType :: zero( ) ; tridiagonal_inverse. len( ) ] ;
349349 let mut matrix_entry: ValueType ;
350350
351- for i in 0 .. tridiagonal_inverse. len ( ) {
351+ for ( i , tridiagonal_inverse_row ) in tridiagonal_inverse. iter ( ) . enumerate ( ) {
352352 matrix_entry = self . second_derivatives [ i] ;
353- for j in 0 ..tridiagonal_inverse [ i ] . len ( ) {
354- matrix_entry = matrix_entry + tridiagonal_inverse [ i ] [ j ] * rhs_vector[ j] ;
353+ for ( j , tridiagonal_inverse_entry ) in tridiagonal_inverse_row . iter ( ) . enumerate ( ) {
354+ matrix_entry += * tridiagonal_inverse_entry * rhs_vector[ j] ;
355355 }
356356 self . second_derivatives [ i] = matrix_entry;
357357 }
0 commit comments