Exemple #1
0
def kalman():
    filter = KalmanFilter(dim_x=2, dim_z=1)
    x = array([0., 1.])
    P = eye(2) * 100.
    enf = EnsembleKalmanFilter(x=x, P=P, dim_z=1, dt=1., N=20, hx=hx, fx=fx)

    measurements = []
    results = []
    ps = []
    kf_results = []
    for i in range(len(data)):
        z = data.iloc[i].as_array()
        enf.predict()
        enf.update(asarray([z]))
        filter.predict()
        filter.update(asarray([[z]]))

        results.append (enf.x[0])
        kf_results.append (kf.x[0,0])
        measurements.append(z)
        ps.append(3*(enf.P[0,0]**.5))
    results = asarray(results)
    ps = asarray(ps)