00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #if !defined IP_STATE_H
00031 #define IP_STATE_H
00032
00033 #include "MoochoPack_NLPAlgoState.hpp"
00034
00035 namespace MoochoPack {
00036
00037
00038 extern const std::string barrier_parameter_name;
00039 extern const std::string barrier_obj_name;
00040 extern const std::string grad_barrier_obj_name;
00041 extern const std::string e_tol_name;
00042 extern const std::string comp_err_mu_name;
00043 extern const std::string Vu_name;
00044 extern const std::string Vl_name;
00045 extern const std::string invXu_name;
00046 extern const std::string invXl_name;
00047 extern const std::string rHB_name;
00048 extern const std::string B_name;
00049 extern const std::string Sigma_name;
00050 extern const std::string w_sigma_name;
00051 extern const std::string dvl_name;
00052 extern const std::string dvu_name;
00053 extern const std::string alpha_vl_name;
00054 extern const std::string alpha_vu_name;
00055
00056
00057 class IpState
00058 : public MoochoPack::NLPAlgoState
00059 {
00060
00061 public:
00063
00065 STATE_SCALAR_IQ_DECL(barrier_parameter)
00066
00067
00068
00069 STATE_SCALAR_IQ_DECL(barrier_obj)
00070
00071
00072
00073 STATE_VECTOR_IQ_DECL(grad_barrier_obj)
00074
00075
00076 STATE_SCALAR_IQ_DECL(e_tol)
00077
00078
00079 STATE_SCALAR_IQ_DECL(comp_err_mu)
00080
00081
00082 STATE_IQ_DECL(MatrixSymDiagStd, Vu)
00083
00084
00085 STATE_IQ_DECL(MatrixSymDiagStd, Vl)
00086
00087
00088 STATE_IQ_DECL(MatrixSymDiagStd, invXu)
00089
00090
00091 STATE_IQ_DECL(MatrixSymDiagStd, invXl)
00092
00093
00094 STATE_IQ_DECL(MatrixSymOp, rHB)
00095
00096
00097 STATE_IQ_DECL(MatrixSymOp, B)
00098
00099
00100 STATE_IQ_DECL(MatrixSymDiagStd, Sigma)
00101
00102
00103 STATE_VECTOR_IQ_DECL(w_sigma)
00104
00105
00106 STATE_VECTOR_IQ_DECL(dvl)
00107
00108
00109 STATE_VECTOR_IQ_DECL(dvu)
00110
00111
00112 STATE_SCALAR_IQ_DECL(alpha_vl)
00113
00114
00115 STATE_SCALAR_IQ_DECL(alpha_vu)
00116
00117
00121 IpState(
00122 const decomp_sys_ptr_t& decomp_sys = Teuchos::null
00123 ,const vec_space_ptr_t& space_x = Teuchos::null
00124 ,const vec_space_ptr_t& space_c = Teuchos::null
00125 ,const vec_space_ptr_t& space_range = Teuchos::null
00126 ,const vec_space_ptr_t& space_null = Teuchos::null
00127 );
00128
00129 virtual ~IpState();
00130
00131 };
00132
00133 }
00134
00135
00136
00137 #endif // if !defined IP_STATE_H