# SensStdStepCalc.hpp

Go to the documentation of this file.

    00001 // Copyright 2009, 2011 Hans Pirnay
    00002 // All Rights Reserved.
    00003 // This code is published under the Eclipse Public License.
    00004 //
    00005 // Date   : 2009-05-16
    00006
    00007 #ifndef __ASSTDSTEPCALC_HPP__
    00008 #define __ASSTDSTEPCALC_HPP__
    00009
    00010 #include "SensBacksolver.hpp"
    00011 #include "SensStepCalc.hpp"
    00012 #include <vector>
    00013
    00014
    00015 namespace Ipopt
    00016 {
    00017
    00018   class StdStepCalculator : public SensitivityStepCalculator
    00019   {
    00020   public:
    00021     StdStepCalculator(SmartPtr<SchurData> ift_data,
    00022                       SmartPtr<SensBacksolver> backsolver);
    00023
    00024     virtual ~StdStepCalculator();
    00025
    00026     virtual bool InitializeImpl(const OptionsList& options,
    00027                                 const std::string& prefix);
    00028
    00031     virtual bool Step(DenseVector& delta_u, IteratesVector& sol);
    00032
    00033     bool BoundCheck(IteratesVector& sol,
    00034                     std::vector<Index>& x_bound_violations_idx,
    00035                     std::vector<Number>& x_bound_violations_du);
    00036
    00037   private:
    00038     SmartPtr<SchurData> ift_data_;
    00039     SmartPtr<SensBacksolver> backsolver_;
    00040     Number bound_eps_;
    00041     bool kkt_residuals_;
    00042   };
    00043 }
    00044
    00045 #endif

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines