|
Fuzzy Logic Tools v1.0
|
00001 /* Copyright (C) 2004-2011 00002 ANTONIO JAVIER BARRAGAN, antonio.barragan@diesia.uhu.es 00003 http://uhu.es/antonio.barragan 00004 00005 Collaborators: 00006 JOSE MANUEL ANDUJAR, andujar@diesia.uhu.es 00007 MARIANO J. AZNAR, marianojose.aznar@alu.uhu.es 00008 00009 DPTO. DE ING. ELECTRONICA, DE SISTEMAS INFORMATICOS Y AUTOMATICA 00010 ETSI, UNIVERSITY OF HUELVA (SPAIN) 00011 00012 For more information, please contact with authors. 00013 00014 This software is free software: you can redistribute it and/or modify 00015 it under the terms of the GNU General Public License as published by 00016 the Free Software Foundation, either version 3 of the License, or 00017 (at your option) any later version. 00018 00019 This software is distributed in the hope that it will be useful, 00020 but WITHOUT ANY WARRANTY; without even the implied warranty of 00021 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00022 GNU General Public License for more details. 00023 00024 You should have received a copy of the GNU General Public License 00025 along with this program. If not, see <http://www.gnu.org/licenses/>. 00026 */ 00027 00028 #ifndef _KALMAN_HPP_ 00029 #define _KALMAN_HPP_ 00030 00039 #include <flt/derivatives.hpp> 00040 #include <gsl/gsl_blas.h> 00041 #include <gsl/gsl_linalg.h> 00042 00043 namespace FLT // Use the FTL (Fuzzy Logic Tool) namespace 00044 { 00066 TNT::Array1D<double> KalmanAntec(System &Model, 00067 TNT::Array1D<double> &input, 00068 TNT::Array1D<double> &output, 00069 TNT::Array2D<double> &covariance, 00070 TNT::Array2D<double> &P, 00071 TNT::Array2D<double> &Phi); 00072 00091 TNT::Array1D<double> KalmanAntec(System &Model, 00092 TNT::Array1D<double> &input, 00093 TNT::Array1D<double> &output, 00094 TNT::Array2D<double> &covariance, 00095 TNT::Array2D<double> &P); 00096 00118 TNT::Array1D<double> KalmanConseq(System &Model, 00119 TNT::Array1D<double> &input, 00120 TNT::Array1D<double> &output, 00121 TNT::Array2D<double> &covariance, 00122 TNT::Array2D<double> &P, 00123 TNT::Array2D<double> &Phi); 00124 00143 TNT::Array1D<double> KalmanConseq(System &Model, 00144 TNT::Array1D<double> &input, 00145 TNT::Array1D<double> &output, 00146 TNT::Array2D<double> &covariance, 00147 TNT::Array2D<double> &P); 00148 00171 TNT::Array1D<double> KalmanFuz(System &Model, 00172 TNT::Array1D<double> &input, 00173 TNT::Array1D<double> &output, 00174 TNT::Array2D<double> &covariance, 00175 TNT::Array2D<double> &P, 00176 TNT::Array2D<double> &Phi); 00177 00195 TNT::Array1D<double> KalmanFuz(System &Model, 00196 TNT::Array1D<double> &input, 00197 TNT::Array1D<double> &output, 00198 TNT::Array2D<double> &covariance, 00199 TNT::Array2D<double> &P); 00200 } // FLT 00201 00202 #endif
1.7.4