qpOASES  3.1.1
include/qpOASES/extras/SolutionAnalysis.hpp
Go to the documentation of this file.
00001 /*
00002  *  This file is part of qpOASES.
00003  *
00004  *  qpOASES -- An Implementation of the Online Active Set Strategy.
00005  *  Copyright (C) 2007-2015 by Hans Joachim Ferreau, Andreas Potschka,
00006  *  Christian Kirches et al. All rights reserved.
00007  *
00008  *  qpOASES is free software; you can redistribute it and/or
00009  *  modify it under the terms of the GNU Lesser General Public
00010  *  License as published by the Free Software Foundation; either
00011  *  version 2.1 of the License, or (at your option) any later version.
00012  *
00013  *  qpOASES is distributed in the hope that it will be useful,
00014  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00016  *  See the GNU Lesser General Public License for more details.
00017  *
00018  *  You should have received a copy of the GNU Lesser General Public
00019  *  License along with qpOASES; if not, write to the Free Software
00020  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
00021  *
00022  */
00023 
00024 
00036 #ifndef QPOASES_SOLUTIONANALYSIS_HPP
00037 #define QPOASES_SOLUTIONANALYSIS_HPP
00038 
00039 
00040 #include <qpOASES/SQProblem.hpp>
00041 
00042 
00043 BEGIN_NAMESPACE_QPOASES
00044 
00045 
00056 class SolutionAnalysis
00057 {
00058     /*
00059      *  PUBLIC MEMBER FUNCTIONS
00060      */
00061     public:
00063         SolutionAnalysis( );
00064 
00066         SolutionAnalysis(   const SolutionAnalysis& rhs     
00067                             );
00068 
00070         ~SolutionAnalysis( );
00071 
00073         SolutionAnalysis& operator=(    const SolutionAnalysis& rhs     
00074                                         );
00075 
00076 
00080         real_t getKktViolation( QProblemB* const qp,        
00081                                 real_t* const maxStat = 0,  
00082                                 real_t* const maxFeas = 0,  
00083                                 real_t* const maxCmpl = 0   
00084                                 ) const;
00085 
00089         real_t getKktViolation( QProblem* const qp,         
00090                                 real_t* const maxStat = 0,  
00091                                 real_t* const maxFeas = 0,  
00092                                 real_t* const maxCmpl = 0   
00093                                 ) const;
00094 
00098         real_t getKktViolation( SQProblem* const qp,        
00099                                 real_t* const maxStat = 0,  
00100                                 real_t* const maxFeas = 0,  
00101                                 real_t* const maxCmpl = 0   
00102                                 ) const;
00103 
00104 
00111         returnValue getVarianceCovariance(  QProblemB* const qp,            
00112                                             const real_t* const g_b_bA_VAR, 
00114                                             real_t* const Primal_Dual_VAR   
00116                                             ) const;
00117 
00124         returnValue getVarianceCovariance(  QProblem* const qp,             
00125                                             const real_t* const g_b_bA_VAR, 
00127                                             real_t* const Primal_Dual_VAR   
00129                                             ) const;
00130 
00137         returnValue getVarianceCovariance(  SQProblem* const qp,            
00138                                             const real_t* const g_b_bA_VAR, 
00140                                             real_t* const Primal_Dual_VAR   
00142                                             ) const;
00143 
00147     /*
00148      *  PROTECTED MEMBER VARIABLES
00149      */
00150     protected:
00151 
00152 };
00153 
00154 
00155 END_NAMESPACE_QPOASES
00156 
00157 #include <qpOASES/extras/SolutionAnalysis.ipp>
00158 
00159 #endif  /* QPOASES_SOLUTIONANALYSIS_HPP */
00160 
00161 
00162 /*
00163  *  end of file
00164  */