From 6721ae4dc34b8351797ebe948fa492f7ed42c976 Mon Sep 17 00:00:00 2001 From: Roger Labbe Date: Mon, 8 Dec 2014 22:48:00 -0800 Subject: [PATCH] Regenerated PDF. Needed to fix a latex bug in the ensemble chapter for that to work, and to add the changes to the chapter numbers in the merge script. --- 11_Ensemble_Kalman_Filter/Ensemble_Kalman_Filters.ipynb | 2 +- merge_book.py | 8 +++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/11_Ensemble_Kalman_Filter/Ensemble_Kalman_Filters.ipynb b/11_Ensemble_Kalman_Filter/Ensemble_Kalman_Filters.ipynb index 0a2ef74..d5eab29 100644 --- a/11_Ensemble_Kalman_Filter/Ensemble_Kalman_Filters.ipynb +++ b/11_Ensemble_Kalman_Filter/Ensemble_Kalman_Filters.ipynb @@ -325,7 +325,7 @@ "source": [ "## The Algorithm\n", "\n", - "As I already stated, when the filter is initialized a large number of sigma points are drawn from the initial state ($\\mathbf{x}) and covariance ($\\mathbf{P}$. From there the algorithm proceeds very similarly to the UKF. During the prediction step the sigma points are passed through the state transition function, and then perturbed by adding a bit of noise to account for the process noise. During the update step the sigma points are translated into measurement space by passing them through the measurement function, they are perturbed by a small amount to account for the measurement noise. The Kalman gain is computed from the \n", + "As I already stated, when the filter is initialized a large number of sigma points are drawn from the initial state ($\\mathbf{x}$) and covariance ($\\mathbf{P}$). From there the algorithm proceeds very similarly to the UKF. During the prediction step the sigma points are passed through the state transition function, and then perturbed by adding a bit of noise to account for the process noise. During the update step the sigma points are translated into measurement space by passing them through the measurement function, they are perturbed by a small amount to account for the measurement noise. The Kalman gain is computed from the \n", "\n", "We already mentioned the main difference between the UKF and EnKF - the UKF choses the sigma points deterministically. There is another difference, implied by the algorithm above. With the UKF we generate new sigma points during each predict step, and after passing the points through the nonlinear function we reconstitute them into a mean and covariance by using the *unscented transform*. The EnKF just keeps propagating the originally created sigma points; we only need to compute a mean and covariance as outputs for the filter! \n", "\n", diff --git a/merge_book.py b/merge_book.py index 45de288..a9b7460 100644 --- a/merge_book.py +++ b/merge_book.py @@ -53,11 +53,9 @@ if __name__ == '__main__': '08_Designing_Kalman_Filters/Designing_Kalman_Filters.ipynb', '09_Extended_Kalman_Filters/Extended_Kalman_Filters.ipynb', '10_Unscented_Kalman_Filters/Unscented_Kalman_Filter.ipynb', - '11_Designing_Nonlinear_Kalman_Filters/Designing_Nonlinear_Kalman_Filters.ipynb', - '12_HInfinity_Filters/HInfinity_Filters.ipynb', + '11_Ensemble_Kalman_Filter/Ensemble_Kalman_Filters.ipynb', + '12_Designing_Nonlinear_Kalman_Filters/Designing_Nonlinear_Kalman_Filters.ipynb', + '13_HInfinity_Filters/HInfinity_Filters.ipynb', '14_Smoothing/Smoothing.ipynb', 'Appendix_A_Installation/Appendix_Installation.ipynb', 'Appendix_B_Symbols_and_Notations/Appendix_Symbols_and_Notations.ipynb']) - - -# merge_notebooks(['Preface.ipynb', g-h_filter.ipynb discrete_bayes.ipynb Gaussians.ipynb Kalman_Filters.ipynb Multivariate_Kalman_Filters.ipynb Kalman_Filter_Math.ipynb Designing_Kalman_Filters.ipynb Extended_Kalman_Filters.ipynb Unscented_Kalman_Filter.ipynb'])