Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007 #ifndef __ASSCHURBUILDER_HPP__
00008 #define __ASSCHURBUILDER_HPP__
00009
00010
00011 #include "IpReferenced.hpp"
00012 #include "SensAlgorithm.hpp"
00013 #include "IpPDSystemSolver.hpp"
00014 #include "SensUtils.hpp"
00015 #include "SensReducedHessianCalculator.hpp"
00016
00017
00018 namespace Ipopt
00019 {
00020 DECLARE_STD_EXCEPTION(SENS_BUILDER_ERROR);
00021
00022 class SensBuilder : public ReferencedObject
00023 {
00027 public:
00028 SensBuilder();
00029
00030 ~SensBuilder();
00031
00032 SmartPtr<SensAlgorithm> BuildSensAlg(const Journalist& jnlst,
00033 const OptionsList& options,
00034 const std::string& prefix,
00035 IpoptNLP& ip_nlp,
00036 IpoptData& ip_data,
00037 IpoptCalculatedQuantities& ip_cq,
00038 PDSystemSolver& pd_solver);
00039
00040 SmartPtr<ReducedHessianCalculator> BuildRedHessCalc(const Journalist& jnlst,
00041 const OptionsList& options,
00042 const std::string& prefix,
00043 IpoptNLP& ip_nlp,
00044 IpoptData& ip_data,
00045 IpoptCalculatedQuantities& ip_cq,
00046 PDSystemSolver& pd_solver);
00047
00048 private:
00049
00050 };
00051
00052 }
00053
00054 #endif