Exemplo n.º 1
0
 def test_pykalman_predict(self):
     n_meas = np.random.randint(5)
     n_state = n_meas + np.random.randint(5)
     mu_state_past = rand_vec(n_state)
     var_state_past = rand_mat(n_state)
     mu_state = rand_vec(n_state)
     wgt_state = rand_mat(n_state, pd=False)
     var_state = rand_mat(n_state)
     mu_state_pred, var_state_pred = (pks._filter_predict(
         wgt_state, var_state, mu_state, mu_state_past, var_state_past))
     ktv = KalmanTV(n_meas, n_state)
     mu_state_pred2 = np.empty(n_state)
     var_state_pred2 = np.empty((n_state, n_state), order='F')
     ktv.predict(mu_state_pred2, var_state_pred2, mu_state_past,
                 var_state_past, mu_state, wgt_state, var_state)
     self.assertAlmostEqual(rel_err(mu_state_pred, mu_state_pred2), 0.0)
     self.assertAlmostEqual(rel_err(var_state_pred, var_state_pred2), 0.0)
Exemplo n.º 2
0
 def test_predict(self):
     n_meas = np.random.randint(5)
     n_state = n_meas + np.random.randint(5)
     mu_state_past = rand_vec(n_state)
     var_state_past = rand_mat(n_state)
     mu_state = rand_vec(n_state)
     wgt_state = rand_mat(n_state, pd=False)
     var_state = rand_mat(n_state)
     # pure python
     KFS = KTV_py(n_meas, n_state)
     mu_state_pred, var_state_pred = KFS.predict(mu_state_past,
                                                 var_state_past, mu_state,
                                                 wgt_state, var_state)
     # cython
     ktv = KalmanTV(n_meas, n_state)
     mu_state_pred2 = np.empty(n_state)
     var_state_pred2 = np.empty((n_state, n_state), order='F')
     ktv.predict(mu_state_pred2, var_state_pred2, mu_state_past,
                 var_state_past, mu_state, wgt_state, var_state)
     self.assertAlmostEqual(rel_err(mu_state_pred, mu_state_pred2), 0.0)
     self.assertAlmostEqual(rel_err(var_state_pred, var_state_pred2), 0.0)