@@ -467,7 +467,7 @@ impl UKF {
467467 let mut cov_bar = DMatrix :: < f64 > :: zeros ( self . state_size , self . state_size ) ;
468468 // Update the covariance through a naive loop
469469 for ( i, sigma_point) in sigma_points. iter ( ) . enumerate ( ) {
470- //let sigma_point = &sigma_points[i];
470+ //let sigma_point = &sigma_points[i];
471471 let weight_cov = self . weights_cov [ i] ;
472472 let diff = sigma_point. to_vector ( false ) - & mu_bar;
473473 cov_bar += weight_cov * ( & diff * & diff. transpose ( ) ) ;
@@ -577,17 +577,16 @@ impl UKF {
577577 sigma_points
578578 }
579579 /// Convert a Vec<SigmaPoint> to a DMatrix<f64>
580- pub fn sigma_points_as_matrix (
581- & self ,
582- ) -> DMatrix < f64 > {
583- let p = ( self . state_size as f64 + self . lambda ) * self . covariance . clone ( ) ;
580+ pub fn sigma_points_as_matrix ( & self ) -> DMatrix < f64 > {
581+ let p = ( self . state_size as f64 + self . lambda ) * self . covariance . clone ( ) ;
584582 let sqrt_p = matrix_square_root ( & p) ;
585583 let mu = self . mean_state . clone ( ) ;
586584 let mut pts = DMatrix :: < f64 > :: zeros ( self . state_size , 2 * self . state_size + 1 ) ;
587585 pts. column_mut ( 0 ) . copy_from ( & mu) ;
588586 for i in 0 ..sqrt_p. ncols ( ) {
589- pts. column_mut ( i+1 ) . copy_from ( & ( & mu + sqrt_p. column ( i) ) ) ;
590- pts. column_mut ( i+1 +self . state_size ) . copy_from ( & ( & mu - sqrt_p. column ( i) ) ) ;
587+ pts. column_mut ( i + 1 ) . copy_from ( & ( & mu + sqrt_p. column ( i) ) ) ;
588+ pts. column_mut ( i + 1 + self . state_size )
589+ . copy_from ( & ( & mu - sqrt_p. column ( i) ) ) ;
591590 }
592591 pts
593592 }
@@ -921,7 +920,7 @@ mod tests {
921920 // test forward propagation
922921 // Test at rest
923922 let imu_data = IMUData {
924- accel : Vector3 :: new ( 0.0 , 0.0 , earth:: gravity ( & 0.0 , & 0.0 ) ) ,
923+ accel : Vector3 :: new ( 0.0 , 0.0 , earth:: gravity ( & 0.0 , & 0.0 ) ) ,
925924 gyro : Vector3 :: new ( 0.0 , 0.0 , 0.0 ) ,
926925 } ;
927926 let dt = 1.0 ;
@@ -1022,7 +1021,7 @@ mod tests {
10221021 assert_approx_eq ! ( wcs[ 0 ] , wc_0, 1e-6 ) ;
10231022 for i in 1 ..wms. len ( ) {
10241023 assert_approx_eq ! ( wms[ i] , w_i, 1e-6 ) ;
1025- assert_approx_eq ! ( wcs[ i] , w_i, 1e-6 ) ;
1024+ assert_approx_eq ! ( wcs[ i] , w_i, 1e-6 ) ;
10261025 }
10271026 }
10281027 #[ test]
@@ -1062,7 +1061,7 @@ mod tests {
10621061 ) ;
10631062 let sigma_points = ukf. get_sigma_points ( ) ;
10641063 assert_eq ! ( sigma_points. len( ) , ( 2 * ukf. state_size) + 1 ) ;
1065-
1064+
10661065 let mu = ukf. sigma_points_as_matrix ( ) * ukf. weights_mean ;
10671066 println ! ( "mu: {}" , mu) ;
10681067 assert_eq ! ( mu. nrows( ) , ukf. state_size) ;
@@ -1114,9 +1113,10 @@ mod tests {
11141113 ) ;
11151114 let dt = 1.0 ;
11161115 let imu_data = IMUData :: new_from_vec (
1117- vec ! [ 0.0 , 0.0 , earth:: gravity( & 0.0 , & 0.0 ) ] ,
1118- vec ! [ 0.0 , 0.0 , 0.0 ] ) ;
1119-
1116+ vec ! [ 0.0 , 0.0 , earth:: gravity( & 0.0 , & 0.0 ) ] ,
1117+ vec ! [ 0.0 , 0.0 , 0.0 ] ,
1118+ ) ;
1119+
11201120 ukf. predict ( & imu_data, dt) ;
11211121 assert ! (
11221122 ukf. mean_state. len( )
@@ -1171,8 +1171,9 @@ mod tests {
11711171 #[ test]
11721172 fn ukf_hover ( ) {
11731173 let imu_data = IMUData :: new_from_vec (
1174- vec ! [ 0.0 , 0.0 , earth:: gravity( & 0.0 , & 0.0 ) ] ,
1175- vec ! [ 0.0 , 0.0 , 0.0 ] ) ;
1174+ vec ! [ 0.0 , 0.0 , earth:: gravity( & 0.0 , & 0.0 ) ] ,
1175+ vec ! [ 0.0 , 0.0 , 0.0 ] ,
1176+ ) ;
11761177 let position = vec ! [ 0.0 , 0.0 , 0.0 ] ;
11771178 let velocity = [ 0.0 , 0.0 , 0.0 ] ;
11781179 let attitude = [ 0.0 , 0.0 , 0.0 ] ;
@@ -1209,8 +1210,8 @@ mod tests {
12091210 let measurement_noise = ukf. position_measurement_noise ( true ) ;
12101211 let measurement = DVector :: from_vec ( position. clone ( ) ) ;
12111212 //for _i in 0..60 {
1212- ukf. predict ( & imu_data, dt) ;
1213- //ukf.update(&measurement, &measurement_sigma_points, &measurement_noise);
1213+ ukf. predict ( & imu_data, dt) ;
1214+ //ukf.update(&measurement, &measurement_sigma_points, &measurement_noise);
12141215 //}
12151216 assert_approx_eq ! ( ukf. mean_state[ 0 ] , position[ 0 ] , 1e-6 ) ;
12161217 assert_approx_eq ! ( ukf. mean_state[ 1 ] , position[ 1 ] , 1e-6 ) ;
0 commit comments