qpOASES  3.0.1
include/qpOASES/Options.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-2014 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_OPTIONS_HPP
00037 #define QPOASES_OPTIONS_HPP
00038 
00039 
00040 #include <qpOASES/Utils.hpp>
00041 
00042 
00043 BEGIN_NAMESPACE_QPOASES
00044 
00045 
00056 class Options
00057 {
00058     /*
00059      *  PUBLIC MEMBER FUNCTIONS
00060      */
00061     public:
00063         Options( );
00064 
00066         Options(    const Options& rhs          
00067                     );
00068 
00070         ~Options( );
00071 
00073         Options& operator=( const Options& rhs  
00074                             );
00075 
00076 
00079         returnValue setToDefault( );
00080 
00083         returnValue setToReliable( );
00084 
00087         returnValue setToMPC( );
00088 
00091         returnValue setToFast( );
00092 
00093 
00100         returnValue ensureConsistency( );
00101 
00102 
00105         returnValue print( ) const;
00106 
00107 
00108     /*
00109      *  PROTECTED MEMBER FUNCTIONS
00110      */
00111     protected:
00112 
00115         returnValue copy(   const Options& rhs  
00116                             );
00117 
00118     /*
00119      *  PUBLIC MEMBER VARIABLES
00120      */
00121     public:
00122         PrintLevel printLevel;                  
00124         BooleanType enableRamping;              
00125         BooleanType enableFarBounds;            
00126         BooleanType enableFlippingBounds;       
00127         BooleanType enableRegularisation;       
00128         BooleanType enableFullLITests;          
00129         BooleanType enableNZCTests;             
00130         int         enableDriftCorrection;      
00131         int enableCholeskyRefactorisation;      
00132         BooleanType enableEqualities;           
00134         real_t terminationTolerance;            
00135         real_t boundTolerance;                  
00136         real_t boundRelaxation;                 
00137         real_t epsNum;                          
00138         real_t epsDen;                          
00139         real_t maxPrimalJump;                   
00140         real_t maxDualJump;                     
00142         real_t initialRamping;                  
00143         real_t finalRamping;                    
00144         real_t initialFarBounds;                
00145         real_t growFarBounds;                   
00146         SubjectToStatus initialStatusBounds;    
00147         real_t epsFlipping;                     
00148         int numRegularisationSteps;             
00149         real_t epsRegularisation;               
00150         int numRefinementSteps;                 
00151         real_t epsIterRef;                      
00152         real_t epsLITests;                      
00153         real_t epsNZCTests;                     
00155         BooleanType enableDropInfeasibles;      
00156         int    dropBoundPriority;               
00157         int    dropEqConPriority;               
00158         int    dropIneqConPriority;             
00159 };
00160 
00161 
00162 END_NAMESPACE_QPOASES
00163 
00164 
00165 #endif  /* QPOASES_OPTIONS_HPP */
00166 
00167 
00168 /*
00169  *  end of file
00170  */